char-rnn seq2seq 模型中的嵌入矩阵有什么用?

机器算法验证 机器学习 深度学习 lstm 循环神经网络 张量流
2022-04-01 02:46:02

最近,我一直在研究 seq2seq 模型,这些模型已用于使用循环神经网络(通常使用 LSTM 单元)将一种语言翻译成另一种语言。

这些模型也可用于生成文本,一次一个字符基于其有效编码先前字符的内部存储器,该模型学习下一个字符的概率分布。

在查看这些 seq2seq 模型的各种实现时,比如这个,我看到一个嵌入矩阵是与神经网络联合训练的。据我了解,该矩阵的每一行都是特定字符的“嵌入”(每个字符由一个整数表示:它在有限词汇表中的 id)。

使用这种嵌入的理由是什么?它是干什么用的?为什么需要它?

LSTM:长短期记忆

1个回答

嵌入是字符的密集向量表示。使用它的基本原理是将任意离散 id 转换为连续表示。

主要优点是反向传播可以在连续表示上进行,而不能在离散表示上进行。第二个优点是向量表示可能包含基于其与其他字符相比的位置的附加信息。

这仍然是一个热门的研究领域。如果您有兴趣了解更多信息,请查看 word2vec 算法:为学习了有趣关系的单词学习向量嵌入。例如,这里有一篇有趣的文章:https ://deeplearning4j.org/word2vec.html