Scheduled Sampling for Transformers 如何在Transformer模型中应用Scheduled Sampling技术 解决序列到序列模型中的Exposure Bia

Scheduled Sampling for Transformers

论文

这篇论文探讨了如何在Transformer模型中应用Scheduled Sampling技术,以解决序列到序列模型中的Exposure Bias问题。Exposure Bias问题主要来源于训练阶段和测试阶段的不一致性:在训练阶段,模型通常使用真实的目标序列(即Teacher Forcing)进行训练,而在测试阶段,模型则需要基于自己的预测进行下一步的预测。这种不一致性可能导致模型在测试时产生偏差。

Scheduled Sampling技术的核心思想是在训练过程中逐渐引入模型自己的预测作为输入,以减少对真实目标序列的依赖。然而,由于Transformer模型的特性(即每个新词的生成都基于整个前缀序列,而不仅仅是最后一个词),直接在Transformer模型中应用Scheduled Sampling并非易事。

为了克服这一难题,论文提出了一个两次遍历解码的策略。在第一次遍历中,模型像往常一样使用真实的目标序列进行训练。在第二次遍历中,模型将部分或全部的真实目标序列替换为第一次遍历中的预测序列,然后再次进行训练。通过这种方式,模型能够在训练阶段就逐渐适应基于自己预测的情况,从而减少Exposure Bias。

实验部分,论文在两个语言对的机器翻译任务中测试了Scheduled Sampling for Transformers的效果。结果表明,使用Scheduled Sampling的Transformer模型在性能上接近甚至超过了仅使用Teacher Forcing的基线模型。这一结果证明了在Transformer模型中应用Scheduled Sampling的有效性。

此外,论文还探讨了Scheduled Sampling的不同实现方式(如全量替换、部分替换等)对模型性能的影响,并分析了该技术的优缺点。总体而言,Scheduled Sampling for Transformers为改善Transformer模型的性能和泛化能力提供了新的思路和方法。

介绍

Scheduled Sampling(计划采样)是一种用于解决Exposure Bias问题的技术,特别是在序列生成任务中,如机器翻译、文本摘要等。Exposure Bias是指模型在训练时依赖真实的目标序列(Teacher Forcing)进行预测,而在测试时则只能依赖自身之前的预测,这种训练和测试的不一致性可能导致模型在测试时性能下降。

在Transformer模型中,由于每个新单词的生成都基于整个前缀序列(而不仅仅是最后一个单词),直接应用Scheduled Sampling技术存在挑战。然而,通过一些结构上的更改,可以将Scheduled Sampling应用于Transformer架构。

Scheduled sampling(计划采样)是一种避免Exposure Bias的技术,它包括向模型喂入Teacher-Forcing的embeddings和训练时间上一步中的模型预测的混合,该技术已用于通过递归神经网络(RNN)改善模型性能。在Transformer模型中,与RNN不同,新单词的生成会涉及到到目前为止生成的完整句子,而不仅是最后一个单词,致使应用Scheduled sampling技术并非易事。文中提出了一些结构上的更改,以允许通过两次遍历解码策略将Scheduled sampling应用于Transformer架构。

由于训练和预测的时候decode行为的不一致, 导致预测单词(predict words)在训练和预测的时候是从不同的分布中推断出来的。而这种不一致导致训练模型和预测模型直接的Gap,就叫做 Exposure Bias。

  • 解决方案:

文中提出了一种通过两次遍历解码策略将Scheduled Sampling应用于Transformer架构的方法。具体步骤如下:

第一次遍历(Full Teacher Forcing):在第一次遍历中,模型使用真实的目标序列进行训练,就像传统的Teacher Forcing方法一样。这样,模型可以学习到从完整的目标序列中生成单词的模式。
第二次遍历(Scheduled Sampling):在第二次遍历中,模型的部分或全部输入将被替换为第一次遍历中模型自己的预测。这可以通过在解码器的每个步骤中,以一定的概率(例如,根据某个预定的时间表或基于训练进度的动态调整)选择使用真实的目标单词或模型预测的单词来实现。通过这种方式,模型在训练过程中就逐渐适应了基于自己预测的情况,从而减少了Exposure Bias。

  • 优点:

通过在训练过程中引入模型自己的预测,Scheduled Sampling有助于减少Exposure Bias,使模型在测试时更加鲁棒。
通过两次遍历解码策略,可以确保模型在保持对真实目标序列学习能力的同时,也逐渐适应基于自身预测的情况。

  • 挑战与限制:

