自然語言處理之:搭建基於HanLP的開發環境(轉)
環境搭建比FNLP的簡單,具體參考:https://github.com/hankcs/HanLP
各個版本的下載:https://github.com/hankcs/HanLP/releases
完畢後有一個報錯:
字元型別對應表載入失敗:
D:/eclipse_workspace/HanLPTest/HanLP/data/dictionary//other/CharType.dat.yes
直接在 D:/eclipse_workspace/HanLPTest/HanLP/data/dictionary//other/ 目錄下新建一個txt文件將名稱改為 CharType.dat.yes 即可。
相對比較簡單。
嘗試HanLP主要處於各個開源自然語言處理工具包之間的差異,尋找一個適合學習的開源工具包。
HanLP呼叫方法
HanLP幾乎所有的功能都可以通過工具類HanLP快捷呼叫,當你想不起來呼叫方法時,只需鍵入HanLP.,IDE應當會給出提示,並展示HanLP完善的文件。所有Demo都位於com.hankcs.demo下,比文件覆蓋了更多細節,更新更及時,強烈建議執行一遍。
HanLP的適用過程中注意的問題:
1、因為HanLP版本更新比較頻繁,所以,jar原始碼版本需要對應適用,否則原始碼和jar中介面呼叫對應不上。
在進行CRF分詞過程中報錯:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
at com.hankcs.hanlp.corpus.io.IOUtil.readBytesFromFileInputStream(IOUtil.java:251)
at com.hankcs.hanlp.corpus.io.IOUtil.readBytes(IOUtil.java:178)
at com.hankcs.hanlp.corpus.io.ByteArray.createByteArray(ByteArray.java:47)
at com.hankcs.hanlp.model.crf.CRFModel.loadTxt(CRFModel.java:89)
at com.hankcs.hanlp.seg.CRF.CRFSegment.<init>(CRFSegment.java:58)
at com.hankcs.hanlp.seg.CRF.CRFSegment.<init>(CRFSegment.java:73)
at test.Main.main(Main.java:56)
是因為CRF比較耗記憶體,所以出現記憶體不足,所以需要修改一下VM的最大記憶體。
選中工程,然後:
即可解決。
在原始碼包檔案在eclipse中打開出現亂碼,解決方法:
(必須)首先用txt開啟,然後在第一行新增:encoding="utf-8"即可。
轉載自CrazyNong 的部落格