贪心学院—自然语言处理—分布式向量表示
分布式
相当于不同分词对结果的贡献程度。
Word2Vec
[NLP] 秒懂词向量Word2vec的本质重点:当模型训练完后,最后得到的、是神经网络的权重,比如现在输入一个 x 的 one-hot encoder: [1,0,0,…,0],对应输入的某个分词,则在输入层到隐含层的权重里,只有对应 1 这个位置的权重被**,这些权重的个数,跟隐含层节点数是一致的,从而这些权重组成一个向量 V 来表示x,而因为每个分词的 one-hot encoder 里面 1 的位置是不同的,所以,这个向量 V就可以用来唯一表示 x。
CBOW模型(Continuous Bag-of-Words)和Skip-Gram模型
Skip-gram模型举例说明:
上述目标函数中存在一个问题:
将目标函数进行变形,其中词库太大了,增加了时间复杂度。
有两种优化方法:
-
负采样 Negative Sampling:预测总体类别的一个子集。
正样本(文本中出现的组合)是一定的,负样本(文本中为出现的组合)较多,该方法的思想在于:计算时不使用全部的负样本
而是随机采样,采样个数可自己设置。
下图为采样个数设为2的情况:(随机采用2个负样本计算目标函数)
在确定好样本后,进行梯度下降更新。
Skip-Gram model with SGD (skip-gram模型使用梯度下降的大致过程) -
hierarchical softmax:把 N 分类问题变成 log(N)次二分类
个人整理笔记,方便复习,若侵权,请联系。
附贪心学院课程链接: https://www.greedyai.com/courseinfor/105