嵌入:把意思变成坐标
“AI 入门”课程第 4 课,共 23 课。免费,有动画和小测验。
词变成了一串数字
电脑不懂词语,它只会处理数字。所以模型会把每个词或句子变成一个嵌入(embedding):一长串数字,通常有几百甚至几千个。可以把它想成地图上一个点的坐标,只不过坐标轴不是两条,而是几百条。这些数字是模型在训练中定下来的,依据是这个词在文本里常和哪些词出现在一起。
意思相近,点就挨得近
图里把这张地图压成了两条轴。“猫”“狗”“小狗”挨在一起,因为人们写它们的文字很相似。“香蕉”和“苹果”是另一堆,“比特币”和“美元”又是一堆。箭头表示两点之间的距离:越短,意思越接近。模型不知道猫到底是什么,但知道猫和什么相像。
按意思搜索
普通搜索找的是相同的词,嵌入搜索找的是相近的点。你搜“下雨天在上海能干什么”,结果找到一篇《坏天气也能去的博物馆和咖啡馆》,虽然几乎没有相同的词。推荐系统也常常类似:推到你面前的视频,它们的点离你完整看完的那些视频很近。
国王 − 男人 + 女人
一个著名的小把戏:用“国王”的点减去“男人”,再加上“女人”,就会落在“女王”附近。这说明地图上有些方向记录了词与词之间的关系,比如“性别”或“国家和首都”。但别太激动:这只是个漂亮的示例,不是每个词都管用,也不总是准确。这里并没有人类那样对世界的理解。
注意力:词会看看周围的词
同一个字可以有好几种意思。“花”在“我买了一束花”和“这个月花了很多钱”里完全不同。注意力机制(attention)是这样解决的:读每个词时,模型会看看句子里的其他词,再修正这个词的意思。“一束”把“花”拉向植物那边。带着修正后的意思,模型再去猜下一个词,就像图里那样。
自测一下
- 什么是嵌入(embedding)?
正确答案: 一串描述意思的数字. 嵌入就是一个词或句子在“意思地图”上的坐标。意思相近的文字,坐标也相近。 - 为什么按意思搜索能找到不含你关键词的文章?
正确答案: 它找的是意思相近的点. 你的查询和文章都变成嵌入,搜索挑出最近的点,不需要词语相同。 - 模型怎么知道“花了很多钱”里的“花”不是植物?
正确答案: 看句子里的其他词. 这就是注意力机制:周围的词会修正每个词的意思,词义由上下文决定。
← 词元与上下文窗口 为什么每次回答都不一样 →