? ? ? ? 在對(duì)中文文本信息進(jìn)行處理前,先將成段的文本分割成更小的詞匯單元,這個(gè)過(guò)程即是中文分詞。中文分詞是智能檢索、文獻(xiàn)索引、機(jī)器翻譯以及自然語(yǔ)言處理和語(yǔ)義分析的基礎(chǔ)。
實(shí)驗(yàn)?zāi)康模?/b>對(duì)文本信息進(jìn)行中文分詞
實(shí)驗(yàn)步驟:認(rèn)識(shí)分詞工具包mmseg4j——配置環(huán)境——數(shù)據(jù)導(dǎo)入——選擇分詞字典——分詞
目錄:
1、認(rèn)識(shí)中文分詞包(下載、安裝與運(yùn)行)
2、分詞方法與效果分析
3、分詞包背后的分詞算法學(xué)習(xí)
4、分詞結(jié)果提交
1.1 了解mmseg4j分詞工具包
mmseg4j分詞器用Chih-Hao Tsai 的MMSeg算法實(shí)現(xiàn)的中文分詞器,并實(shí)現(xiàn)lucene的analyzer和solr的TokenizerFactory以方便在Lucene和solr中使用。MMSeg實(shí)現(xiàn)了兩種分詞方法:simple和complex。并且這兩種方法都是基于正向最大匹配。mmseg4j自帶的主詞典是獎(jiǎng)金15萬(wàn)的搜狗詞庫(kù),除此之外它支持名為wordsxxx.dic,編碼格式為UTF-8的用戶自定義詞典。
(lucene是一個(gè)開放源代碼的全文檢索引擎工具包,但它不是一個(gè)完整的全文檢索引擎,而是一個(gè)全文檢索引擎的架構(gòu),提供了完整的查詢引擎和索引引擎,部分文本分析引擎(英文與德文兩種西方語(yǔ)言)。Lucene的目的是為軟件開發(fā)人員提供一個(gè)簡(jiǎn)單易用的工具包,以方便的在目標(biāo)系統(tǒng)中實(shí)現(xiàn)全文檢索的功能,或者是以此為基礎(chǔ)建立起完整的全文檢索引擎。
Solr是一個(gè)高性能,采用Java5開發(fā),基于Lucene的全文搜索服務(wù)器。同時(shí)對(duì)其進(jìn)行了擴(kuò)展,提供了比Lucene更為豐富的查詢語(yǔ)言,同時(shí)實(shí)現(xiàn)了可配置、可擴(kuò)展并對(duì)查詢性能進(jìn)行了優(yōu)化,并且提供了一個(gè)完善的功能管理界面,是一款非常優(yōu)秀的全文搜索引擎。)
1.2 下載
下載鏈接:
apache lucene solr 官網(wǎng)歷史版本下載地址
1.3 運(yùn)行
windows運(yùn)行界面打開cmd
進(jìn)入下載文件保存目錄(我保存在D盤)
d:
cd ?mmseg4j
輸入命令(字符串用文本替換)
java-cpmmseg4j-core-1.10.0.jar com.chenlb.mmseg4j.example.MaxWord 字符串
得到分詞結(jié)果
2.1分詞方法
常用分詞方法有:
基于字符串匹配的方法:正向最大匹配分詞算法、逆向最大匹配分詞、雙向最大匹配分詞算法、最少切分分詞算法等。
基于字符串匹配的分詞方法和基于統(tǒng)計(jì)的分詞方法對(duì)比。(詳情略)
2.2效果分析
分析MMSeg實(shí)現(xiàn)的兩種分詞方法:simple和complex,他們都是基于正向最大匹配。
Simple——在一串字符串中從開頭匹配子串,找到所有可能的匹配。
Complex——在一串字符中,找到所有可能的三字塊開始匹配,尋找最大長(zhǎng)度的字塊。
用兩種方法對(duì)下面這段文本進(jìn)行分詞
2017年5月17日,美國(guó)雪城大學(xué)馬克斯韋爾公民與公共事務(wù)學(xué)院終身教授馬穎毅博士應(yīng)邀來(lái)訪我院,并做了主題為“中國(guó)留學(xué)生眼中的中美教育”的學(xué)術(shù)講座。出席本次學(xué)術(shù)講座的有我院各專業(yè)本科生、研究生,以及沙治慧教授、陳進(jìn)副教授等教師。本次講座會(huì)由沙治慧教授主持。
3. mmseg4j分詞算法
(詳情參考:mmseg分詞算法及實(shí)現(xiàn))
參考鏈接:
11大Java開源中文分詞器的使用方法和分詞效果對(duì)比
4.分詞結(jié)果提交
由于mmseg4j源碼中沒有提供把分詞結(jié)果保存成文件的方法,需要自己在源碼中修改,然后打包成jar。