本文深入探讨了Transformer在大模型中的核心作用,解释了其如何通过自注意力机制、多头注意力、位置编码等手段,使机器能够理解句子中的词与词之间的关系,从而更好地处理上下文。文章还讨论了Transformer与大模型预训练任务的关系,以及如何基于对Transformer的理解改进与大模型的交互,包括提供清晰的上下文、明确的约束和减少冲突信息。通过理解Transformer的原理,我们可以更深入地理解大模型的工作方式,从而更有效地利用它们。


最近写大模型相关的内容,我越来越明显地感觉到一件事。

很多概念看起来很远,真放到一句话里,其实离我们每天的使用体验很近。

前一篇写大模型幻觉时,我反复提到一个点:大模型最基础的训练任务,是根据前面的文字预测下一个 token。

这句话听起来简单,但它会带出一个更深的问题。

模型凭什么知道前面的哪些文字重要?

人读一句话时,这件事几乎是自动完成的。

我随手写一句:

小王把电脑递给小李,因为他要赶着去开会。

这里的“他”指谁,读者会根据上下文判断。再换一句:

小王把电脑递给小李,因为他刚好需要调试程序。

这一次,“他”更可能指小李。

人脑会在读句子时不断回看上下文。主语、动作、原因、语气,都会参与判断。

大模型也要做类似的事。

它在生成每一个 token 时,都要判断上下文里哪些信息更相关,哪些信息可以放轻一点。

Transformer 的重要性,就从这里开始。

这篇文章想讲清楚一个核心问题:

Transformer 为什么能让大模型更好地理解上下文?

我现在的理解是,Transformer 的关键价值主要在三层。

第一,它让句子里的词可以直接彼此建立关系。

第二,它用注意力机制计算当前词应该重点看哪些词。

第三,它把这种关系计算堆叠很多层,让模型逐步形成更复杂的语义理解。

先从它要解决的问题讲起。

语言理解的难点,在于词和词之间的关系

一段文字表面上是一串词。

但真正让人理解它的,是词和词之间的关系。

谁做了动作。

动作指向谁。

原因是什么。

前面的名词和后面的代词怎么对应。

一句话越长,这些关系越复杂。

在 Transformer 出现之前,处理语言的模型更习惯按顺序读文本。它们从左到右,一步一步把信息传下去。

这种方式很自然,因为人写字也是按顺序写。

但问题也很明显。

如果一个很重要的信息出现在很前面,模型要经过很多步才能把它传到后面。传得越远,信息越容易变弱。

这就像开会传话。

第一排的人说了一句话,传到最后一排时,关键细节可能已经变了。

Transformer 换了一种思路。

它让一句话里的每个词,都可以直接去看这句话里的其他词。

当前这个词想理解自己,就去上下文里找相关信息。

这个动作,就是注意力机制。

Self-Attention:让每个词自己去找重点

Transformer 里最核心的部分,叫 Self-Attention。

中文通常翻成自注意力。

这个名字容易让人觉得抽象。

我第一次学它时,也卡在这里。看论文图,会看到一堆矩阵、箭头和公式。看完以后,脑子里知道它很重要,但说起来总觉得空。

后来我换了一个角度理解。

Self-Attention 其实在做一件事:

对句子里的每个词,计算它应该关注其他词的程度。

回到刚才那句话:

小王把电脑递给小李,因为他刚好需要调试程序。

当模型处理“他”这个词时,它需要在前文里找线索。

“小王”是一个候选。

“小李”也是一个候选。

“调试程序”这个动作,会让“小李”变得更相关。

所以“他”会对“小李”分配更高注意力。

注意力在这里更接近一种权重计算,和人类意识里的理解属于不同层面的东西。

权重高的词,对当前词的表示影响更大。

权重低的词,影响就小一些。

一句话里的每个词都会经历这个过程。

它会看别人,也会被别人看。

这样一来,句子从一个顺序排列的文本串,变成了一张关系网。

Transformer 的厉害之处,就在这张关系网里。

Q、K、V:注意力机制到底怎么算

讲 Self-Attention,绕不开三个字母:

Q、K、V。

它们分别是 Query、Key、Value。

很多教程会直接给公式:

Attention 等于 softmax 之后的 QK 相似度,再乘以 V。

公式当然重要,但我更想先说人能理解的版本。

