NLP自然语言处理学习笔记(二)Word2Vec

NLP自然语言处理学习笔记(二)Word2Vec

  • 一、Word2Vec
  • 二、负采样

本文是根据吴恩达教授的教学视频来整理的学习笔记,部分图片来源于视频的截图。原教学视频连接 https://mooc.study.163.com/learn/2001280005?tid=2001391038#/learn/content

一、Word2Vec

Word2Vec是词嵌入的一种算法。分为Skip-grams和CBOW两种。Skip-grams是给定中心词来预测上下文,CBOW是给定上下文来预测中心词。

下图中,以Orange为中心词,来预测上下文。
NLP自然语言处理学习笔记(二)Word2Vec_第1张图片

训练过程如下图:
NLP自然语言处理学习笔记(二)Word2Vec_第2张图片

Skip-grams算法的缺点主要是运行速度太慢。

改善方式一:softmax层需要对10000个样本求和,速度慢。因此使用分级softmax的算法,构建一课分类树,先判断预测出来的词是位于词汇表的前5000还是后5000,然后再继续做更细的分类。在实际使用中,这棵树通常可能不是对称的,将频繁出现的词放在贴近树根部的位置,将出现频率较低的词放到离树根部较远的位置。

改善方式二:负采样,下一小节将介绍。
NLP自然语言处理学习笔记(二)Word2Vec_第3张图片

二、负采样

正样本的分类结果是1,负样本的分类结果是0。
NLP自然语言处理学习笔记(二)Word2Vec_第4张图片

训练模型:
模型的输出是10000个softmax分类器,每次迭代选择1个正样本和k个负样本,来对参数进行更新。
NLP自然语言处理学习笔记(二)Word2Vec_第5张图片

如何选择负采样的样本?
如果按频率选择,会出现很多the, and, a, an这样的高频词,造成干扰。
如果完全均匀地选择,不考虑频率,效果又不太好。
因此有研究者建议,按频率的3/4次方来采样,可以取得比较好的效果。
NLP自然语言处理学习笔记(二)Word2Vec_第6张图片

你可能感兴趣的:(NLP自然语言处理,NLP,自然语言处理,Word2Vec,负采样,Skip-gram)