?一文看懂NLP里的分詞(中英文分詞區(qū)別+3 大難點(diǎn)+3 種典型方法)

的基礎(chǔ)任務(wù),將句子,段落分解為字詞單位,方便后續(xù)的處理的分析。
本文將介紹分詞的原因,中英文分詞的3個(gè)區(qū)別,中文分詞的3大難點(diǎn),分詞的3種典型方法。最后將介紹中文分詞和英文分詞常用的工具。什么是分詞?
分詞是 自然語言理解 – NLP 的重要步驟。
分詞就是將句子、段落、文章這種長文本,分解為以字詞為單位的數(shù)據(jù)結(jié)構(gòu),方便后續(xù)的處理分析工作。

為什么要分詞?
1.將復(fù)雜問題轉(zhuǎn)化為數(shù)學(xué)問題
在 機(jī)器學(xué)習(xí)的文章 中講過,機(jī)器學(xué)習(xí)之所以看上去可以解決很多復(fù)雜的問題,是因?yàn)樗堰@些問題都轉(zhuǎn)化為了數(shù)學(xué)問題。
而 NLP 也是相同的思路,文本都是一些「非結(jié)構(gòu)化數(shù)據(jù)」,我們需要先將這些數(shù)據(jù)轉(zhuǎn)化為「結(jié)構(gòu)化數(shù)據(jù)」,結(jié)構(gòu)化數(shù)據(jù)就可以轉(zhuǎn)化為數(shù)學(xué)問題了,而分詞就是轉(zhuǎn)化的第一步。

2.詞是一個(gè)比較合適的粒度
詞是表達(dá)完整含義的最小單位。
字的粒度太小,無法表達(dá)完整含義,比如”鼠“可以是”老鼠“,也可以是”鼠標(biāo)“。
而句子的粒度太大,承載的信息量多,很難復(fù)用。比如”傳統(tǒng)方法要分詞,一個(gè)重要原因是傳統(tǒng)方法對(duì)遠(yuǎn)距離依賴的建模能力較弱?!?/p>

3. 深度學(xué)習(xí)時(shí)代,部分任務(wù)中也可以「分字」
深度學(xué)習(xí)時(shí)代,隨著數(shù)據(jù)量和算力的爆炸式增長,很多傳統(tǒng)的方法被顛覆。
分詞一直是 NLP 的基礎(chǔ),但是現(xiàn)在也不一定了,感興趣的可以看看這篇論文:《Is Word Segmentation Necessary for Deep Learning of Chinese Representations?》。

不過在一些特定任務(wù)中,分詞還是必要的。如:關(guān)鍵詞提取、命名實(shí)體識(shí)別等。
中英文分詞的3個(gè)典型區(qū)別

區(qū)別1:分詞方式不同,中文更難
英文有天然的空格作為分隔符,但是中文沒有。所以如何切分是一個(gè)難點(diǎn),再加上中文里一詞多意的情況非常多,導(dǎo)致很容易出現(xiàn)歧義。下文中難點(diǎn)部分會(huì)詳細(xì)說明。
區(qū)別2:英文單詞有多種形態(tài)
英文單詞存在豐富的變形變換。為了應(yīng)對(duì)這些復(fù)雜的變換,英文NLP相比中文存在一些獨(dú)特的處理步驟,我們稱為詞形還原(Lemmatization)和詞干提取(Stemming)。中文則不需要
詞性還原:does,done,doing,did 需要通過詞性還原恢復(fù)成 do。
詞干提取:cities,children,teeth 這些詞,需要轉(zhuǎn)換為 city,child,tooth”這些基本形態(tài)
區(qū)別3:中文分詞需要考慮粒度問題
例如「中國科學(xué)技術(shù)大學(xué)」就有很多種分法:
中國科學(xué)技術(shù)大學(xué)中國 \ 科學(xué)技術(shù) \ 大學(xué)中國 \ 科學(xué) \ 技術(shù) \ 大學(xué)粒度越大,表達(dá)的意思就越準(zhǔn)確,但是也會(huì)導(dǎo)致召回比較少。所以中文需要不同的場景和要求選擇不同的粒度。這個(gè)在英文中是沒有的。
中文分詞的3大難點(diǎn)

