1. 程式人生 > >自然語言處理之:搭建基於HanLP的開發環境(轉)

自然語言處理之:搭建基於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 的部落格