一、词嵌入层作用
词嵌入层的作用就是将文本转换为向量。
词嵌入层在 RNN 中的作用有输入表示、降低维度和捕捉语义相似性。
词嵌入层首先会根据输入的词的数量构建一个词向量矩阵,例如: 我们有 100 个词,每个词希望转换成 128 维度的向量,那么构建的矩阵形状即为: 100*128,输入的每个词都对应了一个该矩阵中的一个向量。

二、词嵌入层工作流程
**初始化词向量:**词嵌入层的初始词向量通常会使用随机初始化或者通过加载预训练的词向量(如Word2Vec或GloVe)进行初始化。
**输入索引:**每个单词在词汇表中都有一个唯一的索引。输入文本(例如一个句子)会先被分词,然后每个单词会被转换为相应的索引。
**查找词向量:**词嵌入层将这些单词索引映射为对应的词向量。这些词向量是一个低维稠密向量,表示该词的语义。
**输入到RNN:**这些词向量作为RNN的输入,RNN处理它们并根据上下文生成一个序列的输出。

三、词嵌入层使用
在 PyTorch 中,使用 nn.Embedding 词嵌入层来实现输入词的向量化。

nn.Embedding 对象构建时,最主要有两个参数:
1、num_embeddings 表示词的数量
2、embedding_dim 表示用多少维的向量来表示每个词