当前位置:   article > 正文

自然语言处理系列之:词性标注与命名实体识别_词性标注和命名实体识别

词性标注和命名实体识别

大纲

  • 词性标注和命名实体识别的基础概念和常用方法
  • 基于条件随机场的命名实体识别原理解析
  • 日期识别和地名识别实践

4.1 词性标注

  • 词性:词汇基本语法属性,也称为词类;

  • 词性标注:在给定句子中判定每个词的语法范畴,确定其词性并加以标注的过程。最简单的方法是从语料库中统计每个词对应的高频词性,并将其作为默认词性;

  • 词性标注规范

    • 北大词性标注集;
    • 宾州词性标注集;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YykgaAs2-1604644370579)(https://i.loli.net/2019/08/27/LQa2YqMGbN58TIs.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KEzT7VCZ-1604644370581)(https://i.loli.net/2019/08/27/2U3ILZXxNTybcPV.png)]

  • 简单Python实现

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @version : 1.0
# @Time    : 2019-8-27 21:05
# @Author  : cunyu
# @Email   : cunyu1024@foxmail.com
# @Site    : https://cunyu1943.github.io
# @File    : posseg_demo.py
# @Software: PyCharm
# @Desc    : 词性标注

import jieba.posseg as pesg
import glob
import random
import jieba

def posseg_test(path,posseg_path):
    with open(path, 'r', encoding='gbk') as file1, open(posseg_path,'w',encoding='utf-8') as file2:
        corpus = file1.readlines()
        for line in corpus:
            words = pesg.cut(line)
            for word in words:
                print(word.word + " " + word.flag)
                file2.write(word.word + ' '+word.flag + '\n')

if __name__ == '__main__':
    print('++++测试++++')
    words = pesg.cut("词性标注是NLP中一项重要任务。")
    for word in words:
        print(word.word + '/' + word.flag)
    print('++++验证++++')
    path = './data/news/C000008/10.txt'
    posseg_path = './data/posseg/posseg_result.txt'
    posseg_test(path,posseg_path)
    print('写入成功!')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

4.2 命名实体识别

  • 定义:将对特定词的识别在词汇形态处理(如汉语切分)任务中独立处理,称为命名实体识别(Named Entities Recognition,NER),分为3大类(实体类、时间类、数字类)和7小类(人名、地名、组织机构名、时间、日期、货币和百分比);

  • 认为命名实体识别任务未解决的原因

    • 只是在有限的文本类型(主要是新闻语料)和实体类别(主要是人名、地名)中取得一定效果;
    • 评测语料较小,易产生过拟合;
    • NER更加侧重于召回率,但在信息检索领域,高准确率更重要;
    • 通用的识别多种类型的命名实体的系统性很差;
  • 中文NER面临的难题

    • 各类命名实体数量太多
    • 命名实体的构成规律复杂
    • 嵌套情况复杂
    • 长度不确定
  • 条件随机场

    1. 与HMM的的区别

      条件随机场是在给定观察的的标记序列下,计算整个标记序列的联合概率,而HMM则是在给定当前状态下,定义下一个状态的分布;

    2. 定义

      X = ( X 1 , X 2 , X 3 , … , X n ) X=(X_1,X_2,X_3,…,X_n) X=(X1,X2,X

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/595435
推荐阅读
相关标签
  

闽ICP备14008679号