我正在研究Cho 2014 年的论文,该论文介绍了用于 seq2seq 建模的编码器-解码器架构。
在论文中,他们似乎使用给定输入的输出概率(或负对数似然)作为输入的损失函数长度和输出长度:
但是,我认为将其用作损失函数有几个问题:
- 似乎在训练期间假设教师强制(即,它不使用解码器对位置的猜测作为下一次迭代的输入,而是使用已知标记。
- 它不会惩罚长序列。由于概率来自到的输出,如果解码器在第一个之后生成更长的序列不会计入损失。
- 如果模型预测一个早期的 End-of-String 标记,损失函数仍然需要步骤——这意味着我们正在基于未经训练的模型“流形”生成输出。这似乎很草率。
这些担忧中的任何一个都有效吗?如果是这样,在更高级的损失函数方面是否有任何进展?