NLP系列學(xué)習(xí):文本分詞

中文分詞是中文自然語言處理的一個非常重要的組成部分畦浓,在學(xué)界和工業(yè)界都有比較長時間的研究歷史,也有一些比較成熟的解決方案

1:分詞理論

這一部分在一面這個鏈接里有很不錯的總結(jié)检疫,特搬運過來讶请,我主要說說操作的部分。

鏈接:https://www.zhihu.com/question/19578687/answer/190569700

中文分詞是中文文本處理的一個基礎(chǔ)步驟屎媳,也是中文人機自然語言交互的基礎(chǔ)模塊夺溢。不同于英文的是,中文句子中沒有詞的界限烛谊,因此在進行中文自然語言處理時风响,通常需要先進行分詞,分詞效果將直接影響詞性丹禀、句法樹等模塊的效果状勤。當然分詞只是一個工具,場景不同双泪,要求也不同持搜。

在人機自然語言交互中,成熟的中文分詞算法能夠達到更好的自然語言處理效果焙矛,幫助計算機理解復(fù)雜的中文語言葫盼。竹間智能在構(gòu)建中文自然語言對話系統(tǒng)時,結(jié)合語言學(xué)不斷優(yōu)化村斟,訓(xùn)練出了一套具有較好分詞效果的算法模型剪返,為機器更好地理解中文自然語言奠定了基礎(chǔ)。

在此邓梅,對于中文分詞方案脱盲、當前分詞器存在的問題,以及中文分詞需要考慮的因素及相關(guān)資源日缨,竹間智能 自然語言與深度學(xué)習(xí)小組?做了些整理和總結(jié)钱反,希望能為大家提供一些參考。

中文分詞根據(jù)實現(xiàn)原理和特點匣距,主要分為以下2個類別:

1面哥、基于詞典分詞算法

也稱字符串匹配分詞算法。該算法是按照一定的策略將待匹配的字符串和一個已建立好的“充分大的”詞典中的詞進行匹配毅待,若找到某個詞條尚卫,則說明匹配成功,識別了該詞尸红。常見的基于詞典的分詞算法分為以下幾種:正向最大匹配法吱涉、逆向最大匹配法雙向匹配分詞法等刹泄。

基于詞典的分詞算法是應(yīng)用最廣泛、分詞速度最快的怎爵。很長一段時間內(nèi)研究者都在對基于字符串匹配方法進行優(yōu)化特石,比如最大長度設(shè)定、字符串存儲和查找方式以及對于詞表的組織結(jié)構(gòu)鳖链,比如采用TRIE索引樹姆蘸、哈希索引等。

2芙委、基于統(tǒng)計的機器學(xué)習(xí)算法

這類目前常用的是算法是HMM逞敷、CRF、SVM灌侣、深度學(xué)習(xí)等算法推捐,比如stanford、Hanlp分詞工具是基于CRF算法顶瞳。以CRF為例玖姑,基本思路是對漢字進行標注訓(xùn)練,不僅考慮了詞語出現(xiàn)的頻率慨菱,還考慮上下文焰络,具備較好的學(xué)習(xí)能力,因此其對歧義詞和未登錄詞的識別都具有良好的效果符喝。

Nianwen Xue在其論文《Combining Classifiers for Chinese Word Segmentation》中首次提出對每個字符進行標注闪彼,通過機器學(xué)習(xí)算法訓(xùn)練分類器進行分詞,在論文《Chinese word segmentation as character tagging》中較為詳細地闡述了基于字標注的分詞法协饲。

常見的分詞器都是使用機器學(xué)習(xí)算法和詞典相結(jié)合畏腕,一方面能夠提高分詞準確率,另一方面能夠改善領(lǐng)域適應(yīng)性茉稠。

隨著深度學(xué)習(xí)的興起描馅,也出現(xiàn)了基于神經(jīng)網(wǎng)絡(luò)的分詞器,例如有人員嘗試使用雙向LSTM+CRF實現(xiàn)分詞器而线,其本質(zhì)上是序列標注铭污,所以有通用性,命名實體識別等都可以使用該模型膀篮,據(jù)報道其分詞器字符準確率可高達97.5%嘹狞。算法框架的思路與論文《Neural Architectures for Named Entity Recognition》類似,利用該框架可以實現(xiàn)中文分詞誓竿,如下圖所示:

首先對語料進行字符嵌入磅网,將得到的特征輸入給雙向LSTM,然后加一個CRF就得到標注結(jié)果筷屡。

分詞器當前存在問題:

目前中文分詞難點主要有三個:

1涧偷、分詞標準:比如人名簸喂,在哈工大的標準中姓和名是分開的,但在Hanlp中是合在一起的嫂丙。這需要根據(jù)不同的需求制定不同的分詞標準娘赴。

2规哲、歧義:對同一個待切分字符串存在多個分詞結(jié)果跟啤。

歧義又分為組合型歧義、交集型歧義和真歧義三種類型唉锌。

1) 組合型歧義:分詞是有不同的粒度的隅肥,指某個詞條中的一部分也可以切分為一個獨立的詞條。比如“中華人民共和國”袄简,粗粒度的分詞就是“中華人民共和國”腥放,細粒度的分詞可能是“中華/人民/共和國”

2) 交集型歧義:在“鄭州天和服裝廠”中,“天和”是廠名绿语,是一個專有詞秃症,“和服”也是一個詞,它們共用了“和”字吕粹。

