中文分詞原理及實踐

2021-08-09 14:22:41 字數 1339 閱讀 6839

原文

簡要介紹中文分詞的原理

中文分詞演算法可以分成以下幾種

正向最大匹配

1) 正向最大匹配演算法首先從句首(文章首部)開始選取m個字元作為待匹配字段,m為詞典中最長詞條的字元個數。

2) 將待匹配欄位與詞典進行匹配,若匹配成功則說明待匹配字段可以當成是乙個詞

3) 若匹配失敗,則將待匹配欄位的最後乙個字元去掉,再用新的待匹配欄位與詞典中的詞相匹配

逆向最大匹配

1) 逆向最大匹配演算法首先從句尾(文章尾部)開始選取m個字元作為待匹配字段,m為詞典中最長詞條的字元個數。

2) 將待匹配欄位與詞典進行匹配,若匹配成功則說明待匹配欄位是乙個詞

3) 若匹配失敗,則將待匹配欄位的第乙個字元去掉,再用新的待匹配欄位與詞典中的詞相匹配

雙向最大匹配法

雙向最大匹配演算法就是比較正向最大匹配演算法和逆向最大匹配演算法的結果,若結果一樣,則直接輸出,否則輸出分詞結果含有非字典詞最少,或者單字最少的那個結果

paoding分詞器是一種基於字串匹配的分詞器。

計算文件所有可能的切分方案,選擇概率最大的。

令c=c1c2…cm ,c為帶切分的漢字串,w=w1w2…wn. w是切分結果

根據貝葉斯公式,p(

w|c)

=p(w

)p(c

|w)p

(c)

,其中p(c) 為常數,p(c|w)=1,因此只需求p(w)

估計p(w)可採用n-gram方法:p(

w)=p

(w1)

p(w2

|w1)

p(w3

|w1,

w2).

..p(

wk|w

1,w2

,...

,wk−

1)由於一些限制,通常n都取2或3。即任意乙個詞出現的概率只與它前面乙個詞(馬爾科夫假設)或前面兩個詞有關。當n取2時,上述模型可簡化為p(

w)=p

(w1)

p(w2

|w1)

p(w3

|w2)

...p

(wk|

wk−1

) 條件概率為:p(

wi|w

i−1)

=p(w

i−1,

wi)p

(wi−

1) p

(wi−

1,wi

) 和p

(wi−

1)只需統計語料庫中,wi-1和wi相鄰的情況出現次數和wi-1出現的次數,再分別除以語料庫大小,即可。

ictclas以及ansj就是使用基於統計的方法

這個不太懂,以後懂了再說。

mysql 中文分詞 MySQL 中文分詞原理

一,首先我們來了解一下其他幾個知識點 1.mysql的索引意義?索引是加快訪問表內容的基本手段,尤其是在涉及多個表的關聯查詢裡。當然,索引可以加快檢索速度,但是它也同時降低了索引列的插入,刪除和更新值的速度。換通俗的話來講 mysql中的索引就是乙個特殊的平衡二叉樹,當在平衡二叉樹中搜尋某一條值的時...

mysql分詞匹配 MySQL 中文分詞原理

一,首先我們來了解一下其他幾個知識點 1.mysql的索引意義?索引是加快訪問表內容的基本手段,尤其是在涉及多個表的關聯查詢裡。當然,索引可以加快檢索速度,但是它也同時降低了索引列的插入,刪除和更新值的速度。換通俗的話來講 mysql中的索引就是乙個特殊的平衡二叉樹,當在平衡二叉樹中搜尋某一條值的時...

中文分詞概述及結巴分詞原理

詞是中文表達語義的最小單位,自然語言處理的基礎步驟就是分詞,分詞的結果對中文資訊處理至為關鍵。本文先對中文分詞方法進行一下概述,然後簡單講解一下結巴分詞背後的原理。中文分詞概述 簡單來說,中文分詞根據實現特點大致可分為兩個類別 基於詞典的分詞方法 基於統計的分詞方法。基於詞典的分詞方法 基於詞典的分...