由于Transformer模型的特性,实现Scheduled Sampling需要额外的计算资源,因为模型需要进行两次遍历解码。
确定合适的采样概率或时间表是一个挑战,因为这可能需要根据具体任务和数据集进行调整。
在某些情况下,引入Scheduled Sampling可能会增加模型训练的不稳定性或导致性能下降。因此,需要仔细调整超参数和实验设置来确保最佳性能。

本文的创新和贡献:

  • 提出了一种在Transformer模型中使用Scheduled sampling的新策略,即在训练阶段内经过decoder两次
  • 比较了使用模型代替标准目标时以模型预测为条件的几种方法
  • 在两个语言对的机器翻译任务中使用Transformer测试了Scheduled sampling,并获得了接近Teacher-Forcing基线的结果(某些模型的改进幅度高达1个BLEU点)。
  • 线性衰减,指数衰减和反sigmoid衰减

实现细节

众所周知,Transformer是一个 autoregressive模型,其中,每个单词的生成都取决于序列中所有先前的单词,而不仅是最后生成的单词。单词的顺序是通过将位置嵌入与相应的单词嵌入相加来实现的,而在解码器中使用位置屏蔽可确保每个单词的生成仅取决于序列中的前一个单词,而不取决于随后的单词。由于这些原因,想要将Scheduled sampling应用在Transformer中比较困难,所以需要对Transformer的结构进行一定的修改,更改后的结构图如下:
在这里插入图片描述
如果你熟悉Transformer你会发现,其实encoder和decoder的结构都没有变,只是多了一个decoder

Transformer的Two-decoder

在Transformer模型中引入Two-decoder结构(虽然这不是标准的Transformer架构,但根据描述可以构建这样的变种)来实现Scheduled Sampling(计划采样)以减少Exposure Bias是一个有趣的尝试。以下是基于给定描述的Two-decoder流程的详细步骤:

  • 首次解码器遍历(Full Teacher Forcing):
    使用完整的标准序列(即真实的目标序列)作为解码器的输入。
    解码器输出模型对于给定源序列的预测。
    将这些预测(以及对应的内部状态,如注意力权重和隐藏状态)保存起来,以备后用。
  • 生成混合输入序列:
    对于序列中的每个位置,根据一个给定的概率(这个概率可以是固定的,也可以是随时间或训练步骤变化的)来决定是否使用标准token(真实的目标token)还是使用来自首次解码器遍历的预测。
    生成一个包含标准token和预测token的混合序列。
  • 第二次解码器遍历(Scheduled Sampling):
    使用上一步生成的混合序列作为第二次解码器遍历的输入。
    重要的是要注意,这两个解码器在结构上是完全相同的,并且它们共享相同的参数。这意味着第二次遍历实际上是在使用与首次遍历相同的模型结构,但输入数据不同。
    解码器基于混合输入序列生成最终的预测。
  • 计算损失并更新模型:
    使用最终预测和标准序列(真实的目标序列)来计算损失。
    通过反向传播算法来更新模型的参数。
  • 迭代训练:
    重复以上步骤,直到模型达到预定的训练轮数或满足某个性能标准。
    注意:

在实际应用中,可能需要调整混合输入序列中标准token和预测token的比例,以及这个比例如何随时间或训练步骤变化。这通常需要根据具体任务和数据集进行试验和调整。
由于两个解码器共享参数,因此它们实际上是同一个解码器在不同的时间步骤和不同的输入数据下进行操作。这允许模型在训练过程中同时学习到基于真实目标和基于自身预测的情况。
这种方法的目的是使模型在训练过程中逐渐适应基于自身预测的情况,从而在测试时(当只能依赖自身预测时)表现更好。这有助于减少Exposure Bias并提高模型的泛化能力。

Embedding Mix

对于序列中的每个位置,第一遍解码器都会给出每个词汇词的得分。以下是使用模型预测时使用这些分数的几种方法

  • 完全不混合嵌入并通过模型预测传递argmax,即使用来自解码器的得分最高的词汇词嵌入。
  • 混合top-k嵌入,即使用得分最高的5个词汇词嵌入的加权平均值。
  • 通过将嵌入结合softmax与temperature进行传递,使用较高的temperature参数可使argmax更好地近似,公式如下:其中 e ˉ i − 1 \bar{e}_{i-1} eˉi1 是在当前位置使用的向量,通过所有词汇词的嵌入量之和,以及分数 s i − 1 s_{i-1} s
  • 29
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EwenWanW

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值