一、Word2Vec
二、Skip-Gram
Skip-Gram(跳字模型):Skip-Gram模型通过给定的中心词来预测其上下文中的单词。具体来说,对于文本中的每一个单词,Skip-Gram模型将其视为中心词,并尝试预测该词周围一定窗口大小内的其他单词(即上下文单词)。
Skip-Gram模型如同一个词汇侦探,通过中心词“线索”去“追踪”并预测其周围的上下文词汇,以此构建词汇间的语义网络。
输入层:输入中心词的one-hot编码。
嵌入层:将one-hot编码转换为词向量。这一层的权重矩阵即为我们要学习的词嵌入矩阵。
输出层:对于每一个上下文单词,输出层会输出一个概率分布,表示中心词预测为该上下文单词的概率。通常,输出层使用softmax函数进行归一化处理。
Skip-Gram模型训练:通过遍历文本中的中心词及其上下文,使用中心词词向量预测上下文单词分布,计算预测与真实分布间的损失,并利用反向传播更新模型参数与词嵌入矩阵,以优化词向量表示。
初始化词嵌入矩阵和模型参数。
对于文本中的每一个中心词,遍历其上下文单词。
使用中心词的词向量作为输入,通过模型预测上下文单词的概率分布。
计算预测概率与真实上下文单词之间的损失(如交叉熵损失)。
使用反向传播算法更新模型参数和词嵌入矩阵。
Skip-Gram
三、CBOW
CBOW(连续词袋模型):CBOW(Continuous Bag of Words,连续词袋模型)与Skip-Gram相反,CBOW模型通过给定的上下文单词来预测中心词。具体来说,对于文本中的每一个中心词,CBOW模型会将其周围一定窗口大小内的其他单词(即上下文单词)作为输入,并尝试预测该中心词。
CBOW模型类似于一个高级的完型填空游戏,其中上下文中的词汇(已知选项)被用来“填空”预测出缺失的中心词(答案),从而揭示词汇间的语义联系和模式。
输入层:输入上下文单词的one-hot编码。
嵌入层:将上下文单词的one-hot编码转换为词向量,并将这些词向量进行平均或求和,得到上下文向量。
输出层:输出层同样使用softmax函数输出中心词的概率分布。
CBOW模型训练:通过遍历文本中的中心词及其上下文,使用中心词词向量预测上下文单词分布,计算预测与真实分布间的损失,并利用反向传播更新模型参数与词嵌入矩阵,以优化词向量表示。
初始化词嵌入矩阵和模型参数。
对于文本中的每一个中心词,获取其上下文单词的词向量。
将上下文单词的词向量进行平均或求和,得到上下文向量。
使用上下文向量作为输入,通过模型预测中心词的概率分布。
计算预测概率与真实中心词之间的损失。
使用反向传播算法更新模型参数和词嵌入矩阵。
CBOW