原創(chuàng)|行業(yè)資訊|編輯:陳俊吉|2016-08-30 10:24:06.000|閱讀 4778 次
概述:文本數(shù)據(jù)在我們的生活中無(wú)處不在:在微信朋友圈、微博中發(fā)表的感想;在論壇上發(fā)表的評(píng)價(jià)商品的帖子;由應(yīng)用后臺(tái)自動(dòng)生成的機(jī)器日志等。這類數(shù)據(jù)本身包含了大量有用的信息,但由于文本表達(dá)方式可以很靈活,在不需要嚴(yán)格遵循語(yǔ)法的情況下也能準(zhǔn)確表達(dá)信息。比如下圖中表達(dá)人物年齡就有三種不同的說(shuō)法。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
文本數(shù)據(jù)在我們的生活中無(wú)處不在:在微信朋友圈、微博中發(fā)表的感想;在論壇上發(fā)表的評(píng)價(jià)商品的帖子;由應(yīng)用后臺(tái)自動(dòng)生成的機(jī)器日志等。這類數(shù)據(jù)本身包含了大量有用的信息,但由于文本表達(dá)方式可以很靈活,在不需要嚴(yán)格遵循語(yǔ)法的情況下也能準(zhǔn)確表達(dá)信息。比如下圖中表達(dá)人物年齡就有三種不同的說(shuō)法。
例子中,關(guān)于年齡最重要的信息是姓名和歲數(shù),圖中右側(cè)的的結(jié)構(gòu)化數(shù)據(jù)才是表達(dá)這些核心信息、應(yīng)用可以處理的主要形式。怎樣把非結(jié)構(gòu)化文本成可以準(zhǔn)確表達(dá)信息的結(jié)構(gòu)化數(shù)據(jù)是文本數(shù)據(jù)分析的一大難題。
通常實(shí)現(xiàn)文本主要有兩種模式:基于語(yǔ)法分析的模式,和基于語(yǔ)義關(guān)聯(lián)的模式(完全拋開語(yǔ)法,通過(guò)文字的上下文關(guān)聯(lián)進(jìn)行分析)。
基于語(yǔ)法的分析需要根據(jù)語(yǔ)言語(yǔ)法,將文本數(shù)據(jù)拆分成語(yǔ)法要素,如主謂賓等,再根據(jù)語(yǔ)法和語(yǔ)義規(guī)則生成目標(biāo)信息,這種方式適用與文字內(nèi)容比較規(guī)范的場(chǎng)景。
基于語(yǔ)義關(guān)聯(lián)的模式,則是大量采用分詞、字典等綜合技術(shù)對(duì)文本數(shù)據(jù)進(jìn)行標(biāo)記(打標(biāo)簽),再根據(jù)特定規(guī)則或組合生成最終信息,其實(shí)現(xiàn)方式大致包括如下步驟:
常用的文本分析工具:
目前有很多工具可用于文本,常見的幾種及其特點(diǎn)如下:
Pig: 包含高層語(yǔ)法的數(shù)據(jù)處理工具,便于編程和擴(kuò)展,底層利用MapReduce進(jìn)行數(shù)據(jù)并行處理。
JAQL:針對(duì)JOSN數(shù)據(jù)的數(shù)據(jù)處理工具,非常適合于處理JOSN數(shù)據(jù)。
AQL:一種標(biāo)記性的文本數(shù)據(jù)處理工具,語(yǔ)法類似于SQL,容易上手,內(nèi)置多種數(shù)據(jù)抽取器。
Python Natural Language Toolkit:Python提供的文本分析工具,可進(jìn)行詞性標(biāo)注,句法分析,關(guān)鍵詞提取,文本分類,情感分析等。
BigInsights中的文本數(shù)據(jù)分析工具: IBM企業(yè)級(jí)大數(shù)據(jù)產(chǎn)品BigInsights中集成了AQL進(jìn)行文本分析,在此之上開發(fā)了圖形化文本分析工具Text Analytics,為使用者提供了極大的便利。
AQL介紹:
AQL框架中對(duì)文本數(shù)據(jù)進(jìn)行處理要經(jīng)過(guò)三個(gè)主要步驟:
1. 數(shù)據(jù)打標(biāo)簽:使用字典、正則表達(dá)式等技術(shù),把要分析的文本數(shù)據(jù)進(jìn)行標(biāo)簽處理,這一步是通過(guò)定義各種數(shù)據(jù)抽取器來(lái)實(shí)現(xiàn)的。
2. 按規(guī)則生成數(shù)據(jù):將打好標(biāo)簽后的數(shù)據(jù)進(jìn)行分片、分組、定義關(guān)聯(lián)規(guī)則等,并根據(jù)這些規(guī)則生成候選的數(shù)據(jù)列表。
3. 數(shù)據(jù)合并和過(guò)濾:將候選數(shù)據(jù)進(jìn)行最終的處理,如將重復(fù)數(shù)據(jù)合并、篩選和過(guò)濾等,形成最終的結(jié)果。
AQL數(shù)據(jù)處理過(guò)程如下圖所示:
使用AQL處理數(shù)據(jù),需要學(xué)習(xí)AQL語(yǔ)法、熟悉新的環(huán)境,最重要的是還需要通過(guò)寫代碼來(lái)完成各種文本分析任務(wù),因此使用AQL處理數(shù)據(jù)其實(shí)并不簡(jiǎn)單。下圖展示了要從文本中提取數(shù)字,需要編寫的一段AQL代碼:
Text Analytics工具介紹:
IBM基于AQL開發(fā)了全圖形化界面的文本分析工具Text Analytics,讓分析人員不需要編寫底層代碼,而是使用圖形化界面工具方便快捷地完成文本數(shù)據(jù)分析任務(wù),極大的拔高了平臺(tái)的文本數(shù)據(jù)分析能力。
Text Analytics工具界面與Eclipse類似,整個(gè)工具分為如下幾個(gè)區(qū)域:
1. 項(xiàng)目管理區(qū):可以通過(guò)不同項(xiàng)目實(shí)現(xiàn)對(duì)不同文本分析任務(wù)的劃分。
2. 文檔瀏覽區(qū):顯示正在處理的文本數(shù)據(jù)文檔,處理的結(jié)果通過(guò)不同背景顏色標(biāo)記出不同標(biāo)簽的內(nèi)容。
3. 畫布區(qū)域:在該區(qū)域中通過(guò)拖拽、鼠標(biāo)操作完成文本數(shù)據(jù)處理規(guī)則的創(chuàng)建和修改。
4. 屬性區(qū)域:顯示當(dāng)前選中對(duì)象的屬性,可以設(shè)置不同的屬性值。
5. 結(jié)果區(qū)域:顯示根據(jù)當(dāng)前文本處理規(guī)則處理之后的結(jié)果。
通過(guò)Text Analytics進(jìn)行文本數(shù)據(jù)分析,所有的工作都是在該界面完成,用戶不需要關(guān)心具體的AQL細(xì)節(jié)和代碼,也不用關(guān)心后臺(tái)的處理作業(yè),Text Analytics自動(dòng)將文本處理規(guī)則生成AQL并提交作業(yè)到Hadoop集群中完成數(shù)據(jù)處理。
下面的簡(jiǎn)單示例,演示了如何從純文本的財(cái)報(bào)數(shù)據(jù)中提取出盈利數(shù)字。
步驟1:導(dǎo)入數(shù)據(jù)
新建項(xiàng)目后,單擊項(xiàng)目區(qū)域中的加號(hào)按鈕,可添加文本數(shù)據(jù)源。工具支持從本地文件系統(tǒng)或HDFS中添加文件,支持.zip, .tar, .tgz, .gz等多種格式的數(shù)據(jù)。
步驟2:編輯文本數(shù)據(jù)規(guī)則
根據(jù)數(shù)據(jù)處理的需要,從“Extractor”菜單中拖拉出需要的抽取器至畫布區(qū)中,并定義屬性和抽取器中的規(guī)則。
本例中我們僅僅抽取簡(jiǎn)單的財(cái)務(wù)數(shù)據(jù),因此只需要將字符"$",數(shù)字抽取器Number和貨幣單位Currency三個(gè)抽取器拼接即可,如下圖所示:
若要抽取包含部門名稱的盈利數(shù)據(jù),需要定義如下規(guī)則:
步驟3:運(yùn)行和結(jié)果導(dǎo)出
點(diǎn)擊畫布區(qū)中的運(yùn)行按鈕,文本分析結(jié)果會(huì)直接顯示在結(jié)果列表中,可以將結(jié)果導(dǎo)出處理和使用。
另外運(yùn)行之后,在文檔區(qū)域還根據(jù)不同規(guī)則命中的結(jié)果,顯示為不同背景色的文字,方便檢查。
BigInsights中的Text Analytics工具通過(guò)全圖形化界面實(shí)現(xiàn)零編程的文本分析,并通過(guò)與Hadoop的集成擴(kuò)展了文本處理的應(yīng)用范圍,可以幫助企業(yè)客戶快速實(shí)現(xiàn)多種文本數(shù)據(jù)分析應(yīng)用,例如對(duì)互聯(lián)網(wǎng)文本數(shù)據(jù)分析,機(jī)器日志分析等。
Text Analytics的文本分析結(jié)果,可以進(jìn)行深入加工和分析,例如可以在中通過(guò)圖表展現(xiàn),也可以做為的分析數(shù)據(jù)源使用。更多細(xì)節(jié)請(qǐng)參考慧都大數(shù)據(jù)。
詳情請(qǐng)咨詢!
客服熱線:023-66090381
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn