CBOW介绍

CBOW分为输入层 Input layer 、隐藏层 Hidden layer 、输出层 Output layer 。

一、输入层 Input layer

1、输入的是 One-hot 编码的 vector 。

什么是 One-hot 编码?
One-hot 编码又称一位有效编码,是将文字数字化的过程。举个例子,一个 corpus (语料库)为“ I drink coffee everyday ”。假设将单词放入数组 str ,则该数组 str 长度为4, vector 也就是4维向量。str[0]=“I”,str[1]=“drink”,str[2]=“coffee”,str[3]=“everyday”。把他转换成One-hot编码就是

单词 One-hot 编码
I [1,0,0,0]
drink [0,1,0,0]
coffee [0,0,1,0]
everyday [0,0,0,1]

2、输入层总共有 C 个 V 维 vector 。C 是由 window size (上下文窗口大小)决定的,window size 代表我们从 target word 的一边(左边或右边)选取词的数量。假设 target word 是 coffee , window size 为2,那么则在 coffee 左侧和右侧分别选取2个词,则 C=2+2=4。V 表示语料库中词的个数,即 One-hot vector 的维度 V(window size*2=C<=V)。

二、隐藏层 Hidden layer

1、矩阵 W 是 V 行 N 列

V 表示语料库中词的个数,即 One-hot vector 的维度 V
N 是一个任意数字,即最后得到的词向量维度为 N

2、每个 input vector 分别乘以 W 可以分别得到维度为 N 的词向量,然后再求平均值得到隐藏层向量。
3、隐藏层向量乘 W’ ( N 行 V 列),得到一个维度为 V 的向量。

三、输出层 Output layer

输出层是一个 softmax 回归分类器,它的每个结点将会输出一个0-1之间的值(概率),这些所有输出层神经元结点的概率之和为1。

四、I drink coffee everyday 示例图


五、参考文章

1、CBOW 与 skip-gram
2、word2vec是如何得到词向量的?
3、快速笔记:NLP 中的有用术语和概念:BOW、POS、Chunking、Word Embedding
4、理解 Word2Vec 之 Skip-Gram 模型

Word2Vec之CBOW详解相关推荐

  1. [NLP] 深入浅出 word2vec 词向量详解

    Word2vec 词向量 前置知识:需要理解基本的MLP 多层感知机(全连接神经网络) 和DL.数学相关基础知识 One-hot encoding 独热编码 刚开始,人们用one-hot编码来表示词, ...

  2. 谈谈Word2Vec的CBOW模型

    0x00 背景 最近在做毕设,需要使用Google的word2vec.查阅了相关资料,总结后,写下这篇. 注,本文大多取自以下内容: cbow例子,取自知乎,已取得答主同意 word2vec数学原理详 ...

  3. Word2Vec算法详解(CBOW和skip-gram算法详解)

    这里发现了一篇很好的教程,因此就不写了,大家直接下载看就可以了,自己也偷偷懒,这篇文章对word2vec算法思想讲解的很透彻,很浅显易懂,这里对此表示感谢,当然你的英文比较好的情况下,可以直接看英文原 ...

  4. 通俗易懂word2vec详解词嵌入-深度学习

    https://blog.csdn.net/just_so_so_fnc/article/details/103304995 skip-gram 原理没看完 https://blog.csdn.net ...

  5. Word2Vec详解

    Word2Vec详解 这几天集中学习了Word2Vec,实现并不复杂,但是真正对一些细节有些了解还查阅了一些资料,今天在这里统一自己整理总结一下. 简介 首先说为什么会有Word2Vec,之前对文字的 ...

  6. 转:word2vec 中的数学原理详解

    1,目录和前言 https://blog.csdn.net/itplus/article/details/37969519 2,预备知识:逻辑回归.贝叶斯公式.霍夫曼树 https://blog.cs ...

  7. Word2vec结构详解及原理推导

    目录 统计语言模型 神经概率语言模型 Word2vec Hierarchical Softmax Huffman 树 CBOW 和 Skip-gram Negative Sampling CBOW 和 ...

  8. 语言处理方法-Word2Vec详解

    NLP之--Word2Vec详解 2013年,Google开源了一款用于词向量计算的工具--word2vec,引起了工业界和学术界的关注.首先,word2vec可以在百万数量级的词典和上亿的数据集上进 ...

  9. 【NLP】词向量:从word2vec、glove、ELMo到BERT详解!

    目前,词向量(又叫词嵌入word embedding)已经成为NLP领域各种任务的必备一步,而且随着bert elmo,gpt等预训练模型的发展,词向量演变为知识表示方法,但其本质思想不变.学习各种词 ...

最新文章

  1. Python基础编程——字典的创建
  2. 安卓中实现两端对齐,中间fill_parent的方法
  3. rop检查_注意!这几类人一定要定期检查眼底!
  4. 搞定Oracle SCN -system change number
  5. vb microsoft.xmlhttp 获取所有超链接_编写我的第一个VB程序
  6. mac下antlr4命令使用
  7. android冻结命令,在Android上使用冻结tensorflow图中的变量
  8. 瑞典抢发区块链数字货币 E-Krona!
  9. app前后台交互php_PHP分布式架构RPC介绍以及手写RPC框架
  10. 在Winform中屏蔽UnityWebPlayer的右键以及自带Logo解决方案整理
  11. C#随机生成信用卡卡号的源码
  12. Executors Java编程规范插件提示手动创建线程池的解决办法
  13. 统信系统安装京瓷打印机驱动步骤 针对京瓷系列复合机的UOS操作系统用户使用说明
  14. 力扣学习计划——数据结构与算法入门笔记
  15. 袖珍磁带的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 元素JavaScript知识点梳理与经典百例
  17. ununtu20.04系统中如何划词翻译_接住了!有了这几个翻译软件,英语渣渣也能轻松读文献...
  18. MySQL 存储引擎 (SphinxSE)安装详解
  19. mbr linux安装分区格式,装机、做系统必备:秒懂MBR和GPT分区表
  20. java 工作流 jbpm,J2EE工作流管理系统jBPM详解(一)(4)

热门文章

  1. NVIDIA Turing架构解析:追光逐影,成败未定
  2. 微软和苹果笔记本键盘对比_看看微软,谷歌和苹果的平面设计方法
  3. 【操作系统】第五话·进程的切换与进程控制
  4. android studio oncreate,android studio怎样实现 oncreate方法
  5. php全局变量失效,概论为什么PHP全局变量不能生效_PHP教程
  6. (个人)健康科技产品要求及标准大集合
  7. 烽火推系统源码,抖音矩阵系统源码独立部署 TELL
  8. dockerfile指定jvm参数 1
  9. 苹果M1不仅终结Intel的PC业务,更可能导致X86的覆灭
  10. 微信小程序动画(四):平移