Word2Vec中的CBOW和Skip-gram的理解

NLP大概是用一辈子的时间都没办法学完的,今天在复习Word2Vec的时候对其中一一些问题又有了新的理解。网上关于它的算法原理有很多,推荐以下几个CSDN链接和B站视频:

机器学习算法(十三):word2vec
word2vec!!!超直白!!
损失函数——交叉熵损失函数(CrossEntropy Loss)
Negative Sampling 负采样详解
想补充一下新的认识:
1.为啥我们训练模型的时候只需要关注前一个权重矩阵W呢?
**这是因为只要one-hot向量和前面的W相乘就可以得到我们想要的词向量。**我们最终的目的并不是根据这个词来预测上下文,或者根据周围的词来预测这个词,我们最终的目的仅仅是要得到这个词向量,后一个权重矩阵是对隐藏层进行加权,就是常规的CNN模型预测的过程,得到那个预测结果之后,再用softmax函数进行转化,就能得到预测概率,相当于就是做一个分类的过程了,对我们后续的工作没有很大用处。而通常,我们得到词向量之后,再进行后续的文本模型建模过程,例如文本聚类,这一阶段只需要词向量, 所以只有前一个权重矩阵才是重要的。
2.权重矩阵W是怎么不断更新的呢?
W的更新都涉及到一个计算损失函数的过程,在这里我们用到的是一个叫做交叉熵损失函数的东西,在对它进行不断的计算,求偏导计算wij,利用梯度下降法不断更新,直至损失小于给定的阈值。

你可能感兴趣的:(word2vec,机器学习,人工智能)