01.什么是Transformer
1.1 Transformer的渊源
Transformer是一种完全基于自注意力机制的深度学习模型架构,由 Google 团队在 2017 年提出(论文《Attention Is All You Need》)。它彻底革新了序列数据处理方式,成为现代大语言模型(如 GPT、BERT)和跨模态模型(如 Vision Transformer)的核心基础。
依旧是在自然语言处理的研究中,注意力机制可以增强对长句子的处理能力,但是无法直接使任意两个位置的元素直接交互。而基于自注意力构建的Transformer则可以一次性处理整个序列,实现并行计算,彻底解决长距离依赖问题。比如,在句子“The cat didn't eat because it was hungry”中可以直接关联“it”和“cat”。
1.2 Transformer的架构
Transformer是由编码器(Encoder)和解码器(Decoder)组成,包含多个相同层(通常为6层)。
其中,编码器用于理解输入。依旧以长句子理解为例,编码器用于处理词输入和位置编码,将单词映射为稠密向量,并添加正弦/余弦函数生成的向量,注入位置信息,用于解决自注意力对顺序不敏感的问题。编码器还包含多个核心层,包括多头自注意力、前馈神经网络、残差连接和层归一化。之前,我们介绍了多头注意力机制,它可以从多个角度计算关联权重。前馈神经网络则对注意力输出进行非线性变换。残差连接和层归一化则避免每层输出梯度消失。而解码器负责生成输出,可能包含额外掩码子注意力和交叉注意力,用于防止误判和源语言与目标语言的动态对其。
1.3 Transformer与注意力机制的关系
正如开篇提到的那样,注意力机制是Transformer的机制,而Transformer对其进行了系统性优化。Transformer完全依赖于自注意力构建,而替代了RNN和CNN,实现并行化和全局建模,这是其最主要的特征。
相比于原始自注意力机制,Transformer的扩展和增强体现在:
-
多头注意力:并行多组注意力头,用于捕获多样化关系。比如一个头用于关注指代,而另一个头用于关注语法;
-
位置编码:弥补纯注意力缺失的位置信息;
-
残差归一化:支持堆叠百层深度,比如GPT-4。
能力 |
Transformer |
RNN/LSTM |
---|---|---|
并行计算 |
✅ 全序列并行处理 |
❌ 必须顺序计算 |
长距离依赖 |
✅ 直接建模任意距离关联 |
❌ 信息传递易丢失或扭曲 |
训练效率 |
✅ GPU 利用率高(如 GPT-3 训练提速 10 倍) |
❌ 长序列训练慢 |
动态权重分配 |
✅ 注意力权重可视化可解释 |
❌ 固定参数缺乏灵活性 |
📝案例:机器翻译“猫在跑”➡“The cat is running”:
-
编码器通过自注意力机制“猫”和“跑”的关系;
-
解码器生成“cat”时,交叉注意力聚焦编码器的“猫”向量。
根据该案例,Transformer并非简单使用注意力机制,而是以自注意力为核心重构了序列建模范式,也就是说注意力机制是Transformer“这辆汽车”的“发动机”。
1.4 Transformer的工作流程
我们依旧使用上一小节猫案例:机器翻译“它是一只猫”➡“It is a cat”,来看看Transformer是如何结合注意力机制分阶段协作进行工作的。
-
阶段1:输入预处理➡给词语贴“智能标签”
- 词嵌入:将每个词转为向量,比如“猫”➡[0.1, -0.4, 0.8],用于表示词义;
- 位置编码:为每个词添加位置信号,比如正弦波生成的“座位号”,用于解决注意力机制无法感知顺序的问题;
-
阶段2:编码器(理解部分)➡用自注意力消化全文
- 目标:理解输入句子的整体含义;
- 核心操作:每个词通过Q向量“提问”,用K向量“匹配”其他词,最终按权重融合V向量。比如,当处理“it”时,通过注意力权重关联到远处的“cat”(权重可能达到0.9),直接解决指代问题。多个注意力头是并行工作,有的关注语法,有的关注语义。最后经过残差连接和归一化输出结果,输出为每个词生成的一个富含上下文的新向量。
-
阶段3:解码器(写作部分)➡用交叉注意力逐词生成
- 目标:根据已生成的内容预测下一个词;
- 关键设计:首先通过权重强制未来位置为0(掩码自注意力),来阻止偷看未来词,使生成时只能看到已写的内容Q,而K/V是编码器输出的原文信息。然后通过Q与K的匹配,动态聚焦原文关键部分(交叉注意力)。最后对注意力结果深度加工,决定最终输出词。
02.Transformer与图像识别
2.1 Encoder-Decoder结构的本质
上一节中提到了编码器-解码器结构,也就是Encoder-Decoder结构。该结构虽然源于自然语言处理,但是在计算机视觉领域同样展现出了强大的建模能力。Transformer中的Encoder和Decoder均由神经网络层构成,但是采用了注意力机制替代了传统卷积或循环结构。在图像识别领域中:
组件 |
CV 任务示例 |
功能 |
---|---|---|
Encoder |
图像分类(ViT) |
将图像分块编码为融合全局上下文的特征向量 |
Decoder |
目标检测(DETR) |
基于 Encoder 特征生成目标框和类别(如预测 "人" 的坐标和置信度) |
联合使用 |
图像描述生成(Image Captioning) |
Encoder 理解图像内容,Decoder 生成自然语言描述(如 "一只猫坐在垫子上") |
以ViT为例,我们来解析一下Encoder的技术细节:
-
输入处理:图像➡序列
- 分块嵌入(patch embedding):将图像分割为16x16的图像块(patch),每个图像块展平后通过线性投影得到向量x_i:
patch_embed = nn.Conv2d(3, d_model, kernel_size=16, stride=16)
- 位置编码(positional encoding):为每个图像块添加可学习的位置向量p_i,保留空间结构信息。最终的完整向量表示为z_i = x_i + p_i。这里为什么需要位置编码呢?因为自注意力机制本身是没有位置感知的,位置编码注入了空间顺序信息。
-
核心层:多头自注意力+前馈网络
- 多头自注意力(Multi-Head Self-Attention):每个图像块生成Q、K和Vi昂立,然后使用Concat拼接。比如,在识别一张图像中的运动车辆和云朵时,可以让天空区域的图像块关注云朵,而让地面图像块关注车辆,实现全局语义关联。
- 前馈神经网络(FFN):对每个位置独立进行非线性变换,这样可以增强模型的表达能力,进而弥补注意力层线性操作的不足。
-
残差连接与层归一化:避免深层网络梯度消失,稳定训练过程。
接下来,我们以DETR为例,解析一下Decoder的技术细节:
-
输入:目标查询(Object Queries)
- 可学习向量:每个查询向量对应一个预测目标,比如车辆或者行人;
- 物理意义:Decoder通过查询向量主动检索Encoder特征中的目标信息;
-
核心层:掩码自注意力+交叉注意力
- 掩码自注意力(Musked Self-Attention):仅允许查询向量关注自身及之前的向量,这样以确保生成目标框时顺序无关,比如预测“人”的位置而不影响“车”的预测;
- 交叉注意力(Cross-Attention):Q是来自于Decoder的,而K和V是来自于Encoder输出的图像特征,计算注意力权重:
Attention(Q, K, V) = softmax( (Q × K^T) / sqrt(d_k) ) × V
-
输出:目标预测
- 每个查询向量经FFN后输出:
Output = FFN(CrossAttention(Q_dec, K_enc, V_enc))
- 最终通过线性层预测:Softmax实现目标分类,而回归任务来获得边界框坐标。
2.2 与传统CNN的对比
我们来对比一下Transformer用于图像识别和CNN用于图像识别的区别:
特性 |
CNN(如 ResNet) |
视觉 Transformer(ViT) |
---|---|---|
感受野 |
局部 → 全局(需多层堆叠) |
全局依赖(单层自注意力覆盖全图) |
计算效率 |
高(局部卷积并行) |
中(自注意力复杂度 O(n²),需优化) |
长距离依赖 |
弱(依赖网络深度) |
强(直接建模任意图块关联) |
数据需求 |
小规模数据有效 |
需大规模预训练(如 ImageNet-21k) |
可解释性 |
低(黑盒特征) |
高(注意力热图显示聚焦区域) |
03.Transformer与强化学习
3.1 Transformer对强化学习任务的升级
基础的注意力机制在强化学习中仅作为局部特征加权模块,而Transformer通过系统性设计解决了一些瓶颈。
首先是空间顺序建模的瓶颈,这在于基础注意力无法感知未知关系的问题,而Transformer中的位置编码可以显式注入位置信息,使智能体能区分“起点➡途径点➡终点”的拓扑关系。
其次是多维度关系解耦的瓶颈,这在于单头注意力难以同时捕捉障碍物距离、能耗、交通规则等多维约束的问题,而多头注意力可以并行计算不同于语义空间的关系。
最后是长期依赖建模的瓶颈,这在于传统RNN在长路径规划中容易丢失早期状态信息的问题,自注意力机制可以直接关联序列中任意两个节点,避免信息衰减。
3.2 Transformer在路径规划中的应用
常见的三类场景为单智能体路径规划、多智能体协同避障和类人决策规划。
对于单智能体路径规划,以电动汽车场景为例,最需要解决的问题在有限电池容量下走跑得最远,这就要求电动汽车需要在充电桩分布、道路坡度、车速等因素约束下最小化能耗。那么在该任务中:
-
Encoder:编码道路网络节点,也就是充电桩、路口等,然后为每个节点生成包含坡度、距离、拥堵程度的特征向量;
-
特征嵌入模块:动态融合车辆实时状态与道路特征,比如剩余电量、车速等;
-
Decoder:通过注意力权重来选择下一节点,并输出动作概率分布,此时高权重=低能耗路径。
而对于多智能体协同避障,以物流机器人场景为例,最需要解决的问题在于让多机器人在五通信条件下避免死锁并高效抵达目标。那么在该任务中:
-
观测序列化:将每个机器人的局部规划(周围8方向障碍物、队友位置)展平为9x9网格序列;
-
交叉注意力:Decoder阶段让机器人通过注意力权重隐式协调,比如让机器人A高权重关注机器人B的预期路径;
-
模仿强化学习:结合对比学习损失函数,从专家示范中学习协作策略。
对于类人决策规划,以自动驾驶场景为例,最需要解决的问题是让自动驾驶汽车在复杂交通流中生成安全且符合人类驾驶习惯的路径。那么在该任务中:
-
逆强化学习框架:用Encoder提取交通车交互特征,输出注意力热力图解释决策依据,比如高权重=高碰撞风险车辆;
-
正负样本训练:同时学习人类成功轨迹(正样本)和事故轨迹(负样本),提升安全性。
在Transformer的强化学习任务中,Transformer与基础的注意力机制相比,其优势在于:
组件 |
基础注意力机制的作用 |
Transformer 中的增强设计 |
---|---|---|
多头自注意力 |
加权聚合关键特征 |
解耦多目标冲突(如能耗vs时间) |
位置编码 |
无顺序感知 |
显式编码道路节点空间关系 |
交叉注意力 |
无跨模块交互 |
协调多智能体动作(机器人A→B路径预测) |
残差连接 |
无深层优化 |
支持百层网络训练,适应超长路径规划 |
总之,Transformer将路径规划从“局部感知-逐步决策”的迭代模式,升级为“全局建模-序列生成”的并行模式,其核心在于通过注意力权重实现环境约束的动态内化,使智能体具备类人的综合决策能力。
04.如何学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