你们有没有想过,像那些聊天机器人或者无所不能的AI大语言模型,它们是怎么看懂我们写的字,听懂我们说的话呢?它们又不认识汉字,也不会说中文,这到底是怎么做到的呢?
给每个词一个“秘密代号”
想象一下,我们要教电脑认识小动物。我们不能直接给它看图片,得用一种它能懂的语言——数字!
我们可以给每个小动物打分,比如:
▷ 毛茸茸指数(1分代表不太毛茸茸,10分代表超级毛茸茸)
▷ 汪汪叫指数(1分代表不叫,10分代表很会汪汪叫)
▷ 抓老鼠指数(1分代表不抓,10分代表抓老鼠高手)
那么,“小狗”可能会得到这样的分数:毛茸茸指数 7分,汪汪叫指数 9分,抓老鼠指数 2分。我们可以把这叫做小狗的“秘密代号”:(7, 9, 2)。
“小猫”呢?可能就是:毛茸茸指数 8分,汪汪叫指数 1分,抓老鼠指数 9分。小猫的秘密代号就是:(8, 1, 9)。
你看,“小狗”和“小猫”的秘密代号就不一样。而且,通过比较这些数字,电脑就能“感觉”到它们的不同:哦,一个喜欢汪汪叫,一个擅长抓老鼠!
超级多的“秘密代号”!
刚才我们只用了3个数字来代表小动物。但对于我们人类语言里的每一个词,比如“开心”、“学习”、“天空”、“香蕉”…… 大模型会用超级超级多的数字来给它们“秘密代号”!不是3个,也不是10个,可能是几千个,甚至上万个数字!
在GPT-1 里,每个词用了 768 个数字来表示。在 GPT-3 里,每个词用的是 12288 个数。在 DeepSeekV3 模型里,用的是 7168 个数来表示每个词。
这么多数字,就像给每个词画了一张超级详细的“画像”。电脑虽然看不懂“开心”这两个字,但它能记住“开心”对应的几千个数字代号。
“词嵌入”:把词语放进“数字空间”
科学家们给这种用一大堆数字代表一个词的方法,起了一个酷酷的名字,叫做“词嵌入”,英文叫 Embedding。
“嵌入”是啥意思呢?想象一下我们刚才给小动物打分,如果只用两个分数(比如“毛茸茸指数”和“汪汪叫指数”),我们是不是可以在一张纸上(一个二维平面)画一个点来代表“小狗”,再画一个点代表“小猫”?
▷ 小狗:(毛茸茸7分,汪汪叫9分) -> 在纸上的某个点
▷ 小猫:(毛茸茸8分,汪汪叫1分) -> 在纸上的另一个点
这就好像把“小狗”和“小猫”这两个词,“嵌”入到了这张纸里。
如果用三个分数呢?就像长、宽、高,我们就可以在一个立体空间(比如一个大箱子)里找到一个点来代表它。
而大模型用几千、上万个数字代表一个词,就等于把这个词“嵌”入到了一个超级复杂、我们想象不出来的“高维空间”里!虽然我们画不出来,但在数学上,它是存在的。
数字怎么来的?电脑自己“学”!
那这些代表词语的数字(秘密代号)是怎么定下来的呢?是人一个个设置的吗?当然不是,那太累啦!
大模型在“学习”(训练)的时候,会阅读超级多的文字,比如图书馆里所有的书、网上所有的文章。它会观察哪些词经常一起出现,哪些词意思比较像。
一开始,所有词的数字代号都是乱七八糟的。但通过不断阅读和学习,大模型会慢慢调整这些数字,就像整理房间一样,把意思相近的词,它们的“秘密代号”变得也更接近。比如,“高兴”和“快乐”的秘密代号会很像,它们在那个“数字空间”里的位置也会靠得很近。而“高兴”和“桌子”的秘密代号就会差很远。
一词多义怎么办?看“邻居”!
我们知道,有的词有好几个意思,比如“球”,可以指篮球、足球,也可以指地球。电脑怎么知道我们说的是哪个“球”呢?
别担心!当一个词和其他词一起出现时,这些“邻居”词会给它线索。
▷ 如果你说“踢球”,旁边的“踢”这个词的秘密代号,就会和“球”的秘密代号发生一种奇妙的“化学反应”(其实是数学计算),让“球”的代号更偏向“足球”或“篮球”的意思。
▷ 如果你说“地球”,旁边的“地”字就会让“球”的代号指向我们居住的这个星球。
所以,词语的秘密代号不是一成不变的,它会根据上下文,也就是旁边的“邻居”词,进行微小的调整,变得更准确!
总结一下
所以,大模型理解文字的秘密武器就是:
(1)给每个词一大串数字作为“秘密代号”(词嵌入)。
(2)这些数字能表示词语的意思和它们之间的关系。
(3)意思相近的词,它们的“秘密代号”也相近。
(4)电脑通过阅读海量文字,自己学会怎么给词语定这些代号。
(5)通过词语旁边的“邻居”词,电脑能判断一个词在当前语境下的准确意思。
是不是很有趣?电脑用这种我们看起来有点“笨”的数学方法,竟然就能处理我们复杂又美妙的语言啦!这背后其实是很多聪明的数学和计算在帮忙哦!
供稿单位:重庆市无线电科普体验中心
审核专家:张启义
声明:除原创内容及特别说明之外,部分图片来源网络,非商业用途,仅作为科普传播素材,版权归原作者所有,若有侵权,请联系删除。
主题测试文章,只做测试使用。发布者:参考消息网,转转请注明出处:https://www.cns1952.com/gov/10990.html