Wordvec
例句 "我写博客"
objective function 最大似然,联合概率
L(θ) =
J(θ) =
Skip-gram模型
输入一个词,预测周围词。
隐层 H的参数W,词向量维度 w_dim , 要预测词的数量 C, 字典维度 vocab_dim
输入:写 ,输出:[我,博客]
input x W = h , h x W’ = output
[1 x w_dim ] x [w_dim x C] = [1 x C] , [1 x C] x [C x vocab_dim ] = [1 x vocab_dim ] (概率)
输出的是概率,softmax 后得到 ‘博客’ 概率最高 ,反向更新 W’和W ,训练后的词向量在W(隐层)中
CBOW模型
输入周围的词,预测中间的词
多个输入 x W后,得到多个h1....h5,加权求和 得到h , h x W’ = [1 x vocab_dim ] (概率)
softmax 后得到 ‘写’ 概率最高 。
vocab 维度的大小softmax 计算耗时过多。
优化
hierarchical softmax
通过最优二叉树,哈夫曼编码等加速运算
negative sampling
使用负样本, 输出层只考虑 负样本数+正样本 ,少量的神经元需要反向传播运算即可。越大的样本,负采样数越少。
负采样的选词概率为p(w) 使用3/4 次方 增大低频词被抽到的概率。