3.3 命名实体识别 87
3.3 命名实体识别
在人类使用语言的过程中,单词往往不是独立出现的。很多时候,多个单词会
组合成一个更大的单元来表达特定的意思。其中,最典型的代表是命名实体(Named
Entity)。通常,命名实体是指名词性的专用短语,例如公司名称、品牌名称、产品
名称等专有名词和行业术语。准确地识别出这些命名实体,是提高机器翻译质量的
关键。比如,在翻译技术文献时,往往需要对术语进行识别并进行准确翻译,因此引
入命名实体识别(Named Entity Recognition)可以帮助系统对特定术语进行更加细致
的处理。
从句法分析的角度来说,命名实体识别是一种浅层句法分析任务。它在分词的
基础上,进一步对句子浅层结构进行识别,包括词性标注、组块识别在内的很多任
务都可以被看作是浅层句法分析的内容。本节会以命名实体识别为例,对基于序列
标注的浅层句法分析方法进行介绍。
3.3.1 序列标注任务
命名实体识别是一种典型的序列标注(Sequence Labeling)任务,对于一个输入
序列,它会生成一个相同长度的输出序列。输入序列的每一个位置,都有一个与之
对应的输出,输出的内容是这个位置所对应的标签(或者类别)。比如,对于命名实
体识别,每个位置的标签可以被看作是一种命名实体“开始”和“结束”的标志,而
命名实体识别的目标就是得到这种“开始”和“结束”标注的序列。不仅如此,分
词、词性标注、组块识别等也都可以被看作是序列标注任务。
通常来说,序列标注任务中首先需要定义标注策略,即使用什么样的格式来对
序列进行标注。为了便于描述,这里假设输入序列为一个个单词
2
。常用的标注策略
有:
• BIO 格式(Beginning-inside-outside)。以命名实体识别为例,B 代表一个命名实
体的开始,I 表示一个命名实体的其它部分,O 表示一个非命名实体单元。
• BIOES 格式。与 BIO 格式相比,多出了标签 E(End)和 S(Single)。仍然以命
名实体识别为例,E 和 S 分别用于标注一个命名实体的结束位置和仅含一个单
词的命名实体。
图3.8给出了不同标注格式所对应的标注结果。可以看出文本序列中的非命名实
体直接被标注为“O”,而命名实体的标注则被分为了两部分:位置和命名实体类别,
图中的“B”、“I”、“E”等标注出了位置信息,而“CIT”和“CNT”则标注出了命
名实体类别(“CIT”表示城市,“CNT”表示国家)。可以看到,命名实体的识别结
果可以通过 BIO、BIOES 这类序列标注结果归纳出来:例如在 BIOES 格式中,标签
“B-CNT”后面的标签只会是“I-CNT”或“E-CNT”,而不会是其他的标签。同时,
2
广义上,序列标注任务并不限制输入序列的形式,比如,字符、单词、多个单词构成的词组都可以
作为序列标注的输入单元。