Word2Vec学习笔记(三)续
生活随笔
收集整理的這篇文章主要介紹了
Word2Vec学习笔记(三)续
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
三、(續(xù))Skip-gram模型介紹
????Skip-gram模型并不是和CBOW模型相反的,它們的目的都是計(jì)算出詞的向量,只不過在作者的論文中給出的圖看樣子是反的而已。Skip-gram模型是用每個(gè)當(dāng)前詞去預(yù)測一定范圍內(nèi)除當(dāng)前詞之外前后的詞。同樣的,此模型也是輸出一顆huffman樹,如下圖所示:此圖也借用下圖借用
http://blog.csdn.net/itplus/article/details/37969979
Skip-gram模型的目標(biāo)函數(shù)
????由于Skip-gram的模型輸入是當(dāng)前詞,目的是預(yù)測它周圍的詞,因此,此任務(wù)的目標(biāo)函數(shù)如下所示:
由于 context(w) 是一個(gè)句子,因此,可以將 P(context(w)|w)寫成如下形式:
P(context(w)|w)=∏u∈context(w)P(u|w)
根據(jù)hierarchical softmax的討論:
P(u|w)=∏j=2luP(duj|v(u);θj?1)
那么:最終的目標(biāo)函數(shù)可以寫為:
L=∑w∈Clog∏u∈context(w)∏j=2luP(dwj|v(u);θj?1)
這里,θ,v(w)的更新公式先留著,待推導(dǎo)完再進(jìn)行補(bǔ)充。
今天推導(dǎo)了一下,其實(shí)和上節(jié)中的推導(dǎo)差不多,現(xiàn)將推導(dǎo)過程記錄一下
令 f=dujlog[1?σ(v(w)Tθuj?1)]+(1?duj)log[σ(v(w)Tθuj?1)],則分別求出 f對(duì)θj 和 v(w)求偏導(dǎo)數(shù):
?f?θuj?1=[1?duj?σ(v(w)Tθuj?1)]v(w)?f?v(w)=[1?duj?σ(v(w)Tθuj?1)]θuj?1
那么 θ和 v(w)的更新公式如下:
θuj?1:=θuj?1+η[1?duj?σ(v(w)Tθuj?1)]v(w)v(w):=v(w)+∑u∈context(w)∑j=2lu[1?duj?σ(v(w)Tθuj?1)]θuj?1
Word2Vec 的重點(diǎn)參考文獻(xiàn)
總結(jié)
以上是生活随笔為你收集整理的Word2Vec学习笔记(三)续的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言再学习 -- 关键字sizeof与
- 下一篇: C语言再学习 -- printf、sca