在神经机器翻译中绑定权重

Was*_*mad 0 python deep-learning recurrent-neural-network pytorch seq2seq

我想将解码器的embedding层和预测层的权重联系起来。next_word嵌入维度设置为 300,解码器的隐藏大小设置为 600。NMT 中目标语言的词汇量为 50000,因此嵌入权重维度为 ,50000 x 300预测下一个单词的线性层权重为50000 x 600

那么,我怎样才能把它们绑起来呢?在这种情况下实现重量绑定的最佳方法是什么?

kma*_*o23 5

Weight Tying :在输入到嵌入层和输出到softmax层之间共享权重矩阵;也就是说,我们不使用两个权重矩阵,而是仅使用一个权重矩阵。这样做背后的直觉是为了解决过度拟合的问题。因此,权重绑定可以被视为正则化的一种形式。

这已在PyTorch 示例中的单词语言模型中实现