Embeding技术:word2vec Parameter Learning Explained

本文深入解析word2vec模型,包括CBOW和skip-gram两种模型的原理,以及分层softmax和负采样两种优化技术,帮助理解词嵌入的参数学习过程。
摘要由CSDN通过智能技术生成

参考链接

一、主要内容:

  • word2vec模型:
    • CBOW 模型:continuous bag-of-word
    • SG模型:skip-gram
  • 优化技术:
    • 分层softmax:hierarchical softmax
    • 负采样:negative sampling

二、CBOW 模型:

  • 1、One-word context 模型:
    • 模型图:
    • 上图是一个全连接神经网络,在预测当前此时我们只使用前一个词作为上下文信息,就像一个二元模型(bigram model)一样。
    • 输入层是一个单词的one-hot表示, V V V是词汇表的大小,隐藏层单元个数为 N N N
    • 输入层到隐藏层:连接矩阵为 W V × N W_{V×N} WV×N,隐藏层与输入层的连接是简单的线性连接(即没有激活函数),两层的连接公式为:
    • v w I T v_{wI}^T vwIT W T W^T WT的列(即 W W W的行), w I w_I wI是输入的词。
    • 由于 X X X是单词的one-hot表示,若 X X X表示词汇表的第 k k k个单词,则 X X X列向量除了第 k k k个元素为1以外其他元素都是0,这样 h = W T X h=W^TX h=WTX,这相当于取出 W T W^T WT的第 k k k列(即 W W W的第 k k k行)作为 h h h,实质这就是第 k k k个单词的embeding表示.
    • 隐藏到输出层:连接矩阵为 W N × V ′ W_{N × V}' WN×V, 两层的连接公式为: U = W ′ T h U={W'}^T h U=WTh U U U是一个大小为 V V V的列向量,每个元素对于词汇表的一个词,我把每个元素称为其对应词的分数 (score),第 j j j个词的分数就是公式如下:
      u j u_j uj是词汇表中第 j j j个词的得分也是输出层每个单元的输入, v w j ′ T { {v_{wj}}'}^T vwjT W ′ W' W的第 j j j列。
    • 然后将 U U U经过一softmax层(softmax:一个对数线性分类模型)得到每个单词的后验分布(即概率值),softmax层表达式(第 j j j个词的后验概率):
      上式的含义是输入词汇表的第 I I I个单词输出第 j j j个词的概率,即第 j j j个词在第 I I I个词后面的概率,其中 y j y_j yj是输出层第 j j j个单元的输出,对应于词汇表的第 j j j个词。
    • 注意: v w v_w vw v w ′ v_w' vw是对应单词 w w w的两表示,我们将他们分别称为 w w w输入向量与输出向量,输入向量 v w v_w vw是输入层到隐藏层连接矩阵 W W W的行,输出向量是隐藏层到输出层连接矩阵 W ′ W' W的列
    • 隐藏层到输出层参数 W ′ W'
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值