一、NLPIR是什么?
NLPIR(漢語分詞系統)由中科大張華平博士團隊開發,主要功能包括:中文分詞,詞性標注,命名實體識別,用戶詞典功能,詳情見官網:http://ictclas.nlpir.org/。
二、java環境下的使用:
主要參考了如下資料:http://www.360doc.com/content/14/0926/15/19424404_412519063.shtml
下面是個人的使用方法,僅供參考
1、下載NLPIR工具包,鏈接如下:http://ictclas.nlpir.org/newsdownloads?DocId=389
工具包中主要包含了以下內容:(待補充)
2、NLPIR是在c、c++環境下的,所以在java環境下,得下載其提供的java接口, 所以我又下載了 windows 下64位的JNI 壓縮包(根據自己機器環境下載):http://ictclas.nlpir.org/newsdownloads?DocId=353
所以現在有兩個文件包:NLPIR工具包,JNI接口包。
3、現在可以開始構建自己的項目了:
(1)創建一個java 項目,最后形成的目錄如下圖:
其中:bai包中的是自己寫的測試程序
Kevin.zhang是64位JNI壓縮包中的內容,拷貝到自己創建的java項目中
file:為自己創建的目錄,Data文件是來自NLPIR工具包
test:來自NLPIR工具包
NLPIR.dll 來自NLPIR工具包lib 目錄中
NLPIR_JNI.dll來自JNI接口包
4、編寫分詞程序
代碼如下:
package bai; import kevin.zhang.NLPIR; public class nlpir_test { public static void main(String args[]) { try { test(); } catch(Exception e) { e.printStackTrace(); } } static void test()throws Exception { // TODO Auto-generated method stub //這里就是("./file/")不用修改 NLPIR nlpir=new NLPIR(); if(!NLPIR.NLPIR_Init("./file/".getBytes("UTF-8"),1)) { System.out.println("NLPIR初始化失敗"); return ; } //句子分詞測試 String temp="每天的日報都記得要發送, 以配合經理掌握項目的進度情況"; byte[] resBytes=nlpir.NLPIR_ParagraphProcess(temp.getBytes("UTF-8"),0); System.out.println("分詞結果: "+new String(resBytes,"UTF-8")); //文件分詞測試 String utf8File = "E:/wbjddata/user_product_similarity/product_vector_pro.txt"; String utf8FileResult = "E:/wbjddata/user_product_similarity/product_vector_pro_seg_result.txt"; nlpir.NLPIR_FileProcess(utf8File.getBytes(), utf8FileResult.getBytes(), 0); // 退出, 釋放資源 NLPIR.NLPIR_Exit(); //nlpir.NLPIR_FileProcess,nlpir.NLPIR_ParagraphProcess中第二個參數0,表示只顯示分詞,不顯示詞性的標注 } }