智能问答系统实践——答案选择

问题描述

这个问题来自于SemEval-2015Task3: Answer Selection in Community Question Answering.

简单的说就是从一堆问题和答案中找出他们之间的相关性。

这个Task包含两个Subtasks:

1.给定一个问题和一些答案,将答案进行为3类:good/potential/bad。

2.给定一个判定问题(Yes/No/Unsure)和一些答案,判定该问题是Yes/No/Unsure。

这里主要讨论subtask1。

详见:http://alt.qcri.org/semeval2015/task3/

实现框架

整体实现框架如下图所示:


整体框架图

简单来说,分为一下几个步骤:

1.预处理:通过一些基本的“词”级别的处理,为特征提取准备规范数据。

2.特征提取:通过对原始数据和预处理后的数据进行分析,并基于一定的假设,确定选取特征,提取特征。

3.模型构建:根据问题描述,选择学习模型,构建训练集,训练模型。

4.实验评估:构建测试集,对比各模型效果。

具体实现框架如下图所示:


实现框架图

接下来详细描述整个过程。

预处理

个人认为,特征选择在实现上发生在预处理之后,但实则发生在预处理前后。

根据上述问题描述,和自己的先验知识,先对该问题做了一定的假设:

假设问题和答案是有相关性的。

假设问题和好的答案相关性更大,和不好的答案相关性更小。

假设问题和各种类别(good/potential/bad)的答案在“词”的特征上,是有一定规律的。

假设问题和各种类别(good/potential/bad)的答案在语义上,是有一定规律的。

特征选择

词相似特征

1.Word cosine similarity:我们假设问题和好的答案词相似,所以设计回答和问题的词的相似度特征。构建词典,以词典顺序作为向顺序,tfidf作为权重,统计每个回答和问题的空间向量,然后计算对应的问题和回答之间的余弦相似度。

2.NE cosine similarity:关键词通常是名词实体,我们假设问题和好的回答的关键词相近,所以我们构建了问题与回答之间的名词实体余弦。识别名词实体,构建名词实体字典。以字典为顺序,tfidf为权重,构建每个问题和答案的名词实体向量,并计算相应的余弦值。

特殊词特征

