杨思春,高 超,秦 锋,戴新宇,陈家骏
(1. 南京大学 计算机软件新技术国家重点实验室,江苏 南京 210093;2. 安徽工业大学 计算机学院,安徽 马鞍山 243002; 3. 滁州学院 计算机与信息工程学院,安徽 滁州 239000)
在开放域问答系统中,问句分类即按照对应答案的语义类别对问句进行分类,目的是为后续的答案抽取等提供语义约束,使答案抽取模块只判断属于特定语义类别的答案候选[1]。例如,“中国人口有多少?”是问一个数量。早期问句分类是基于规则的方法,但由于需要编写大量的规则,人工负担很重。目前大多基于统计机器学习的方法,该方法利用分类性能较好的学习算法,在已标注的训练问题集上自动学习分类模型。由于机器学习方法的学习效果很大程度上依赖于特征的选择,而问句中直接可以用来确定问句类别的特征很少,因此选择其中对问句分类真正有用的特征就显得特别重要。
现有文献中,研究人员大都通过对问句进行一定层次的句法和语义分析,来提取各种有效的问句特征信息[2-14],但是,由于特征提取是以复杂的句法、语义分析为代价的,因此实际所付出的处理开销较大。例如,Huang 等[4-5]为了获取问句中的中心词(head word)特征,同时利用了Berkeley句法分析器和Collins 规则;张志昌等[13]为了获取问句中的关键特征词——疑问词和焦点词,先利用问句的句法和语义特征信息来训练条件随机域(CRF)模型,再借助训练好的CRF模型来识别问句中的疑问词和焦点词。特别是,对于个别难以自动获取的特征,有时甚至需要以手工或半手工的方式来获取。例如,Li 和 Roth[2-3]在构造对问句分类贡献很大的问句语义类别相关词(semantically related word)特征时,就是以半手工的方式来实现的。
为了降低问句特征提取时的实际处理开销,本文提出一种融合基本特征和词袋绑定特征的问句特征模型。在利用哈尔滨工业大学中文语言技术平台LTP (http://ir.hit.edu.cn/demo/ltp/Sharing_Plan.htm)和词袋绑定操作[15]直接提取问句的词袋、词性和词义等基本特征及其词袋绑定特征的基础上,通过将词性、对基本特征和词袋绑定特征进行融合,以获取更加高效的问句特征集合。与现有文献中的其他特征模型相比,本文提出的特征模型具有特征提取简单、处理开销小的优点;而且有效弥补了单纯基本特征或词袋绑定特征在句法语义表达方面的不足,进一步提高了问句分类的准确率。
以下第二、三节介绍问句基本特征和词袋绑定特征的提取,第四节介绍基本特征和词袋绑定特征的融合,第五节是实验结果和分析,第六节是全文的总结和未来工作。
我们利用LTP平台对问句进行词法、句法和语义分析,以提取词袋、词性、词义、命名实体、依存关系和核心词等基本特征。
(1) 词袋(BOW): 以“哈尔滨工业大学在黑龙江的哪个地方?”为例,分词以后得到如下形式:
哈尔滨 工业 大学 在 黑龙江 的 哪个 地方 ?
该问句的BOW特征为{哈尔滨,工业,大学,在,黑龙江,的,哪个,地方,?}
(2) 词性(POS): 上面问句经过词性标注以后得到如下形式:
该问句的POS特征为{ ns,n,p,u,r,wp }
(3) 命名实体(NE): LTP对命名实体进行标记时采用O-S-B-I-E形式,本文将标记为S的命名实体直接提取,将标记为B、I、E的命名实体进行合并。上面问句经过命名实体识别以后得到如下形式:
该问句的NE特征为{(黑龙江,ns)}
(4) 词义特征(WSD或WSDm): LTP按照《同义词词林(扩展版)》将词义编码为大类、中类和小类的形式。考虑到英文问句分类中一般将名词的词义向上层抽象[4],本文同时使用另外一种词义特征形式,即取其前两层的词义编码,并记为WSDm。上面的问句经过词义消歧以后得到如下形式:
该问句的WSD特征为{ Di03,Di18,Dm05,Kb01,Di02,Kd01,Aa06,Cb08,-1},WSDm特征为{ Di,Dm,Kb,Kd,Aa,Cb,-1}。
(5) 依存关系(Relation,R): 对上面问句进行依存分析的结果如图1所示。
两个词汇之间有弧相连则说明两词之间存在某种依存关系,例如,“哈尔滨”和“工业”之间存在定中依存关系。该问句的Relation特征为{ATT,DE,POB,HED,WP }
图1 例句的依存分析结果
(6) 核心词(Parent, P): 在上面问句的依存分析结果中, 每个依存关系弧的尾弧所连接的词称为核心词,我们将每个依存关系所对应的核心词也作为问句的重要特征,上面问句的Parent特征为{工业,大学,的,在,地方}
在文献[15]中,我们通过引入词袋绑定操作将词性、词义等基本特征与词袋分别进行绑定,自动生成一类新的问句特征即词袋绑定特征。以词性与词袋的绑定为例,对于“哈尔滨工业大学在黑龙江的哪个地方?”经过分词和词性标注以后得到以下形式:
该问句的词性特征形式为{ns,n,p,u,r,wp},但是将词性绑定到词袋(记为Word/POS,简记为W/POS)以后,则得到以下新的特征形式: {哈尔滨/ns,工业/n,大学/n,在/p,黑龙江/ns,的/u,哪个/r,地方/n,?/wp}
类似地,也可以将命名实体、词义、依存关系和核心词等基本特征与词袋进行绑定。
(1)命名实体和词袋的绑定(Word/NE,简记为W/NE)
上面问句的W/NE特征为{哈尔滨/O,工业/O,大学/O,在/O,黑龙江/S-Ns,的/O,哪个/O,地方/O,?/O}
这里,我们不是将命名实体提取出来以后再与词袋进行绑定,而是将命名实体标记直接绑定到词袋上。
(2)词义和词袋的绑定(Word/WSD,简记为W/WSD;或者Word/WSDm,简记为W/WSDm)
上面问句的W/WSD特征为{哈尔滨/Di03,工业/Di18,大学/Dm05,在/Kb01,黑龙江/Di02,的/Kd01,哪个/Aa06, 地方/Cb08,?/-1}
(3) 依存关系和词袋的绑定(Word/Relation ,简记为W/R)
上面问句的W/R特征为{哈尔滨/ATT,工业/ATT,大学/DE,在/DE,黑龙江/POB,的/ATT,哪个/ATT,地方/HED,?/WP}
(4) 核心词和词袋的绑定(Word/Parent,简记为W/P)
上面问句W/P特征: {哈尔滨/工业,工业/大学,大学/的,在/的,黑龙江/在,的/位于,哪个/地方,地方/,?/}
在获取了基本特征和词袋绑定特征以后,本文首先按照文献[15]中所给的特征组合算法对基本特征和词袋绑定特征分别进行优化,然后对最好的基本特征组合和词袋绑定特征组合进行整合。算法1描述了具体的特征融合过程。
算法1启发式特征组合和融合算法
输入:m+1个特征
输出: 优化的特征组合
初始化: 以词袋特征为默认的最好一元特征组合;
执行过程:
步骤1: 在最好一元特征组合的基础上分别与其他待组合的特征进行组合,形成二元特征组合;
步骤2: 选择二元特征组合中分类精度最大且超过最好一元特征组合分类精度的作为最好二元特征组合;
步骤3: 在最好二元特征组合的基础上再分别与其他待组合的特征进行组合,形成三元特征组合;
步骤4: 选择三元特征组合中分类精度最大且超过最好二元特征组合分类精度的作为最好三元特征组合;
步骤5: 如此反复,直至不再出现分类精度超过前面最好n元特征组合的n+1元特征组合,此时的最好n元特征组合即为最好的基本特征组合和词袋绑定特征组合;
步骤6: 将最好基本特征组合和最好词袋绑定特征组合中的所有特征放在一起(相同的特征只取一个)构成新的问句特征组合,然后每次从该特征组合中分别去掉一个特征;
如果分类精度上升,则说明去掉的那个特征在原来的特征组合中起抑制作用;
如果分类精度下降,则说明去掉的那个特征在原来的特征组合中起促进作用;
步骤7: 从新的问句特征组合中去掉所有起抑制作用的特征:
如果分类精度上升,则对应的特征组合即为最终的最好问句特征组合;
如果分类精度下降,则将步骤6中去掉单个特征以后分类精度最大的那个特征组合作为最终问句特征组合。
文本采用哈尔滨工业大学中文问句集作为实验数据, 该问句集分为六个大类和77个小类,共有 6 266个已标注好问句类别的问句,其中4 966句作为训练集,1 300句作为测试集。
分类器选择LibSVM ((http://www.csie.ntu.edu.tw/~cjlin/libsvm),并通过实验比较来选
择合适的核函数。
评价标准为分类精确率(Accuracy),其定义如下:
(1)
为了更加真实、客观地反映实际的分类效果,本文通过在包含训练集和测试集的整个问句集上做10份交叉验证来给出具体的分类精度。
使用LibSVM(分别取RBF、Linear和Liblinear)对词袋(BOW)、词性(POS)、命名实体(NE)、词义(WSD和WSDm)、依存关系(R)和核心词(P)等基本特征的分类性能做了比较,表1给出了具体的分类精度。
可以看出,在选择RBF核函数时,单一基本特征的分类精度都非常地低, 而选择线性核Linear和Liblinear时, BOW、WSD和P均取得了较高的分类精度。其中BOW在Liblinear下获得了 80.194 7% 的最高分类精度,因此本文以下选择Liblinear作为分类器并以BOW为基础来进行问句分类实验。
表1 SVM不同核函数下单一基本特征的分类精度
表2给出了词袋绑定特征的分类精度。
可以看出,W/POS、W/NE、W/WSD、W/WSDm、W/R和W/P等词袋绑定特征都比原来的POS、NE、WSD、WSD、R和P等基本特征在分类精度上有较大幅度的提高,充分说明了我们提取的词袋绑定特征对于实现问句分类更加高效。
表2 单一词袋绑定特征的分类精度
• 组合基本特征
表3给出了组合基本特征的分类精度。
首先以BOW为基础分别组合POS、NE、WSD、WSDm、R和P等基本特征形成二元特征组合。实验结果表明,除NE & BOW 以外,POS & BOW、WSD & BOW、WSDm & BOW、 R & BOW和P & BOW的精度都高于BOW的精度,特别是R & BOW,比BOW的精度提升近一个多百分点,是二元特征组合中最好的(81.311 8%)。
表3 组合基本特征
接下来以最好二元特征组合R & BOW为基础,再分别组合POS、WSD、WSDm和P等基本特征形成三元特征组合。在这一组特征组合中,WSD & R & BOW更是取得了所有三元特征组合中最好的精度(81.886 4%)。
然后以最好三元特征组合WSD & R & BOW为基础,再分别组合POS、WSDm和P形成四元特征组合。在这一组特征组合中,仅P & WSD & R & BOW的分类精度高于最好三元特征组合WSD & R & BOW的精度,也是四元特征组合中最好的(82.413 0%)。
在最好四元特征组合P & WSD & R & BOW基础上,可以再分别组合POS和WSDm形成五元特征组合。根据实验结果,由于所有五元特征组合都比最好四元特征组合的精度要低,根据文献[15]中的特征组合算法的结束条件,不再往后继续进行组合。
综上,最好基本特征组合是P&WSD&R& BOW(82.413 0%)。
• 组合词袋绑定特征
表4给出了组合词袋绑定特征的分类精度。
表4 组合词袋绑定特征
首先以BOW为基础分别组合W/POS、W/NE、W/WSD、W/WSDm、W/R 和W/P等词袋绑定特征形成二元特征组合。在这一组特征组合中,W/R & BOW和W/P & BOW的精度都高于BOW的精度,而且也分别高于W/R和W/P的精度,特别是W/P & BOW,其精度比BOW的精度提升近二个百分点,是二元特征组合中最好的(82.189 6%)。
然后以最好二元特征组合W/P & BOW为基础,再分别组合W/POS、W/NE、W/WSD、W/WSDm和W/R等词袋绑定特征形成三元特征组合。在这一组特征组合中,W/POS & W/P & BOW取得了所有三元特征组合中最好的精度(82.333 2%)。
接下来以最好三元特征组合W/POS & W/P & BOW为基础,再分别组合W/NE、W/WSD、W/WSDm和W/R等词袋绑定特征形成四元特征组合。由于所有四元特征组合的精度都比最好三元特征组合W/POS & W/P & BOW的精度要低,根据文献[15]中的特征组合算法的结束条件,不再往后继续进行组合。
综上,最好的词袋绑定特征组合是W/POS & W/P & BOW(82.333 2%)。
• 融合基本特征和词袋绑定特征
表5给出融合基本特征和词袋绑定特征的分类精度。
表5 融合基本特征和词袋绑定特征
首先将最好基本特征组合P & WSD & R & BOW和最好词袋绑定特征组合W/POS & W/P & BOW结合起来,形成新的特征组合P & WSD & R & W/POS & W/P & BOW,其分类精度为83.673 8%,比最好基本特征组合和最好词袋绑定特征组合分别高出1.404 4%和1.484 2%,表明将基本特征和词袋绑定特征进行融合更加有利于问句的分类。
然后从该特征组合中依次分别去掉P、WSD、R、W/POS、W/P和BOW,结果发现只有P & WSD & R & W/P & BOW和P & WSD & R & W/POS& W/P的分类精度获得了提升(分别为 83.753 6% 和83.817 4%),但是单独的W/POS或BOW对问句分类有较大的贡献,如果同时去掉它们则分类精度会明显下降。在表6中,同时从P & WSD & R & W/POS & W/P & BOW中去掉W/POS和BOW以后,只有81.375 7%的分类精度。因此,本组实验的最高精度为83.817 4%。
表6对本文特征模型的分类精度与现有文献同类型中文问题集上的分类精度进行了比较。
从比较结果可以看出,我们的特征模型在哈尔滨工业大学问题集上取得了83.817 4%的分类精度,非常接近于孙景广[12]和张志昌[13]的分类精度,充分表明了本文提出的问句特征模型对于实现问句分类的有效性。与其他的特征模型相比,在特征提取方面我们利用哈尔滨工业大学LTP平台和词袋绑定操作来提取问句中的词袋、词性、词义等基本特征及其词袋绑定特征, 这避免了实际特征提取时的复杂编程处理,因此具有实现简单、处理开销小的优点。同时,对基本特征和词袋绑定特征进行融合,进一步优化了问句特征集合,使所选取的特征具有更强的问句类别区分能力。另外,与表6中其他文献所用的问句集相比,我们的问句集与张宇[9]的问句集同属哈尔滨工业大学问句集系列,是在后者的基础上进一步扩充而得的;但是与文勖[11]、孙景广[12]和张志昌[13]相比,由于他们是从哈尔滨工业大学问句集和中国科学院自动化所问句集分别选取部分问句,因此比我们的问句集质量要高;而且我们的问句集中问句类别的个数(77个)也大于孙景广[12]和张志昌[13]中的问句类别个数(分别为60个和73个),如果取相同的问题类别个数,并对问题集做必要的人工处理(例如,改正个别问句中的错别字以及去掉对问句分类没有贡献的“请问”这类的词)和扩展(例如,自行收集一些问题并归入哈尔滨工业大学问题集的对应问题类别),则我们的精度很可能会进一步提高。
表6 与现有同类型中文问题集上的分类精度比较
为了降低问句分类研究中特征提取的处理开销,本文在提取问句中的词袋、词性、词义等基本特征及其对应的词袋绑定特征的基础上,通过对基本特征和词袋绑定特征进行融合,以获取更加高效的词句特征集合。在哈尔滨工业大学中文问句集上实验结果表明,本文特征模型不仅实现简单、处理开销小,而且有效地提高了问句分类的准确率。
下一步将考虑以《知网》代替LTP平台中的《同义词词林(扩展版)》,以获取更加丰富的词汇语义信息。同时准备尝试将多个基本特征同时绑定到词袋上,以形成多重词袋绑定特征。
本文实验使用了哈尔滨工业大学社会计算和信息检索研究中心LTP平台的相关处理模块和语料资源,在此表示感谢!
[1] 张志昌,张宇,刘挺,等.开放域问答技术研究进展[J].电子学报,2009,37(5):1058-1069.
[2] Li X, Roth D. Learning question classifiers[C]//Proceedings of the 19th International Conference on Computational Linguistics (COLING2002). Taipei:Association for Computational Linguistics, 2002:1-7.
[3] Li X, Roth D. Learning question classifiers:the role of semantic information[J]. Journal of Natural Language Engineering, 2006,12(3):229-250.
[4] Huang Zhi-heng, Thint M, Qin Zeng-chang. Question classification using head words and their hypernyms[C]//Proceedings of the 2008 Conference on Empirical Methods in Natural Language Processing(EMNLP2008). Honolulu: Association for Computational Linguistics,2008:927-936.
[5] Huang Zhi-heng, Thint M, Celikyilmaz A. Investigation of question classifier in question answering[C]//Proceedings of the 2009 Conference on Empirical Methods in Natural Language Processing(EMNLP2009)[C]. Singapore:Association for Computational Linguistics,2009:543-550.
[6] Li Fang-tao, Zhang Xian, Yuan Jin-hui, et al. Classifying what-type questions by head noun tagging[C]//Proceedings of the 22nd International Conference on Computational Linguistics (COLING 2008). Manchester: Association for Computational Linguistics,2008:481-488.
[7] 李鑫,黄萱菁,吴立德.基于错误驱动算法组合分类器及其在问题分类中的应用[J].计算机研究与发展,2008, 45(3):535- 541.
[8] Wu You-Zheng, Zhao Jun, Xu Bo. Chinese question classification from approach and semantic views[J]. AIRS 2005, LNCS 3689,485-490.
[9] 张宇,刘挺,文勖.基于改进贝叶斯模型的问题分类[J].中文信息学报,2005,19(2):100-105.
[10] 余正涛,樊孝忠,郭剑毅.基于支持向量机的汉语问句分类[J].华南理工大学学报,2005,33(9):25-29.
[11] 文勖,张宇,刘挺,等.基于句法结构分析的中文问题分类[J].中文信息学报,2006,20(2):33-39.
[12] 孙景广,蔡东风,吕德新,等. 基于《知网》的中文问题自动分类[J].中文信息学报,2007,21(1):90-96.
[13] 张志昌,张宇,刘挺,等. 基于线索词识别和训练集扩展的中文问题分类[J].高技术通讯,2009,19(2):111-118.
[14] Yu Zheng-tao, Su Lei, Li Li-na, et al. Question classification based on co-training style semi-supervised learning[J].Pattern Recognition Letters, 2010, 31:1975-1980.
[15] 杨思春,高超,戴新宇,等.基于词袋绑定的问句新特征自动生成[J]. 北京理工大学学报,2012,32(6):590-595.