论文浅尝 | 用于开放领域的问题生成

作者 | 黄焱晖
单位 | 东南大学硕士
研究方向 | 自然语言处理,知识图谱


Learning to AskQuestions in Open-domain Conversational Systems with Typed Decoders

动机

本文的问题生成用于开放领域的问题生成,与传统的问题生成不同的是,在开放领域对话场景中更加关注于人机交互的互动性和持久性,挖掘对话中的相关信息,以推动互动继续下去。换句话说,生成问题需要理解到对话的主题,并围绕该主题进行提问,传统QG任务中,一般会给定目标答案,然后围绕该答案生成问题。另一方面,本文认为一个好的问题是由疑问词、主题词和普通词语三种类型词组成,主题词确定生成问题的中心,疑问词确定问题类型,普通词使整个问题表述像一个自然语句。

实现

本文生成问题基于框架,使用进行编码

decoder分为soft-decoder和hard-decoder两种。按照作者的设定,生成问题的词语可以被分成主题词(topic word)、疑问词(interrogative word)和一般词(ordinary word)三类,

  • soft-decoder soft-decoder

soft-decoder在预测下一个词语的时候,根据下述式子:

即输入编码得到context vector X,再根据已预测序列,可以得到下一个词语type的分布, 然后每个不同的type对应有不同的词语分布,所以将一个词语不同type可能得到的词语分布相加,得到下一个词语的最终分布,如下图所示:

论文浅尝 | 用于开放领域的问题生成_第1张图片

  • hard-decoder

而hard-decoder不同的是,将生成问题的每个词语都强制归属到某一个type,而不是像soft-decoder中,词语的type是一个隐状态,词语可以是所有type中任何一个。这样,在hard-decoder中,下一个词语的概率分布如下式所示:

认定下一个词语分布概率最高的作为其类型。因为操作使得反向传播无法进行,文中使用来实现解决该问题,最终下一个词语概率分布如下式所示:

整个流程如下图所示:

论文浅尝 | 用于开放领域的问题生成_第2张图片

  • Topic Word Prediction

而对于如何使得生成问题做到围绕某个主题,训练的时候,将生成问题中的名词和动词作为主题词,在测试的时候文中使用PMI进行了主题词预测,对一个给定输入,最多得到20 个主题相关的词,然后生成问题需要包含这些主题词中至少一个。

思考

本文认定一个好的问题需要包含疑问词、主题词和一般词三部分,假设生成问题词语是符合一个类型分布,然后每个类型有一个词语的分布,将以往传统文本生成的预测过程拆分成两步, 使用soft-decoder和hard-decoder两种解码方法,验证在开放对话领域的问题生成效果,最终通过实验验证,hard-decoder的效果较soft-decoder的效果好一点,原因可能是soft-decoder解码过程中,词语的type仅仅是一个隐藏状态,模型实际情况下,隐含词语的类型是不是合理, 真的只有假设的三类不得而知,与传统的解码器相比仅仅是多了几层网络,模型复杂点,并不能保证作者的经验知识,生成的问题符合每个词语都是疑问词、主题词、一般词这三类。而hard-decoder真正保证生成的中间过程每个词都属于假定的某一类,符合作者认为的一个好的问题该具备的特征。

至于作者考虑的对话场景中的问题生成需要与输入主题相关,保证对话的交互性和持久性。这点的确是在对话场景中需要注意的点,但是在实现上通过保证生成问题的主题词、疑问词、一般词概率分布更高(Φ2  = ∑ − log P (tyt  = t~y**ty<t, X)),即语法表述更规范,并没有具有针对性的解决生成问题与输入之间的主题关联性,虽然最后评测的时候通过人工评测生成问题与输入的主题相关性,并取得较好的分数,但整个方法实现并不能解释该效果的由来。


 

OpenKG

开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 博客。

你可能感兴趣的:(论文浅尝 | 用于开放领域的问题生成)