搞懂这个例子,再也不怕词向量了

大家好啊,我是董董灿。

在学习词嵌入向量的过程中,一个最著名的理解词嵌入向量在高维数学空间的例子,莫过于实现 queen = king - man + women 的数学运算了。

本文将从这个例子出发,解释该例子揭示的词向量背后的隐藏含义,并附上 Python 代码来实现这个高维词向量运算。

Queen = King - man + women

在经过之前文章对于词嵌入向量概念的介绍后,本文来看一下这个有趣的例子。

下面展示的单词“king”的词嵌入向量(该向量是在Wikipedia数据集上使用GolVe训练得到的)。

[ 0.50451 , 0.68607 , -0.59517 , -0.022801, 0.60046 , -0.13498 , -0.08813 , 0.47377 , -0.61798 , -0.31012 , -0.076666, 1.493 , -0.034189, -0.98173 , 0.68229 , 0.81722 , -0.51874 , -0.31503 , -0.55809 , 0.66421 , 0.1961 , -0.13495 , -0.11476 , -0.30344 , 0.41177 , -2.223 , -1.0756 , -1.0783 , -0.34354 , 0.33505 , 1.9927 , -0.04234 , -0.64319 , 0.71125 , 0.49159 , 0.16754 , 0.34344 , -0.25663 , -0.8523 , 0.1661 , 0.40102 , 1.1685 , -1.0137 , -0.21585 , -0.15155 , 0.78321 , -0.91241 , -1.6106 , -0.64426 , -0.51042 ]
该向量共50个数字,单从数字来看,我们并不能看到太多的东西,但是我们用另一种方法来把这些数字进行可视化展示。

方法如下:每个数字如果接近2,则为红色,如果接近0则为白色,如果接近-2则为绿色

有很多方法可以实现类似的可视化,这里略过,直接看将词向量可视化之后的结果。

图片

接下来,我们忽略上图中的数字,仅关注颜色,并且将一些我们认为含义相近的单词的可视化结果一起展示:

从上图,你是不是能发现一些端倪:women和man在颜色分布上,比women和king更加接近。

我们继续分析,继续放一些更加有关联的单词的可视化结果。

图片

上面放了:queen,king,man,women,boy,girl,water(无关)的可视化结果。我们逐个分析一下:

  • 在中间有一条非常明显的红线,从上到下一直贯穿,这条线代表的数字可能代表了一些信息(但是我们不知道是什么信息。)

  • 你可以看到,women和girl在很多地方颜色很相似,这一点在man和boy的对比上也可以看出来。

  • boy和girl也有一些相似的地方,但是和women以及man相比,又有一些不一致的地方,这些不一致或许说明代表的是“成人”信息。

  • 在最下面增加了water单词的可视化,可以看到在上面有一条蓝色的线从上到下贯穿,一直到water则停止消失了,这条蓝色的线或许代表的是“人类”这种信息。

  • queen和king的对比中,有一些相似但与其他不一致的地方,这些有可能代表了“皇室”的信息。

总之,经过上面的分析,我们可以看出,有相似特征的单词在某些数字(可视化后的颜色)上也会存在相似之处,但并非完全一致。

这代表了token与token之间仅仅在某些维度上是相似的,在其他维度上并不一致,比如“性别”、“皇室”等维度。

上面的例子,我们可以用Python代码来加载词向量,并且在高维数学空间中完成运算,甚至还可以完成“Beijing = China - country + capital”的逻辑运算。

关于如何用 Python代码来实现上述词向量的运算,你可以在这里查看详情:我的Transformer专栏


我的Transformer专栏来啦-CSDN博客文章浏览阅读572次,点赞12次,收藏5次。现在很多主流的大语言模型,比如chatGPT都是基于该架构进行的模型设计,可以说Transformer顶起了AI的半壁江山。对于这些有些枯燥的概念,有些乏味的数学表达,我会尽可能说的直白和通俗易懂,打通理解Transformer的最后一公里。我会在本公众号进行文章的首发,相关文章会添加标签“Transformer专栏”,可点击文章左下角的标签查看所有文章。巧的是,下班路上刚手敲完大纲,晚上一个小伙伴来咨询学习LLM的事情,问我之前写的《五一节前吹的牛,五一期间没完成,今天忙里偷闲,给完成了。https://blog.csdn.net/dongtuoc/article/details/138633936?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

董董灿是个攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值