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

相关推荐
码路高手1 分钟前
Trae-Agent源码重点
人工智能·架构
剑穗挂着新流苏3129 分钟前
114_PyTorch 进阶:模型保存与读取的两大方式及“陷阱”避坑指南
人工智能·pytorch·深度学习
CoovallyAIHub12 分钟前
把 Whisper、Moonshine、SenseVoice 统统装进手机:sherpa-onnx 离线语音部署框架,GitHub 10.9K Star
人工智能·架构
一只叫煤球的猫18 分钟前
RAG 如何落地?从原理解释到工程实现
人工智能·后端·ai编程
AI营销快线22 分钟前
AI营销获客难?原圈科技深度解析SaaS系统增长之道
大数据·人工智能
南滑散修26 分钟前
机器学习(四):混合高斯模型GMM
人工智能·机器学习
柯儿的天空34 分钟前
Mem0深度解析:给你的ai agent加上长期记忆,让ai从“健忘“到“过目不忘“
人工智能·gpt·自然语言处理·ai作画·aigc·ai编程·agi
FluxMelodySun36 分钟前
机器学习(二十五) 降维:主成分分析(PCA)及特征值分解
人工智能·算法·机器学习
Cosolar39 分钟前
Transformer训练与生成背后的数学基础
人工智能·后端·开源