首页 游戏 软件 资讯 排行榜 专题
首页
AI
Transformer架构详解从Attention机制到模型原理

Transformer架构详解从Attention机制到模型原理

热心网友
24
转载
2026-05-17

计算机只认识0和1。所以,要让机器理解“货拉拉拉不拉拉布拉多”这种句子,第一步就是把文字变成数字。最直接的办法是给每个字一个编号,比如Unicode编码。但问题在于,编号只是个“身份证号”,它本身不携带任何语义。光凭数字“12345”和“67890”,你无法判断这两个字在意思上有没有关联。

假设到了2050年,AI成了地球的主宰,而人类恰好发明了时光机。那么,请务必回到2017年,阻止那篇名为《Attention is All You Need》的论文发表。没有它,就不会有Transformer架构,自然也就没有后来的GPT、DeepSeek这些大模型了。

从翻译问题说起

“货拉拉拉不拉拉布拉多”,短短十个字里,“拉”字出现了六次,含“拉”量高达60%。人类一眼就能理解其含义,并自然地翻译成英文:Can Huolala carry a Labrador。关键在于“理解”,我们才能翻译。

图片

但计算机理解起来就困难了。因为每个“拉”字,在不同的位置含义不同,尤其是中间的“拉不拉”。在中文里,“拉”可以指拉货,也可以指拉扯。对应到英文,可能是carry,也可能是drag或pull。必须结合前面的“货拉拉”和后面的“拉布拉多”,才能准确判断。那么,计算机该如何理解一句话里每个词的含义呢?图片

token 与向量

我们回到起点。要让计算机处理文本,必须先将其数字化。最朴素的方法——给每个字一个数字编号——行不通,因为它丢失了语义。我们需要一种既能数字化,又能承载语义的方案。

怎么办呢?首先,把句子切分成有意义的词块,每个词块称为一个token。比如这句话,可以被切分为“货拉拉”、“拉不拉”、“拉布拉多”三个token。图片

接着,想象一个二维坐标系:X轴代表“是否与交通相关”,Y轴代表“是否与动物相关”。那么,“货拉拉”会落在X轴正方向,“拉布拉多”会落在Y轴正方向。像“物流平台”、“网约车”这类词,在坐标系里会更靠近“货拉拉”;而“金毛”、“牧羊犬”则会更靠近“拉布拉多”。

图片

但两个维度显然不够。比如,“货拉拉”、“物流平台”、“网约车”在二维空间里都和交通相关,挤在一起。如果加入第三个维度“是否运货”,就能区分开:“货拉拉”和“物流平台”偏向运货,“网约车”偏向运人。图片

随着维度不断增加,理论上,世界上所有已知词汇的token都能在这个高维坐标系中找到自己的专属位置。通过海量文本数据的训练,语义相近的词在空间中的位置会彼此靠近,语义无关的词则相距甚远。

图片

词与词之间的关系甚至能用数学计算。例如,“国王”的坐标减去“男人”的坐标,再加上“女人”的坐标,得到的结果会非常接近“王后”的坐标。

至于“拉不拉”这种多义词,它在坐标系里最初只是一个模糊的平均位置。只有结合前后文的语境,它的位置才会被“拉”向正确的语义区域。

每个坐标维度都可以用一个数字表示,因此,每个token最终都可以用一组数字来定义。这种表示方式就是向量(Vector),在实践中也常被称为词嵌入(Embedding)。

向量是什么

但语言不仅有词义,还有顺序。“货拉拉拉不拉拉布拉多”和“拉布拉多拉不拉货拉拉”,意思天差地别。因此,模型还会为每个token加入位置信息,让向量同时包含“它是什么”和“它在什么位置”。

Q、K、V 是什么

知道了每个token对应的向量,我们就可以着手解决翻译的核心难题了:在翻译“拉不拉”这种多义词时,如何结合上下文,判断这个“拉”究竟是carry,还是drag?

