

下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、 6/6IKAnalyzer中文分詞器V3.2.3使用手冊 IKAnalyzer中文分詞器 V3.2使用手冊 目錄 1.IK Analyzer3.X介紹 (2) 2.使用指南 (5) 3.詞表擴展 (12) 4.針對solr的分詞器應用擴展 (14) 5.關于 (16) 1.IK Analyzer3.X介紹 IK Analyzer是一個開源的,基于java語言開發(fā)的輕量級的中文分詞工具包。從2006年12月推出1.0版開始,IKAnalyzer已經(jīng)推出了3個大版本。最初,它是以開源項目Luence為應用主體的,結(jié)合詞典分詞和文法分析算法的中文分詞組件。新版本的IK Analyzer3.X則發(fā)展
2、為面向Java的公用分詞組件,獨立于Lucene項目,同時提供了對Lucene的默認優(yōu)化實現(xiàn)。 1.1IK Analyzer3.X結(jié)構(gòu)設計 1.2IK Analyzer3.X特性 ?采用了特有的“正向迭代最細粒度切分算法“,具有80萬字/秒的高速處理能力。 ?采用了多子處理器分析模式,支持:英文字母(IP地址、Email、URL)、數(shù)字(日期,常用中文數(shù)量詞,羅馬數(shù)字,科學計數(shù)法),中文詞匯(姓名、地名處理)等分詞處理。?優(yōu)化的詞典存儲,更小的內(nèi)存占用。支持用戶詞典擴展定義 ?針對Lucene全文檢索優(yōu)化的查詢分析器IKQueryParser(吐血推薦);采用歧義分析算法優(yōu)化查詢關鍵字的搜索排
3、列組合,能極大的提高Lucene檢索的命中率。 1.3分詞效果示例 文本原文1: IKAnalyzer是一個開源的,基于java語言開發(fā)的輕量級的中文分詞工具包。從2006年12月推出1.0版開始,IKAnalyzer已經(jīng)推出了3個大版本。 分詞結(jié)果: ikanalyzer|是|一個|一|個|開源|的|基于|java|語言|開發(fā)|的|輕量級|量級|的|中文|分詞|工具包|工具|從|2006|年|12|月|推出|1.0 |版|開始|ikanalyzer|已經(jīng)|推出|出了|3|個大|個|版本 文本原文2: 永和服裝飾品有限公司 分詞結(jié)果: 永和|和服|服裝|裝飾品|裝飾|飾品|有限|公司 文本原文
4、3: 博客:http:/./doc/5fee914ffe4733687e21aaf7.html 電子郵件:linliangyi2005http:/./doc/5fee914ffe4733687e21aaf7.html 分詞結(jié)果: |博客|http:/./doc/5fee914ffe4733687e21aaf7.html |linliangyi|2007|javaeye|com|電子郵件|郵件地址|linliangyi2005http:/./doc/5fee914ffe4733687e21aaf7.html |linliangyi|2005|gmail|com 2.使用指南 2.1下載地址 Go
5、ogleCode開源項目:http:/./doc/5fee914ffe4733687e21aaf7.html /p/ik-analyzer/ GoogleCode SVN下載:http:/./doc/5fee914ffe4733687e21aaf7.html /svn/trunk/ 2.2與相關項目的版本兼容 IK分詞器版本L ucene版本S olr版本 3.1.5GA兼容2.9.1及先前版本對solr1.3提供接口實現(xiàn) (詳細請參考對應版本使用手冊) 3.1.6GA兼容2.9.1及先前版本對solr1.3、solr1.4提供接口實現(xiàn) (詳細請參考對應版本使用手冊) 3.2.0GA兼容Luc
6、ene2.9及3.0版本 不支持Lucene2.4及先前 版本僅對solr1.4提供接口實現(xiàn) (請參考本手冊solr部分說明) 2.3安裝部署 IK Analyzer安裝包包含: 1.IKAnalyzer中文分詞器V3.X使用手冊(即本文檔) 2.IKAnalyzer 3.X.jar(主jar包) 3.IKAnalyzer.cfg.xml(分詞器擴展配置文件) 4.ext_stopword.dic(擴展的stopword詞典,3.2以上版本提供) 它的安裝部署十分簡單,將IKAnalyzer3.X.jar部署于項目的lib目錄中;IKAnalyzer.cfg.xml 與ext_stopword
7、.dic文件放置在代碼根目錄(對于web項目,通常是WEB-INF/classes 目錄,同hibernate、log4j等配置文件相同)下即可。 2.4Lucene用戶快速入門 代碼樣例 IKAnalyzerDemo 執(zhí)行結(jié)果:命中:1 2.5關鍵API 說明 類org.wltea.analyzer.lucene org.wltea.analyzer.lucene. .IKAnalyzer 說明:IK 分詞器的主類,是IK 分詞器的Lucene Analyzer 類實現(xiàn)。 該類使用方法請參考“代碼樣例”章節(jié) ?public IKAnalyzer() 說明:構(gòu)造函數(shù),默認實現(xiàn)最細粒度切分算法
8、?public IKAnalyzer(boolean isMaxWordLength) 說明:新構(gòu)造函數(shù),從版本V3.1.1起 參數(shù)1:boolean isMaxWordLength ,當為true 時,分詞器進行最大詞長切分;當為false 時,分詞器進行最細粒度切分。 類org.wltea.analyzer.lucene org.wltea.analyzer.lucene. .IKQueryParser ?public static void setMaxWordLength(boolean isMaxWordLength) 說明:設置QueryParser 的解釋時,分詞器的切詞方式,從
9、版本V3.2.3起 參數(shù)1:boolean isMaxWordLength ,是否采用最大詞長分詞;true 采用最大詞長分詞;false 不采用。 返回值:無內(nèi)容:Document ?public static Query parse(String field,String query)throws IOException 說明:單條件,單Field查詢分析 參數(shù)1:String field,查詢的目標域名稱 參數(shù)2:String query,查詢的關鍵字 返回值:構(gòu)造一個單條件,單Field查詢器 ?public static Query parseMultiField(Stringfie
10、lds,String query)throws IOException 說明:多Field,單條件查詢分析 參數(shù)1:Stringfields,多個查詢的目標域名稱的數(shù)組 參數(shù)2:String query,查詢的關鍵字 返回值:構(gòu)造一個多Field,單條件的查詢器 ?public static Query parseMultiField(Stringfields,String query, BooleanClause.Occurflags)throws IOException 說明:多Field,單條件,多Occur查詢分析 參數(shù)1:Stringfields,多個查詢的目標域名稱的數(shù)組 參數(shù)2:
11、String query,查詢的關鍵字 參數(shù)3:BooleanClause.Occurflags,查詢條件的組合方式(Or/And)返回值:構(gòu)造一個多Field,單條件,多Occur的查詢器 ?public static Query parseMultiField(Stringfields,Stringqueries)throws IOException 說明:多Field,多條件查詢分析 參數(shù)1:Stringfields,多個查詢的目標域名稱的數(shù)組 參數(shù)2:Stringqueries,對應多個查詢域的關鍵字數(shù)組 返回值:構(gòu)造一個多Field,多條件的查詢器 ?public static Qu
12、ery parseMultiField(Stringfields,Stringqueries, BooleanClause.Occurflags)throws IOException 說明:多Field,多條件,多Occur查詢 參數(shù)1:Stringfields,多個查詢的目標域名稱的數(shù)組 參數(shù)2:Stringqueries,對應多個查詢域的關鍵字數(shù)組 參數(shù)3:BooleanClause.Occurflags,查詢條件的組合方式(Or/And) 返回值:構(gòu)造一個多Field,多條件,多Occur的查詢器 org.wltea.analyzer.lucene.IKSimilarity 類org.w
13、ltea.analyzer.lucene 說明:IKAnalyzer的相似度評估器。該類重載了DefaultSimilarity的coord方法,提高詞元命中個數(shù)在相似度比較中的權(quán)重影響,即,當有多個詞元得到匹配時,文檔的相似度將提高。 該類使用方法請參考“代碼樣例”章節(jié) org.wltea.analyzer.IKSegmentation 類org.wltea.analyzer 說明:這是IK分詞器的核心類。它是真正意義上的分詞器實現(xiàn)。IKAnalyzer的3.0版本有別于之前的版本,它是一個可以獨立于Lucene的Java分詞器實現(xiàn)。當您需要在Lucene以外的環(huán)境中單獨使用IK中文分詞組件
14、時,IKSegmentation正是您要找 的。 ?public IKSegmentation(Reader input) 說明:IK主分詞器構(gòu)造函數(shù),默認實現(xiàn)最細粒度切分 參數(shù)1:Reader input,字符輸入讀取 ?public IKSegmentation(Reader input,boolean isMaxWordLength) 說明:IK主分詞器新構(gòu)造函數(shù),從版本V3.1.1起 參數(shù)1:Reader input,字符輸入讀取 參數(shù)2:boolean isMaxWordLength,當為true時,分詞器進行最大詞長切分; 當為false時,分詞器進行最細粒度切分。 ?public
15、 Lexeme next()throws IOException 說明:讀取分詞器切分出的下一個語義單元,如果返回null,表示分詞器已經(jīng)結(jié)束。 返回值:Lexeme語義單元對象,即相當于Lucene的詞元對象Token org.wltea.analyzer.Lexeme 類org.wltea.analyzer 說明:這是IK分詞器的語義單元對象,相當于Lucene中的Token詞元對象。由于3.0版本被設計為獨立于Lucene的Java分詞器實現(xiàn),因此它需要Lexeme來代表分詞的結(jié)果。 ?public int getBeginPosition() 說明:獲取語義單元的起始字符在文本中的位置
16、 返回值:int,語義單元相對于文本的絕對起始位置 ?public int getEndPosition() 說明:獲取語義單元的結(jié)束字符的下一個位置 返回值:int,語義單元相對于文本的絕對終止位置的下一個字符位置?public int getLength() 說明:獲取語義單元包含字符串的長度 返回值:int,語義單元長度=getEndPositiongetBeginPosition ?public String getLexemeText() 說明:獲取語義單元包含字符串內(nèi)容 返回值:String,語義單元的實際內(nèi)容,即分詞的結(jié)果 3.詞表擴展 目前,IK分詞器自帶的主詞典擁有27萬左右
17、的漢語單詞量。由于個人的精力有限,并沒有對搜集到的詞庫進行全范圍的篩選、清理。此外,對于分詞組件應用場景所涉及的領域的不同,也需要各類專業(yè)詞庫的支持。為此,IK分詞器提供了對詞典的擴展支持。 在IK分詞器3.1.3以上版本,同時提供了對用戶自定義的停止詞(過濾詞)的擴展支持。 3.1基于API的詞典擴充 IK分詞器支持使用API編程模型擴充您的詞典和停止詞典。如果您的個性化詞典是存儲于數(shù)據(jù)庫中,這個方式應該對您適用。API如下: ?類org.wltea.analyzer.dic.Dictionary 說明:IK分詞器的詞典對象。它負責中文詞匯的加載,內(nèi)存管理和匹配檢索。 ?public sta
18、tic void loadExtendWords(ListextWords) 說明:加載用戶擴展的詞匯列表到IK的主詞典中,增加分詞器的可識別詞語。 參數(shù)1:ListextStopWords)說明:加載用戶擴展的停止詞列表,從版本V3.1.3起 參數(shù)1:ListextStopWords,擴展的停止詞列表 返回值:無 3.2基于配置的詞典擴充 IK分詞器還支持通過配置IKAnalyzer.cfg.xml文件來擴充您的專有詞典以及停止詞典(過濾詞典)。 1.部署IKAnalyzer.cfg.xml IKAnalyzer.cfg.xml部署在代碼根目錄下(對于web項目,通常是WEB-INF/cla
19、sses目錄)同hibernate、log4j等配置文件相同。 2.詞典文件的編輯與部署 分詞器的詞典文件格式是無BOM的UTF-8編碼的中文文本文件,文件擴展名不限。詞典中,每個中文詞匯獨立占一行,使用rn的DOS方式換行。(注,如果您不了解什么是無BOM的UTF-8格式,請保證您的詞典使用UTF-8存儲,并在文件的頭部添加一空行)。您可以參考分詞器源碼org.wltea.analyzer.dic包下的.dic文件。 詞典文件應部署在Java的資源路徑下,即ClassLoader能夠加載的路徑中。(推薦同IKAnalyzer.cfg.xml放在一起) 3.IKAnalyzer.cfg.xml文件的配置 IK Analyzer擴展配置 /mydict.dic; /com/mycompany/dic/mydict2.dic; /ext_stopword.dic 在配置文件中,用戶可一次配置多個詞典文件。文件名使用“;”號分隔。文件路徑為相對java包的起始根路徑。 4.針對solr的分詞器應用擴展 IK分詞器3.2.0以上版本從API層面提供了對solr1.4項目擴展 4.1solr1.4的TokenizerFactor
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國制冷空調(diào)環(huán)保自控項目投資可行性研究報告
- 中國全口平底印模托盤行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 中國氣動微型泵行業(yè)市場全景調(diào)研及投資規(guī)劃建議報告
- 2024-2030年中國無線物聯(lián)網(wǎng)設備行業(yè)市場競爭格局及投資前景展望報告
- 2024年中國核電用鋼行業(yè)市場調(diào)查報告
- 2025年高壓電能表項目評估報告
- 中國醫(yī)療器械融資租賃行業(yè)全景評估及投資規(guī)劃建議報告
- 2025屆山東省泰安市新泰二中化學高二下期末統(tǒng)考試題含解析
- 中石化HSE施工風險評價報告
- 企業(yè)安全生產(chǎn)管理
- (完整文本版)新概念英語第一冊單詞表默寫版1-144
- 醫(yī)師入職測考試試題答案(臨床)
- 鋼結(jié)構(gòu)門頭專項施工方案
- SOP標準作業(yè)指導書excel模板
- 染色作業(yè)指導書
- 空間機器人地面遙操作的關鍵技術研究
- 人工智能倫理規(guī)則
- 工程物探-第五章電法勘探課件
- 婦產(chǎn)科護理學教材(課后思考題參考答案)
- 二年級數(shù)學無紙化監(jiān)測試題
- 全同態(tài)加密算法概述
評論
0/150
提交評論