[ACL2016] Incorporating Copying Mechanism in Sequence-to-Sequence Learning
目前在自然语言处理的很多任务中,比如机器翻译、句法分析、自动文摘以及对话系统等领域,sequence-to-sequence 已经取得了瞩目的成就。简单说下sequence-to-sequence, 也称为seq2seq 由两个RNN组成:处理输入的编码器网络和生成输出的解码器网络. 所以也称之为encoder-decoder model.
paper 提出了一种”copying mechanism”, 意思就是复制input sentence中的segment 然后复制到output sequence. 举个例子,比如在对话系统中,日期或实体信息就需要复制。
目前很多做法都是讲attention model 融入到seq2seq中,本文提出的网络结构称为copynet, 可以有效的解决上面提出的问题
在decode的时候有三点特别之处:
(1)prediction: 输出有是个generate-code和copy-mode的混合模型, copy-mode就是从input sentence 中选词
(2)之前更新状态s
本文中的状态更新加入了位置信息
原公式中的y
(3)处理原句子的隐层状态时有两种做法: attentive read 和 selective read 对应了content-based addressing 和 location-based
最后预测词时根据词在不同的集合有不同的打分函数
这儿给出过公式(6)的解释说明:j:x
在paper的3.2小节中公式的理解,虽然手写字很难看,可是还是很方便: