searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

命名实体识别简介

2023-05-12 01:20:36
15
0

命名实体识别的定义

       命名实体可以被视为文本中具有特定意义或者指代性强的实体,如人名、地名、时间等名词。命名实体识别是自然语言处理领域的一项基础任务,目的在于从非结构化的文本中抽取出对应实体,识别其边界和类别。研究中的命名实体一般包含3大类(实体类、时间类、数字类)和7小类(人名、地名、组织机构名、时间、日期、货币、百分比)。

命名实体识别的意义

       命名实体识别是关系抽取、事件抽取、知识图谱、信息抽取、问答系统等多项自然语言处理领域任务的基础,占有重要的地位。

命名实体识别的难点

       命名实体识别的研究已经取得了很大的进展,但是仍然还存在着一些没有解决的问题。首先,当前的命名实体多数局限在特定领域的特定实体类别当中,对于其他领域的效果不够好。其次,命名实体的表达具有多样性,由于文化背景等的差别,很多实体的指代不够明确。

命名实体识别的解决方法

       命名实体识别方法主要有三类,早期的基于规则的方法,到后来基于机器学习的方法,再到近年来基于深度学习的方法。

基于规则的方法

       基于规则的方法多采用专家构造的规则模板,包括关键词、位置词、中心词等等,使用模式匹配的方法抽取符合要求的实体名称。但是这类方法对于专业知识要求比较高,过程耗时久,鲁邦性不够。

基于机器学习的方法

       主流的基于机器学习的方法有隐马尔科夫模型(Hidden Markov Moder, HMM),最大熵模型(Maximum Entropy Model, MEM),支持向量机(Support Vector Machine, SVM)和条件随机场(Conditional Random Field, CRF)等等。这其中,隐马尔科夫模型能够充分利用数据的特征,但是其得到的结果往往是局部最优的,最大熵模型的通用性较好,不过训练效率比较低,支持向量机的理论比较完备,但是其训练效率比较低,条件随机场虽然依赖特征模板,但是其比较灵活,往往能获得全局最优结果,因此,也成为了这类方法中的主流模型。CRF是给定一组输入序列的条件下,另一组输出序列的条件概率分布的模型,当输出序列的每一个位置的状态需要考虑到相邻位置的状态的时候,可以应用到CRF模型。

基于深度学习的方法

       命名实体识别方法往往被建模为序列标注问题,数据标注方式有BIO和BIOES等,这里简要介绍BIOES标注方法:

B,Begin的简写,表示实体词的开始

I,Intermediate的简写,表示实体词的中间

E,End的简写,表示实体词的结尾

S,Single的简写,表示这个实体词仅包含当前一个字

O,Other的简写,表示其它非实体词

例如,“浙江大学位于杭州”,这句话的标注结果为[B-ORG, I-ORG, I-ORG, E-ORG, O, O, B-LOC, E-LOC],这个任务即可转化为预测输入句子的标签。Bert模型在大规模无标注语料上预训练过,蕴含了大量的语法语义知识,因此,目前比较主流的方法是采用Bert作为特征抽取器,对文本token序列进行编码表征,再利用一个全连接层对序列当中的每个token进行分类,最后使用CRF层进行最终标签的确定。

命名实体识别的相关工具

      文章的最后推荐一些命名实体识别任务的相关工具。

  1. Hanlp,Hanlp是一系列模型与算法组成的NLP工具包,主要功能包括分词、关键词提取、命名实体识别等等,其链接HanLP官网
  2. SpaCy,SpaCy是工业级自然语言处理工具,主要功能包括分词、磁性标注、命名实体识别等等,其链接spaCy · Industrial-strength Natural Language Processing in Python
  3. NLTK,NLTK全称Natural Language Toolkit,由宾夕法尼亚大学开发,其链接NLTK :: Natural Language Toolkit
0条评论
作者已关闭评论
z****n
4文章数
0粉丝数
z****n
4 文章 | 0 粉丝
z****n
4文章数
0粉丝数
z****n
4 文章 | 0 粉丝
原创

