skip-gram模型解释/CBOW模型

Skip-Gram模型:
参考:(写的比较详细通俗了)
https://www.jianshu.com/p/da235893e4a5

参考:(有图示,很好理解,细节很不错,比上面那个详细很多)
https://blog.csdn.net/u014665013/article/details/79128010#32_Skipgram_67

一部分说明:

  1. (假设词典大小为10000,目标词向量维度为300维)用中心词去预测背景词的时候,每次的输入为背景词的one-hot向量(10000维),经过隐藏层(此处的隐藏层没有非线性函数,即没有s函数或者relu函数,隐藏层的权重系数其实就是词向量矩阵)后得到该词的低维向量(300维),然后在经过一个softmax层去预测背景词是哪一个(10000维),此处的softmax应该也有权重矩阵,为10000*300维。

  2. 用构建好的词对训练得到的隐藏层矩阵系数为我们最终需要的。

CBOW 模型参考
https://www.jianshu.com/p/d2f0759d053c
CBOW需要求出每个背景词的词向量然后相加求平均

理解:
如果一个句子S由n个词w1~wn,那么S出现的概率就应该等于P(w1,w2,…,wn),用条件概率的公式即得到共识①如下:
P(S)=P(w1,w2,…,wn)=P(w1)P(w2│w1)…P(wn|w1,w2,…,w(n−1))
不懂这个公式丝毫不影响后面的学习,这个公式翻译成白话就是:词语wn出现的概率依赖于它前面n−1个词。当n很大时,P(wn│w1,w2,…,w(n−1))的计算是非常麻烦甚至无法估算,于是产生了一个叫做马尔科夫假设的概念并由此得到“二元模型”。马尔科夫假设的意思是“任意一个词w_k只与它前面的词即w(k−1)有关”。那么这样,公式①就可以写作下面的公式②的形式:
P(S)=P(w1)P(w2│w1)…P(wn|w(n−1))

参考:https://www.jianshu.com/p/da0a5edeca3d

猜你喜欢

转载自blog.csdn.net/aikudexue/article/details/88069447