zoukankan      html  css  js  c++  java
  • 命名实体识别学习笔记——使用Ltp

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
    本文链接:https://blog.csdn.net/xuewenstudy/article/details/85028173
            命名实体识别(Named Entity Recognition,简称NER)用于识别文本中具有特定意义的实体。需要识别的实体可以分为三大类(实体类、时间类和数字类)和七小类(人名、机构名、地名、时间、日期、货币和百分比)。

            本文介绍使用Ltp进行命名实体识别。

    1、安装Ltp Python组件

    (1)pyltp安装:

    pip install pyltp

    (不支持conda-python)

    (2)部署语言模型库:

    下载链接:http://ltp.ai/download.html

    解压后如图所示

    cws是中文分词模型,ner是命名实体识别模型,paeser是句法解析模型,pos是词性标注模型。

    2、使用Ltp进行命名实体识别

    (1)代码:

    import sys
    import os
    from pyltp import *

    sent = "欧洲 东部 的 罗马尼亚 , 首都 是 布加勒斯特 , 也 是 一 座 世界性 的 城市 。"
    words = sent.split(" ")

    postagger = Postagger()
    postagger.load("D:\Projects\nlp\ltp_data_v3.3.1\pos.model")    #导入词性标注模块
    postags = postagger.postag(words)

    recognizer = NamedEntityRecognizer()
    recognizer.load("D:\Projects\nlp\ltp_data_v3.3.1\ner.model")    #导入命名实体识别模块
    netags = recognizer.recognize(words, postags)

    for word,postag,netag in zip(words,postags,netags):
        print(word+'/'+postag+'/'+netag)

    (2)运行结果:

    词、词性、识别的专名用“ / ”分开了,“O”表示非专名,“S-Ns”表示地名。

    参考文献:

    郑捷,《NLP汉语自然语言处理原理与实践》
    ————————————————
    版权声明:本文为CSDN博主「xuewenstudy」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/xuewenstudy/article/details/85028173

  • 相关阅读:
    wcf技术博客
    MFC程序崩溃的友好处理
    DESCryptoServiceProvider 类
    AttributeUsage AttributeTargets
    Word 2007第n级编号不自动按照父级标题自动编号 的解决办法
    suo的作用
    "在唯一密钥属性“name”设置为“Application”时,无法添加类型为“add”的重复集合项"
    PMP考试中的成本管理英文缩写及其含义
    删除右键新建菜单中的多余项
    使用命令行启动服务
  • 原文地址:https://www.cnblogs.com/jfdwd/p/11468795.html
Copyright © 2011-2022 走看看