難點(diǎn) 1:沒有統(tǒng)一的標(biāo)準(zhǔn)
目前中文分詞沒有統(tǒng)一的標(biāo)準(zhǔn),也沒有公認(rèn)的規(guī)范。不同的公司和組織各有各的方法和規(guī)則。
難點(diǎn) 2:歧義詞如何切分
例如「兵乓球拍賣完了」就有2種分詞方式表達(dá)了2種不同的含義:
乒乓球 \ 拍賣 \ 完了乒乓 \ 球拍 \ 賣 \ 完了難點(diǎn) 3:新詞的識(shí)別
信息爆炸的時(shí)代,三天兩頭就會(huì)冒出來一堆新詞,如何快速的識(shí)別出這些新詞是一大難點(diǎn)。比如當(dāng)年「藍(lán)瘦香菇」大火,就需要快速識(shí)別。
3種典型的分詞方法

分詞的方法大致分為 3 類:
基于詞典匹配基于統(tǒng)計(jì)基于深度學(xué)習(xí)給予詞典匹配的分詞方式
優(yōu)點(diǎn):速度快、成本低
缺點(diǎn):適應(yīng)性不強(qiáng),不同領(lǐng)域效果差異大
基本思想是基于詞典匹配,將待分詞的中文文本根據(jù)一定規(guī)則切分和調(diào)整,然后跟詞典中的詞語進(jìn)行匹配,匹配成功則按照詞典的詞分詞,匹配失敗通過調(diào)整或者重新選擇,如此反復(fù)循環(huán)即可。代表方法有基于正向最大匹配和基于逆向最大匹配及雙向匹配法。
基于統(tǒng)計(jì)的分詞方法
優(yōu)點(diǎn):適應(yīng)性較強(qiáng)
缺點(diǎn):成本較高,速度較慢
這類目前常用的是算法是HMM、CRF、SVM、深度學(xué)習(xí)等算法,比如stanford、Hanlp分詞工具是基于CRF算法。以CRF為例,基本思路是對(duì)漢字進(jìn)行標(biāo)注訓(xùn)練,不僅考慮了詞語出現(xiàn)的頻率,還考慮上下文,具備較好的學(xué)習(xí)能力,因此其對(duì)歧義詞和未登錄詞的識(shí)別都具有良好的效果。
基于深度學(xué)習(xí)
優(yōu)點(diǎn):準(zhǔn)確率高、適應(yīng)性強(qiáng)
缺點(diǎn):成本高,速度慢
例如有人員嘗試使用雙向LSTM+CRF實(shí)現(xiàn)分詞器,其本質(zhì)上是序列標(biāo)注,所以有通用性,命名實(shí)體識(shí)別等都可以使用該模型,據(jù)報(bào)道其分詞器字符準(zhǔn)確率可高達(dá)97.5%。
常見的分詞器都是使用機(jī)器學(xué)習(xí)算法和詞典相結(jié)合,一方面能夠提高分詞準(zhǔn)確率,另一方面能夠改善領(lǐng)域適應(yīng)性。
中文分詞工具
下面排名根據(jù) GitHub 上的 star 數(shù)排名:
HanlpStanford 分詞ansj 分詞器哈工大 LTPKCWS分詞器jiebaIK清華大學(xué)THULACICTCLAS英文分詞工具
KerasSpacyGensimNLTK總結(jié)
分詞就是將句子、段落、文章這種長文本,分解為以字詞為單位的數(shù)據(jù)結(jié)構(gòu),方便后續(xù)的處理分析工作。
分詞的原因:
將復(fù)雜問題轉(zhuǎn)化為數(shù)學(xué)問題詞是一個(gè)比較合適的粒度深度學(xué)習(xí)時(shí)代,部分任務(wù)中也可以「分字」中英文分詞的3個(gè)典型區(qū)別:
分詞方式不同,中文更難英文單詞有多種形態(tài),需要詞性還原和詞干提取中文分詞需要考慮粒度問題中文分詞的3大難點(diǎn)
沒有統(tǒng)一的標(biāo)準(zhǔn)歧義詞如何切分新詞的識(shí)別3個(gè)典型的分詞方式:
基于詞典匹配基于統(tǒng)計(jì)基于深度學(xué)習(xí)
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由財(cái)神資訊-領(lǐng)先的體育資訊互動(dòng)媒體轉(zhuǎn)載發(fā)布,如需刪除請(qǐng)聯(lián)系。