文本挖掘的分词原理
在做文本挖掘的時候,首先要做的預(yù)處理就是分詞。英文單詞天然有空格隔開容易按照空格分詞,但是也有時候需要把多個單詞做為一個分詞,比如一些名詞如“New York”,需要做為一個詞看待。而中文由于沒有空格,分詞就是一個需要專門去解決的問題了。無論是英文還是中文,分詞的原理都是類似的,本文就對文本挖掘時的分詞原理做一個總結(jié)。
1. 分詞的基本原理
現(xiàn)代分詞都是基于統(tǒng)計的分詞,而統(tǒng)計的樣本內(nèi)容來自于一些標準的語料庫。假如有一個句子:“小明來到荔灣區(qū)”,我們期望語料庫統(tǒng)計后分詞的結(jié)果是:"小明/來到/荔灣/區(qū)",而不是“小明/來到/荔/灣區(qū)”。那么如何做到這一點呢?
從統(tǒng)計的角度,我們期望"小明/來到/荔灣/區(qū)"這個分詞后句子出現(xiàn)的概率要比“小明/來到/荔/灣區(qū)”大。如果用數(shù)學(xué)的語言來說說,如果有一個句子SS,它有m種分詞選項如下:
A11A12...A1n1A11A12...A1n1
A21A22...A2n2A21A22...A2n2
........................
Am1Am2...AmnmAm1Am2...Amnm
其中下標nini代表第ii種分詞的詞個數(shù)。如果我們從中選擇了最優(yōu)的第rr種分詞方法,那么這種分詞方法對應(yīng)的統(tǒng)計分布概率應(yīng)該最大,即:
r=argmaxiP(Ai1,Ai2,...,Aini)r=argmax?iP(Ai1,Ai2,...,Aini)
但是我們的概率分布P(Ai1,Ai2,...,Aini)P(Ai1,Ai2,...,Aini)并不好求出來,因為它涉及到nini個分詞的聯(lián)合分布。在NLP中,為了簡化計算,我們通常使用馬爾科夫假設(shè),即每一個分詞
總結(jié)
- 上一篇: tensorflow机器学习模型的跨平台
- 下一篇: XGBoost类库使用小结