思考一下Memory的形式

【声明】:如下观点均是个人鄙见,尽可能地引出论文出处,有待同大家一起讨论商榷。

【一】. 2015-ICLR-《Neural Machine Translation by Jointly Learning to Align and Translate
【二】. 2015-ACL-《Neural Responding Machine for Short-Text Conversation
【三】. 2015-ICLR-《Memory Networks

序,统一概念:
句子中的词向量化表示 和 段落中的句子向量化表示 意思逻辑一致。【1,2】两篇文章均是在句子层面的,因而采用句子/词 的表示方法,而在【3】QA系统应用中 对应为 段落/句子。

论文【一】观点:
应用领域:机器翻译系统。
1.1    输入端所有输入文本信息都压缩到固定长度的向量的方法是错误的;
原因句子较长时,即输入信息较多时,解码能力变差,即模型解析能力变弱。(摘自【原文P1第三段】A potential issue with this encoder–decoder approach is that a neural network needs to be able to compress all the necessary information of a source sentence into a fixed-length vector. This may make it difficult for the neural network to cope with long sentences, especially those that are longer than the sentences in the training corpus. Cho et al. (2014b) showed that indeed the performance of a basic encoder–decoder deteriorates rapidly as the length of an input sentence increases.)
解决:保存句子中每个词的向量化编码通过Attention机制进行组合,这种好处释放了传统Encoder-Decoder方法将输入句子的所有信息压缩到一个固定长度向量的局限性。(摘自【原文P2第一段】This frees a neural translation model from having to squash all the information of a source sentence)

论文【二】观点:
应用领域:短文本对话
2.1 采用RNN的最后一个向量表征整个句子的语义表示效果不好
原因:RNN最后一个向量的语义信息会丢失了对话生成问题中所需要的细节信息。(摘自【原文P4右栏第一段】a vectorial summarization of the entire post is often hard to obtain and may lose important details for response generation, especially when the dimension of the hidden state is not big enough),而要在句子层面上获得较好的效果需要采用4,000维的词向量(摘自【原文P4右栏脚标4】Sutskever et al. (2014) has to use 4, 000 dimension for satisfying performance on machine translation, while (Cho et al., 2014) with a smaller dimension perform poorly on translating an entire sentence.)
解决保存句子中每个词的向量化编码通过Attention机制进行组合,同时保留RNN最后一个向量作为全局的背景语义信息

思考:
1,记忆单元不一定必须要定长,当然也可以设置记忆单元的最大slot数。如果全部slot都存满了怎么办?在MemNN文章中提到一种forgetting机制进行擦除更新(摘自【[3]文中P2关于G组件介绍的最后一段】If the memory becomes full, a procedure for “forgetting” could also be implemented by H as it chooses which memory is replaced);
2,目前神经机器翻译NMT,MemNN,及神经图灵机NTM 所采用的将段落中的每个句子的语义表示进行分别记忆,再在此基础上进行各种任务分析是一种较好的方式。其中由于神经图灵机采用了分布式写操作,多个句子语义信息之间存在覆盖和重叠问题,因而也需要比NMT和MemNN更大的记忆空间(如同Encoder-Decoder需要4,000维向量)
3,由于NMT,MemNN和NTM是同期工作,产出之时尚不知道对方的工作,因而它们都是在看到传统Encoder-Decoder工作的不足,异曲同工地分别从机器翻译问题,QA问题和图灵机问题 分别采用了 非定长的记忆单元 + Attention(NMT)/soft-Search(MemNN)/Addressing(NTM) 的编码方式解决问题。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>