word2vec中的数学|基于hierarchical softmax(分层softmax)、negative sampling(负采样)的模型

第四章 基于hierarchical softmax的模型

补充:详解Hierarchical Softmax
Word2vec常用模型:
1.CBOW模型(continuous bag-of-words model)
2.skip-gram模型(continuous skip-gram model)
在这里插入图片描述
word2vec两套框架:
对于CBOW和skip-gram模型,两套框架基于hierarchical softmax 和基于negative sampling。
目标函数的取法:
1.基于神经网络的语言模型的目标函数通常取如下对数似然函数
在这里插入图片描述
关键是条件概率函数p(w|Context(w))的构造,构造方法如下:
在这里插入图片描述
补充:概率p(w|Context(w))表示成函数F
在这里插入图片描述
2.对于word2vec中基于hierarchical softmax的CBOW模型,优化的目标函数形如(4.1);基于hierarchical softmax的skip-gram模型,优化的目标函数形式如下:
在这里插入图片描述

4.1CBOW模型

网络结构
输入层:包含Context(w)中2c个词的词向量
投影层:将输入层的2c个向量做求和累加,即
在这里插入图片描述
输出层:对应一个哈夫曼树
神经网络对比CBOW结构示意图
在这里插入图片描述
1.(从输入层到投影层的操作)前者是通过拼接,后者通过累加求和。
2.(隐藏层)前者有隐藏层,后者无隐藏层
3.(输出层)前者是线性结构,后者是树形结构
CBOW目标函数的求解
统一定义:
在这里插入图片描述
p(w|Context(w))的求法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
函数优化(函数最大化):随机梯度上升法
在这里插入图片描述
在这里插入图片描述

4.2skip-gram

网络结构
输入层:只含当前样本的中心词w的词向量v(w)
投影层:恒等投影,多余部分
输出层:哈夫曼树
梯度计算
目标函数形如(4.2),关键是条件概率函数p(Context(w)|w)的构造:
在这里插入图片描述
目标函数优化:随机梯度上升法
在这里插入图片描述

Hierarchical Softmax的缺点与改进

在讲基于Negative Sampling的word2vec模型前,我们先看看Hierarchical Softmax的的缺点。的确,使用霍夫曼树来代替传统的神经网络,可以提高模型训练的效率。但是如果我们的训练样本里的中心词w是一个很生僻的词,那么就得在霍夫曼树中辛苦的向下走很久了。能不能不用搞这么复杂的一颗霍夫曼树,将模型变的更加简单呢?
Negative Sampling就是这么一种求解word2vec模型的方法,它摒弃了霍夫曼树,采用了Negative Sampling(负采样)的方法来求解,下面我们就来看看Negative Sampling的求解思路。

第五章 基于negative sampling的模型

negative sampling(NEG本质:利用已知的概率密度函数来估计未知的概率密度函数)是NCE(noise contrastive estimation)的简化版本,目的是用来提高训练速度并改善所得词向量的质量。与hierarchical softmax相比,NEG不再使用复杂的哈夫曼树,而是利用相对简单的随机负采样,能大幅度提高性能。

负采样算法

原理:词典D中的词在语料C中出现的次数有高有低,对于那些高频词,被选为负样本的概率就比较大;反之亦然。本质上就是一个带权采样问题。
带权采样机理:
在这里插入图片描述
word2vec中的做法:
在这里插入图片描述
在这里插入图片描述

5.1CBOW模型

在CBOW模型中,已知词w的上下文Context(w),需要预测w,对于给定的Context(w),词w就是一个正样本,其他词就是负样本。
确定目标函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
目标函数优化:随机梯度上升法
在这里插入图片描述
在这里插入图片描述
更新公式讲解:
在这里插入图片描述

5.2 skip-gram模型

确定目标函数
在这里插入图片描述
在这里插入图片描述
梯度计算、参数更新公式
在这里插入图片描述
(5.12)中对于每一个样本(w,Context(w)),需要针对Context(w)中的每一个词进行负采样,而word2vec源码中只针对w进行了|Context(w)|词负采样。
在这里插入图片描述
目标函数优化:随机梯度上升法
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值