石鳳貴
摘要:文本預(yù)處理是文本分析理解的基礎(chǔ),預(yù)處理結(jié)果可以直接影響到文本分析的準(zhǔn)確率。中文文本語句結(jié)構(gòu)復(fù)雜,詞語之間沒有明顯的分隔標(biāo)記,需要進(jìn)行分詞來理解語句。分詞是文本預(yù)處理的基礎(chǔ),詞的切分準(zhǔn)確性影響文本預(yù)處理結(jié)果。本文分詞采用jieba中文分詞工具,實(shí)現(xiàn)了文本預(yù)處理模塊。
關(guān)鍵詞:文本分詞;文本預(yù)處理;去停用詞
中圖分類號(hào):TP181 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)14-0248-04
分詞是自然語言處理中處理文本的基礎(chǔ)和前提,中文結(jié)構(gòu)復(fù)雜,詞之間沒有明顯的分隔標(biāo)記。目前,出現(xiàn)了許多不錯(cuò)的中文分詞工具,如jieba、LTP、SnowNLP、THULAC等。iieba中文分詞是一款廣泛使用的分詞工具,基于Python的第三方分詞庫。
1文本預(yù)處理
文本處理之前,需要對(duì)語料文本進(jìn)行一些預(yù)處理,包括中文分詞、去停用詞、關(guān)鍵詞提取等。詞是構(gòu)成語句的基本單元,分析語句前需要先分詞,將文本中詞切分出來作為特征值。對(duì)于英文而言,分詞相對(duì)比較簡單,因?yàn)橛⑽恼Z句中詞與詞之間有明顯的分隔符。中文語句結(jié)構(gòu)復(fù)雜,詞語之間沒有分隔符,而且同一個(gè)詞在不同的語句和不同的文本中意義不同,下文將重點(diǎn)闡述。
文本中含有標(biāo)點(diǎn)符號(hào)、介詞、語氣詞等,這些詞對(duì)理解文本沒有實(shí)際意義,應(yīng)從分詞結(jié)果中去除,這些詞稱之為停用詞。去停用詞可有節(jié)省存儲(chǔ)空間,減少停用詞對(duì)理解語句造成的噪音,降低文本維度。去停用詞是根據(jù)停用詞表進(jìn)行過濾,因此去停用詞之前需要人工構(gòu)建停用詞表,然后將分詞表去掃描停用詞表,在停用詞表中詞需要過濾掉。去停用詞可以有效提高語句的理解和文本的處理效率、準(zhǔn)確率。本文結(jié)合常見停用詞構(gòu)建停用詞表。
2jieba中文分詞
2.1分詞
分詞是自然語言處理的第一步,也是比較重要的一步。分詞是將由字符序列構(gòu)成的句子按照一定的規(guī)則重新組合成詞的集合,中文分詞就是指將句子中漢字序列切分成詞集合。相對(duì)于英文而言,中文分詞要復(fù)雜得多。中文分詞時(shí)如何界定“詞”、如何消除歧義、如何識(shí)別未登錄詞?這個(gè)是我們面臨的問題。中文分詞算法主要基于字符串匹配算法、基于理解算法和基于統(tǒng)計(jì)分詞算法。
2.2.jieba分詞工具
jieba中文分詞工具是一款廣泛使用、分詞效果較好的分詞器,開源分詞工具,基于前綴詞典實(shí)現(xiàn)高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構(gòu)成的有向無環(huán)圖(DAGl,采用了動(dòng)態(tài)規(guī)劃查找最大概率路徑,找出基于詞頻的最大切分組合,對(duì)于未登錄詞,采用了基于漢字成詞能力的HMM模型(Hidden Markov Model,隱馬爾可夫模型),使用了Viterbi算法。jieba支持自定義專業(yè)詞典和未登錄詞血。
2)自定義詞典
jieba分詞工具基于前綴詞典dict.txt,應(yīng)用中不能切分的未登錄新詞需要修改或增加詞典,同時(shí)用戶也可以自定義詞典。開發(fā)者可以指定自定義的詞典,切分jieba詞典中未登陸詞。雖然jieba有新詞識(shí)別能力,但是自行添加新詞可以保證更高的正確率。自定義詞典格式和dict.txt一樣,一個(gè)詞占一行;每一行分三部分:詞語、詞頻(可省略)、詞性(可省略),用空格隔開,詞頻省略時(shí)使用自動(dòng)計(jì)算能保證分出該詞的詞頻。
3文本預(yù)處理模塊
3.1函數(shù)功能結(jié)構(gòu)
按照軟件開發(fā)“高內(nèi)聚、低耦合”原則,將實(shí)現(xiàn)文本預(yù)處理功能劃分為多個(gè)函數(shù),實(shí)現(xiàn)代碼復(fù)用。函數(shù)及其功能表1所示。
結(jié)果如4所示。
4.3加載提取的關(guān)鍵詞
加載提取的關(guān)鍵詞,可以用于后續(xù)的模型訓(xùn)練。
textPre.loadSegmentDataset(“predata/keywords.txt”)
輸出結(jié)果:
[‘服務(wù)客房套房白板分鐘宴會(huì)廳飯店樓層話筒乘車喜來登餐廳會(huì)議室hotel 12 24 10新聞投影儀豪華使館區(qū)商務(wù)退房首都機(jī)場提供無線行政公里宴會(huì)英文/n,
‘服務(wù)餐廳hotel 405個(gè)人電腦套間洗衣客房健身接口菜肴點(diǎn)心豪華室內(nèi)提供桑拿浴本網(wǎng)頁貴賓廳希爾頓酒店生猛海鮮北京烤鴨壁球干洗自助餐標(biāo)準(zhǔn)間http www bjta gov cn\n,
‘大廈hotel京瑞東三環(huán)南路娛樂商務(wù)京城首都圖書館北京經(jīng)濟(jì)技術(shù)開發(fā)區(qū)古玩城龍?zhí)逗鄣驴绝喌阧ttp BrrccBr bjtagov cn asp id 24 hotehlame薈聚之星令I(lǐng)SO9000商駐他求南接北指市嘗/n,
'瀑布黃果樹景區(qū)景點(diǎn)犀牛天星橋風(fēng)景區(qū)瀑布群名勝區(qū)石頭寨著名風(fēng)景布依族壯闊雄奇迷離旅游水簾洞石林彩虹公里溶洞游人落差水上天星第一奇特內(nèi)有峽谷\n1
[賓館
‘賓館
‘旅游
‘旅游
‘旅游
‘旅游
5結(jié)束語
本文介紹了廣泛使用的中文分詞工具jieba,jieba是一個(gè)強(qiáng)大的分詞庫,實(shí)現(xiàn)原理比較完善,有三種分詞模式,可以通過參數(shù)設(shè)置使用HMM。文本預(yù)處理是文本分析理解的基礎(chǔ),直接關(guān)系到后續(xù)文本分析的準(zhǔn)確性,文中詳細(xì)闡述了文本預(yù)處理模塊的實(shí)現(xiàn),給出了模塊實(shí)現(xiàn)的詳細(xì)代碼。