skip-gram算法原理
1.input,output,target
input的某个单词的one-hot编码(11000 词汇量的总数目)
output其他所有单词的概率(softmax 输出也是11000)
target是相近单词的one-hot形式
2.Loss
target和output的矩阵的交叉熵最小 or 平方差最小
3.NNet
3.1 隐层
300个神经元,需要训练的权重矩阵大小是1000300
本层的输出是: 11000 . 1000300 = 1300;
单词的词汇向量表示为1300; 单词的vector,embedding.
3.2 输入层
输入层是one-hot,并不需要实际计算矩阵运算,只需按照ont-hot的特点对于隐层权重值做lookup table"查找表"
(输入层相当于投影层, https://zhuanlan.zhihu.com/p/27234078)
3.3 输出层
softmax回归分类器
对于每一个节点的输出一个概率,output 11000
3.4 意义
两个单词拥有相似的“上下文”, 这两个词语的embedding features vector也会非常近似
4.优化
word2vec是一个权重规模非常大的神经网络 => gradient descent slowly
1.word pairs and “phas