word2vec的初心是什么? 为什么要使用负采样技术? 接下来在阅读论文的过程中经常会遇到mepath2vec等负采样。 如果不熟悉这个知识点,论文的很多精华的理解就会产生偏差。
我看了很多博客和Web站点的视频进行了说明,但还没有说明清楚。
最后认识的大人物明确地说了。 详情请参阅
1 用负采样带来的问题参数更新较慢,而我们一次只更新窗口中出现的几个词参数,但在计算坡度的过程中,我们计算整个参数矩阵,使参数矩阵中的大部分值为0。
计算开销大,二是导致计算效率下降
当softmax函数处于活动状态时,将计算所有单词“得分”。 (幻灯片窗口在幻灯片过程中,需要计算并合计幻灯片窗口中的单词,效率很低。)。
2. 使用负采样
负抽样的中心思想是:
计算中心词和窗口中上下文词的真正“得分”,添加词表中的随机词(除滑动窗口外)和中心词的“得分”——“噪声”。目标方程
(最大化 真实单词对“得分”+ “噪声”作为目标方程)
我用上述公式解决了前面提到的两个问题。
最小化3. 计算梯度最大化问题的问题,通过只采样k个参数放弃softmax函数并采用sigmoid函数,不会先求窗口中所有单词的“得分”
与此相关的变量,在.之外另求偏导即可。 然后进行更新
与求偏导其他参数无关,视为常数。
其中的sigmoid函数(log除外)在提示后如下。
请注意,这里的log看起来以e为底部。 t这个总和没有关系。 k这个总和有关。
简化:
之前认识的大人物不进行最大化最小化,直接给出答案是错误的。 应该首先最小化,寻求指导,得出结果。
与求偏导其他参数无关,视为常数。
根据寻求指导的想法:
简化:
寻求偏导
简化: