skip-gram
one-hot编码
-
one-hot简介
为了让词语能在电脑中,利用独热编码进行表示。
-
one-hot缺点
- 任意两个词的独热向量,正交为0;
- 因为前者缺点,因此无法表示任意两个独热向量的天然联系。
Word2Vec
- 嵌入矩阵
为了解决one-hot的缺点,引入嵌入矩阵,使得词向量均为dense vector,由诸多特征构成,特征够多,向量之间的联系与区别才会更丰富。
- 没想好标题
设 t t t为center word的序号,同时令 m m m为the window size of outsize context words,且 m = 2 m=2 m=2。假如有文本:The cat is eating food,此时 t = 5 t=5 t=5,那么center word从初始时 t = 1 t=1 t=1到 t = 5 t=5 t=5进行遍历,上下文窗口随着 t t t的移动而移动,如下图所示:
- 没想好标题
for each position t = 1 , . . . , T t=1,...,T t=1,...,T,predict context words within a window of fixed size m m m,given center word w j w_{j} wj
Likelihood:
L ( θ ) = ∏ t = 1 T ∏ − m ⩽ j ⩽ m 且 j ≠ 0 P ( w t + j 丨 w t ; θ ) L(θ)=\prod_{t=1}^T\prod_{-m\leqslant j \leqslant m且j\not=0}P(w_{t+j}丨w_{t};θ) L(θ)=t=1∏T−m⩽j⩽m且j=0∏P(wt+j丨wt;θ)
loss function:
J ( θ ) = − 1 T l o g L ( θ ) = − 1 T ∑ t = 1 T ∑ − m ⩽ j ⩽ m 且 j ≠ 0 l o g P ( w t + j 丨 w t ; θ ) J(θ) = -\frac{1}{T}logL(θ)=-\frac{1}{T}\sum_{t=1}^T\sum_{-m\leqslant j \leqslant m 且j\not=0}logP(w_{t+j}丨w_{t};θ) J(θ)=−T1logL(θ)=−T1t=1∑T−m⩽j⩽m且j=0∑logP(wt+j丨wt;θ)
关于P中是在计算什么 :
P ( o 丨 c ) = e x p ( u o T v c ) ∑ w ∈ V e x p ( u w T v c ) 其 中 : P(o丨c) = \frac{exp(u_{o}^Tv_{c})}{\sum_{w∈V}exp(u_{w}^T v_{c})} 其中: P(o丨c)=∑w∈Vexp(uwTvc)exp(uoTvc)其中:
- v w v_{w} vw when w w w is a center word
- u w u_{w} uw when w w w is a context word
- 关于偏导的推导