一、动机
如何根据知识图谱在领域不可知的前提下保证对话系统的参与性和有效性是一个很重要的问题。基于此,作者将一段对话模拟为在知识图谱上的路径(可能是多条),以此使得对话系统具有可解释性。
对话示例如下所示:
二、方法
该模型是根据(1)当前对话(2)以前的所有对话(3)当前对话中的实体,预测回答语句的实体,然后开放式对话系统便可以以该实体为核心组织对应的回复。以下是模型概略图:
三、模型
1、输入编码: 模型首先有3
种类型的输入
- (1) 实体表示:编码当前轮对话涉及到的实体,通过KG Embedding编码为实体向量作为输入,KG Embedding模型可表示为:
即最大似然学习法
: 使得有效三元组的概率最大。 - (2) 句子表示:编码当前轮的对话,采用
Bi-LSTM
进行编码。 - (3) 对话表示:编码以前所有的对话日志,采用双层注意力机制的
Bi-LSTM
进行编码。 - (4) 融合表示: 最后以上三个表示分别得到一个向量,在这里再使用一个
Attention
,以得到最终的表示向量 x ˉ \mathbf{\bar{x}} xˉ。
2、图解码器:
图编码器根据输入
x
ˉ
\mathbf{\bar{x}}
xˉ解码目标实体,目标函数为:
- (1) 第一项,Zeroshot Relevance Score:
L
f
\mathcal{L}_f
Lf定义为
hinge rank loss
:
其中 y ^ \mathbf{\hat{y}} y^是负采样的目标实体。 y e ( i ) \mathbf{y}_e^{(i)} ye(i)即目标实体。本质上这一项希望编码出的 f ( x ˉ ) f(\bar{x}) f(xˉ)接近目标实体的Embedding向量。 - (2) 第二项,KG Path Walker:
f
f
f由分类模块和
Path Walker
两个模块组成,其中后者是整个模型的核心,起着对搜索空间进行剪枝的作用,对应着大图中的第二个部分, 其本质上是一个使用LSTM生成Path的生成过程,不过对于每一步,首先使用一个attention过程,生成LSTM Cell当前步的输入 z t \mathbf{z}_t zt:
其中 h t − 1 \mathbf{h}_{t-1} ht−1与 t − 1 t-1 t−1步预测实体的Embedding向量 y e ( i ) \mathbf{y}_e^{(i)} ye(i)相关联,而 L w a l k \mathcal{L}_{walk} Lwalk定义为
即希望模型接近目标路径 y = { y e , y r } \mathbf{y}=\{\mathbf{y}_e, \mathbf{y}_r\} y={ye,yr}。 最后在预测时,我们可以通过下式生成 y e , t ( i ) y_{e, t}^{(i)} ye,t(i):
其中 V R , 1 ( y e , t − 1 ( i ) ) V_{R,1}(y^{(i)}_{e,t-1}) VR,1(ye,t−1(i))指与以前所有的预测实体在KG中直接相连的实体所对应向量的集合。
四、实验结果
这里笔者只是本着了解任务和方法的目的来的,暂时就不详细抠实验了,以后有需要再补上。
五、总结
该论文任务属于开放式对话系统,因为笔者之前没有看过相关文章,个人觉得此文章还是很有亮点,其将一段情景对话对应到了知识图谱中的路径,对话过程具有可解释性,是个很不错的Idea。不过预测出实体如何生成回复似乎也是个问题,文章中没有提到,可能这属于另一个任务吧。总的来说,读了这篇文章还是有一定收获的,个人对知识图谱的应用又有了新的认识。