可以把 Q、K、V 理解成一次查找过程。

Query 是当前词提出的问题。

Key 是其他词给出的匹配标签。

Value 是其他词真正携带的信息。

当前词拿着自己的 Query,去和其他词的 Key 做匹配。

匹配程度越高,说明对方越值得关注。

之后,模型再按照这些匹配权重,从对应的 Value 里拿信息。

还是看“他”这个词。

它的 Query 可能在问:我这个代词应该指向谁?

“小王”的 Key 给出一种匹配。

“小李”的 Key 也给出一种匹配。

后面的“调试程序”又提供了新的语义线索。

模型计算完这些关系后,会得到一个新的“他”的表示。

这个新表示里,已经混入了上下文信息。

所以 Transformer 里的词向量,会随着上下文变化。

同一个“他”,放在不同句子里,会吸收不同上下文,得到不同表示。

这也是大模型能处理语境差异的原因之一。

多头注意力:一句话可以从多个角度看

如果只有一个注意力计算,模型看问题的角度会比较单一。

语言里的关系又很丰富。

有时要看主谓关系。

有时要看指代关系。

有时要看时间顺序。

有时要看某个词和整句话的语气关系。

多头注意力就是为了解决这个问题。

它让模型同时做多组注意力计算。

每一组注意力,可以学习一种不同的关注方式。

一个头可能更在意“谁和谁有关”。

另一个头可能更在意“动作发生在什么时候”。

还有一个头可能更在意“哪几个词共同构成一个固定表达”。

这些头的结果会被合并起来,形成更丰富的表示。

我现在更愿意把多头注意力看成一种多角度观察。

同一句话,从语法角度看是一层关系。

从语义角度看,又是另一层关系。

从上下文指代看,还会出现新的关系。

多头注意力让模型有机会把这些关系同时算出来。

位置编码:同时看所有词,也要知道先后顺序

Transformer 有一个很大的特点:

它可以并行处理一句话里的多个词。

这个能力很关键。

因为模型训练时要处理海量文本,能并行就能大幅提高训练效率。

但并行也带来一个问题。

如果所有词同时进入模型,模型天然很难知道谁在前,谁在后。

“小王喜欢小李”和“小李喜欢小王”,词都一样,顺序变了,意思就变了。

所以 Transformer 需要位置编码。

位置编码会把每个 token 所在的位置也加入模型输入。

这样模型在计算词和词关系时,既能看到语义,也能看到位置。

位置编码本身有很多设计方式。

早期 Transformer 使用固定的正弦余弦位置编码。

后来很多模型使用可学习的位置表示,或者使用旋转位置编码这类改进方案。

但对理解主线来说,只要抓住一点就够了:

Transformer 同时看词,也要知道词的顺序。

一层 Transformer 里面还有什么

如果只讲注意力机制,很容易误以为 Transformer 只有 Self-Attention。

实际上一层 Transformer 通常还会包含前馈网络、残差连接和归一化。

这几个名字看起来偏工程,但它们各自承担着很实际的作用。

Self-Attention 负责让词和词交换信息。

前馈网络负责对每个位置上的信息再加工。

残差连接让信息可以跨过某些计算直接往后传,训练深层网络时更稳定。

归一化让每一层的数值分布更平稳。

可以把一层 Transformer 理解成两步。

第一步,先让当前词去上下文里找相关信息。

第二步,再把找回来的信息加工一下,送到下一层。

很多层叠起来以后,模型对上下文的理解会逐层变化。

浅层可能更关注词形和局部搭配。

更深的层会逐渐形成更抽象的语义关系。

这个过程来自训练中的参数调整。

它是在大规模训练中一点点学出来的。

GPT 和 Transformer 是什么关系

讲到这里,就能回到大模型。

GPT 这类模型,本质上使用的是 Transformer 的解码器结构。

它每次根据前面的 token 预测下一个 token。

第二篇文章里讲过,预训练让模型学会从海量文本中预测下一个 token。

这一篇可以补上另一块:

Transformer 提供了计算上下文关系的架构。

预训练解决“学什么”。

Transformer 解决“怎么在一句话里看见关系”。

这两件事合在一起,大模型才有了今天的语言能力。

当你问它一个问题时,它会先处理你的输入,再沿着上下文生成答案。

