Scheduled Sampling:RNN的训练trick

scheduled sampling翻译成“计划采样”, 用于解决exposure bias问题
针对sequence-to-sequence框架下的decoder阶段,在训练时,生成 y t y_t yt时,输入的 y t − 1 y_{t-1} yt1是训练集中标注序列中的true value, 然后在预测是,输入的 y t − 1 ′ y^{'}_{t-1} yt1是在t-1时刻生成的label, 该标签可能是正确的,也可能是预测错误的标签,如果是错误的标签就会导致一个问题,就是错误爆炸,说白了就是 y t − 1 ′ y^{'}_{t-1} yt1是错误标签,那么以它为输入生成的 y t y_t yt也是不可信的。针对这种问题,提出了scheduled sampling的解决方法。
Scheduled Sampling是指RNN训练时时会随机使用模型真实label来作为下一个时刻的输入,而不像原先那样只会使用预测输出。
训练时网络将不再完全采用真实序列标记做为下一步的输入,而是以一个概率p选择真实标记,以1-p选择模型自身的输出。“计划采样”即p的大小在训练过程中是变化的,就像学习率一样。作者的思想是:一开始网络训练不充分,那么p尽量选大值,即尽量使用真实标记。然后随着训练的进行,模型训练越来越充分,这时p也要减小,即尽量选择模型自己的输出。这样就尽量使模型训练和预测保持一致。

http://www.bubuko.com/infodetail-2091495.html
https://blog.csdn.net/bobobe/article/details/81297064
paper: Scheduled Sampling for Sequence Prediction with Recurrent Neural Networks

你可能感兴趣的:(Machine,Learning)