2.3 词嵌入的特性(Properties of Word Embeddings)

该例中,假设用的是四维的嵌入向量,假如向量emane_{\text{man}}ewomane_{\text{woman}}ekinge_{\text{king}}equeene_{\text{queen}} 分别进行减法运算,相减结果表明,“Man”与“Woman”的主要区别是性别,“King”与“Queen”也是一样

所以当算法被问及manwoman相当于king对什么时,算法所做的就是计算emanewomane_{\text{man}}-e_{\text{woman}},然后找出一个向量也就是找出一个词,使得:

emanewomanekinge?e_{\text{man}}-e_{\text{woman}}\approx e_{\text{king}} - e_{?}

即当这个新词是queen时,式子的左边会近似地等于右边

在图中,词嵌入向量在一个可能有300维的空间里,箭头代表的是向量在gender性别)这一维的差,为了得出类比推理,计算当man对于womanking对于什么,要做的就是找到单词w来使得

emanewomanekingewe_{\text{man}}-e_{\text{woman}}\approx e_{\text{king}} - e_{w}

等式成立,即找到单词w来最大化ewe_{w}ekingeman+ewomane_{\text{king}} - e_{\text{man}} + e_{\text{woman}}的相似度,即

Find word w:argmax Sim(ew,ekingeman+ewoman)Find\ word\ w:argmax\ Sim(e_{w},e_{\text{king}} - e_{\text{man}} + e_{\text{woman}})

即把ewe_{w}全部放到等式的一边,另一边是ekingeman+ewomane_{\text{king}}- e_{\text{man}} + e_{\text{woman}}。应用相似度函数,通过方程找到一个使得相似度最大的单词,如果结果理想的话会得到单词queen

t-SNE算法所做的就是把这些300维的数据用一种非线性的方式映射到2维平面上,可以得知t-SNE中这种映射很复杂而且很非线性。在大多数情况下,由于t-SNE的非线性映射,不能总是期望使等式成立的关系会像左边那样成一个平行四边形

关于相似函数,比较常用的是余弦相似度,假如在向量uuvv之间定义相似度:

Sim(u,v)=uTvuvSim(u,v)=\frac{u^Tv}{||u||\cdot ||v||}

分子是uuvv的内积。如果uuvv非常相似,那么它们的内积将会很大,把整个式子叫做余弦相似度,是因为该式是uuvv的夹角的余弦值

参考资料: 给定两个向量uuvv,余弦相似度定义如下:

CosineSimilarity(u,v)=u.vu2v2=cos(θ){CosineSimilarity(u, v)} = \frac {u . v} {||u||_2 ||v||_2} = cos(\theta)

u.vu.v 是两个向量的点积(或内积),u2||u||_2是向量uu的范数(或长度), θ\theta 是向量uuvv之间的角度。这种相似性取决于角度在向量uuvv之间。如果向量uuvv非常相似,它们的余弦相似性将接近1; 如果它们不相似,则余弦相似性将取较小的值

两个向量之间角度的余弦是衡量它们有多相似的指标,角度越小,两个向量越相似

还可以计算Euclidian distance来比较相似性,即uv2||u-v||^2。距离越大,相似性越小

Last updated