AI Engineering Academy · 课时

用通俗语言理解 Transformer 与注意力机制

通过探索注意力机制如何让模型聚焦于相关上下文(而无需理解数学原理),揭开 Transformer 架构的神秘面纱。

第 2 / 4 课13 个步骤

用通俗语言理解 Transformer 与注意力机制 是 CoddyKit 上的免费 AI Engineering Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AI Engineering Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AI Engineering Academy 课程共包含 4 节课。

核心问题:长距离依赖

在“奖杯太大,放不进袋子,因为它太大了”这句话中,“它”指的是什么?旧模型在处理长句时容易跟丢指代对象。这就是长距离依赖问题。

注意力:加权聚焦

注意力机制决定对于每个词来说,哪些词最重要——就像突出一段文字中的关键部分,而不是把每个词都一视同仁。

查询、键和值

注意力机制的工作方式类似搜索:每个词发出一个查询,将其与每个键进行匹配,然后提取最相关的值。下面的代码展示了这一核心思想。

# Simplified self-attention in pseudocode
import numpy as np

def scaled_dot_product_attention(Q, K, V):
    d_k = Q.shape[-1]  # dimension of keys
    scores = Q @ K.T / np.sqrt(d_k)  # scale to prevent vanishing gradients
    weights = np.exp(scores) / np.sum(np.exp(scores), axis=-1, keepdims=True)  # softmax
    output = weights @ V  # weighted sum of values
    return output

多头注意力:多个视角

一个注意力头可以捕捉一种联系。多头注意力会并行运行多个注意力头,因此模型可以同时从多个角度观察词语。

位置编码:加入词语顺序

注意力机制本身会忽略词语顺序——“狗咬人”和“人咬狗”看起来没有区别。位置编码加入位置信息,让词语顺序不会丢失。

注意力之后的前馈层

注意力机制共享上下文信息后,前馈网络会分别处理每个词。有趣的是,模型中大量事实知识似乎就存储在这里。

仅编码器模型与仅解码器模型

BERT 风格的仅编码器模型会一次读取所有文本,以理解其内容。GPT 风格的仅解码器模型则从左到右读取文本并生成内容——ChatGPT 采用的就是这种方式。

层堆叠与深度

现代 LLM 会堆叠几十个 Transformer 模块。每个层都会进一步完善前一层的结果——较早的层捕捉语法,更深的层处理推理。深度越大,模型能进行的思考越多。

残差连接与层归一化

堆叠许多层并不容易。残差连接和层归一化可以保持信号稳定,使深度达到 100 层以上的模型也能可靠地训练。

为什么注意力机制能够很好地扩展

注意力机制很容易并行运行,因此 GPU 越多,训练速度就越快。研究人员正是通过这种方式在海量数据上训练模型,并发现了著名的规模定律。

FlashAttention 与现代优化方法

较长的输入会让标准注意力机制占用大量内存。FlashAttention能够更加高效地计算相同结果,使较大的上下文窗口成为现实。

快速检查

检验您对本课人工智能工程概念的理解。

课程回顾

回顾:自注意力将每个词与其他所有词联系起来,多头注意力一次捕捉多种关系,而残差连接和归一化让模型能够不断加深。接下来:LLM 是如何训练的。

免费开始

用 AI 导师学习 Python — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
30
课程
120

常见问题解答

「用通俗语言理解 Transformer 与注意力机制」课时是免费的吗?

是的 — 「用通俗语言理解 Transformer 与注意力机制」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AI Engineering Academy 课程的其余内容,请升级到 CoddyKit PRO。 AI Engineering Academy 课程共包含 4 节课。

「用通俗语言理解 Transformer 与注意力机制」这节课中我会学到什么?

通过探索注意力机制如何让模型聚焦于相关上下文(而无需理解数学原理),揭开 Transformer 架构的神秘面纱。 你通过在浏览器中直接运行的动手代码来练习 AI Engineering Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AI Engineering Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AI Engineering Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「用通俗语言理解 Transformer 与注意力机制」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AI Engineering Academy 课中编写并运行代码吗?

能。每节 AI Engineering Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 从自动补全到 ChatGPT
  2. 用通俗语言理解 Transformer 与注意力机制
  3. LLM 如何训练
  4. LLM 的能力与局限
← 返回 AI Engineering Academy