Apache Lucene 幾種分詞系統

一、 StopAnalyzer java

StopAnalyzer能過濾詞彙中的特定字符串和詞彙,而且完成大寫轉小寫的功能。 算法

二、 StandardAnalyzer app

StandardAnalyzer根據空格和符號來完成分詞,還能夠完成數字、字母、E-mail地址、IP地址以及中文字符的分析處理,還能夠支持過濾詞表,用來代替StopAnalyzer可以實現的過濾功能。 學習

三、 SimpleAnalyzer 搜索引擎

SimpleAnalyzer具有基本西文字符詞彙分析的分詞器,處理詞彙單元時,以非字母字符做爲分割符號。分詞器不能作詞彙的過濾,之進行詞彙的分析和分割。輸出地詞彙單元完成小寫字符轉換,去掉標點符號等分割符。 編碼

在全文檢索系統開發中,一般用來支持西文符號的處理,不支持中文。因爲不完成單詞過濾功能,因此不須要過濾詞庫支持。詞彙分割策略上簡單,使用非英文字符做爲分割符,不須要分詞詞庫的支持。 spa

四、 WhitespaceAnalyzer 設計

WhitespaceAnalyzer使用空格做爲間隔符的詞彙分割分詞器。處理詞彙單元的時候,以空格字符做爲分割符號。分詞器不作詞彙過濾,也不進行小寫字符轉換。 對象

實際中能夠用來支持特定環境下的西文符號的處理。因爲不完成單詞過濾和小寫字符轉換功能,也不須要過濾詞庫支持。詞彙分割策略上簡單使用非英文字符做爲分割符,不須要分詞詞庫支持。 繼承

五、 KeywordAnalyzer

KeywordAnalyzer把整個輸入做爲一個單獨詞彙單元,方便特殊類型的文本進行索引和檢索。針對郵政編碼,地址等文本信息使用關鍵詞分詞器進行索引項創建很是方便。

六、 CJKAnalyzer

CJKAnalyzer內部調用CJKTokenizer分詞器,對中文進行分詞,同時使用StopFilter過濾器完成過濾功能,能夠實現中文的多元切分和停用詞過濾。在Lucene3.0版本中已經棄用。

七、 ChineseAnalyzer

ChineseAnalyzer功能與StandardAnalyzer分析器在處理中文是基本一致,都是切分紅單個的雙字節中文字符。在Lucene3.0版本中已經棄用。

八、 PerFieldAnalyzerWrapper

PerFieldAnalyzerWrapper功能主要用在針對不一樣的Field採用不一樣的Analyzer的場合。好比對於文件名,須要使用KeywordAnalyzer,而對於文件內容只使用StandardAnalyzer就能夠了。經過addAnalyzer()能夠添加分類器。

九、 IKAnalyzer

實現了以詞典爲基礎的正反向全切分,以及正反向最大匹配切分兩種方法。IKAnalyzer是第三方實現的分詞器,繼承自Lucene的Analyzer類,針對中文文本進行處理。

十、JE-Analysis

JE-Analysis是Lucene的中文分詞組件,須要下載。

十一、 ICTCLAS4J

ictclas4j中文分詞系統是sinboy在中科院張華平和劉羣老師的研製的FreeICTCLAS的基礎上完成的一個java開源分詞項目,簡化了原分詞程序的複雜度,旨在爲廣大的中文分詞愛好者一個更好的學習機會。

十二、 Imdict-Chinese-Analyzer

imdict-chinese-analyzer 是 imdict智能詞典 的智能中文分詞模塊,算法基於隱馬爾科夫模型(Hidden Markov Model, HMM),是中國科學院計算技術研究所的ictclas中文分詞程序的從新實現(基於Java),能夠直接爲lucene搜索引擎提供簡體中文分詞支持。

1三、 Paoding Analysis

Paoding Analysis中文分詞具備極 高效率 和 高擴展性。引入隱喻,採用徹底的面向對象設計,構思先進。其效率比較高,在PIII 1G內存我的機器上,1秒可準確分詞100萬漢字。採用基於不限制個數的詞典文件對文章進行有效切分,使可以將對詞彙分類定義。可以對未知的詞彙進行合理解析。

1四、 MMSeg4J

mmseg4j 用 Chih-Hao Tsai 的 MMSeg 算法(http://technology.chtsai.org/mmseg/ )實現的中文分詞器,並實現 lucene 的 analyzer 和 solr 的TokenizerFactory 以方便在Lucene和Solr中使用。 MMSeg 算法有兩種分詞方法:Simple和Complex,都是基於正向最大匹配。Complex 加了四個規則過慮。官方說:詞語的正確識別率達到了 98.41%。mmseg4j 已經實現了這兩種分詞算法。

相關文章
相關標籤/搜索