这里有个关键洞察:每个词块除了字面意思,还有背后的隐含信息。比如“拉布拉多”,背后关联着“宠物”、“狗”等概念。

于是,我们可以把一句话抽象成一个“词块数据库”。数据库的查询键(Key)是词块本身,对应的值(Value)就是词块背后的含义。

那么,计算机在理解“拉不拉”时,应该重点关注句子中的哪些词呢?这个过程可以抽象为:拿着“拉不拉”这个词作为查询(Query),去词块数据库里遍历所有键(Key),看看哪个词对理解“拉不拉”的参考价值最大。

QKV的计算可以简单理解为词块数据库检索

注意,这个过程涉及三个核心概念:查询(Query)、键(Key)、值(Value)。但直接拿token的原始向量去扮演这三个角色不够灵活,因为一个向量很难同时胜任三项工作。因此,模型会通过三个不同的权重矩阵(Wq, Wk, Wv)对每个token的向量进行变换,生成三个专门的向量,各司其职。

wq, wk, wv的变换

承担查询角色的,叫Q向量,代表“这个token想关注什么”,好比数据库的查询语句(SQL)。

承担键角色的,叫K向量,代表“这个token能提供什么信息”,好比数据库里的索引键。

承担值角色的,叫V向量,代表“这个token背后的真正含义”,好比索引键对应的具体数据值。

每个token经过这三重变换,都得到了自己专属的Q、K、V。

QKV

注意力是什么

有了每个token的Q、K、V,接下来看如何进行计算。

首先,每个token的Q向量会去“拜访”句子中所有token的K向量,通过点积计算两者的相关程度。

用点积计算相关程度

点积,本质上就是向量相乘。从数学上看,它在计算两个向量在空间中的指向是否一致,越同向,数值越大;从效果上看,数值越大,意味着两个token的相关性越高,越值得被重点参考。

以“拉不拉”这个token为例,遍历结束后,我们就得到了“拉不拉”对整个句子中所有token的关注程度分数。

此时,计算机会发现“拉不拉”和“货拉拉”之间的相关性分数很高。于是,“拉不拉”就会更关注“货拉拉”,后续“拉货”这一含义的权重就会被显著放大。

如果向量维度很大,点积的结果可能整体数值偏大,容易导致某个token的关注度被过度放大。为了让不同token之间的关注差异更平滑、更容易区分,模型会在点积之后除以一个数——通常是向量维度K的平方根(√dₖ)。这一步被称为缩放(Scale)。

接下来,模型会通过Softmax函数将这些关注度分数转换为一组权重。这样一来,“拉不拉”对所有token的关注权重之和为1,可以直观理解为“注意力的分配比例”。

最后,用这组权重对所有token的V向量进行加权求和。这就相当于,“拉不拉”知道了应该以多大的比例,从其他token那里提取哪些具体的语义信息。

最终得到的结果,就是“拉不拉”这个token融合了上下文信息之后的新表示,我们可以记作h2。同样,“货拉拉”和“拉布拉多”也会以相同的方式,得到各自的h1和h3。

这一整套计算流程,就是所谓的注意力机制(Attention Mechanism)。可以用一个经典公式来概括:

Attention(Q, K, V) = softmax(QKᵀ / √dₖ) · V

它的核心作用,是让每个token能够根据当前语境,自动决定应该重点参考句子中的哪些其他token。

怕大家还是觉得抽象,我们再来梳理一下:

Q·K点积:计算token之间的关注对象和关注强度。

QK点积的作用

缩放(Scale):防止点积结果过大,避免Softmax函数进入饱和区导致梯度消失,让模型训练更稳定。

Scale的作用

Softmax:将关注强度转换为概率分布的注意力权重。

softmax的作用

乘以V:用这些权重,从被关注的token中提取并融合具体的语义内容。

乘V的作用

多头注意力

