最大匹配演算法作為分詞的最初級分詞演算法,作為學習,簡單實現一下。
流程圖:
line = '姚明喜歡打籃球'
res = tokenize(line,dic)
print(res)
輸出為:
姚明 喜歡 打籃球
作為學習,先簡單實現一下,後期不斷豐實。
在找工作的**時期,雖然應該瘋狂的去面試提公升自己,但是感覺抽時間去實現一些基礎演算法,鞏固硬實力也是非常重要的。todo:
1. 停用詞
2. 中文和其他字元混合
3. 有日期、時間、url等tag的特殊情況,需要用正則去匹配處理
看了不一定是會了,但是自己動手寫一遍,並執行通過了才是會了。
中文分詞之正向最大匹配演算法
中文分詞目前可以分為 規則分詞 統計分詞 混合分詞 規則 統計 這三個主要流派。這次介紹下基於規則的分詞,其是一種機械的分詞方法,主要通過維護詞典,在切分語句時,將語句的每個字串與詞表中的詞逐一進行匹配,找到則切分,否則不予切分。正向最大匹配演算法 這裡需要知道兩點,乙個是分詞詞典 也即是已經分詞過...
分詞演算法 正向最大匹配和逆向最大匹配實現
假設已經有正向匹配演算法原始碼,則可以將文件進行倒序處理,生成逆序文件,然後根據逆序詞典,對逆序文件使用正向最大匹配法處理即可。同理已經存在逆向最大匹配演算法,則只要將文件倒序處理,正向詞典倒序變為逆序詞典,則可以送入逆向西大匹配演算法中進行分詞處理。class imm object def ini...
分詞之正向最大匹配法
完整資料和 獲取位址github zlhcsm 知識普及 正向最大匹配法 對於輸入的一段文字從左至右 以貪心的方式切分出當前位置上長度最大的詞。正向最大匹配演算法是基於詞典的分詞方法,其分詞原理是 單詞的顆粒度越大,所能表示的含義越確切。1,一般從乙個字串的開始位置,選擇乙個最大長度的詞長的片段,如...