0 起因
由于博主之前做了一些文本挖掘的項(xiàng)目,在項(xiàng)目中或多或少的用到了分詞模塊,對(duì)于中文分詞,博主一般使用Python開(kāi)發(fā)的jieba分詞組件。最近,博主想閱讀一些開(kāi)源系統(tǒng),就先從jieba開(kāi)始,一是因?yàn)閖ieba實(shí)現(xiàn)了NLP的一些基礎(chǔ)技術(shù),例如分詞、詞性標(biāo)注;二是因?yàn)橄雽W(xué)習(xí)學(xué)習(xí)大神們的編碼規(guī)范。
1 jieba系統(tǒng)簡(jiǎn)介
"結(jié)巴"中文分詞:做最好的Python中文分詞組件。
特點(diǎn):
- 支持三種分詞模式
- 支持繁體分詞
- 支持自定義詞典
- MIT授權(quán)協(xié)議
涉及算法:
- 基于前綴詞典實(shí)現(xiàn)詞圖掃描,生成句子中漢字所有可能成詞情況所構(gòu)成的有向無(wú)環(huán)圖(DAG),采用動(dòng)態(tài)規(guī)劃查找最大概率路徑,找出基于詞頻的最大切分組合;
- 對(duì)于未登錄詞,采用了基于漢字成詞能力的 HMM模型,采用Viterbi算法進(jìn)行計(jì)算;
- 分別基于tfidf和textrank模型抽取關(guān)鍵詞;
2 jieba系統(tǒng)框架
jieba分詞系統(tǒng),主要實(shí)現(xiàn)三個(gè)模塊,
- 分詞
- 詞性標(biāo)注
- 關(guān)鍵詞抽取
其中,分詞有三種模式,默認(rèn)是精確模式,
網(wǎng)友評(píng)論