然而,只计算一次注意力是不够的。因为词与词之间的关系是多方面的:有的是语义关联(如“苹果”和“水果”),有的是语法依赖(如“主谓宾”),有的是情感呼应。单一角度的注意力很难捕捉全面。

因此,模型会并行地进行多次注意力计算,每次关注不同的关系侧面。这些并行计算的结果最终会被拼接(Concat)在一起,形成一个更全面的表示。这就是多头注意力(Multi-Head Attention)。

多头注意力

Add & Norm 是什么

通过多头注意力,我们得到了融合了丰富上下文信息的向量表示。

接着,模型会先把注意力的计算结果与这个token最初的输入向量相加。这一步叫做“加”(Add),也叫残差连接(Residual Connection)。它的作用是确保token自身最原始的信息不会被后续复杂的变换完全覆盖,相当于保留了一条“捷径”。

然后,为了让数值分布保持稳定,避免在深层网络中传播时出现过大或过小的值,模型会对相加后的结果进行一次标准化处理。这一步通常被称为“归一化”(Norm),比如层归一化(LayerNorm)。

这样,既保留了原有信息,又避免了数值在多层计算后失控。

add&Norm是什么

前馈网络是什么

经过残差连接和归一化后,从输入到输出的映射关系本质上还是线性的。可以想象成,不同token向量的变换路径都是笔直的直线,这难以捕捉自然语言中复杂的、非线性的语义关联。

为了让模型具备更强的表达能力,需要引入非线性。模型会让向量通过一个前馈网络(Feed-Forward Network, FFN)。它的核心作用,是通过ReLU等激活函数,把“线性的映射路径”掰弯,变成非线性的曲线,从而能够拟合更复杂的语义模式。

非线性变换

随后,同样会再进行一次“加”和“归一化”操作。

add&Norm是什么

编码器是什么

至此,多头注意力、Add & Norm、前馈网络、再一次的Add & Norm,共同构成了一个完整的编码层(Encoder Layer)。

一个编码层能让模型对整句话形成一次深度的上下文理解。将多个这样的编码层堆叠起来,模型对语义的理解就会像剥洋葱一样,逐层深入和精炼。

多个编码层堆叠在一起,就组成了一个编码器(Encoder)。

编码器的最终输出,是一组向量。这组向量是原句中各个词块,在经过多层上下文信息融合之后,形成的数字表现形式。它代表了计算机对输入文本的整体语义理解。

编码器是什么

翻译原理

接下来,就要基于编码器输出的这份“中文理解”,开始生成英文了。

生成英文是一个词一个词进行的。首先,我们会放入一个固定的起始符号 ,它表示“英文翻译从这里开始”。模型会结合编码器输出的中文语义,预测最合理的第一个英文词。在我们的例子中,生成的是“Can”。接着,模型会把 和 “Can” 一起作为输入,预测下一个词“Huolala”,以此类推。每一步都是在已有生成结果的基础上,预测下一个最合理的词,就像玩成语接龙。

翻译问题

这个过程需要解决两个关键问题:

第一个问题,新生成的词如何与已经写下的英文内容自然衔接,保证语法和表达的连贯性?

好办,还是用注意力机制。毕竟那篇论文的核心思想就是“Attention is All You Need”。我们依然将正在生成的英文序列理解为一个“词块数据库”。

此时,查询(Q)是当前要预测单词的位置。键(K)和值(V)来自哪里?既然要保证英文自身的连贯,模型应该只关注已经生成出来的那部分英文。所以,K和V就来自已生成的英文词块数据库。这相当于在预测第n个词时,只允许它依赖前n-1个词的结果,确保生成过程是严格从左到右的。这就像把后面还没生成的部分“掩盖”起来,因此被称为带掩码的多头自注意力(Masked Multi-Head Self-Attention)。

带掩码的多头注意力

第二个问题,在已经理解好的中文整体语义中,当前这一步翻译最应该参考原句的哪部分信息?