它会把你的输入切成 token,再在这些 token 之间计算关系。

当前生成到哪个位置,它就用前面的上下文重新计算当前最合适的下一个 token。

这也是为什么提示词很重要。

你多给一点背景,模型就多一些可计算的关系。

你把问题问清楚,模型就更容易把注意力放到真正相关的地方。

你给的上下文混乱,模型也会在混乱里寻找高概率路径。

理解 Transformer 后,怎么更好地使用大模型

理解架构,是为了改变我们使用大模型的方式。

它会改变我们使用大模型的方式。

我现在写提示词时,会更在意三件事。

第一,给足必要上下文。

大模型擅长在上下文里找关系。背景越清楚,它能利用的信息越多。

第二,把关键约束写在明确位置。

如果一个限制条件很重要,就不要藏在一大段文字里。可以单独写出来,让模型更容易关注到它。

第三,减少互相冲突的信息。

模型会在输入里计算关系。冲突信息越多,它越容易生成看起来顺但偏掉的答案。

这也是我自己用 AI 时逐渐改掉的习惯。

以前我会把一堆背景、要求、补充说明混在一起丢给它。

现在会先整理一下。

我希望它做什么。

它必须参考哪些材料。

哪些内容只是背景。

哪些条件必须守住。

这些东西分清以后,回答通常会稳一些。

最后,Transformer 让模型学会在文字里建立关系

回到开头的问题:

大模型到底是怎么读懂一句话的?

我的理解是:

它先把文字切成 token,再用 Transformer 在 token 之间计算关系。Self-Attention 决定当前 token 应该关注哪些上下文,多头注意力从多个角度看这些关系,位置编码帮助模型保留顺序信息。很多层叠起来以后,模型就能形成越来越丰富的上下文表示。

这套机制让机器拥有了一种强大的语言关系计算能力。

这种能力和人类理解仍然有距离,但已经足够支撑很多复杂的语言任务。

也正是这种能力,支撑了今天的大模型。

读懂 Transformer,也就更容易理解大模型的很多表现。

它为什么吃提示词。

它为什么能接住上下文。

它为什么有时会把无关信息也揉进去。

这些现象背后,都能看到注意力机制的影子。

我现在越来越觉得,学大模型要从产品界面继续往里看。

界面上看到的是回答。

架构里藏着的是回答形成的方式。

把这一层看清楚,再回头用 AI,心里会稳很多。

最后唠两句

为什么AI大模型成为越来越多程序员转行就业、升职加薪的首选

很简单,这些岗位缺人且高薪

智联招聘的最新数据给出了最直观的印证:2025年2月,AI领域求职人数同比增幅突破200% ,远超其他行业平均水平;整个人工智能行业的求职增速达到33.4%,位居各行业榜首,其中人工智能工程师岗位的求职热度更是飙升69.6%。

AI产业的快速扩张,也让人才供需矛盾愈发突出。麦肯锡报告明确预测,到2030年中国AI专业人才需求将达600万人,人才缺口可能高达400万人,这一缺口不仅存在于核心技术领域,更蔓延至产业应用的各个环节。

那0基础普通人如何学习大模型 ?

深耕科技一线十二载,亲历技术浪潮变迁。我见证那些率先拥抱AI的同行,如何建立起效率与薪资的代际优势。如今,我将积累的大模型面试真题、独家资料、技术报告与实战路线系统整理,分享于此,为你扫清学习困惑,共赴AI时代新程。

我整理出这套 AI 大模型突围资料包【允许白嫖】:

  • ✅从入门到精通的全套视频教程
  • ✅AI大模型学习路线图(0基础到项目实战仅需90天)
  • ✅大模型书籍与技术文档PDF
  • ✅各大厂大模型面试题目详解
  • ✅640套AI大模型报告合集
  • ✅大模型入门实战训练

这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

①从入门到精通的全套视频教程

包含提示词工程、RAG、Agent等技术点

② AI大模型学习路线图(0基础到项目实战仅需90天)

全过程AI大模型学习路线

③学习电子书籍和技术文档

市面上的大模型书籍确实太多了,这些是我精选出来的

④各大厂大模型面试题目详解

⑤640套AI大模型报告合集

⑥大模型入门实战训练

如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!

应届毕业生‌:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能 ‌突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

👉获取方式:
有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