昨天与今天的工作,阅读了四篇文献:
1. Iterative Alternating Neural Attention for Machine Reading. 来自Maluuba 公司,主要思想是将Memory Network的推导机制加入到
模型当中,引入了第三方的GRU来综合Document和Query的信息,之后再进行深入地推理。
2. Gated Attention Readers for Text Comprehension. 来自卡内基梅隆大学,其核心想法与上述文章相似,也是将推理机制加入模型中
不同地是没有引入第三方的GRU,而是通过对query的attention来更新document的表示,不断进行推断。
3. Attention-over-Attention Neural Networks for Reading Comprehension. 来自哈工大的工作,想法是计算双向attention,即计算document针对query的attention, 也计算query针对
query针对document的attention. 上述三者工作类似的是在计算最后的loss值时都是利用query向量和document的每一个词的匹配来进行计算的。
4. Natural Language Comprehension with the EPiReader. 也是来自Maluuba 公司的工作,该工作的想法与之前不同,通过阶段性模型来处理,首先利用之前的ASReader生成候选答案,之后再通过基于句子的卷积操作来选择最终的结果,而其Loss值也来自两部分,第一部分是初步的document与query的匹配loss,第二部分则是针对候选答案的Ranking loss(Max Margin), 总的来说,该工作的核心思想与我的想法类似, 但整个文章偏工程,而且没有充分考虑attention的工作。
通过对现有工作的总结,之后的工作可以分为以下几个工作点:
1. query与document的表示,主要以基于注意力机制的bi-rnn为主,偶尔有卷积网络,并可加入推导机制来进行更加深入的表示。
2. query与候选答案的匹配,以query向量与候选答案向量点积,双线性函数等为主。
3. 损失函数,以匹配分数+softmax+log_likelihood为主,偶有ranking loss。
4. 数据集,CNN/Daily, CBT为主,新出了一些数据集还待进一步的衡量。
5. 问答形式,以单文档,完形填空,候选答案出自相应文档的形式为主。
下一步工作重点:
1. 表示方面,可以参考现有的对篇章和句子的表示,比如二维卷积来对篇章表示,进而可以引入二维注意力机制,或者分层次(词,句子,篇章)的表示,卷积神经网络与循环神经网络的结合。
2. 损失函数方面,可以针对Ranking loss进行深入一些的研究,比如将一些计算ranking loss的网络引入。
3. 现有的工作都是参考单文档,单词答案,下一步是否可以考虑多文档,open domain答案,句子答案,问句生成等不同形式的研究。
4. 在中文数据集上的工作,是否可以参考英文数据集来提出自己的数据集。
5. 在匹配方面,除了在传统的query-document匹配方式外,是否可以考虑引入强化学习,GAN等方式来进一步优化。
6. 可以参考image captioning, VQA等等的工作作为借鉴,可以应用的文本标题生成,阅读理解问答,多模态融合等等的工作中。