基于条件随机场多特征融合的中文地名、机构名实体识别
2019-06-01马孟铖艾斯卡尔艾木都拉吐尔地托合提
马孟铖,艾斯卡尔·艾木都拉,吐尔地·托合提
(新疆大学信息科学与工程学院,乌鲁木齐 830046)
命名实体识别是自然语言处理的基础任务,其中通用领域语料下的复杂地名、机构名实体识别效果还有待提高。针对这一问题,提出一种多特征融合的中文地名、机构名实体识别方法,该方法以条件随机场为框架,结合实验语料的特点,选取统计特征,将局部特征、复合特征与规则知识库相融合,对中文语料进行命名实体识别。实验结果表明,1998年1月《人民日报》语料上的测试结果,地名实体的F1 值提高2.2%,达到97.70%,机构名实体的F1 值提高6.2%,达到92.80%。
命名实体;多特征融合;自然语言处理;条件随机场
0 引言
命名实体识别是自然语言处理研究领域中的一项很重要的基础性任务[1],是实体关系抽取和事件抽取等高层任务重要基石,旨在从如今互联网时代很容易获得的海量非结构文本中提取出能够体现现实世界中存在的客观具体或者抽象实体的单词或者词组,例如人名、地名和组织机构名等[2]。
中文命名实体识别研究近年来发展迅速,中文命名实体识别的方法主要是基于规则的方法、基于统计的方法和深度学习[3]的方法[4]。Huang 等[5]提出了Bi-Lstm-CRF 模型,同时还融合了其他语言学特征以提升模型性能。Collobert[6]等采用CNN 进行特征抽取,同时提出一种句级对数似然函数,通过融合其他特征取得了不错的结果。基于机器学习的命名方法通常被当作序列标注任务[7],张华平等[8]应用隐马尔可夫模型并使用角色标注的方法来进行实体识别,胡文博[9]提出一种基于多层条件随机场的命名实体识别的方法,对各粗分词串先在底层进行简单实体的识别,将结果传入到高层模型再进行复杂实体的识别,取得了不错的效果。对于医疗文本中存在大量复合疾病名称实体等问题,王鹏远[10]提出了基于多标签CRF 的疾病名称抽取方法,对数据标注多层标签进行训练,最后用标签对实体进行分离,且取得了不错的效果。以《人民日报》语料为代表的通用领域语料,其复合地名、机构名实体由于具有很强的随意性,弱化了构词规律,而且二者之间易相互嵌套,使得其识别的效果相对较差。本文基于条件随机场模型,充分利用通用领域语料的特点,选取原子特征、组合特征、语义特征等,通过构建原子模板和复合模板,与知识库相结合的方式识别地名、机构名实体,实验结果表明,该方法取得了较好的效果。
1 条件随机场
条件随机场是一个在给定输入节点条件下计算输出节点的条件概率的无向图模型。条件随机场是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,计算下一个状态的状态分布。对于观察值序列W 和状态序列O,可以定义一个线性的CRF 模型,形式如下:
其中,Zw 是归一化参数,它使得给定输入的所有可能状态序列的概率之和为1。Fk(On-1,On,W,n)是对于整个观察序列W,标记位于N 和N-1 之间的特征函数,特征函数可以是0、1值,也可以是任意实数。Θ=θ1θ2…θk是特征函数对应的权重。对与W 来说,目标是搜索概率最大的O*=argmaxP(W|O)。
2 基于CRFs的命名实体识别
对于条件随机场模型而言,观察序列x 即输入的句子是已知的,可以得到任意位置的观测值,而状态序列y 需要人工标注,但并不计入特征函数,只是用于最后标定标记联合概率分布的参考。使用特征构建特征模板,进而得到特征函数。本文采用的训练工具是:CRF++0.58;CRF++是著名的条件随机场的开源工具,也是目前综合性能最佳的CRF 工具。它可以自动生成一系列的特征函数,而不用我们自己生成特征函数,我们要做的就是寻找特征,基于条件随机场命名实体识别流程图如图1 所示。
图1 基于条件随机场命名实体识别流程图
2.1 类别标注
状态序列需要进行标注。原始语料中文本已被分成词语的形式,如“忠诚/a 的/u 共产主义/n 战士/n”,我们对语料中的实体进行标注,用“B-”、“I-”、“E-”、“S-”表示出上下文的语义关系。如“[西藏/ns 自治区/n 政府/n]nt 副/b 主席/n”标注成“西藏B-nt 自治区I-nt 政府E-nt 副O 主席O”。这样我们可以将语料中的人名、地名、机构名实体标注出来作为状态序列。
2.2 特征选择
在基于统计机器学习的命名实体识别方法中,特征的选择能够直接影响最终识别性能的好坏。本文着重对地名、机构名实体研究,提取出合适的特征。
(1)词语本身标记为WORD:本文选取的1998年人民日报语料,通过NLPIR-ICTCLAS 分词系统将原始文本进行切分形成词语。词语是表达中基本的形式,含有丰富的信息。
(2)词性标记为POS;分词系统切分词语的过程中会标注词语的词性。地名、机构名实体的词性一般为名词、名词短语、动词或动词短语,而几乎不会是介词、连词等词性。故可认为与实体有一定的相关性。
(3)实体的特征核心词标记为CORE:对语料下的复合地名、复合机构名实体研究发现,这些实体一般都含有核心词,如“地区”,“自治区”出现时大概率会出现地名,如“日喀则地区”,“新疆维吾尔自治区”。对于机构实体而言,“公司”,“委员会”很大程度上是机构名的中心词,如“中国文联出版公司”,“美国联邦储备委员会”。针对这一特点,我们添加实体的核心词作为特征。
(4)实体的右边界词标记为Right_Boundary;中文地名和机构名的组成随意性较大,如果能够确定实体边界,就能提高实体的识别效果。分析语料,我们发现实体的上下文出现的词是有规律的,如“位于河南附近”,位于一般是地名的左边界词,附近也可作为地名的右边界词。考虑到一些地名开头的复合机构名易误识别成地名,如“新疆大学”可能只识别出“新疆”,所以我们选取实体的右边界词作为特征,能够区分地名和机构名边界。
(5)复杂机构名的左右边界限定标记为Ins_Limit;语料中一些复杂的机构名识别率较低,对其分析,发现其存在以下几个特点:一是字符长度较长,增加了识别难度;二是该类实体一般由地名+简单机构名组合而成。识别过程中容易误识别或漏识别。针对这一问题,我们利用该类实体的特点,通过判断实体开头是否为地名构建复合机构限定词词典,对测试集进行标注。
2.3 特征模板
选取实体特征后,验证特征是否对于实体识别有提高需要组合不同的特征进行实验对比,组合特征需要根据特征类型构建模板。所以特征模板的构建也是实体识别的关键。
CRF++工具包通过固定格式的特征模板来定义特征集,允许在一个上下文中按一元(Unigram)、二元(Bigram)、三元(Trigram)来使用特征。以下列出了特征模板实例,如表1 所示。
表1 特征模板实例
表中每一行%x[#,#]表示生成一个条件随机场中的点函数:f(S,O),其中S 为t 时刻的标签,O 为t 时刻的上下文,如表2 中的训练语料所示。
表2 训练语料模板
当前考虑的位置t 为“顺利”,本文选取的上下文窗口大小为5;
表1 中U00-U04 特征模板:表示某个位置与当前位置的词的关系,如U04:%x[2,0]表示“顺利”和“对”之间的联系。
U05-U07 特征模板:表示某个位置与当前位置的词性的关系,如U06:%x[-1,1]表示“政府”的词性“n”和“顺利”的词性“ad”之间的联系。
同理U08-U09 特征模板:表示某两个位置与当前位置的词的关系;U10-U12 表示某两个位置与当前位置的词性的关系;U13-U15 特征模板表示表示某三个位置与当前位置的词性的关系。
随着特征的不断增多,特征模板的数量也快速增加,这会加重实验的数据处理量,增加训练的复杂度,甚至会降低实体识别的准确度。可见,如何根据特征的效果有选择地构建特征模板,也是命名实体识别研究的关键。
3 实验及结果分析
3.1 实验数据集及实验设计
实验所用语料为1998年1月的人民日报语料,该语料为通用领域语料,其中复杂地名、机构名实体的识别效果还有待提高。本文随机抽取10000 条句子作为训练语料,3000 条句子作为测试语料。
本文将采用准确率(P)、召回率(R)和F 值等三个指标来评价实验的性能。
3.2 特征选取及地名、机构名识别实验
根据语料的特点选择不同的特征,特征的选取决定了命名实体识别效果的好坏。除了词和词性特征意外,本文选取了三项特征加入特征模板。
选取特征时,以“组织”一词为例,如果把“组织”作为特征进行标记,则应该把语料中所有出现的“组织”都进行标记。但是“组织”在“世界卫生组织”中是实体的中心词,在“组织当地群众开展……”中就不是中心词了。这可能会导致数据稀疏问题。所以我们通过设定阈值,满足条件的词添加标记作为特征。不同阈值下得到的右边界词个数如表1 所示。
如表3、表4 所示,实体右边界词特征的阈值取0时做标记词数为25807 个。阈值取0.05 时,该特征标记下的词数为19851 个,语料中词语标注的数目下降了1/5。实体中心词特征的阈值取0 时做标记词数为23665 个。阈值取0.3 时,该特征标记下的词数为10290 个。标记数目下降1/2,有效避免了数据稀疏问题。虽然实体右边界词特征阈值取0.1 时,语料中词语标记数下降了1/2,但是实体右边界词也减少了2/3,会使得该特征对于语料中的实体表示不够充分,造成识别效果下降。所以实体中心词特征的阈值设为0.3,实体右边界词特征的阈值设为0.05。
表3 不同阈值下实体中心词个数及语料中词语标记数
表4 不同阈值下实体右边界词个数及语料中词语标记数
通过设定不同阈值获得特征后,选取不同特征构建特征模板进行实验对比,构造组合特征进行对比实验。原子、组合特征模板如表5 所示。
表5 原子、组合特征模板
3.3 实验结果分析
选取不同特征,构造特征模板对添加特征的效果进行实验,如表6 所示。
4 结语
本文针对通用领域下地名、机构名实体的特点,通过选取地名、机构名实体的原子特征,复合特征和语义特征,利用条件随机场模型根据训练模型对地名、机构名实体进行识别。实验结果表明:该方法能够有效地识别通用语料下地名、机构名实体。地名实体的F1 值达到了97.70%,机构名实体的F1 值提高了6.2%,达到了92.80%。
表6 不同特征模板下地名、机构名识别的效果