ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

word2vec

2020-05-24 22:02:02  阅读:270  来源: 互联网

标签:word2vec boldsymbol times 单词 context word 向量


lanyu_01 《word2vec Parameter Learning Explained》论文学习笔记

CBOW(Continuous Bag-of-Word Model)

one-word context

设定context(预测目标单词的上下文)仅有一个单词,即使用一个单词的context去预测目标单词。
A simple CBOW model with only one word in the context
上图即为one-word context下的神经网络模型,相邻层为全连接,输入层使用one-hot encoder的单词向量\(\boldsymbol x=(x_1,...,x_k,...,x_V)^T\),权重矩阵\(W_{V\times N}\),则有:

\[h=W^T\boldsymbol x \]

由于\(\boldsymbol X\)中仅有一个\(x\)为1,设其中\(x_k=1\),则上式等于\(W\)的第\(k\)行,即\(h=V_{W_k}^T\),这就是输入向量
隐藏层的激活函数是线性的,也就是对\(h=V_{W_k}^T\)不做任何处理。
隐藏层到输出层的权重矩阵为\(W_{N\times V}^{'}\),则有:

\[o=W_{N\times V}^{'}\times V_{W_k}^T=W_{N\times V}^{'}\times h \]

前面我们说了,对于输入层到隐藏层,\(h\)的结果其实是对于单词\(\boldsymbol x\)one-hot encoder中1的位置\(k\)索引的\(W\)的第\(k\)行的转置,那么对于词表中的每一个单词都可以计算出一个得分:

\[\mu _j =\boldsymbol v _{W_j^{'}}h \]

注意这里的\(v_{W_j^{'}}\)实际上是\(W^{'}\)的第j行,原因是最后得到的o是一个one-hot encoder形式的向量。
此时我们得到了context对应于其它所有单词向量的一个得分向量。

  • 以上我们可以总结得到:输入向量是\(W\)的某一行,输出向量是\(w^{'}\)的某一列。

Multi-word context

对于Multi-word context:

将多个context相加平均再进行one-word context的步骤即可。

标签:word2vec,boldsymbol,times,单词,context,word,向量
来源: https://www.cnblogs.com/DslBlogs/p/12952970.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有