Transformer-XL:超长上下文依赖

Transformer-XL通过引入segment-level recurrence mechanism和相对位置编码解决了Transformer在处理长距离依赖时的局限性,有效避免上下文碎片问题。在不破坏时间一致性的情况下,模型学习到更长的依赖,其evaluation速度显著提高,且在多个语言模型数据集上取得最佳表现。
摘要由CSDN通过智能技术生成
解决的问题

Transformer的自注意力机制可以让长距离的单词直接联系,可以很容易地学习到句子之间的长距离依赖。但是在将Transformer应用在语言模型时,核心的问题在于如何将任意长度的context编码成固定长度的上下文变量。

普遍的做法是将整个语料库划分成较短的片段,在每个片段上训练模型。但是这么做很有几个问题:

  • 最大可能依赖长度不会超过片段的长度
  • 语料库按照固定长度而不是按照语义或者句子的分界划分进行分片,导致分片之间无法共享信息。这样情况下训练的语言模型会丢失一部分上下文信息,导致收敛速度和性能不符合预期。论文把这个问题成为上下文碎片问题。
贡献
  • 在Transformer的基础上提出segment-level recurrence mechanism、新的位置编码模式两种方法使得Transformer-XL能够在不破坏时间一致性的情况下,学习固定长度之外依赖关系并且解决上下文碎片问题
结果
  • 学习依赖的范围比RNN(LSTM)高出80%,比Transformer高出450%,
  • evaluation过程速度比Transformer提高1800倍。
  • 在5个语言模型数据集上取得SOAT成绩。
Recurrent mechanism机制

前一个分片的隐藏状态被保存下来作为计算下一个分片隐藏状态的扩展输入。这种方法能够在计算当前分片隐藏状态的时候使用到上文的信息,进而可以有效的避免上下文碎片并且增加依赖的长度。具体来说,前一个分片第n-1层的隐藏状态被保存下来,与当前分片的第n-1层的隐藏状态一起作用生成当前分片第n层的隐藏状态。这种“循环”利用上个分片的隐藏状态的方法能够有效加长期依赖的范围。
在这里插入图片描述在这里插入图片描述

其中,下标 τ + 1 和 τ \tau+1和\tau τ+1τ分别表示分片的编号,上标 n 和 n − 1 n和n-1 nn1表示当前计算的隐藏状态在模型中的层数, q 、 k 、 v q、k、v qkv分别表示计算注意力需要的查询(query)、键(key)和值(value)向量, W W W表示模型的参数矩阵。首先第 τ \tau τ个分片第n-1层的隐藏状态 h τ n − 1 h_{\tau}^{n-1} hτn1

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值