提出了一种基于多特征的中文文本蕴含识别方法,首先对文本进行预处理、中文分词、词性标注、命名实体识别、依存分析等处理;然后提取字符串特征、句法特征、语义特征等,使用贝叶斯逻辑回归模型进行预测;最后再使用规则进行修正,得到最终的识别结果. 该方法在2014年RITE-VAL评测任务的CS数据上的MacroF1为0.625,超过目前最好的研究现状(MacroF1:0.615, BUPTTeam-CS-SVBC-05).
Recognizing textual entailment is an effective approach for computer to automatically identify semantic relation between texts with an important position in the field of natural language processing. A method using multi-feature was proposed. The new algorithm preprocess the raw text, Chinese characters segmentation, part-of-speech tagging, named entity recognition and dependency parser, string features, syntactic features and semantic features and uses Bayesian logistic regression model to predict the preliminary results, finally it uses the rules to filter the results. Experiments indicate that the algorithm's MacroF1 on RITE-VAL data is 0.625, outperform optimal value (MacroF1:0.615, BUPTTeam-CS-SVBC-05).
文本蕴含识别(RTE,recognizing textual entailment)是一项针对计算机“理解”文本语义的研究. 如果文本H的意义(置于T的语境下解释时)可以从文本T的语义中推断出来,那么文本T蕴含文本H,记作T≥H[1]. RTE是自然语言处理(NLP,natural language processing)领域的一项基础研究,可以应用到不同的信息处理技术上,例如问答系统、文本摘要、信息抽取等. 在问答系统中,问题的答案可以从表面存在差异但语义存在关联性的文本中获得. 在文本摘要中,使用文本蕴含技术,过滤掉冗余的信息获得必要的信息[2].
Harris[3]的分布假设指出,如果2个单词的上下文语境相似,那么它们的意思也相似. 因此,可以通过提升文本间的相似度来提升文本间的语义相似性. 笔者首先对文本进行规格化预处理,之后对文本进行中文分词、词性标注、命名实体识别、依存分析等处理,然后从字符串、句法、语义等多方面抽取特征,使用贝叶斯逻辑回归模型进行蕴含识别,得到初步结果,最后使用规则集合进行过滤,得到最终的蕴含结果. 该方法在2014年RITE-VAL评测任务的CS数据上进行实验,实验结果的MacroF1为0.625,高于评测的最优值0.615[4],说明该方法对于提升RTE性能是有效的.
1 相关工作RTE方法主要归纳为以下几个方法:基于文本相似度的方法、基于机器学习的方法、基于知识库的方法[5]、基于规则的方法. 基于文本相似度的方法依赖这样的假设:2个文本的相似度越高,文本间存在蕴含关系的可能性越大,这种方法简单,性能尚可,但不足是缺乏考虑词语间的语义关系;基于机器学习的方法是把判定文本间的蕴含关系看成是分类问题,这样可以在已有的分类模型上求解,但由于目前训练语料比较少,所以不太适合单纯用机器学习方法[6];基于知识库的方法主要是使用具有语义关系的词典,例如WordNet、知网等,由于知识库主要是人工完成的,词汇之间的语义关系质量很高,使得可以使用的信息比较精确,但是知识库资源有限且不针对特定的任务,因此无法解决语言中存在的复杂的语义关系;基于规则的方法主要是设定很多规则,当满足某一条件时给出特定的结论,对符合规则的文本可以作出非常准确的判断,但是由于语言表达的多样性,很难整理语言中存在的各种现象.
逻辑回归是机器学习中的一类重要的线性分类模型,也是判别式模型的一个重要实例. 逻辑回归模型定义一个线性判别函数,然后采用一个连续函数将输出从实数空间映射到[0,1]空间中,来对0/1输出的概率进行建模,从而实现分类. 逻辑回归模型也存在一定的局限性. 例如,逻辑回归模型只能学习单个模型,不能分析模型中可能存在的不确定性. 贝叶斯模型通过引入先验分布,使用似然函数求解后验分布来对模型中的不确定性进行建模,因此贝叶斯模型具有更好的鲁棒性. 将贝叶斯模型应用于逻辑回归模型就可以得到贝叶斯逻辑回归模型,同样可以应用到各类分类问题[7].
2 基于多特征的RTE算法基于多特征的RTE算法充分使用外部知识和各种特征,采用机器学习与规则相结合的方法进行RTE,该算法包含4部分:文本预处理、文本处理、建模分类和规则过滤,架构如图 1所示.
2.1 预处理 2.1.1 字符转化字符转换主要涉及以下3方面:
1) 把繁体字转化为简体字;
2) 把全角字符转化为半角字符.
2.1.2 数字转化文本中的数字有多种表达方式,例如汉字、阿拉伯数字、百分数、小数、分数. 为了避免因表达不一致导致的蕴含判定错误,最终把数字进行处理,如
把百分数、分数用对应的小数替换(如1/4转化为0.25).
2.1.3 时间转化文本中表述时间的信息,主要分为“世纪”信息、“日期”信息、“时间点”信息的表述,因表述方法众多,作归一化处理,处理后的最终格式如表 1所示.
首先对文本进行中文分词,并对分词结果进行如下处理.
1) 如果分词结果中存在连续n(n>3,n为正整数)个单字词可以组成词条名,那么把分词结果中这n个单字词用对应的词条替换. 例如
T: 干 炒 牛 河 是 广东 菜色 的 一 种.
用词条名“干炒牛河”替换“干 炒 牛 河”.
2) 如果文本T、H只相差一个词语,但分词结果不一致,对于分词不同的部分进行概率最大化修正.
T: 马来西亚 陆军 的 前身 是 成立于 1933-03-01 的 马来 志愿 军团.
H: 马来西亚 陆军 的 前身 是 成立 于 1933-03-01 的 马来 志愿 军团.
用“成立 于”替换“成立于”.
然后对文本进行词性标注、命名实体识别和依存分析等操作.
2.3 特征提取 2.3.1 知识抽取为了能够有效地使用语义信息,笔者使用已有知识和互联网收集的等价词、反义词、意愿词、情态动词、否定词、上下位词表等.
其中,等价词是指可以相互替换的词语,笔者通过如下3种方式获得.
1) 查询近义词网站.
2) 分析查询词对应的百科网页,在结构化的网页中匹配抽取有效的信息,例如
① 海岬,又称陆岬;
② 回教一般指伊斯兰教.
通过分析处理,得出①句中的“海岬”与“陆岬”互为等价词,②句中的“回教”与“伊斯兰教”互为等价词.
3) 对于2段文本中,如果只有1对词语不同,并且这对词语不在上面1)、2)2步获得的等价词集合内,通过查词典,如果对应的英语单词中有相同的词语,那么这对词语就是1对等价词,例如
T: 纽伦堡 审判 中的 被告 共 计 22 名 ,均 为 纳粹 德国 的 军政 首领.
H: 纽伦堡 审判 中的 被告 共 计 22 名 ,均 为 纳粹 德国 的 军政 头子.
“首领”和“头子”是唯一1对不同的词,在词典中,“首领”对应的英文单词有chieftain、leader、head、caption、header ;而“头子”对应的英文单词有chieftain、chief、boss.因2个词语对应的英文有相同的单词“chieftain”,就把这2个词语归为等价词语.
2.3.2 字符串特征提取的字符串特征有n元语法重叠度、蕴含得分、余弦相似度、最长公共子序列相似度,其定义如下.
N-gram模型是指当前词语出现的概率仅与它前面N-1个词语相关. n元语法重叠度定义为文本T和文本H中连续的相同n(n≥N)个词语的概率之和占文本H中每个词语的概率之和的比例. Bi元语法重叠度为
$$B = \frac{{\sum\limits_{{w_i}{{_ - }_1}{w_i} \in (T \cap H)}^{} {p({w_i}{\rm{|}}{w_i} - 1)} }}{{\sum\limits_{{w_i}_{ - 1}{w_i} \in (H)}^{} {p({w_i}{\rm{|}}{w_i} - 1)} }}$$ | (1) |
其中:p(wi|wi-1)由式(2)计算得出,c(wi-1wi)为二元语法wi-1wi在训练语料中出现的频率次数,为了防止0概率事件,使用加法平滑方法,δ为0~1之间的小数. 该特征反映了词语间的搭配信息.
$p({w_i}|{w_i}) = \frac{{c({w_{i - 1}}{w_i})}}{{\sum\limits_{{w_i} = 1}^{} {(c({w_i}_{ - 1}{w_i}) - \delta )} }}$ | (2) |
蕴含得分基于这样的假设,即文本间重合的词语个数占被蕴含文本词语的集合的比率越高,文本间存在蕴含关系的几率越大,可表示为
$E = \frac{{\sum\limits_{w \in (T \cap H)}^{} {c(w)} }}{{\sum\limits_{w \in (H)}^{} {(c(w) - \delta )} }}$ | (3) |
其中:T、H为文本T和H包含的词语集合,c(w)为词语w的个数. 式(3)既考虑了文本T和假设H词语的交集,又考虑了假设H的归一化操作,避免了长文本因包含词语个数多而产生偏置. 但是式(3)并未考虑词语的权重,因为在一个文本中词语对表示文本语义起到的贡献是不一样的,因此把蕴含得分修正为
$E = \frac{{\sum\limits_{w \in (T \cap H)}^{} {{I_w}} }}{{\sum\limits_{w \in (H)}^{} {{I_w}} }}$ | (4) |
其中:Iw为词语w的逆文本频率(IDF,inverse document frequency),用来衡量词语的权重,由式(5)、式(6)[8]计算得出,其中N为文本总数,β为未登录词的IDF,它通过训练语料得到. 从式(5)可以看出,词语在文本集合中出现次数越多(如“的”),那么IDF越低,说明该词语反映文本语义的能力越弱.
${I_w} = \log \left( {\frac{{\sum\limits_{w \in l}^{} {c(l)} }}{N}} \right)$ | (5) |
${I_w} = \beta $ | (6) |
其中:c(l)为文本的数量,w∈l为包含词语w的文本.
为了进一步区分不同权重的词语对蕴含得分的影响,对式(4)中词语的IDF取α次幂(α为整数),把蕴含得分修正为
$E = \frac{{\sum\limits_{w \in (T \cap H)}^{} {{{({I_w})}^\alpha }} }}{{\sum\limits_{w = (H)}^{} {{{({I_w})}^\alpha }} }}$ | (7) |
通过文本T和文本H中的词语构建词向量,
计算2者的余弦相似度. 以文本向量DT=(wi1,wi2,…,win)和文本向量DH=(wj1,wj2,…,wjn)为例,DT和DH之间的余弦相似度为
$\cos ({D_T},{D_H}) = \frac{{\sum\limits_{k = 1}^n {{w_{ik}}w_{jk}^2} }}{{\sqrt {\sum\limits_{k = 1}^n {w_{ik}^2} } \sqrt {\sum\limits_{k = 1}^n {w_{jk}^2} } }}$ | (8) |
余弦相似度的几何意义为衡量2个文件的向量在高维度空间中的夹角. 夹角越小,余弦相似度越大,说明文本越相似;反之,说明文本越不相似. 但余弦相似度没有反映词语之间的语序信息.
最长公共子序列相似度为
$L = \frac{{S(T,H)}}{{r(H)}}$ | (9) |
其中:S(T,H)为文本T和文本H的最长公共子序列长度,r(H)为文本H中包含的词语个数. 最长公共子序列相似度越大,说明文本T和文本H越相似.
2.3.3 其他特征下面从词语、句法、语义等方面提取特征,包括句子长度、词语重叠等特征,具体的特征表示及其含义如表 2所示.
使用训练语料d={(x1,y1),(x2,y2),…,(xn,yn)}通过有监督的方法得到分类模型y=f(x). 其中,输入向量为xi=[xi1,xi2,…,xim],输出yi∈{1,0}. 逻辑回归模型的条件概率分布为
$P(Y = 1|\beta ,{x_i}) = \psi \left( {\sum\limits_j^{} {{\beta _i}{x_{i,j}}} } \right)$ | (10) |
在这里引入逻辑连接函数为
$\psi (r) = \frac{{\exp (r)}}{{1 + \exp (r)}}$ | (11) |
就产生了一个贝叶斯逻辑回归模型.
为了使贝叶斯逻辑回归作出更加准确的预测,应避免在训练数据中出现过拟合现象,过拟合现象在向量维度特别大和训练数据特别稀疏的情况下更为明显. 使用贝叶斯逻辑回归避免过拟合出现的方法是引入关于β的先验分布,如高斯分布等.
2.5 规则过滤通过分析文本和相应的预测结果,得知许多分类错误的文本具有很多特点和共性. 为了提升实验性能,笔者使用规则进行过滤. 几种典型的规则如下.
规则1 如果文本T和文本H只相差1个不表示地理空间信息的上下位词语,并且文本分词结果中含有“首”、“最”、“首*”(*表示单位)、“第*”(*表示数字)等词语,那么蕴含结果为“N”,例如
T: 奥运会 获得 金牌 总数 最 多 的运动员.
H: 奥运会 获得 奖牌 总数 最 多 的运动员.
此例满足规则1,因此蕴含结果为“N”.
规则2 如果文本T和文本H只相差1个上下位词语,并且文本分词结果中不含有“首”、“最”、“首*”(*表示单位)、“第*”(*表示数字)等词语. 如果文本T中的词语是文本H中词语的上位词,那么蕴含结果为“N”;如果文本T中的词语是文本H中词语的下位词,那么蕴含结果为“Y”. 例如
T: 2008-00-00 北京 奥运会 在 北京 举办.
H: 2008-00-00 北京 奥运会 在 中国 举办.
“北京”是“中国”的下位词,因此T蕴含H,而H不蕴含T.
3 实验 3.1 实验数据实验所用数据来源于NTCIR-11的RITE-VAL评测任务,训练数据和测试数据统计结果如表 3所示.
系统的性能采用国际度量指标MacroF1,定义为
$M = \frac{1}{{|C|}}\sum\limits_{c \in C}^{} {F{1_c}} = \frac{1}{{|C|}}\sum\limits_{c \in C}^{} {\frac{{2{P_c}{R_c}}}{{{P_c} + {R_c}}}} $ | (12) |
其中:C为分类集合,取值为“Y”和“N”;|C|=2,为类别的个数;Pc和Rc分别为类别c的准确率和召回率,定义为
${P_c} = \frac{{{N_{c,{\rm{correct}}}}}}{{{N_{c,{\rm{predicted}}}}}}$ | (13) |
${R_c} = \frac{{{N_{c,{\rm{correct}}}}}}{{{N_{c,{\rm{target}}}}}}$ | (14) |
为检验基于规则过滤的有效性,笔者通过设置是否使用规则过滤进行结果对比. 同时,对实验语料使用贝叶斯逻辑回归(LR,logistic regression)模型、支持向量机(SVM,support vector machine)模型和决策树(DT,decision tree)模型作为分类模型进行对比. 实验结果如表 4所示. 其中:LR为贝叶斯逻辑回归模型,SVM为支持向量机模型,DT为决策树模型.
通过上述实验得出,增加规则过滤,3种模型的预测结果都有所提升,其中贝叶斯逻辑回归并使用规则集合进行过滤的预测效果最好. 实验最好效果MacroF1为0.625,高于RITE-VAL评测时的最高值0.615[4].
为了分析规则过滤的有效性,笔者对使用贝叶斯逻辑回归模型和规则过滤结合的实验进行了分析,表 5对过滤前后的预测结果个数进行了统计.
从表 5可以看出,使用规则纠正正确的个数为31个,纠正错误的个数为25个,即纠正正确的个数比纠正错误的多. 通过分析数据可知,规则纠正错误的主要原因分为如下几种情况.
1) 在文本处理时的错误对结果造成影响,例如
T: 《瀛台泣血记》为清朝宫廷女官裕德龄所撰写的一本有关光绪皇帝一生的故事.
H: 《瀛台泣血记》为清朝裕德龄撰写的一本有关光绪皇帝一生的故事.
使用S-MSRSeg进行命名实体识别的结果为:T中包含的人名实体为“官裕德”,H中包含的人名实体为“裕德”. 使用规则“除去等价词和上下位词外,文本H中包含不存在于文本T中的命名实体,蕴含结果为‘N’”.
2) 逻辑计算能力不足对结果造成影响,例如
T: 现今学界普遍认为红楼梦通行本前80回为曹雪芹所作,后40回不知为何人所作.
H: 现今学界普遍认为红楼梦通行本前2/3为曹雪芹所作,后1/3不知为何人所作.
文本T中的数字80和40分别对应文本H中的2/3和1/3,在使用规则时,因在文本H中存在不在文本T中的数字,故判定为“N”.
4 结束语基于知识库和多个特征,使用机器学习和规则过滤相结合的方法对文本进行RTE,提出了抽取知识的方法和使用词语的IDF计算文本间蕴含得分的计算公式. 为了验证实验的有效性,在评测数据集上作了大量的对比实验,且实验结果高于评测的最好成绩(MacroF1:0.615,BUPTTeam-CS-SVBC-05),说明了该方法的有效性. 该方法还有很多需要解决的问题:1)意思相近的词组的文本对齐,例如“文盲”和“不识字的人”;2)逻辑计算能力不强,目前系统可以处理的只是非常少的一部分,还需要进一步研究;3)如何判断文本间不同的词语是否是反义词.
[1] | 袁毓林, 王明华. 文本蕴含的推理模型与识别模型[J]. 中文信息学报, 2010, 24(2): 3-13. Yuan Yulin, Wang Minghua. The inference and identification models for textual entailment[J]. Journal of Chinese Information Processing, 2010, 24(2): 3-13.[引用本文:1] |
[2] | Suguru M, Yusuke M, Tomohide S, et al.Overview of the NTCIR-11 recognizing inference in text and validation(RITE-VAL) task[C] //Tokyo, Japan: National Institute of Informatics, 2014: 223-232.[引用本文:1] |
[3] | Katz J J. The philosophy of linguistics[M]. New York: Oxford University Press, 1985: 121-437.[引用本文:1] |
[4] | Tan Yongmei, Wang Minda, et al. Recognizing textual entailment using multiple features[C]//Tokyo, Japan: NTCIR-11, 2014: 240-243.[引用本文:2] |
[5] | 徐幸. 中文文本蕴含的推理模型[C]//中国中文信息学会. 中国计算语言学研究前沿进展(2009—2011). 北京: 清华大学出版社, 2011: 192-199.[引用本文:1] |
[6] | 石晶, 戴国忠. 基于知网的文本推理[J]. 中文信息学报, 2006, 20(1): 76-84. Shi Jing, Dai Guozhong. Text inference based on HowNet[J]. Journal of Chinese Information Processing, 2006, 20(1): 76-84.[引用本文:1] |
[7] | 侯禹腾. 数据增广求解贝叶斯Logistic回归模型的方法研究[J]. 计算机光盘软件与应用, 2014(15): 87-94.[引用本文:1] |
[8] | 曾俊瑀. 文本蕴涵推理系统的研究与实现[D]. 北京: 北京邮电大学, 2013: 31.[引用本文:1] |