拆解XLNet模型设计,回顾语言表征学习的思想演进(17)

在如此做完注意力掩码后,所有 g}^l 便可以直接用来预测词 z,而不会有标签泄露的问题。

这里我们也可以看到,在具体实现效率的限制下,想要获得多样的语境并防止标签泄露,我们只能依据乱序语言模型的定义去使用注意力掩码。这也体现了 XLNet 设计的精巧性。

10. XLNet 的重要元素:Transformer-XL

上面已经提到,和循环神经网络不同,Transformer 是同时计算语段内所有词的表征的。受限于系统内存大小,Transformer 输入的序列长度会有一个上限。通常我们会将过长的序列切成固定长度为 N 的片段,再依次输入 Transformer 计算表征。所以 Transformer 的构造虽然降低了长程依赖的学习难度,但其最长只能建模长度为 N 的依赖。

为了在内存的限制下让 Transformer 学到更长的依赖,Transformer-XL 借鉴了 TBPTT(Truncated Back-Propagation Through Time) 的思路,将上一个片段 s 计算出来的表征缓存在内存里,加入到当前片段 s 的表征计算中。

拆解XLNet模型设计,回顾语言表征学习的思想演进

推荐阅读