在联合学习对齐和翻译 Bahdanau 等人的神经机器翻译论文中。人。为什么没有使用 Glove 或 word2vec 等词嵌入?
我知道这是 2014 年的一篇论文,但是 github 上论文的当前实现也不使用任何词嵌入?
为了尝试对论文进行编码,使用词嵌入是否合理?
在联合学习对齐和翻译 Bahdanau 等人的神经机器翻译论文中。人。为什么没有使用 Glove 或 word2vec 等词嵌入?
我知道这是 2014 年的一篇论文,但是 github 上论文的当前实现也不使用任何词嵌入?
为了尝试对论文进行编码,使用词嵌入是否合理?
简而言之——该模型确实使用了词嵌入,它们只是不像 Glove 或 word2vec 那样预先训练过的嵌入;相反,嵌入是随机初始化的,并与网络的其余部分一起进行联合训练。
在原始 Bahdanau 等人的 A.2 节中对网络的完整描述中。在论文中,您将看到E
为编码器和解码器描述的词嵌入矩阵。B.1 节也描述了它们是如何初始化的。
在您有足够数据的情况下,这通常与预训练嵌入一样好或更好。也就是说,在资源匮乏的情况下,它可以帮助使用预先训练的嵌入来初始化嵌入矩阵。本文可能会帮助您更详细地探索该想法。
此外,您关于当前实现不这样做的说法并不完全准确 - 虽然嵌入通常是默认联合训练的,但许多现有的神经 MT 工具包可以选择使用预训练向量初始化嵌入。例如,OpenNMT-py、Marian。