3) 真歧義:本身的語法和語義都沒有問題, 即便采用人工切分也會產(chǎn)生同樣的歧義种柑,只有通過上下文的語義環(huán)境才能給出正確的切分結(jié)果。例如:對于句子“美國會通過對臺售武法案”匹耕,既可以切分成“美國/會/通過對臺售武法案”聚请,又可以切分成“美/國會/通過對臺售武法案”。

一般在搜索引擎中稳其,構(gòu)建索引時和查詢時會使用不同的分詞算法驶赏。常用的方案是,在索引的時候使用細粒度的分詞以保證召回既鞠,在查詢的時候使用粗粒度的分詞以保證精度煤傍。

3、新詞:也稱未被詞典收錄的詞嘱蛋,該問題的解決依賴于人們對分詞技術(shù)和漢語語言結(jié)構(gòu)的進一步認識蚯姆。

2:實踐操作

1;數(shù)據(jù)的準備

數(shù)據(jù)的準備因為我在實習(xí),所以數(shù)據(jù)就不需要自己花費很多時間準備了浑槽,在我沒有實習(xí)之前蒋失,我的數(shù)據(jù)一方面是公開的數(shù)據(jù)集,另外一些是自己寫爬蟲去爬取數(shù)據(jù)桐玻,第二種方法用的多一些篙挽,如果使用公開數(shù)據(jù)的話,搜狗的新聞數(shù)據(jù)還不錯镊靴。

另外一點我們要注意铣卡,我們在進行中文寫入和存儲的時候链韭,默認的編碼要用utf-8,之前在分詞處理的時候一直報錯煮落,原因是我用來ASCLL的編碼導(dǎo)致的敞峭。

2:數(shù)據(jù)分詞

常用的分詞軟件非常多,這里我推薦我使用的感覺比較好的一款蝉仇,jieba分詞旋讹,直接pip安裝即可,具體的用法大家可以到https://github.com/fxsjy/jieba去看看轿衔,已經(jīng)非常詳細

代碼如下:

原來的文檔如下圖所示;

分完詞后效果:

盡管有一些問題沉迹,但是還是基本可以用的,對于一些特定的詞我們可以加入自定義詞庫來進行解決害驹。

在上面我們解析的文本中有很多無效的詞鞭呕,比如“的”,“請”宛官,還有一些標點符號葫松,這些我們不想在文本分析的時候引入,因此需要去掉底洗,這些詞就是停用詞腋么。

網(wǎng)上有很多開源的停用詞表,我現(xiàn)在用的是一個1208詞的枷恕,后續(xù)上傳一下党晋,調(diào)用方式如下:

在文本處理完整后,我們就可以進行向量化操作了徐块,這一部分我們將在下一篇文章詳細講述未玻。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市胡控,隨后出現(xiàn)的幾起案子扳剿,更是在濱河造成了極大的恐慌,老刑警劉巖昼激,帶你破解...
    沈念sama閱讀 222,378評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件庇绽,死亡現(xiàn)場離奇詭異,居然都是意外死亡橙困,警方通過查閱死者的電腦和手機瞧掺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凡傅,“玉大人辟狈,你說我怎么就攤上這事。” “怎么了哼转?”我有些...
    開封第一講書人閱讀 168,983評論 0 362
  • 文/不壞的土叔 我叫張陵明未,是天一觀的道長。 經(jīng)常有香客問我壹蔓,道長趟妥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,938評論 1 299
  • 正文 為了忘掉前任佣蓉,我火速辦了婚禮披摄,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘偏螺。我一直安慰自己行疏,他們只是感情好匆光,可當我...
    茶點故事閱讀 68,955評論 6 398
  • 文/花漫 我一把揭開白布套像。 她就那樣靜靜地躺著,像睡著了一般终息。 火紅的嫁衣襯著肌膚如雪夺巩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,549評論 1 312
  • 那天周崭,我揣著相機與錄音柳譬,去河邊找鬼。 笑死续镇,一個胖子當著我的面吹牛美澳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播摸航,決...
    沈念sama閱讀 41,063評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼制跟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了酱虎?” 一聲冷哼從身側(cè)響起雨膨,我...
    開封第一講書人閱讀 39,991評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎读串,沒想到半個月后聊记,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,522評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡恢暖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,604評論 3 342
  • 正文 我和宋清朗相戀三年排监,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片杰捂。...
    茶點故事閱讀 40,742評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡舆床,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出琼娘,到底是詐尸還是另有隱情峭弟,我是刑警寧澤附鸽,帶...
    沈念sama閱讀 36,413評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站瞒瘸,受9級特大地震影響坷备,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜情臭,卻給世界環(huán)境...
    茶點故事閱讀 42,094評論 3 335
  • 文/蒙蒙 一省撑、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧俯在,春花似錦竟秫、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至愕提,卻和暖如春馒稍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背浅侨。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評論 1 274
  • 我被黑心中介騙來泰國打工纽谒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人如输。 一個月前我還...
    沈念sama閱讀 49,159評論 3 378
  • 正文 我出身青樓鼓黔,卻偏偏與公主長得像,于是被迫代替她去往敵國和親不见。 傳聞我的和親對象是個殘疾皇子澳化,可洞房花燭夜當晚...
    茶點故事閱讀 45,747評論 2 361

推薦閱讀更多精彩內(nèi)容