?
?
本文分享自 ?6 丁一的貓 的博客,主要是 python 調用 hanlp 進行命名實體識別的方法介紹。以下為分享的全文。
1 、 python 與 jdk 版本位數一致
2 、 pip install jpype1 ( python3.5 )
3 、類庫 hanlp.jar 包、模型 data 包、配置文件 hanlp.properties 放在一個新建目錄
4 、修改 hanlp.properties 中 root 根目錄,找到 data
?
?
代碼調用如下:
?
1| #coding:utf-8
2| '''
3| Created on 2017-11-21
4|
5| @author: 劉帥
6| '''
7|
8|
9| from jpype import *
10|
11| startJVM(getDefaultJVMPath(), "-Djava.class.path=D:\hanlp\hanlp-1.3.4.jar;D:\hanlp", "-Xms1g", "-Xmx1g") # 啟動 JVM , Linux 需替換分號 ; 為冒號 :
12| HanLP = JClass('com.hankcs.hanlp.HanLP')
13| # 中文分詞
14| print(HanLP.segment(' 你好,歡迎在 Python 中調用 HanLP 的 API'))
testCases = [
15| ????" 商品和服務 ",
16| ????" 結婚的和尚未結婚的確實在干擾分詞啊 ",
17| ????" 買水果然后來世博園最后去世博會 ",
18| ????" 中國的首都是北京 ",
19| ????" 歡迎新老師生前來就餐 ",
20| ????" 工信處女干事每月經過下屬科室都要親口,交代 24 口,交換機等技術性器件的安裝工作 ",
21| ????" 隨著頁游興起到現在的頁游繁盛,依賴于存檔進行邏輯判斷的設計減少了,但這塊也不能完全忽略掉。 "]
22| for sentence in testCases: print(HanLP.segment(sentence))
23| # 命名實體識別與詞性標注
24| NLPTokenizer = JClass('com.hankcs.hanlp.tokenizer.NLPTokenizer')
25| print(NLPTokenizer.segment(' 中國科學院計算技術研究所的宗成慶教授正在教授自然語言處理課程 '))
26| # 關鍵詞提取
27| document = " 水利部水資源司司長陳明忠 9 月 29 日在新聞辦舉行的新聞發布會上透露, " \
28| ???????????" 根據剛剛完成了水資源管理制度的考核,有部分省接近了紅線的指標, " \
29| ???????????" 有部分省超過紅線的指標。對一些超過紅線的地方,陳明忠表示,對一些取用水項目進行區域的限批, " \
30| ???????????" 嚴格地進行水資源論證和取水許可的批準。 "
31| print(HanLP.extractKeyword(document, 2))
32| # 自動摘要
33| print(HanLP.extractSummary(document, 3))
34| # 依存句法分析
35| print(HanLP.parseDependency(" 徐先生還具體幫助他確定了把畫雄鷹、松鼠和麻雀作為主攻目標。 "))
36| shutdownJVM()
?
結果如下:
?
1| [ 你好 /vl, , /w, 歡迎 /v, 在 /p, Python/nx, 中 /f, 調用 /v, HanLP/nx, 的 /ude1, API/nx]
2| [ 商品 /n, 和 /cc, 服務 /vn]
3| [ 結婚 /vi, 的 /ude1, 和 /cc, 尚未 /d, 結婚 /vi, 的 /ude1, 確實 /ad, 在 /p, 干擾 /vn, 分詞 /n, 啊 /y]
4| [ 買 /v, 水果 /n, 然后 /c, 來 /vf, 世博園 /n, 最后 /f, 去 /vf, 世博會 /n]
5| [ 中國 /ns, 的 /ude1, 首都 /n, 是 /vshi, 北京 /ns]
6| [ 歡迎 /v, 新 /a, 老 /a, 師生 /n, 前來 /vi, 就餐 /vi]
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