同样用注意力解决。查询(Q)仍然是当前要翻译的英文单词位置,而键(K)和值(V)这次则来自编码器输出的、代表中文理解的词块数据库。

例如,在已经生成“Can Huolala”之后,轮到翻译“拉不拉”时,由于在编码器的中文理解中,它与“运货”相关的信息关联更强,因此模型更可能将其翻译成“carry”,而不是“pull”或“drag”。这部分注意力被称为多头交叉注意力(Multi-Head Cross-Attention)。

多头交叉注意力

解码器是什么

这两次注意力计算(掩码自注意力和交叉注意力)之后,输出结果同样会经过残差连接、归一化以及前馈网络等流程。每一步的作用与之前在编码器中处理中文时几乎一致,这里就不再赘述。

这些组件共同构成了一个解码层(Decoder Layer)。多个这样的解码层堆叠在一起,就形成了完整的解码器(Decoder)。每一层都在上一层输出的基础上进一步加工和精炼,使得生成的英文序列在语法、语义和与原文的对齐上更加准确。

最终,解码器输出的向量会通过一个词表(Vocabulary)转换层,变乘人类可读的英文单词输出。

解码器是什么

Transformer是什么

编码器负责深度理解输入文本(如中文),解码器负责基于这份理解,自回归地生成输出文本(如英文)。两者协同工作,共同完成了机器翻译这类“序列到序列”的任务。

这就是Transformer的经典架构。

之所以说是“经典”,是因为并非所有任务都需要编码器和解码器同时存在。

如果任务只需要理解文本,而不需要生成(如文本分类、情感分析、命名实体识别),那么只使用编码器部分就够了。著名的BERT模型就是这种“编码器-only”架构的代表。

而像ChatGPT、DeepSeek这类大语言模型,它们直接将用户的输入问题交给解码器进行理解,然后一个词一个词地生成回答,省略了独立的编码器,演变成了“解码器-only”的架构。

图片

当然,大模型同样能完成翻译任务。因此,前面详细讲解的“编码器+解码器”完整架构,在后续的发展中,可能更多应用于对参数量或计算资源有严格限制的小模型和特定场景。

现在,大家通了吗?

来源:https://www.51cto.com/article/842165.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

周鸿祎向360员工每人发放价值上亿元虚拟资产
科技数码
周鸿祎向360员工每人发放价值上亿元虚拟资产

5月11日,一则来自互联网大厂内部的消息引发了关注。据透露,360公司在5月8日通过内部全员信宣布,将向每位员工发放1亿Token,直接充入其360安全龙虾账户,整个过程无需申请和审批。 如果按主流大模型的市场价格进行估算,这次全员发放的Token总价值接近一亿元软妹币。公司的目标非常明确:通过提供

热心网友
05.17
昆仑万维方汉谈AI研发效率 月耗20亿Token背后的技术革新
业界动态
昆仑万维方汉谈AI研发效率 月耗20亿Token背后的技术革新

近日,昆仑万维董事长方汉在一次公开访谈中披露了一组令人震撼的数据:他个人每月实际消耗的AI Token数量,大约在20亿至30亿之间。 然而,这并非最令人惊讶的部分。方汉提到一位友人——某独角兽公司的首席技术官,仅耗时三个月、花费约6000美元,借助AI工具便成功重写了一个原本需要上百名程序员投入七

热心网友
05.12
一百万TOKENs大概多少字?
web3.0
一百万TOKENs大概多少字?

一百万Tokens约等于75万英文单词或55万-100万汉字 一百万Tokens到底能装下多少内容?简单来说,它大约相当于75万个英文单词,或者55万到100万个汉字。这个范围之所以有浮动,完全取决于文本的语言、复杂程度,以及背后模型的分词规则。按照Anthropic官方的说法,这个容量足以处理大约

热心网友
05.06
TOKEN6900 代币预售升温:2025 年值得关注的模因币
web3.0
TOKEN6900 代币预售升温:2025 年值得关注的模因币

