news 2025/12/26 12:36:10

Transformer的工作原理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Transformer的工作原理

Transformer的工作原理

Transformer 是一种“完全基于注意力机制(Attention Mechanism)”的深度学习模型架构,由 Google 在 2017 年的论文《Attention Is All You Need中首次提出。它彻底改变了自然语言处理(NLP)领域,并成为大语言模型(如 GPT、BERT、LLaMA 等)的基础。


一、核心思想:用“注意力”替代“循环/卷积”

在 Transformer 之前,主流序列模型(如 RNN、LSTM)依赖顺序处理,难以并行化,训练慢;而 CNN 虽可并行,但对长距离依赖建模能力弱。

Transformer的突破
抛弃 RNN/CNN,仅用“自注意力(Self-Attention)+前馈网络”构建模型,实现:

  • 高度并行化(训练快)
  • 全局依赖建模(任意两个词可直接交互)

二、整体架构:Encoder-Decoder结构

Transformer 由两部分组成:

[Input] → [Encoder Stack] → [Decoder Stack] → [Output]

  • Encoder:将输入序列(如句子)编码为富含语义的向量表示;
  • Decoder:根据 Encoder 输出和已生成的部分输出,逐步预测下一个词(用于翻译、生成等任务)。

注:像 BERT 只用 Encoder,GPT 只用 Decoder。


三、核心组件详解

1.输入表示(Input Embedding + Positional Encoding

  • Token Embedding:每个词映射为固定维度向量(如 512 维)。
  • Positional Encoding(位置编码)
    因为 Transformer 没有顺序信息,需显式加入位置信息
    使用正弦/余弦函数生成不同频率的位置向量,与词向量相加:

  • 其中 pos 是位置,i 是维度索引,d 是向量维度。

2.多头自注意力机制(Multi-Head Self-Attention

这是 Transformer 的核心创新

步骤:

  • 对每个输入向量,线性变换出三个向量:
    • Query (Q):当前词的“查询”向量
    • Key (K):其他词的“键”向量
    • Value (V):其他词的“值”向量
  • 计算注意力权重:

四、Decoder的特殊设计:Masked Self-Attention

Decoder 在训练时需防止“偷看未来词”,因此:

  • Masked Multi-Head Attention
    在计算注意力时,将未来位置的权重设为 -inf(经 softmax 后为 0),确保第 t 步只能看到 1 到 t 的词。
  • Encoder-Decoder Attention
    Decoder 还会 attend 到 Encoder 的输出(K, V 来自 Encoder,Q 来自 Decoder),实现跨序列对齐(如翻译中“apple”对应“苹果”)。

五、训练与推理

  • 训练:给定目标序列(如翻译结果),用 Teacher Forcing 方式并行计算所有位置损失;
  • 推理:自回归生成,逐个 token 预测(因不能提前知道未来词)。

六、为什么 Transformer如此成功?

优势

说明

并行化

RNN依赖,GPU利用率高

长程依赖

任意两词可直接交互(RNNO(n)步)

可扩展性强

易堆叠层数、扩大参数(支撑大模型)

通用架构

不仅用于NLP,还用于CVViT)、语音、蛋白质结构预测等


七、图解简化流程(以 Encoder为例)

Input Words → [Embedding + Pos Enc]

[Multi-Head Self-Attention] → Add & Norm

[Feed-Forward Network] → Add & Norm

(Repeat N times, e.g., 6)

Context-Aware Representations

总结

Transformer的本质
通过自注意力机制动态计算每个词在上下文中的重要性权重,从而构建全局语义表示,无需递归、无需卷积,实现高效、强大的序列建模。

如今,几乎所有主流 AI 大模型(包括你正在使用的这个语言模型)都建立在 Transformer 架构之上。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/17 15:16:13

Docker Scout忽略规则配置完全手册,从入门到精通一键掌握

第一章:Docker Scout忽略规则配置概述Docker Scout 是 Docker 官方提供的安全分析工具,用于识别镜像中的已知漏洞、软件包风险和配置问题。在实际开发与部署过程中,某些安全告警可能因环境特殊性或业务兼容性原因需要被有选择地忽略。为此&am…

作者头像 李华
网站建设 2025/12/17 15:16:07

Docker Offload任务调度进阶:从基础分配到智能预测的4个关键步骤

第一章:Docker Offload任务调度的核心概念在现代分布式计算环境中,Docker Offload任务调度是一种将容器化工作负载从主节点卸载到边缘或辅助节点执行的机制。其核心目标是优化资源利用率、降低主节点负载,并提升整体系统的可扩展性与响应速度…

作者头像 李华
网站建设 2025/12/17 15:15:47

【量子开发环境搭建】:如何在VSCode中100%成功配置并验证Qiskit?

第一章:量子开发环境搭建的核心意义 在进入量子计算的实际开发之前,构建一个稳定、高效的量子开发环境是不可或缺的第一步。这不仅是运行量子算法的基础平台,更是连接理论研究与工程实践的桥梁。一个完善的开发环境能够支持量子电路的设计、模…

作者头像 李华
网站建设 2025/12/17 15:15:07

40、Linux 软件安装与使用基础指南

Linux 软件安装与使用基础指南 1. 软件安装方式 1.1 从 tarball 安装 每个软件包在创建和安装组件的方式上可能略有不同。建议将解压后的 tar 归档文件复制到一个目录,然后进入该目录,查找 INSTALL 或 README 文件以获取具体的操作说明。 以下是以 root 用户身份在终…

作者头像 李华
网站建设 2025/12/17 15:14:08

揭秘VSCode远程调试中的环境变量陷阱:99%开发者忽略的细节

第一章:揭秘VSCode远程调试中的环境变量陷阱在使用 VSCode 进行远程开发或调试时,环境变量的配置常成为开发者忽略却影响重大的环节。当本地与远程环境存在差异,未正确传递或设置环境变量,可能导致应用启动失败、认证错误或配置缺…

作者头像 李华
网站建设 2025/12/17 15:13:08

破解异地用工难题:终成国际一站式人事外包服务

还在为异地员工社保缴纳、各地政策不一而头痛吗?管理成本居高不下,合规风险如影随形?终成国际人事服务外包,是您破解这些难题的“金钥匙”。 我们成立于2010年,深耕人力资源服务领域16年,服务网络覆盖全国…

作者头像 李华