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