首页 / 资讯中心 / 文章详情

大语言模型原理:用三个小游戏看懂预测下一个词、注意力和幻觉

大语言模型原理:用三个小游戏看懂预测下一个词、注意力和幻觉 ★ FEATURED ARTICLE
你知道大语言模型LLM的底层原理是什么吗别急着摇头我要告诉你一个反直觉的结论它本质上就是一个超大型完形填空选手或者说一个不断预测下一个词是什么的猜谜机器。这个说法不是我为了简化而忽悠你而是所有大语言模型最底层的真实运作方式。今天我不堆公式、不贴论文用三个现场就能玩的小游戏带你把预测下一个词这件事彻底看透顺带搞懂训练、注意力、幻觉这些高频词到底在说什么。读完你就会有底气跟人聊AI甚至能解释为什么ChatGPT有时候一本正经胡说八道。如果你身边有人整天把大模型Transformer参数挂在嘴边但说不清它到底为什么能写文章、能答题那你把这篇转给他。这套理解框架我自己用下来比啃一百篇科普都管用因为它是从人怎么猜词出发的而不是从矩阵怎么相乘出发的。1. 第一局游戏完形填空揭开LLM预测下一个词的真面目1.1 游戏怎么玩我在给朋友讲大语言模型时最喜欢先拉他玩一个极简游戏。规则很简单我给你一句话你猜下一个词是什么。比如我说今天天气真______。你几乎不用思考就会接好。如果我说小明考试得了全班第______。你会接一或者名。再比如他生气地把门______。你会接关上摔上之类的词。这个游戏看起来太幼稚了对吧但请你注意一个关键点你之所以能猜出来不是因为这句话里有什么魔法而是因为你从小到大听过、说过无数类似的句子你的大脑里储存了大量词跟词搭配的经验。你是在用过往经验做概率判断而不是在做逻辑推理。大语言模型做的事情和这个游戏一模一样。它拿到一句话会把这句话拆成一个个碎片然后计算在目前这些字词后面下一个碎片最可能是什么。它输出的一切内容——写诗、写代码、回答法律问题——本质上都不停重复这个猜下一个词的动作循环几千次、几万次。1.2 从猜词到生成概率才是真正的开关刚才的游戏里你可能注意到了有些空不止一个答案他生气地把门______可以填关上摔上踢开锁上甚至焊死。每个人猜的都不一样这说明你的大脑在给出答案时并不是只锁定一个正确答案而是在众多候选词里带上了权重有的词概率高有的词概率低。大语言模型也是这样但它做得更精细。模型在预测下一个词时会生成一份覆盖整个词表的概率清单。假设词表里有五万个词模型就给这五万个词分别打分分数越高代表它认为越适合接在后面然后再从这份清单里挑一个词。这个挑选还带点随机性不是永远挑最高分的否则它的回答会显得死板、重复。理解这件事对整个AI领域至关重要。因为大语言模型很聪明的错觉其实就来源于它总能在概率清单里挑出一个看起来最合理的词。你写我今天心情不好因为______它填下雨了项目延期了错过了末班车这些回答没有一个来自真正的心情体验它们只是高概率搭配的产物。下次你惊叹于AI的共情能力时可以提醒自己这后面没有心只有概率分布。1.3 原来GPT的G不是白叫的GPT的全称是Generative Pre-trained Transformer其中Generative意为生成式的。什么叫生成式就是模型一个词一个词地往外蹦生成一个、拼到句子末尾、再预测下一个像贪吃蛇一样边吃边长。这个过程有个专业名字叫自回归生成。我经常用一条流水线来类比大语言模型像一个连环画续写师他面前摆着已经画好的所有格子每画一格新格子就把画完的全图重新看一眼然后决定下一个格子里放什么。画完第二格后他又把第一格和第二格合起来看再决定第三格。这就是为什么你输入从前有座山它能一路写到山里有座庙甚至写出五千字来因为它每写一个字都在回头参考前面所有字。在训练阶段模型做的事情也是同一个套路给它海量的文章但每次都遮住一句话的最后一个词让它预测预测完再跟真实答案对比错了就调整内部参数。日复一日模型就在数万亿个句子碎片上磨炼这项猜词技能。所以很多AI从业者会把大语言模型戏称为高级完形填空模型这个外号虽然土但比任何宏大叙事都更贴切。2. 第二局游戏学人说话看懂LLM到底是怎么训练的2.1 游戏怎么玩第二个游戏也很简单叫模仿说话。你可以想象这样一个场景一个完全没学过英语的小孩子被扔到英语环境里头几个月只会听慢慢开始蹦单词再后来能说短句最后能流利表达。他并没有背过什么英语语法规则他只是听了太多遍Good morningHow are you慢慢摸清了哪些词会经常一起出现。在这个游戏里你扮演的就是那个小孩子而大语言模型的童年更夸张它读的不是几本绘本而是互联网上几乎能抓到的全部文本——维基百科、新闻、书籍、论坛、代码仓库、聊天记录。有人统计过一个千亿参数的模型训练数据往往达到数万亿个词语。它天天玩猜下一个词猜错了就挨罚时间长了它把这些文本里的语言规律、句式结构、常识关系全都压进了自己的参数里。我们常说某个大模型训练出来了本质就是说它的参数已经调整到输入任意一段话它都能给出跟人类写作高度相似的续写。它没有真的读过那些书但那些书里的语言风格和知识关联已经像肌肉记忆一样刻在它的参数里了。2.2 梯度下降像调音量旋钮一样调参数你可能听过梯度下降这个词听起来很高深其实它就是训练过程的落地方式。我用一个调音量的旋钮来类比假设你在调一套音响想让音量刚刚好太大刺耳太小听不清。你会先拧到一个位置听一听发现太响了就往回拧一点又发现太轻了再往前拧一点。每一次你都根据声音跟目标之间的差距来微调旋钮。大语言模型的参数就是成千上万个这样的旋钮。模型预测完一个词训练程序会计算一个差距值——专业上叫损失——然后反向推算出每个旋钮该往哪个方向、拧多大力度才能让预测更接近真实答案。这个往正确方向拧一点点的动作重复执行无数次就是所谓训练。我这么说可能让你觉得工程味儿太浓了但你只要抓住核心训练就是不断调整内部参数让猜下一个词的命中率越来越高。至于那些矩阵乘法、反向传播都只是让这个过程在计算机上跑起来的高效工具不是理解原理的前提。2.3 预训练和微调先学语言再学考试技巧很多第一次接触大语言模型的人会困惑它读了很多书那为什么还需要人类来调教这就要说到训练的两个阶段了。第一阶段叫预训练目标是让模型学会人类语言大概长什么样。这个阶段模型在海量文本上做猜词练习学完以后它已经能写出通顺的句子但要让它老老实实回答你的问题还得进入第二阶段——监督微调。这个阶段更像学考试技巧人类准备了一批问题-标准答案对让模型看着问题续写答案通过模仿标准答案来学会以问答的形式跟人对谈。再往后还有一个叫人类反馈强化学习的环节可以类比成老师批作业。模型给出多个回答由人类标注员排序哪个回答更礼貌、更有用、更安全模型就学会往这个方向倾斜。不同公司在调教上的风格差异往往就体现在这一层所以你会觉得不同AI助手脾气性格不一样。2.4 为什么说参数量决定聪明程度你肯定听过70亿参数1750亿参数万亿参数这些数字到底意味着什么你可以把参数数量理解为工具箱里工具的精细程度。一个小模型可能只有几千个小旋钮它能捕捉的规律粗糙一个千亿参数的大模型旋钮多到能记住极其细碎的搭配规律——比如当用户提到Rust语言的内存安全时往往下一句会涉及所有权概念这种不太显眼但高度相关的关联。参数多了模型就会表现出一种让研究者都惊讶的现象当模型规模超过某个临界点它突然就具备了总结、翻译、写代码、推理等能力。这些能力没有人主动教它而是从海量参数和高频词训练里漏出来的业界管这叫涌现能力。你可以想象一个孩子读了很多很多书以后突然某天不仅会复述句子还能自己做逻辑推导——参数数量就是那个很多很多的放大器。3. 第三局游戏连环追问拆解注意力机制和上下文记忆3.1 游戏怎么玩前两个游戏解释了预测下一个词和训练但还有个关键问题没解决模型怎么知道该参考上文里的哪些词这个怎么知道就是注意力机制要解决的事。第三个游戏叫连环追问。我给你讲一个小故事你边听边记细节张三早上七点出门先去银行取了钱然后去药店买药路上遇到邻居李四两人聊了十分钟最后他坐地铁到了公司发现没带工牌。好现在我问你张三几点到的公司他取钱之后去了哪里他和谁聊了天你大概率全答得上来因为这些细节都是你刚才读过的。但如果我把这个故事拉长到三千字里面出现了二十个人物、十条路线你再回答最后一句提到的细节是不是就得往回翻你的大脑没法同时盯着全部三千字只能有选择地把注意力放在最相关的信息上。大语言模型的注意力机制干的活儿本质上就是这个生成下一个词之前先在整个上文里扫一遍给每个词分配一个关注度权重重点看那些跟当前预测最相关的词。3.2 上下文窗口记忆的边界这套回看上文的能力在专业上叫上下文窗口。GPT系列早期模型上下文窗口只有几千个token现在的模型动辄几十万甚至上百万token——一个token大约相当于一个字或四分之三个英文单词。窗口越大模型能一次性记住的对话历史、文档材料就越多。但窗口不是无限的。模型每生成一个新词都要把所有上文的注意力重新算一遍这个计算量会随着上文长度飞速上涨。所以你会发现当你把一个超长文档喂给AI聊到后面它偶尔会忘记开头的内容那是它上下文窗口已经装不下了或者在压缩处理时丢失了一部分信息。这不是它态度不好是物理边界。理解上下文窗口能帮你更好地使用AI重要信息尽量放在离提问更近的地方或者干脆让AI先总结一遍长文档再基于总结去提问。这招在实际工作中非常管用。3.3 注意力权重模型是怎么决定看哪里的你可能好奇注意力机制怎么知道该看哪个词我用一个图书馆检索来类比。想象你在图书馆里找一本关于如何做提拉米苏的书你不会把每本书都从头翻到尾你会先看标题、看目录、看索引快速定位到提拉米苏相关的书架然后只精读那几本。模型内部有一组叫查询-键-值的机制作用就类似这个过程。当前要预测的词会发出一个查询上文里每个词都有各自的键谁的键跟查询更匹配谁就会获得更高的注意力权重它携带的值就会被重点采纳。这就像你脑子里冒出提拉米苏这个需求然后迅速锁定了蛋糕书而不是编程书。更精妙的是这种匹配不是只能看表面词面它还能捕捉语法角色、指代关系、语义关联。比如句子里出现它模型要通过注意力机制判断它指代的是前面哪头大象、哪辆车。这就是为什么现代大语言模型能较好地处理复杂的指代而早期的NLP模型动不动就搞混它到底是谁。3.4 为什么会有幻觉模型不是查资料它在续写理解了注意力机制你就能想通一个现象大语言模型经常一本正经地编造事实术语叫幻觉。很多人不理解它读了那么多书为什么还会说错因为模型的底层任务从来不是查资料而是续写最通顺的文字。它生成爱因斯坦出生于______年时做的动作依然是填一个概率最高的年份而不是打开一本字典去核对。所以在它眼里一个事实的真实与否只体现为跟训练文本里的共现规律是否吻合。1879年在它读过的所有文本里跟爱因斯坦出生高频共现它就是高概率答案如果某个冷门知识在训练数据里出现次数太少它就只能瞎编一个听起来合理的年份。这次你再遇到AI胡说心里应该能画出一幅画面那不是它故意撒谎是它的概率清单里没有一个高分答案于是随机选了一个没那么离谱的凑数。这个认知非常有用它能让你在使用AI时自动养成关键事实要人工核对的习惯而不是把模型当成权威词典。4. 三局游戏合体一次完整的生成背后发生了什么4.1 从输入到输出的完整旅程前面三个游戏分别拆开了猜词训练注意力。现在我把它们拼在一起模拟一次真实的大语言模型回答过程你就知道整套流程多么像一个人在工作。第一步你发来一句给我推荐三本适合睡前读的书。模型先做分词把这句话切成一个个token并转成数字向量。第二步这串向量进入层层处理网络在每一层注意力机制让每个token都能看到整个句子的其他token不断更新自己的语义理解。第三步模型利用更新后的语义结合它在训练阶段学到的所有语言规律生成下一token的概率分布。第四步从分布中采样选出推荐二字。第五步把推荐拼到原文里再重复第二到第四步生成三本然后重复成百上千次直到生成《夜航西飞》《瓦尔登湖》……以及一个表示句子结束的特殊符号。整个过程看起来非常线性但每一轮生成都要把上下文重新过一遍注意力。这也是为什么大模型回答长文时有点慢因为它不是一次性写完的而是真的一个字一个字挤出来的。4.2 温度参数控制模型的疯癫程度你可能在一些AI平台的设置里见过温度这个参数但它到底在调什么理解了概率分布采样你就能立刻明白。温度本质上是在调整概率分布的陡峭程度温度低时分布变得尖锐几乎永远选最高概率的词回答更保守、稳定温度高时分布变得平滑中等概率的词也有机会被选中回答更跳跃、更有创造性也更容易跑偏。我自己的经验是写代码、做事实问答温度调到0.2左右比较稳写文案、想创意点子温度调到0.8甚至1.0更有惊喜如果调到2.0以上它就容易变成一个胡言乱语的精神病人。跟你用音乐播放器的随机播放是同一个道理随机性太强歌单就会失控。温度这个参数是大语言模型里少数几个你能直接亲手拨动的旋钮。当你理解了它就再也不会有AI有时候同一个问题答出不同答案的困惑了那不是故障是它被设定成带有随机性的概率采样器。4.3 聪明与愚蠢的边界什么时候该信它把这三局游戏全部理解透彻之后你对大语言模型的能力边界会有一个更冷静的判断。它擅长的是基于海量文本中的高频规律做续写所以让它在写周报初稿、整理会议纪要、翻译邮件、生成代码片段、头脑风暴这些领域效果非常惊艳因为它见过的高质量范例实在太多了。但它不擅长的是精确事实的最终裁决和需要真实世界感知的任务。你让它推荐书单它推荐的书可能根本不存在你让它算一笔复杂报销它每一步逻辑都对最后金额加错了。它没有计算器意识也没有去核实一下的本能它只有接一句最像样的话的本能。所以我的使用原则是八个字让它起草你来把关。所有AI给出的关键数据、引用、结论都要当成聪明但粗心的助理给的初稿而不是权威答案。这个心态调整比任何提示词技巧都重要。5. 写在最后玩过这三个游戏之后我的一些真心话这三个游戏我给别人讲了不下几十次每一次讲完对方都会有类似的感叹原来这么复杂的技术底层逻辑居然这么朴素。但我也总会补一句原理简单不代表工程简单。靠猜下一个词这五个字要支撑起一个能流畅对话、能写代码、能在万亿参数上高效推理的系统背后是无数做数据清洗、做分布式训练、做推理优化的人几年如一日的死磕。原理是灯塔工程是造船两者都值得尊重。对我个人来说这套理解框架带给我最大的实际价值不是让我变得更会吹牛而是让我在使用AI时少了很多迷信、多了一些掌控感。我知道它什么时候在瞎编知道为什么换个说法结果就不同也知道该把什么任务交给它、什么任务必须留给自己。如果你也想彻底内化这套思路我强烈建议你打开任何一个大语言模型产品亲手做一个小实验随便输入一段话让它续写一百次你会亲眼看到概率采样带来的千姿百态再试着把温度参数从0调到1.5你会直观感受到随机性这个抽象概念是如何具象化成文字的。玩过之后你再来读这篇文章你会发现那些原本抽象的词——上下文窗口、注意力、幻觉——全都变成了你亲手摸过的东西。这就是我为什么坚持用游戏来讲AI真正有用的知识不是让你记住术语而是让你在碰到新问题的那一刻能自然地脱口而出说出一句哦这不就是一个完形填空嘛。到那个时刻你就不再是AI的使用者而是真正看懂了AI底牌的人。
阅读完成 · 觉得有帮助?
咨询建站