【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模型只是学习语料库中单词的出现模式。如果语料库不一样,学习到的单词的分布式表示也不一样。

相关推荐
神算大模型APi--天枢6464 分钟前
从异构调度到边缘部署:国产大模型算力平台的后端开发能力拆解
大数据·人工智能·科技·架构·硬件架构
minhuan4 分钟前
大模型应用:完整语音交互闭环:TTS+ASR融合系统可视化场景实践.22
人工智能·语音识别·tts·asr·语音大模型应用
song5018 分钟前
鸿蒙 Flutter 日志系统:分级日志与鸿蒙 Hilog 集成
图像处理·人工智能·分布式·flutter·华为
Mintopia8 分钟前
🚀 AIGC 如何重塑 Web 内容生产的价值链 —— 一场“硅基文艺复兴”的技术变革
人工智能·aigc·全栈
拉姆哥的小屋15 分钟前
从原子到性能:机器学习如何重塑双金属催化剂的设计范式
人工智能·python·算法·机器学习
sponge'17 分钟前
opencv学习笔记13:U-Net
人工智能·深度学习·机器学习
Evand J18 分钟前
【MATLAB例程】自适应阈值的小波变换去噪,信号噪声:拉普拉斯噪声、脉冲噪声与高斯噪声|混合非高斯。附下载链接
开发语言·人工智能·matlab
skywalk816326 分钟前
openi启智社区提供大模型在线体验功能
人工智能
秋刀鱼 ..26 分钟前
第五届遥感与测绘国际学术会议(RSSM 2026)
大数据·运维·人工智能·机器人·自动化
全栈陈序员29 分钟前
【Python】基础语法入门(十八)——函数式编程初探:用 `map`、`filter`、`reduce` 和 `lambda` 写出更简洁的代码
开发语言·人工智能·python·学习