【NLP基础】Word2Vec 中 CBOW 指什么?

【NLP基础】Word2Vec 中 CBOW 指什么?

重要性:★★

CBOW 模型是根据上下文预测目标词的神经网络("目标词"是指中间的单词,它周围的单词是"上下文")。通过训练这个 CBOW 模型,使其能尽可能地进行正确的预测,我们可以获得单词的分布式表示。

CBOW模型:从上下文的单词预测目标词。

CBOW模型的网络结构如下:

CBOW 模型的输入是上下文。这个上下文用 ['you', 'goodbye'] 这样的单词列表表示,输入经过中间层后到达输出层。从输入层到中间层的变换由相同的全连接层(权重为 W i n W_{in} Win)完成, 从中间层到输出层神经元的变换由另一个全连接层(权重为 W o u t W_{out} Wout)完成。

  1. 这里我们对上下文仅考虑两个单词,所以输入层有两个。 如果对上下文考虑 N 个单词,则输入层会有 N 个。
  2. 中间层的神经元是各个输 入层经全连接层变换后得到的值的"平均"。
  3. 输出层的神经元是各个单词的得分,它的值越大,说明对应单词的出现概率就越高。得分是指在被解释为概率之前的值, 对这些得分应用 Softmax 函数,就可以得到概率。

以上下文是 you 和 goodbye,正确解标签(神经网络应该预测出的单词)是 say为例。使用CBOW模型的计算流程如下(节点值的大小用灰度表示) :

如果网络具有"良好的权重", 那么在表示概率的神经元中,对应正确解的神经元的得分应该更高。CBOW 模型的学习就是调整权重,以使预测准确。如果模型能很好的完成预测推理任务,则权重 W i n W_{in} Win(确切地说是 W i n W_{in} Win 和 W o u t W_{out} Wout 两者)学习到了蕴含单词出现模式的有效向量。

输入侧和输出侧的权重都可以被视为单词的分布式表示:

输入侧和输出侧权重作为单词的分布式表示有三种选择:

  • A. 只使用输入侧的权重
  • B. 只使用输出侧的权重
  • C. 同时使用两个权重

CBOW模型只是学习语料库中单词的出现模式。如果语料库不一样,学习到的单词的分布式表示也不一样。

相关推荐
行板Andante1 天前
AttributeError: ‘super‘ object has no attribute ‘sklearn_tags‘解决
人工智能·python·sklearn
kaikaile19951 天前
基于MATLAB的传统插值法实现超分辨率重建
人工智能·matlab·超分辨率重建
集成显卡1 天前
AI取名大师 | PM2 部署 Bun.js 应用及配置 Let‘s Encrypt 免费 HTTPS 证书
开发语言·javascript·人工智能
feifeigo1231 天前
基于DTW和HMM的语音识别仿真
人工智能·语音识别
永霖光电_UVLED1 天前
GlobalFoundries从台积电获得GaN技术许可
人工智能·神经网络·生成对抗网络
AKAMAI1 天前
Forrester调研400位高级决策者,揭示AI应用未来
人工智能·云计算
KKKlucifer1 天前
数据智能时代的安全困局与 AI 破局逻辑
人工智能·安全
Dm_dotnet1 天前
Microsoft Agent Framework/C#:了解Workflows的几种不同模式
人工智能
Macbethad1 天前
基于世界模型的自动驾驶控制算法
人工智能·机器学习·自动驾驶
带电的小王1 天前
【AI大模型技术】4.预训练语言模型(PLMs,Pre-trained Langue Models);5.Transformers Tutorial
人工智能·语言模型·自然语言处理