命名实体识别简介

2023-05-12 01:20:36
15
0

命名实体识别的定义

       命名实体可以被视为文本中具有特定意义或者指代性强的实体,如人名、地名、时间等名词。命名实体识别是自然语言处理领域的一项基础任务,目的在于从非结构化的文本中抽取出对应实体,识别其边界和类别。研究中的命名实体一般包含3大类(实体类、时间类、数字类)和7小类(人名、地名、组织机构名、时间、日期、货币、百分比)。

命名实体识别的意义

       命名实体识别是关系抽取、事件抽取、知识图谱、信息抽取、问答系统等多项自然语言处理领域任务的基础,占有重要的地位。

命名实体识别的难点

       命名实体识别的研究已经取得了很大的进展,但是仍然还存在着一些没有解决的问题。首先,当前的命名实体多数局限在特定领域的特定实体类别当中,对于其他领域的效果不够好。其次,命名实体的表达具有多样性,由于文化背景等的差别,很多实体的指代不够明确。

命名实体识别的解决方法

       命名实体识别方法主要有三类,早期的基于规则的方法,到后来基于机器学习的方法,再到近年来基于深度学习的方法。

基于规则的方法

       基于规则的方法多采用专家构造的规则模板,包括关键词、位置词、中心词等等,使用模式匹配的方法抽取符合要求的实体名称。但是这类方法对于专业知识要求比较高,过程耗时久,鲁邦性不够。

基于机器学习的方法

       主流的基于机器学习的方法有隐马尔科夫模型(Hidden Markov Moder, HMM),最大熵模型(Maximum Entropy Model, MEM),支持向量机(Support Vector Machine, SVM)和条件随机场(Conditional Random Field, CRF)等等。这其中,隐马尔科夫模型能够充分利用数据的特征,但是其得到的结果往往是局部最优的,最大熵模型的通用性较好,不过训练效率比较低,支持向量机的理论比较完备,但是其训练效率比较低,条件随机场虽然依赖特征模板,但是其比较灵活,往往能获得全局最优结果,因此,也成为了这类方法中的主流模型。CRF是给定一组输入序列的条件下,另一组输出序列的条件概率分布的模型,当输出序列的每一个位置的状态需要考虑到相邻位置的状态的时候,可以应用到CRF模型。

基于深度学习的方法

       命名实体识别方法往往被建模为序列标注问题,数据标注方式有BIO和BIOES等,这里简要介绍BIOES标注方法:

B,Begin的简写,表示实体词的开始

I,Intermediate的简写,表示实体词的中间

E,End的简写,表示实体词的结尾

S,Single的简写,表示这个实体词仅包含当前一个字

O,Other的简写,表示其它非实体词

例如,“浙江大学位于杭州”,这句话的标注结果为[B-ORG, I-ORG, I-ORG, E-ORG, O, O, B-LOC, E-LOC],这个任务即可转化为预测输入句子的标签。Bert模型在大规模无标注语料上预训练过,蕴含了大量的语法语义知识,因此,目前比较主流的方法是采用Bert作为特征抽取器,对文本token序列进行编码表征,再利用一个全连接层对序列当中的每个token进行分类,最后使用CRF层进行最终标签的确定。

命名实体识别的相关工具

      文章的最后推荐一些命名实体识别任务的相关工具。

  1. Hanlp,Hanlp是一系列模型与算法组成的NLP工具包,主要功能包括分词、关键词提取、命名实体识别等等,其链接HanLP官网
  2. SpaCy,SpaCy是工业级自然语言处理工具,主要功能包括分词、磁性标注、命名实体识别等等,其链接spaCy · Industrial-strength Natural Language Processing in Python
  3. NLTK,NLTK全称Natural Language Toolkit,由宾夕法尼亚大学开发,其链接NLTK :: Natural Language Toolkit
文章来自个人专栏
文章 | 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0