1. 程式人生 > >ansj分詞方式詳細解析

ansj分詞方式詳細解析

ToAnalysis 精準分詞

精準分詞是Ansj分詞的店長推薦款

它在易用性,穩定性.準確性.以及分詞效率上.都取得了一個不錯的平衡.如果你初次嘗試Ansj如果你想開箱即用.那麼就用這個分詞方式是不會錯的.

DicAnalysis 使用者自定義詞典優先策略的分詞

使用者自定義詞典優先策略的分詞,如果你的使用者自定義詞典足夠好,或者你的需求對使用者自定義詞典的要求比較高,那麼強烈建議你使用DicAnalysis的分詞方式.

可以說在很多方面Dic優於ToAnalysis的結果

NlpAnalysis 帶有新詞發現功能的分詞

nlp分詞是總能給你驚喜的一種分詞方式.

它可以識別出未登入詞.但是它也有它的缺點.速度比較慢.穩定性差.ps:我這裡說的慢僅僅是和自己的其他方式比較.應該是40w字每秒的速度吧.

個人覺得nlp的適用方式.1.語法實體名抽取.未登入詞整理.只要是對文字進行發現分析等工作

IndexAnalysis 面向索引的分詞

面向索引的分詞。顧名思義就是適合在lucene等文字檢索中用到的分詞。主要考慮以下兩點

  • 召回率
    • 召回率是對分詞結果儘可能的涵蓋。比如對“上海虹橋機場南路” 召回結果是[上海/ns, 上海虹橋機場/nt, 虹橋/ns, 虹橋機場/nz, 機場/n, 南路/nr]
  • 準確率
    • 其實這和召回本身是具有一定矛盾性的Ansj的強大之處是很巧妙的避開了這兩個的衝突 。比如我們常見的歧義句“旅遊和服務”->對於一般保證召回 。大家會給出的結果是“旅遊 和服 服務” 對於ansj不存在跨term的分詞。意思就是。召回的詞只是針對精準分詞之後的結果的一個細分。比較好的解決了這個問題

BaseAnalysis 最小顆粒度的分詞

基本就是保證了最基本的分詞.詞語顆粒度最非常小的..所涉及到的詞大約是10萬左右.

基本分詞速度非常快.在macAir上.能到每秒300w字每秒.同時準確率也很高.但是對於新詞他的功能十分有限.

功能統計

名稱 使用者自定義詞典 數字識別 人名識別 機構名識別 新詞發現
BaseAnalysis X X X X X
ToAnalysis X X
DicAnalysis X X
IndexAnalysis X X
NlpAnalysis