teacher forcing

Teacher Forcing 机制在 Seq2Seq 模型中用于加速训练,通过使用真实目标文本作为 Decoder 输入。在训练时,模型根据标准答案预测输出,而在预测时则依赖自己的预测结果。这有助于训练,但也可能导致预测错误累积。为平衡训练,通常会随机以一定概率结合标准答案和前一步预测进行解码。
摘要由CSDN通过智能技术生成

学习链接:https://zhuanlan.zhihu.com/p/93030328
链接:https://zhuanlan.zhihu.com/p/380462092
teacher forcing机制是怎样的?上个问题中我们给出的图示是最简单的Seq2Seq的示意图,其中忽略了很多细节。
在这里插入图片描述
这张图,展示了在训练时,seq2seq内部的详细结构。在Encoder端,我们将输入文本的词序列先经过embedding层转化成向量,喂进Encoder中,得到一个context vector。Decoder端的输入除了context vector以外,还将接受上一个时刻的输出。这里Decoder在训练和测试时是不一样的。在训练时,我们使用真实的目标文本,即“标准答案”作为输入(注意第一步使用一个特殊的字符,表示句子的开头)。每一步根据当前正确的输出词、上一步的隐状态来预测下一步的输出词。而在预测时,由于Decoder端此时没有所谓的“真实输出”或“标准答案”了,所以只能自产自销:每一步的预测结果,都送给下一步作为输入,直至输出就结束。[2]
在这里插入图片描述

我们称这两种模式,根据标准答案来decode的方式为teacher forcing,而根据上一步的输出作为下一步输入的decode方式为free running。teacher forcing机制是为了加快训练速度,因为在训练

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值