命名实体识别 概念
命名实体识别(Named Entity Recognition,简称NER) , 是指识别文本中具有特定意义的词(实体),主要包括人名、地名、机构名、专有名词等等,并把我们需要识别的词在文本序列中标注出来。
例如有一段文本:天津市空港经济区
我们要在上面文本中识别一些区域和地点,那么我们需要识别出来内容有:
天津市(地点)
空港经济区(地点)
NER的识别靠的是标签,在长期使用过程中,有一些大家使用比较频繁的标签,这里有个网站可以参考
识别上述例子我们使用了以下几个标签:
"B-ORG":组织或公司(organization)
"I-ORG":组织或公司
"B-PER":人名(person)
"I-PER":人名.
"O":其他非实体(other)
"B-LOC":地名(location)
“I-LOC":地名
你肯定很关心“B”和“I”是什么意思?为什么一个实体会对应两个标签?(除O之外)下面会进行解释
首先说明,在文本中我们是以字为单位进行标注的
那么“B”和“I”是什么东西?
“B”是Begin的缩写,“I”我不知道是什么的缩写(如果你知道可以在评论区留言)
我们知道实体一般是一个词,因此用来表示它的文字应该有多个
而“B”就是用来表示某个实体开头的第一个字的(英文实体则为单词)
如: 天津市可以表示为 天(B-LOC)津(I-LOC)市(I-LOC) #以B-LOC开头后面必须全为某某LOC,不能出现别的标签,比如B-PER后面跟个I-LOC就不行 #在训练的时候,我们通常会再加一个概率图模型来减少上述错误的发生,如HMM等 纽约New York可以表示为 New(B-LOC) York(I-LOC)人名同理不再举例
“O”则表示文本中不相关的字
如: 小红想去二空螺蛳粉嗦粉 上述文本中,除了“小红”和“二空螺蛳粉”以外的字都是“O"(前提是你不关心这些字)注:除了上述标注方法外的标注均为非法标注
那么™的HMM又是什么?
隐马尔可夫模型,即HMM,是概率图模型的一种,属于生成模型。
笼统的说,我们在上面谈论的"BIO"的实体标签,就属于一种不可观测的隐状态,而HMM模型就是描述由隐状态序列(实体标记)生成可观测结果(可读文本)的过程.
在我们讨论NER的问题当中,隐状态序列是实体标记序列,而可观测序列是我们可读的原始语料文本序列.
如:
隐藏状态序列:(B-LOC)(I-LOC)(I-LOC) 观测状态序列: 天 津 市这只是HMM用于NER标签时的情况
我们还可以举个例子将HMM思想拓展一下
假如我在打游戏,这时我突然想起一个人,然后我看通讯录找到他的名字给他打电话 上述例子中, 想起的这个人就是隐藏状态; 他的名字就是观测结果; 而我举例用的整段话就是HMM模型本身(因为它描述了一个过程)