之——序列生成
杂谈
基于RNN实现,通过RNN生成器不断获取输入,更新隐藏状态,将最后生成的隐藏状态传递给解码器,然后自循环迭代直到输出停止。
正文
1.训练
训练时候解码器使用目标句子不断作为输入,就算解码错了输入还是目标句子。
2.推理
3.衡量生成序列的好坏
n-gram是指输出序列的长度为n的词,比如输出ABCD,那么1-gram就是A、B、C、D,2-gram就是AB、BC、CD;
Pn是预测中n-gram相对标签的精度,例如标签ABCDEF,预测ABBCD,那么P1=所有预测中1-gram和标签match的精度,B只match到一个,所以P1=4/5,以此类推P2=3/4(AB/BC/CD)……
那么最终的BLEU定义:
我们希望BLEU尽可能等于1,当预测比label断exp负数将很小,当n越大,Pn<1则1/2n越大。