1.Special symbol feature:我们将训练数据各个类别的答案所出现的符号经过统计分析发现,有些特殊符号比如“>..<,!:(,:(,:-(”只出现在了bad类别的答案中,而“>,<”只出现在good类别的答案中,因此我们将此作为一维特征。定义:3表示出现good类符号;2表示不出现good和bad类符号;1表示出现bad类符号。

2.Bad words feature:我们假设某些词倾向出现在坏的答案里或者好的答案里,根据经验,这样的特征对识别坏的词有帮助。所以我们统计仅出现在bad的回答的词。问题中若是出现bad的词,则这维特征记为1,否则记为0.

主题特征

1.Topic feature:我们假设问题的主题和回答的主题是相似的,所以这维特征计算问题和答案的主题相似度分数。我们借助gensim工具的LDA模型来训练主题模型。

我们训练10个主题的主题模型,然后拿到每条答案或者问题的主题向量(每条记录属于每个主题的分数)。拿到每条记录的主题向量之后,计算对应的问题和答案的余弦相似度。从而得到问题与答案的主题相似度特征。

gensim的LDA方法详见:https://radimrehurek.com/gensim/models/ldamodel.html

语义特征

1.Word alignment feature:这一维特征是通过Meteor工具来计算得到的,Meteor工具是用来评估两句话在翻译层面上的相似度。我们假定问题和对应的好的答案之间应该具有更高的相似度。因此我们将Meteor工具计算出来的问题与答案之间的score做为一维特征。

Meteor详见:http://www.cs.cmu.edu/~alavie/METEOR/

2.word2vector feature:我们假设问题和回答所用的词在语义上是相似的,与问题的词越是相似的越有可能是好的回答。我们借助gensim具来训练word2vec特征。这样我们就得到每个词的词向量。然后借助以下公式拿到对应问题与答案的词向相似度得分。


其中wi是问题的第1个词,wj是回答的第j个词。n是问题的词的个数,m是回答的词的个数。gensim的word2vec方法详见:https://radimrehurek.com/gensim/models/word2vec.html

非文本特征

1.QA author feature:通过分析训练数据发现,如果答案和问题来自同一个用户,在很多情况下不是一个好的答案,因此我们将此作为一维特征。定义:0表示答案和问题来自不同用户;1表示答案和问题来自同一用户。

2.User posts feature:这个特征和知乎的大V原理有点类似,我们认为,一个用户回答的问题越多,他(她)的答案越有可能是一个好的答案。因此我们将用户提问和回答问题的数量作为一维特征。

模型训练

我们采用了一下三种模型,均采用sklearn工具包的默认方法,未设置任何超参数。

1.SVM

2.朴素贝叶斯

3.决策树

效果评估

训练集:train,测试集:dev


训练集:train,测试集:test


训练集:train+dev,测试集:test



效果一般,正在进行后续调参改进,敬请期待文章更新。

数据分布

TRAINING:

QUESTIONS:

TOTAL: 2,600

GENERAL: 2,376 (91.38%)

YES_NO: 224 (8.62%)

COMMENTS:

TOTAL: 16,541

MIN: 1

MAX: 143

AVG: 6.36

CGOLD VALUES:

Good: 8,069 (48.78%)

Bad: 2,981 (18.02%)

Potential: 1,659 (10.03%)

Dialogue: 3,755 (22.70%)

Not English: 74 ( 0.45%)

Other: 3 ( 0.02%)

CGOLD_YN COMMENT VALUES (excluding"Not Applicable"):

yes: 346 (43.52%)

no: 236 (29.69%)

unsure: 213 (26.79%)

QGOLD_YN VALUES (excluding "NotApplicable"):

yes: 87 (38.84%)

no: 47 (20.98%)

unsure: 90 (40.18%)

DEVELOPMENT:

QUESTIONS:

TOTAL: 300

GENERAL: 266 (88.67%)

YES_NO:  34 (11.33%)

COMMENTS:

TOTAL: 1645

MIN: 1

MAX: 32

AVG: 5.48

CGOLD VALUES:

Good: 875 (53.19%)

Bad: 269 (16.35%)

Potential: 187 (11.37%)

Dialogue: 312 (18.97%)

Not English: 2 ( 0.12%)

Other: 0 ( 0.00%)

CGOLD_YN COMMENT VALUES (excluding"Not Applicable"):

yes: 62 (53.91%)

no: 32 (27.83%)

unsure: 21 (18.26%)

QGOLD_YN VALUES (excluding "NotApplicable"):

yes: 16 (47.06%)

no: 8 (23.53%)

unsure: 10 (29.41%)

test

QUESTIONS:

TOTAL: 329

GENERAL: 300(91.19%)

YES_NO:29(8.81%)

COMMENTS:

TOTAL: 1976

MIN: 1

MAX: 66

AVG: 6.01

CGOLDVALUES:

TOTAL: 1976

Good: 997(50.46%)

Bad: 362(18.32%)

Potential: 167(8.45%)

Not English: 15(0.76%)

Other: 0(0.00%)

QGOLD_YNVALUES:

yes: 18(62.07%)

no: 4(13.79%)

unsure: 7(24.14%)

参考文献

[1]毛先领,李晓明.问答系统研究综述[J].计算机科学与探索, 2012, 6(3):193-207.

[2]Denkowski M, Lavie A. Meteor 1.3: automatic metric for reliable optimizationand evaluation of machine translation systems[C]// The Workshop on StatisticalMachine Translation. Association for Computational Linguistics, 2011:85-91.

[3]Quan H T, Tran V, Tu V, et al. JAIST: Combining multiple features for AnswerSelection in Community Question Answering[C] International Workshop on SemanticEvaluation. 2015:215-219.

[4]Matthew Hoffman, David M Blei, Francis Bach.Advancesin Neural Information Processing Systems.2010/1/2:856-864.

[5]MikolovT, Chen K, Corrado G, et al. Efficient Estimation of Word Representations inVector Space[J]. Computer Science, 2013.

[6]Goldberg Y, Levy O. word2vec Explained: deriving Mikolov et al.'s

negative-sampling word-embedding method[J]. Eprint Arxiv, 2014.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,348评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,122评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,936评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,427评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,467评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,785评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,931评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,696评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,141评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,483评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,625评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,291评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,892评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,741评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,324评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,492评论 2 348

推荐阅读更多精彩内容

  • 作者声明: SemEval-2015 Task3任务是由我和Index_gz共同合作完成,他写了SemEval-2...
    chrisitina阅读 1,258评论 1 3
  • 如约而至!今天看啦吴小波的文章跟视频,聊到40、60、80年代人的创业:40后艰苦、60后知进退、80后感兴趣。文...
    马瑞红阅读 1,747评论 1 0
  • 断断续续地读完杜拉斯的《情人》,在读的过程中,始终不觉得为什么这本书,或者说这个故事,足以成为传说中的经典。但是,...
    花开半夏R阅读 436评论 0 0
  • 在流逝的岁月中摸索,我总是会疏忽些什么东西,亦或是一些些人。我想说,一直以来,我都深深的感受到你们的存在,你们的真...
    暖桐华阅读 213评论 0 0
  • 我匍匐与灰色的尘土中,我的头上是锁链,我的脖子戴着镣铐。我长发及地,指甲青长,我眼红如血,嘴唇乌黑。我的口水滴滴答...
    李离阅读 367评论 0 0