天然語言處理工具hanlp自定義詞彙添加圖解

 

過程分析java

1.添加新詞須要肯定無緩存文件,不然沒法使用成功,由於詞典會優先加載緩存文件緩存

2.再確認緩存文件不在時,打開本地詞典按照格式添加自定義詞彙。函數

3.調用分詞函數從新生成緩存文件,這時會報一個找不到緩存文件的異常,不用管,由於加載詞典進入內存是會優先加載緩存,緩存不在固然會報異常,而後加載詞典生成緩存文件,最後處理字符進行分詞就會發現新添加的詞彙能夠進行分詞了。spa

操做過程圖解:blog

一、有緩存文件的狀況下:內存

1  System.out.println(HanLP.segment("張三丰在一塊兒我也不知道你好一個心眼兒啊,一半天歡迎使用HanLP漢語處理包!" +"接下來請從其餘Demo中體驗HanLP豐富的功能~"))io

  2編譯

3  //首次編譯運行時,HanLP會自動構建詞典緩存,請稍候……程序

4  //[張/q, 三豐/nz, 在/p, 一塊兒/s, 我/rr, 也/d, 不/d, 知道/v, 你好/vl, 一個心眼兒/nz, 啊/y, ,/w, 一半天/nz, 歡迎/v, 使用/v, HanLP/nx, 漢語/gi, 處理/vn, 包/v, !/w, 接下來/vl, 請/v, 從/p, 其餘/rzv, Demo/nx, 中/f, 體驗/v, HanLP/nx, 豐富/a, 的/ude1, 功能/n, ~/nx]im

  5

  6

  1. 打開用戶詞典–添加 ‘張三丰在一塊兒’ 爲一個 nz詞性的新詞

2.2 原始緩存文件下運行–會發現不成功,沒有把 ‘張三丰在一塊兒’ 分詞一個nz詞彙

1  System.out.println(HanLP.segment("張三丰在一塊兒我也不知道你好一個心眼兒啊,一半天歡迎使用HanLP漢語處理包!" +"接下來請從其餘Demo中體驗HanLP豐富的功能~"))

    2

3  //首次編譯運行時,HanLP會自動構建詞典緩存,請稍候……

4  //[張/q, 三豐/nz, 在/p, 一塊兒/s, 我/rr, 也/d, 不/d, 知道/v, 你好/vl, 一個心眼兒/nz, 啊/y, ,/w, 一半天/nz, 歡迎/v, 使用/v, HanLP/nx, 漢語/gi, 處理/vn, 包/v, !/w, 接下來/vl, 請/v, 從/p, 其餘/rzv, Demo/nx, 中/f, 體驗/v, HanLP/nx, 豐富/a, 的/ude1, 功能/n, ~/nx]

     5

 

3.1 刪除緩存文件 bin

3.2 再次運行程序,此時會報錯—沒法找到緩存文件

1  System.out.println(HanLP.segment("張三丰在一塊兒我也不知道你好一個心眼兒啊,一半天歡迎使用HanLP漢語處理包!" +"接下來請從其餘Demo中體驗HanLP豐富的功能~"));

    2

3  /**首次編譯運行時,HanLP會自動構建詞典緩存,請稍候……

4  十月 19, 2018 6:12:49 下午 com.hankcs.hanlp.corpus.io.IOUtil readBytes

5  WARNING: 讀取D:/datacjy/hanlp/data/dictionary/custom/CustomDictionary.txt.bin時發生異常java.io.FileNotFoundException: D:\datacjy\hanlp\data\dictionary\custom\CustomDictionary.txt.bin (系統找不到指定的文件。)   找不到緩存文件

    6

    7

8  [張三丰在一塊兒/nz, 我/rr, 也/d, 不/d, 知道/v, 你好/vl, 一個心眼兒/nz, 啊/y, ,/w, 一半天/nz, 歡迎/v, 使用/v, HanLP/nx, 漢語/gi, 處理/vn, 包/v, !/w, 接下來/vl, 請/v, 從/p, 其餘/rzv, Demo/nx, 中/f, 體驗/v, HanLP/nx, 豐富/a, 的/ude1, 功能/n, ~/nx]

    9

10  */  

相關文章
相關標籤/搜索