用 R-Net Plus 来做阅读理解任务(下)

摘要:对阅读理解任务的研究对现实世界中的语音助理的生成有其帮助。因此我们在上一篇中,着实地分析了 R-NET 阅读理解神经网络结构的前两个部分。现在,我们继续研究接下来的几部分。

SELF-MATCHING ATTENTION

在之前的讨论中,我们可以知道,我们结构中的问题注意力段落(Question-aware Passage Representation)的表示并不完善。这种表示只能获取到受限的上下文的信息。也就是受之前的词向量的影响(非上下文型词向量),只能获取到基于段落的基础的上下文信息。而很多情况下,段落或者相应的句子如果有上下文的信息,更能帮助模型找到相应的答案。
因此我们将分析 实际上,这一层与上一层的 GATED ATTENTION-BASED RECURRENT NETWORKS 相似。但是我们把输入换为 , 则可以表示为passage向量 的 attention 向量。
又等式如下:

之后和gated-attention层同样引入门机制,自适应控制不同部分的重要性。
在这层中,会因为传入维数的问题,导致梯度爆炸。因此要在上一步的基础上解决掉维数问题。

OUTPUT LAYER

然后,我们开始讨论最后一部分,根据论文以及上文,我们可以知道 R-NET 模型输出的是答案在文中的位置,在这一过程中参考了 pointer-network 的思想,首先获取文章中答案的起始分布 ,再利用这一分布 对整篇文章进行加权,得到答案的终结位置 。所以这个其实是一个 seq2seq 的过程。而我们得到的仅仅是答案的起始位置和终止位置。即初始位置 和终止位置 。对于一个序列问题,R-NET 使用对问题 进行 Attention-pooling 得到的 r^{Q} 作为起始键。
其中的 seq2seq 循环结构为:

其中 依然是对文章 attention-pooling 得到的结果。

通过以上的循环结构,让其循环两次,我们就可以得到两个已被权重的分布。我们可以通过以下方式得到其位置。
由上,我们可以知道,这个结构存在一个问题就是,假若一开始的分布并不正确,会导致后边的严重的错误。因此,我们需要用更加好的输入保证。

总结

R-NET conclusion

我们会尝试将字符和基于知识的信息放进我们的系统当中。除此之外我们也会继续制作出更好的模型来处理这个任务。

上下文总共花了前后三天的时候写就。下一篇番外将实现 R-NET PLUS。

感谢阅览。

本文作者: Bon
本文地址https://bonxg.com/p/16.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!

# Bon
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×