前言
在自然语言处理和对话系统论文中经常会用到复制机制Copy Mechanism,对Copy Mechanism机制进行阐述。参考博文【略解】copy机制与SpanPtr
Copy Mechanism& Index-based copy
Copy Mechanism指在文本生成领域,生成的输出是输入序列元素的复制或者指向。该机制最早由Vinyals et al.(2015)在Pointer Network中提出,所以有时也被称为Pointer Mechanism指针机制。Pointer Network设计用于解决传统seq2seq模型输出序列词汇表无法随着输入序列长度改变而改变的问题。Pointer Network将attention机制中针对输入序列的权重用作指向输入序列的指针,因此其输出为权重最大的位置的输入序列元素,实现直接操作输入序列元素作为输出,而不需要设定输出序列词汇表。
自提出以来,在文本摘要、机器翻译和对话生成中得到了越来越多的关注,因为它为out of vocabulary (OOV)问题提供了一种潜在的解决方案。Wu et al.(2019)将copy机制总结为三类:Index-based、 hard-gated和soft-gated。直接采用Pointer Network不引入其他生成机制则为Index-based copy。Index-based copy 的每个decoder step产生一个关于input的指针序号,从input中copy一部分词到output。Pointer Network复制机制结合基于预定义vocabulary的生成机制又衍生出两类复制机制:Hard-gated copy和Soft-gated copy。
Pointer Network
Vinyals et al., Oriol Vinyals, Meire Fortunato, and Navdeep Jaitly. Pointer networks. In Advances in Neural Information Processing Systems, pages 2692–2700, 2015.
Wu, Chien-Sheng, et al. “Transferable multi-domain state generator fo