zoukankan      html  css  js  c++  java
  • python调用hanlp进行命名实体识别

    本文分享自 6丁一的猫 的博客,主要是python调用hanlp进行命名实体识别的方法介绍。以下为分享的全文。

    1pythonjdk版本位数一致

    2pip install jpype1python3.5

    3、类库hanlp.jar包、模型data包、配置文件hanlp.properties放在一个新建目录

    4、修改hanlp.propertiesroot根目录,找到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:hanlphanlp-1.3.4.jar;D:hanlp", "-Xms1g", "-Xmx1g") # 启动JVMLinux需替换分号;为冒号:

    12|HanLP = JClass('com.hankcs.hanlp.HanLP')

    13|# 中文分词

    14|print(HanLP.segment('你好,欢迎在Python中调用HanLPAPI'))

    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 = "水利部水资源司司长陈明忠929日在国务院新闻办举行的新闻发布会上透露,"

    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]

  • 相关阅读:
    JS基本概念 -- 操作符 -- 布尔操作符
    JS基本概念 -- 操作符 -- 一元操作符
    JS基本概念 -- 数据类型(二)
    JS基本概念 -- 数据类型(一)
    JS基本概念 -- 语法
    使用Browsersync热更新热替换,解放F5
    js中汉字utf8编码互相转换
    npm 使用代理 install 插件
    时间戳转换成yyyy-mm-dd
    Backbone.View.extend之后的构造函数实例化经历了一些什么处理
  • 原文地址:https://www.cnblogs.com/adnb34g/p/11187012.html
Copyright © 2011-2022 走看看