TOKEN6900 代币预售升温:2025 年值得关注的模因币 模因币的热浪一波接着一波,眼下,一个名为TOKEN6900(T6900)的新项目,正通过一场火热的预售闯入大众视野。在比特币屡创新高的市场氛围里,投资者们四处寻觅下一个潜在风口,而T6900,已然成为聚光灯下的新焦点。 模因币热潮:新秀

热心网友
05.02
迷因币Snorter与TOKEN6900为什么这么火 值得投资吗
web3.0
迷因币Snorter与TOKEN6900为什么这么火 值得投资吗

在2025年下半年,Snorter与TOKEN6900因RWA和迷因文化双重驱动,成为加密市场焦点 2025年下半年的加密市场,正上演着一场有趣的“双城记”。一边是实体资产代币化(RWA)带来的严肃叙事,另一边则是迷因文化掀起的狂欢浪潮。就在这理性与荒诞的交汇点上,两个项目——Snorter与TOK

热心网友
05.01

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

潮汐守望者梅丽珊卓装备搭配指南与实战出装推荐
游戏资讯
潮汐守望者梅丽珊卓装备搭配指南与实战出装推荐

潮汐守望者梅丽珊卓的出装策略,核心在于极致放大她的爆发伤害与控制能力,同时构建必要的生存保障。以下这套经过版本与实战验证的装备组合,将帮助她主宰峡谷战场,成为团队不可或缺的法术核心。 核心装备 卢登的回声通常是无可争议的首件神话装备。它提供的法术强度与技能急速完美优化了梅丽珊卓的技能循环,而其被动“

热心网友
05.17
阶跃星辰图像编辑模型实测 2分钱一张快速生成海报风格
AI
阶跃星辰图像编辑模型实测 2分钱一张快速生成海报风格

4月29日,阶跃星辰正式发布新一代图像编辑生成模型Step Image Edit 2。这款AI图像模型主打“小身材、大能力、快响应”,参数量仅3 5B,却在轻量级图像编辑评测基准KRIS-Bench中斩获综合排名第一。它全面支持文生图、中英文渲染、局部编辑、视觉推理、主体一致性及风格迁移等多种AI图

热心网友
05.17
CVPR 2026北京论文分享会报名开启 线下深度交流前沿视觉技术
AI
CVPR 2026北京论文分享会报名开启 线下深度交流前沿视觉技术

2026年的AI圈,时钟仿佛被拨快了。技术迭代的浪潮一波未平,一波又起。 尤其是进入四月以来,整个行业像是踩下了油门。Meta携Muse Spark高调回归,ChatGPT Images 2 0的生成效果在社交媒体上持续刷屏,而GPT-5 5的发布,再次将技术天花板向上推升了一个量级。视线转回国内,

热心网友
05.17
谁将率先突破全模态世界模型技术瓶颈
AI
谁将率先突破全模态世界模型技术瓶颈

从DeepMind到阿里、腾讯,各路顶尖玩家正涌入“世界模型”这个新战场。但大家争夺的,远不止是算力与资源,更核心的较量在于:究竟什么样的架构,才能真正构建起对物理世界的理解? 过去一年半,世界模型已然成为AI领域竞争最密集的焦点。参与者名单几乎涵盖了所有前沿方向:全球科技巨头、视频生成公司、机器人

热心网友
05.17
柴犬币价格预测:关键阻力位0.0000076美元能否推动20%上涨
web3.0
柴犬币价格预测:关键阻力位0.0000076美元能否推动20%上涨

柴犬币自低点反弹约30%,正尝试复苏。当前面临0 0000076美元附近的200日移动均线关键阻力,若能突破可能上涨约21%,但该位置存在解套抛压。价格需放量突破0 0000064美元以确认短期上涨趋势,下一目标0 0000072美元,下方关键支撑位于0 000006美元附近。

热心网友
05.17