跳转至

Lecture21

LaTeX 源码

\makecscover

来源审计:Transformer 的主线是 Consolidation

这场课不是一篇标准的 Transformer 教科书,也不是“Attention Is All You Need”论文逐页讲解。共同作者 Ashish Vaswani 从 1955 年 Dartmouth proposal 出发,追踪人工智能如何从一个 unified-system 梦想碎裂成无数专用 pipeline,又如何借助 distributed representation、sequence-to-sequence、attention 和大规模学习重新走向 consolidation。后半场再把视角从算法扩展到 position representation、long context、memory bandwidth、tools、data center 和产品反馈闭环。

官方课堂边界与视觉恢复

本次重写以 Stanford Online 官方录像 1GbDTTK3aR4 为课堂顺序来源,课堂日期为 2023 年 11 月 7 日。录像提供人工 en-US 字幕,共解析 1,866 个有效 cue。官方页面、录像描述和 exact-title 检索没有发现公开 standalone deck,因此以 1080p 录像为视觉源;三秒高召回抽取后,人工从 87 个候选中保留 43 个独立教学状态,重复 speaker-window 帧、重复回访、纯 bumper 与多次出现的 Thanks 页均有意省略。

证据层 本地材料 在讲义中的职责
官方录像 1:20:38、43 个独立教学状态 决定课堂顺序、手势解释、demo、Q\ A 与历史叙事
人工字幕 1,866 cues、timed/clean/chunk transcripts 恢复动机、失败路线、工程判断、保留意见和研究方向
Primary sources Seq2Seq、NMT Attention、Transformer、Music Transformer、Routing/Reformer、MQA/GQA、FlashAttention 等 核对公式、术语、实验对象与时间边界
覆盖与视觉审计 manifest、selection、coverage、PDF QA 证明图像和 spoken nodes 有计划、有落点且成品可读

历史边界与证据边界

本文重建 2023-11-07 的课堂。讲者对 future architecture、agents、tools、adaptive thinking 与产品闭环的判断属于当时的研究议程,不等于已被后续产品验证;早期 MT/parsing 结果证明 Transformer 在给定任务上有效,也不能单独证明它是最终通用架构。

Dartmouth proposal:目标很准,路径判断很错

课程用 Dartmouth proposal 建立一个有意的反差。1955 年的提案已经提出“原则上可精确描述学习与智能,并让机器模拟”的宏大目标,还认为一群科学家用一个夏天就能取得显著进展。问题不在 ambition,而在两项判断:他们高估了人类手工写出智能规则的能力,又低估了未来机器容量、数据和优化系统的规模。

\lecturefigure{slide-01-dartmouth-1955.jpg}{1955 年 Dartmouth proposal 与早期统一智能愿景}{官方录像恢复幻灯片 V001;00:01:27}

读图:先读红线,再看人物

右侧 proposal 的三处重点分别是“智能可被精确描述”“一个夏天可取得显著进展”和“主要障碍不是 machine capacity”。先比较第三句与今天的大模型基础设施,再比较第一句隐含的 hand-written rules。图支持早期研究目标具有延续性,却也显示实现路径从 symbolic programming 转向 data-driven optimization。

\teachervoice{讲者调侃说 Dartmouth 研究者需要一个“非常非常长的夏天”,并指出今天的 Transformer 已经不是一台机器,而是 data center。他更严肃的判断是:我们仍未学会写出全部智能规则,却学会了让模型从数据中拟合大量规则。}

本讲的 Consolidation Thesis

Transformer 的历史意义不只是一种更快的 sequence model,而是让过去分散在 feature engineering、alignment、language modeling、task-specific architecture 与后处理中的职责,越来越多地进入一个共享可训练系统。Consolidation 降低接口数量,但不会消灭数据、优化、系统和评价问题。

本章小结

本章确定了课堂与证据边界,并把 Transformer 放回更长的 AI 历史:统一智能的目标从未消失,改变的是实现方式。后文将沿着“专用 pipeline 如何被通用表示与可训练计算图吸收”这条主线解释架构,而不是把 attention 当作孤立公式。

从垂直 Pipeline 到通用 Sequence Learning

历史主线落到 NLP 时,最直观的变化不是模型参数增长,而是系统接口减少。2009 年的机器翻译需要 word alignment、phrase extraction、重排序、language-model rescoring 和大量独立特征;2013 年的研究社区也按 morphology、dialogue、discourse、sentiment、translation 等垂直方向组织。通用 sequence formulation 逐步把这些任务转化为共享表示学习问题。

2009:神经网络只是复杂系统中的一个 Rescorer

早期 statistical machine translation(SMT,统计机器翻译)通过多个可解释模块组合出完整系统。Neural probabilistic language model 当时常被放在 pipeline 尾部,为候选翻译重新打分,而不是端到端决定输出。这样的工程可以工作,但每个接口都要定义表示、搜索、特征和误差传递,知识被锁在专用组件里。

\lecturefigure{slide-02-sequence-models-2009.jpg}{2009 年机器翻译 pipeline 与 neural probabilistic language model}{官方录像恢复幻灯片 V002;00:05:09}

读图:寻找神经网络到底在哪里

左图包含 alignment、phrase table、decoder 和 rescoring 等多个模块;右图的 neural language model 只负责其中一个分数。先数系统边界,再观察梯度能否跨边界端到端传播。图支持当时 neural component 已有价值,却没有控制整个任务,也解释了为何数据驱动 consolidation 会带来巨大工程收益。

\teachervoice{Vaswani 回忆自己读博时的 MT 系统甚至比图中更复杂,并让全班寻找“神经网络在哪里”。答案是 Continuous State Language Model 主要用于 rescoring;今天看来,名称中特意强调 continuous,反而说明当时主流世界仍是离散 pipeline。}

2013:任务与研究社区都被 Verticalize

当模型不能共享足够多的表示与计算结构时,每个问题都需要自己的领域知识、特征和 evaluation culture。\term{verticalized system(垂直化系统)}指围绕某一任务建立专用数据、模块与指标的技术栈;它能深挖局部问题,却使跨任务 transfer 和共同基础设施变得困难。

\lecturefigure{slide-03-nlp-2013-verticalized.jpg}{NLP 2013 的研究轨道呈现高度垂直化}{官方录像恢复幻灯片 V003;00:07:03}

读图:会议目录也是技术组织图

页面列出多个相对独立的 research track。先看同一语言现象被拆成多少任务,再问每个任务是否使用独立 feature、模型与数据。它不能说明专门研究没有价值,而是提示 consolidation 需要一种能共同处理 variable-length input、context 与 conditional generation 的通用计算接口。

Distributed Representation、Seq2Seq 与 Attention

\term{distributed representation(分布式表示)}用稠密向量的多个维度共同编码概念,不再为每个词或规则维护独立符号特征;\term{contextual representation(上下文化表示)}进一步让同一 token 的向量随上下文改变。Seq2Seq 把 translation、summarization、dialogue、question answering 等任务统一为“输入序列到输出序列”,attention 则让 decoder 按内容读取 source states。

\lecturefigure{slide-04-general-approaches-2016.jpg}{从词向量到 Seq2Seq 与 Attention 的通用范式}{官方录像恢复幻灯片 V004;00:09:21}

术语消化:三次抽象升级

抽象 解决的问题 仍然留下的瓶颈
Distributed word vectors 共享词语统计结构与语义相似性 同一词在不同上下文仍较固定
Contextual sequence states 让表示依赖前后文 recurrent computation 仍按时间串行
Seq2Seq + attention 统一条件生成并按内容读取 source encoder/decoder 主干仍常由 RNN 构成

\teachervoice{讲者把这一演化描述为“general paradigms started coming up”。关键不是 Word2Vec 的向量代数有多酷,而是研究者开始相信:只要能稳定学习 variable-length representation,许多原本独立的语言任务就能共享同一建模形式。}

Variable-length Representation 是共同核心

\term{sequence model(序列模型)}处理有顺序、长度可变的输入或输出。它必须把不同长度的 token sequence 转成可供预测使用的状态,同时保留内容、顺序和远距离依赖。下图用 recurrent encoder 表示经典路线:状态逐步更新,最终或逐位置表示被 decoder 与下游任务使用。

\lecturefigure{slide-05-variable-length-representations.jpg}{学习 variable-length representation 是 Seq2Seq 任务的共同基础}{官方录像恢复幻灯片 V005;00:10:33}

一个最小 recurrent update 为:

\[ h_t=f_\theta(h_{t-1},x_t),\qquad y_t\sim p_\theta(\cdot\mid h_t). \]

其中 \(x_t\) 是第 \(t\) 个输入 token,\(h_t\) 是汇总前缀 \(x_{1:t}\) 的 hidden state,\(f_\theta\) 是共享 recurrent transition,\(y_t\) 是预测。递归让模型天然表达顺序,却使 \(h_t\) 必须等待 \(h_{t-1}\),因此并行深度随序列长度增长。

Consolidation 的第一步是统一问题表达

在 Transformer 之前,Seq2Seq 已经完成重要抽象:translation、summarization 与 dialogue 都可以写成 conditional sequence modeling。Transformer 的贡献不是从零发明统一,而是把这套统一接口从 sequential backbone 中释放出来。

本章小结

2009 的 MT pipeline 和 2013 的垂直研究轨道说明 specialization 曾经深入每个系统接口。Distributed/contextual representation、Seq2Seq 与 attention 先把任务形式统一;下一步的问题不是 RNN 是否有表达力,而是这种表达力能否在大规模数据和硬件上高效训练。

RNN、Convolution 与 Attention:能力和可训练性是两回事

上一章的通用 formulation 仍依赖 backbone。课程没有把 LSTM 描写成失败模型;相反,它强调 recurrent network 非常 expressive,甚至能学出计数器般的状态机。Transformer 的动机主要来自 computation graph:长序列上的串行 dependency、远距离 path length 和硬件利用率限制了训练规模。

LSTM 很 Expressive,但状态更新必须排队

LSTM(Long Short-Term Memory)通过 gated cell state 缓解普通 RNN 的长期梯度问题。它能学习复杂 transition,理论和实验上都可模拟某些计数、复制与条件行为;然而每个时间步都依赖上一步结果,模型再聪明也无法同时算出整段 hidden states。

\lecturefigure{slide-06-lstm-expressive.jpg}{LSTM 可以实现计数与复杂序列变换}{官方录像恢复幻灯片 V006;00:12:09}

读图:不要把系统瓶颈误写成表达力不足

左侧任务展示 recurrent state 能表示结构化序列规律,右侧门控图说明状态更新具有多条可学习路径。先看它能表达什么,再看计算必须如何调度;图支持 LSTM 很强,却不改变 \(h_t\) 依赖 \(h_{t-1}\) 的 critical path。

\lecturefigure{slide-07-sequential-bottleneck.jpg}{Recurrent reading 与 writing 的串行瓶颈}{官方录像恢复幻灯片 V007;00:12:33}

Parallel batch 不等于 parallel sequence

GPU 可以同时处理许多句子、许多 hidden dimension,却仍要按 \(t=1,2,\ldots,n\) 推进同一句子的 recurrence。增加 batch size 不能消除单样本的 sequential critical path;长序列会降低硬件利用率并拉长梯度传播路径。

\teachervoice{讲者专门说 LSTM 是“fantastic models”,并用 \(a^n\mapsto b^n\) 的例子说明单 cell 也能形成近似计数器。课堂真正反对的是把这种强表达力绑定在逐 token 串行执行上,而不是否定 recurrence 本身。}

Convolution:并行了,但远距离关系要靠堆深

一维 convolution 可以同时处理所有位置,每层在局部窗口内聚合信息。\term{receptive field(感受野)}是某个输出位置能够依赖的输入范围;kernel width 为 \(k\)、无 dilation 的 \(L\) 层卷积,其感受野近似为:

\[ R_L=1+L(k-1). \]

其中 \(R_L\) 是第 \(L\) 层可见范围,\(k\) 是 kernel width。若 \(k=3\),每多一层只向两侧扩展一个位置,跨越长度 \(n\) 的依赖仍需要 \(O(n)\) 层或 dilation/sparsity 等额外设计。

\lecturefigure{slide-08-convolution-parallel-structure.jpg}{Convolutional sequence model 允许位置并行计算}{官方录像恢复幻灯片 V008;00:14:09}

这页先看所有位置是否能同时进入同一层,再看每个 kernel 覆盖多少邻居。卷积移除了 recurrent 时间链,适合 GPU;但每层仅聚合局部信息。图支持 parallelization 改善,却没有展示任意两 token 在一层直接交互。

\lecturefigure{slide-09-convolution-receptive-field.jpg}{卷积的 receptive field 随层数逐步增长}{官方录像恢复幻灯片 V009;00:14:42}

读图:比较最短路径,而不只数 FLOPs

蓝/红路径表示信息跨层传播。先找两个远距离 token 之间需要经过多少层,再比较 self-attention 的一跳连接;更长 path 会增加优化难度和信息损耗。Dilated convolution 可加速扩展,但仍要预先规定连接模式,不能按内容动态选邻居。

Encoder–Decoder Attention:按内容读取 Source

\term{encoder--decoder attention(交叉注意力)}让 target position 根据当前 decoder query,对所有 source states 分配权重。它突破固定向量 bottleneck,并把 word alignment 变成可微计算。若 encoder state 为 \(h_j\)、decoder state 为 \(s_t\),可写成:

\[ e_{tj}=a(s_{t-1},h_j),\qquad \alpha_{tj}=\frac{\exp e_{tj}}{\sum_{k}\exp e_{tk}},\qquad c_t=\sum_j\alpha_{tj}h_j. \]

其中 \(e_{tj}\) 是 compatibility score,\(\alpha_{tj}\) 是归一化 alignment,\(c_t\) 是 target step \(t\) 读取的 source context。Attention 已经并行地访问 source,但 encoder 与 decoder 主干仍可能是 recurrent。

\lecturefigure{slide-10-encoder-decoder-attention.jpg}{Encoder--decoder attention 建立 source 与 target 的内容连接}{官方录像恢复幻灯片 V010;00:15:54}

读图:箭头不是固定线路,而是数据相关权重

目标位置 \(y_t\) 可连接所有 source states \(x_j\),粗细或选择由 query 与 key 内容决定。先看它与卷积固定 offset 的差别,再看 decoder 仍按时间生成;图支持 content-based retrieval,但尚未把 source sentence 自身的表示学习改成 self-attention。

\teachervoice{Vaswani 把 attention 的直觉追溯到 non-local means 与 texture synthesis:根据内容相似性,从远处 patch 拉取信息。这说明“content talks to content”是跨模态自然出现的 motif;Transformer 的关键是把它变成主干,而不是证明 NLP 独有一种神秘机制。}

本章小结

RNN 提供强表达力但串行,convolution 提供并行但远距离 path 仍随深度增长,encoder--decoder attention 则证明 content-based global lookup 有效。Self-attention 的下一步是让每个 token 直接从同一序列的所有 token 构造新表示。

Self-Attention 的起点:Content Addressing 与 Parallel Reading

上一章已经有 attention,却只用于 source--target interface。Self-attention 把 query、key、value 都来自同一序列,使每个 token 在一层内直接读取任意位置。它同时实现 global receptive field、position-parallel computation 和 multiplicative interaction;代价是 \(n\times n\) score matrix 与顺序信息缺失。

Attention-like Motif 早已存在于其他模态

课程先展示 non-local means 与 texture synthesis,是为了反对“attention 完全凭空出现”的英雄叙事。\term{content-based addressing(内容寻址)}按当前 query 与候选内容的相似性决定读取位置,而不是按固定地址或 offset;它适合图像自相似、记忆检索和 source alignment。

\lecturefigure{slide-11-self-attention-other-modalities.jpg}{Non-local means 与 texture synthesis 中的内容寻址}{官方录像恢复幻灯片 V011;00:17:00}

读图:固定邻域与内容邻域是两种先验

左侧 denoising 从整图寻找相似 patch,右侧 synthesis 从数据库寻找匹配纹理。先看被读取位置是否必须相邻,再看相似度由谁定义;这种机制和 attention 共享“query 决定连接”的结构,但传统算法的 feature/similarity 可能是手工设计,而 Transformer 端到端学习 projection。

Self-Attention:一句话中的 Token 互相更新

上一小节说明了内容寻址为何能跨越固定邻域;这里进一步回答它怎样成为一层可训练的序列计算。读接下来的结构图时,先追踪单个 token 如何向全句发出查询,再观察所有 token 的查询为何可以批量并行完成。\term{self-attention(自注意力)}让序列中的每个位置产生 query、key、value,并用 query--key score 加权汇总 value。所有位置的 \(Q,K,V\) 可由一次 matrix multiplication 生成,随后并行计算 score matrix。

\lecturefigure{slide-12-self-attention-structure.jpg}{Self-attention 让同一序列中的 token 直接交换信息}{官方录像恢复幻灯片 V012;00:17:27}

读图:一层内的图是 fully connected,但权重由数据决定

中心词可以读取句中任意位置,不需经过多个 recurrent/convolutional step。先看每个输出是否都能连接所有输入,再看不同 query 得到不同权重;fully connected 指候选边存在,不代表所有边权相同,也不等于模型已知道语法关系。

\lecturefigure{slide-13-self-attention-properties.jpg}{Self-attention 的三项设计属性}{官方录像恢复幻灯片 V013;00:17:36}

三项收益与一个隐含代价

Self-attention 可并行、直接捕获 token--token interaction,并通过 dot product 提供显式 multiplicative gating。隐含代价是每对 token 都产生 score,标准实现的计算和 logit memory 随 \(n^2\) 增长;“全连接”既是能力来源,也是 long-context 瓶颈。

原始目标还包括 Parallel Writing

Transformer 的简化历史常说“RNN 太慢,所以换 attention”。课程补充了更激进的原始目标:既想并行读 source,也想并行写 target。\term{autoregressive decoding(自回归解码)}按 \(p(y_t\mid y_{<t},x)\) 逐 token 缩小输出空间;若一次预测全部 token,则要同时学习哪些 token 可条件独立、先决定哪些 mode。

\lecturefigure{slide-14-transformer-original-motivation.jpg}{原始动机:并行读取,并尝试并行生成}{官方录像恢复幻灯片 V014;00:19:42}

自回归与完全非自回归 factorization 分别为:

\[ p_{\mathrm{AR}}(y\mid x)=\prod_{t=1}^{m}p(y_t\mid y_{<t},x),\qquad p_{\mathrm{NAR}}(y\mid x)=\prod_{t=1}^{m}p(y_t\mid x). \]

其中 \(x\) 是输入,\(y\) 是输出序列,\(m\) 是输出长度。后一个公式假设给定 \(x\) 后各 \(y_t\) 条件独立,难以表示翻译中的多种合法措辞与彼此约束;实际 NAR 方法常加入 latent variable、iterative refinement 或分组顺序。

\teachervoice{讲者坦率地说 parallel decoding 的原始方案没有成功:自回归每次选词都会“弯曲”概率分布、逐步锁定 mode;非自回归模型还要学习决定顺序。团队最终保住了 parallel reading,却没有消灭 sequential generation。}

失败路线也是架构史的一部分

Encoder parallelism 的成功不应被改写成最初唯一目标。记录 parallel writing 的失败,能解释为什么 decoder 仍需要 causal mask、为什么 speculative decoding 有现实价值,也提醒研究者区分理论并行与输出依赖结构。

本章小结

Self-attention 把跨模态常见的 content retrieval 变成 sequence backbone,获得一层 global interaction 与并行表示学习。与此同时,fully parallel generation 因 mode ordering 和 conditional dependence 保持困难;Transformer 的胜利是一次筛选后的成功,而非所有原始目标同时实现。

Scaled Dot-Product Attention 与 Transformer Architecture

有了动机,下一步要把“内容相似”变成稳定、可扩展的计算图。课程强调 Transformer 不是只包含 attention:Q/K/V projection、softmax scaling、causal mask、multi-head decomposition、feed-forward block、residual connection、normalization 与 position signal 共同组成可训练系统。

从多种 Attention Formulation 选择 Dot Product

Transformer 之前已有 location-based、additive、dot-product、scaled dot-product 等多种 attention。团队选择 dot product 的主要工程原因是能映射到高效矩阵乘法;\(1/\sqrt{d_k}\) scaling 则防止维度增大时 score 方差过高,使 softmax 过度饱和。

\lecturefigure{slide-15-attention-mechanisms-table.jpg}{Transformer 之前的 attention mechanism 家族}{官方录像恢复幻灯片 V015;00:20:33}

读图:比较 score function,而不是只记名字

表格的核心列是 query/key 如何产生 scalar compatibility:拼接后过 MLP、直接 dot product、是否缩放、是否依赖位置。先看哪些方法可批量 matrix multiply,再看参数量与 numerical behavior。Transformer 没有发明“对齐”,而是选择了最适合硬件与大规模训练的 formulation。

设输入矩阵 \(X\in\mathbb{R}^{n\times d}\),则:

\[ Q=XW_Q,\quad K=XW_K,\quad V=XW_V,\qquad \operatorname{Attn}(Q,K,V)=\operatorname{softmax}\!\left(\frac{QK^\top}{\sqrt{d_k}}\right)V. \]

其中 \(n\) 是 sequence length,\(d\) 是 model width,\(d_k\) 是 key/query head dimension,\(W_Q,W_K,W_V\) 是 learned projection。Score matrix 的第 \((i,j)\) 项表示 position \(i\) 对 position \(j\) 的读取偏好。

Encoder Self-Attention 与 Decoder Causal Mask

上一小节给出了无约束的 scaled dot-product attention,但 sequence-to-sequence 模型中的 encoder 与 decoder 并不共享同一种可见性规则。本节要区分“理解完整输入”与“按前缀生成输出”这两个任务:读两张图时先比较每个 query 可以连接哪些 key,再把连边差异对应到训练时的信息边界。Encoder 可让每个位置读取全部输入;decoder 训练时必须阻止当前位置看到未来 target token,否则会发生 label leakage。\term{causal mask(因果掩码)}在未来位置的 score 上加 \(-\infty\),softmax 后对应权重为零。

\lecturefigure{slide-16-dot-product-encoder-attention.jpg}{Encoder 中的 scaled dot-product self-attention}{官方录像恢复幻灯片 V016;00:21:48}

读图:Q、K、V 是职责,不是三份独立 token

同一 hidden state 经不同 projection 分别形成“我要找什么”“我提供什么索引”“我要传递什么内容”。先沿 query 与所有 keys 的 dot product,再看 softmax 权重怎样汇总 values。Q/K 决定路由,V 决定被路由的信息。

\lecturefigure{slide-17-decoder-self-attention.jpg}{Decoder self-attention 只允许读取当前位置及左侧历史}{官方录像恢复幻灯片 V017;00:21:57}

带 mask 的 attention 为:

\[ A=\operatorname{softmax}\!\left(\frac{QK^\top+M}{\sqrt{d_k}}\right),\qquad M_{ij}=\begin{cases}0,&j\le i,\\-\infty,&j>i.\end{cases} \]

其中 \(M\) 是 causal mask,\(A\) 是 row-normalized attention matrix。训练时可以并行计算所有行,但每行只依赖合法前缀;inference 时仍需逐步扩展 prefix,并用 KV cache 避免重复计算历史 keys/values。

Scaled dot-product attention 与 causal mask 的概念实现
def attention(query, key, value, causal=False):
    scores = query @ key.transpose(-1, -2)
    scores = scores / sqrt(query.shape[-1])
    if causal:
        scores = scores.masked_fill(upper_triangle(scores), -inf)
    weights = softmax(scores, dim=-1)
    return weights @ value

Complexity:Less FLOPs 只在特定 Regime 成立

标准 self-attention 的 pairwise score 成本约为 \(O(n^2d)\),projection/FFN 常为 \(O(nd^2)\)。当 \(n\ll d\) 时,attention 可能比宽 convolution 更省;当 context 极长时,\(n^2\) 项成为主导。理论 operation count 还没有考虑 memory traffic、kernel launch 和 hardware utilization。

\lecturefigure{slide-18-complexity-less-flops.jpg}{Self-attention、recurrent 与 convolution 的复杂度和路径长度}{官方录像恢复幻灯片 V018;00:22:48}

读图:同时比较 complexity、sequential operations 与 path length

表格不是简单的“谁是 \(O(n^2)\) 谁就差”。Self-attention 的 sequential operations 为常数、最长依赖路径为 \(O(1)\),适合并行;RNN 的总算力可较低却有 \(O(n)\) critical path;convolution 介于两者。实际选择取决于 \(n,d,k\) 和硬件。

\teachervoice{讲者在“Less FLOPs”页立刻补充:not all FLOPs are equal。这个伏笔贯穿后半场——一个公式减少乘加,若引入不规则访存或巨大 activation,wall-clock 仍可能更慢。}

完整架构:Attention 只是 Block 的一部分

原始 Transformer 使用 encoder--decoder stack:encoder block 包含 self-attention 和 position-wise FFN;decoder 还加入 masked self-attention 与 cross-attention。每个 sublayer 通过 residual connection 与 normalization 连接,position signal 在底部注入。

\lecturefigure{slide-19-transformer-architecture.jpg}{原始 Transformer encoder--decoder 架构}{官方录像恢复幻灯片 V019;00:22:57}

读图:按 residual stream 逐层追踪

先从 embedding + position 进入 encoder,再看 decoder 的三类读取:target prefix、encoder output 和 FFN。Attention 负责 token mixing,FFN 负责 position-wise feature transformation,residual path 保留和叠加信息。把所有能力归因于 attention 会漏掉架构的一半。

\lecturefigure{slide-20-resnet-structure.jpg}{Transformer block 延续 ResNet 的 residual 结构思想}{官方录像恢复幻灯片 V020;00:23:30}

读图:架构创新经常是跨领域重新组合

右侧 ResNet 将 transformation 放在 identity path 旁,Transformer 也用 residual stream 串联 attention 与 FFN。先比较 block topology,再看 operator 不同;图支持结构 lineage,却不表示 vision ResNet 与 sequence Transformer 的 inductive bias 相同。

\teachervoice{Vaswani 把最终架构描述为一次 synthesis:attention formulation 已有先例,residual structure 来自 ResNet,团队把这些组件组织成能高效训练的 sequence model。这样的叙事比“一个公式改变世界”更符合实际研究过程。}

本章小结

Scaled dot-product attention 把 content routing 变成矩阵乘法,causal mask 在并行训练中保持 autoregressive constraint,residual/FFN/normalization 让深层网络可训练。复杂度优势依赖 sequence length 与 width,后续 systems section 将进一步说明 FLOPs 之外的成本。

为什么需要 Multi-Head Attention:一个 Weighted Average 不够

上一章给出公式,本章用讲者的机制直觉解释 multi-head。单头 attention 最终只产生一个加权平均;如果所有 relation 都共享同一套 value projection,不同语法、位置、实体或复制关系会竞争同一表示空间。Multi-head 用多组 projection 并行学习不同路由与变换。

单头 Attention 是共享 Value Transform 的加权平均

对位置 \(i\),单头输出可写为:

\[ y_i=\sum_{j=1}^{n}\alpha_{ij}W_Vx_j, \qquad \sum_j\alpha_{ij}=1,\quad \alpha_{ij}\ge 0. \]

其中 \(W_V\) 对所有被读取位置共享,\(\alpha_{ij}\) 随 query/key 内容改变。路由是动态的,但传递内容使用同一线性变换,因此单个 head 的 relation capacity 受限。

\lecturefigure{slide-21-attention-weighted-average.jpg}{单头 attention 可视为 values 的动态加权平均}{官方录像恢复幻灯片 V021;00:25:30}

读图:动态的是权重,固定的是同一 head 内的变换

箭头粗细由 \(\alpha_{ij}\) 决定,所有输入先经过同一个 \(W_V\)。先看它可以从任意位置取信息,再看不同 offset/关系是否拥有独立 transform;这解释了为何单头比固定 pooling 灵活,却仍可能把多类关系压进同一子空间。

Convolution 为不同 Offset 提供不同 Transform

一维 convolution 的输出近似为:

\[ y_i=\sum_{\delta\in\mathcal{K}}W_{\delta}x_{i+\delta}. \]

其中 \(\mathcal{K}\) 是 kernel offsets,\(W_{\delta}\) 可随相对位置不同。Convolution 的连接位置固定、transform 多样;single-head attention 的连接权重动态、value transform 共享。Multi-head 试图同时获得动态路由和多组 transform。

\lecturefigure{slide-22-convolution-linear-transformations.jpg}{Convolution 对不同相对位置使用不同 linear transformation}{官方录像恢复幻灯片 V022;00:27:03}

读图:Attention 与 Convolution 各自把自由度放在哪里

彩色边代表不同 offset 的 kernel weight。卷积能区分“左一位”“右两位”,但读取范围由 kernel 预定;attention 能按内容选择任意位置,却在单头内共享 value transform。理解这个对照,才能看出 multi-head 不是简单 ensemble。

Multi-Head:多个 Relation Subspace 并行工作

\term{multi-head attention(多头注意力)}为每个 head 使用独立 \(W_Q^h,W_K^h,W_V^h\),再拼接输出:

\[ \operatorname{MHA}(X)=\operatorname{Concat}(H_1,\ldots,H_H)W_O, \qquad H_h=\operatorname{Attn}(XW_Q^h,XW_K^h,XW_V^h). \]

其中 \(H\) 是 head count,\(W_O\) 是输出 projection。不同 head 可学习局部关系、复制、指代、位置或其他 interaction,但没有保证每个 head 对应人类可命名概念。

\lecturefigure{slide-23-multi-head-attention.jpg}{Multi-head attention 提供多组路由与 value transformation}{官方录像恢复幻灯片 V023;00:28:15}

Multi-head 的核心不是“多看几遍”

每个 head 同时改变 query/key routing 和 value feature space。它让模型在同一层表达多类关系,并把结果写回共享 residual stream;head 数越多并不自动越好,head dimension、冗余、KV memory 与 serving cost 共同决定有效规模。

Multi-head attention 与共享 KV 的概念结构
for head in query_heads:
    query = project_q(hidden, head)
    kv_group = head_to_kv_group(head)  # MHA: one group/head; GQA/MQA: shared
    key = project_k(hidden, kv_group)
    value = project_v(hidden, kv_group)
    head_output[head] = attention(query, key, value, causal=True)
output = project_o(concat(head_output))

\teachervoice{讲者把 single-head attention 概括为“一次 weighted average”,再用 convolution 的 offset-specific transforms 解释为何需要多头。这种机制解释比“多头能关注不同位置”更精确:多头同时提供不同相似度空间和不同内容变换。}

本章小结

Single-head attention 把动态路由与共享 value transform 结合,convolution 则提供固定路由与 offset-specific transform;multi-head attention 把多组动态路由和 feature transform 并行化。后续 MQA/GQA 会为降低 KV memory,重新选择哪些 projection 必须独立。

早期证据:Machine Translation、Parsing 与 Attention Pattern

机制合理并不等于模型有效。原始 Transformer 首先在 WMT machine translation 上展示质量与训练效率,再迁移到 constituency parsing;attention visualization 则提供局部可解释线索。本章把三类证据分开:benchmark improvement、cross-task transfer 和 qualitative pattern。

Machine Translation:质量与训练效率同时改善

原始论文在 WMT14 English--German 与 English--French 上比较 BLEU、训练成本和模型规模。读表时应先确认 single model/ensemble 与训练预算,再比较质量;Transformer 的关键不是只多零点几 BLEU,而是在更易并行的架构下达到或超过当时系统。

\lecturefigure{slide-24-sota-machine-translation.jpg}{原始 Transformer 的 machine-translation 结果}{官方录像恢复幻灯片 V024;00:28:54}

读图:先对齐模型类型和训练成本

表格同时包含 recurrent、convolutional、single-model 与 ensemble baselines。先比较同类设置,再看训练 FLOPs/时间;关键证据是 Transformer 在较低训练成本下获得强 BLEU。BLEU 仍是 corpus-level overlap metric,不能覆盖所有语义、鲁棒性或真实部署质量。

Generalization to Parsing:架构不只适用于翻译

Constituency parsing 的输入输出结构与 translation 不同。将同一 architecture 应用于 parsing,测试的是计算 motif 是否能跨任务复用,而不是只记住翻译特征。结果支持 self-attention + FFN stack 是一般 sequence transduction backbone。

\lecturefigure{slide-25-generalization-to-parsing.jpg}{Transformer 从 machine translation 泛化到 constituency parsing}{官方录像恢复幻灯片 V025;00:29:45}

读图:跨任务结果验证的是 architecture reuse

先看 WSJ 等 parsing benchmark 与 baselines,再区分“同一 block 可训练”与“无需 task-specific data”。Parsing 仍有自己的输出 representation、数据与 objective;图支持 backbone consolidation,却不等于所有任务只需零样本 prompt。

Attention Map:可读 Pattern 不是完整解释

部分 head 会展示长距离依赖、句法或复制模式,因此成为研究者理解模型的窗口。但 attention weight 只描述当前 layer/head 的路由系数,不包含 value content、residual contribution、后续 nonlinear transformation,也不能直接证明因果重要性。

\lecturefigure{slide-26-interpretable-attention-patterns.jpg}{Attention map 中可见的长距离与句法 pattern}{官方录像恢复幻灯片 V026;00:30:48}

“看起来像语法”不等于模型因果上依赖该 Head

读图先确认横纵 token、颜色尺度和 head/layer,再观察高权重是否稳定跨样本。要证明机制,还需 ablation、activation patching、counterfactual intervention 或 value-path analysis;单张 heatmap 只能提供 hypothesis。

\teachervoice{讲者对 attention interpretability 保持克制:有些 pattern 很漂亮,也确实像 long-distance dependency;但 architecture 的能力可能来自信息路由与巨大 FFN 的共同作用。不要把一张图升级为“模型思考过程”。}

本章小结

Early evidence 分成三层:translation 表格证明质量/效率,parsing 证明 backbone 可迁移,attention map 提供可研究的内部 pattern。三层都重要,却支持不同强度的结论;高质量讲义必须保留这种 evidence discipline。

Position Representation:Self-Attention 为什么必须补回顺序

Self-attention 对输入 permutation equivariant:若同时打乱 token 和位置,纯 attention 无法知道原顺序。语言、音乐和图像都依赖相对位置,因此模型必须注入 position signal。原始 Transformer 的 learned/sinusoidal encoding 是起点,后续 relative embedding、relative bias 和 rotation 直接把距离写入 interaction。

Absolute Position:Learned 与 Sinusoidal

原始方法把 position vector \(p_i\) 加到 token embedding \(x_i\)。Sinusoidal encoding 的一组维度为:

\[ p_{i,2k}=\sin\!\left(i/10000^{2k/d}\right),\qquad p_{i,2k+1}=\cos\!\left(i/10000^{2k/d}\right). \]

其中 \(i\) 是位置,\(k\) 是频率索引,\(d\) 是 model width。它无需学习、可计算任意位置,但 model 是否真正外推到训练长度之外仍取决于 attention behavior 与训练分布。

\lecturefigure{slide-27-evolution-position-encodings.jpg}{Permutation invariance 与原始 learned/sinusoidal position encoding}{官方录像恢复幻灯片 V027;00:33:45}

读图:Position signal 应该回答“相对多远”,不只回答“绝对第几”

右侧原始架构在底部加 position encoding。先看绝对 index 能否自然表达 \(i-j\),再看训练长度之外是否有稳定结构;learned embedding 容易受 max length 限制,sinusoid 有解析形式却不保证模型学会可靠 extrapolation。

\teachervoice{讲者说原始 sinusoidal/learned position 无法很好捕获 relative distance 与 extrapolation,这成为后续演化重点。调整 base frequency 可以改变长度行为,但 position scheme 不是一个独立魔法旋钮,仍要与训练 context 和 attention scale 配合。}

Relative Embedding、Bias 与 Rotation

Relative 方法把距离 \(r=i-j\) 直接加入 score 或 value。一个简化 relative-key attention 为:

\[ s_{ij}=q_i^\top(k_j+a_{i-j}), \]

其中 \(a_{i-j}\) 是相对距离 embedding。Relative bias 直接向 \(s_{ij}\) 加标量,rotary position embedding(RoPE)则按位置旋转 query/key,使内积包含相对 phase;三者对参数、外推和实现的取舍不同。

\lecturefigure{slide-28-position-encoding-variants.jpg}{Relative embedding、relative bias 与 relative rotation}{官方录像恢复幻灯片 V028;00:36:45}

术语消化:Position 方案的接口差异

方案 把位置放在哪里 主要取舍
Absolute embedding 加到 token hidden state 简单,但距离需间接学习
Relative embedding/bias 加入 pairwise attention score/value 直接表达距离,需处理距离范围
Rotary encoding 旋转 query/key subspace 内积自然含相对 phase,外推依赖频率设计

Music Transformer:相对位置如何改善长结构

音乐生成要求模型维持节奏、主题和重复结构,token 间依赖可能跨越很长时间。Music Transformer 使用 relative attention,使模型更容易按间隔与重复关系读取历史;它展示 position mechanism 可以改变 qualitative coherence,而不只是 benchmark 数字。

\lecturefigure{slide-29-music-transformer.jpg}{Music Transformer 用 relative attention 建模长程音乐结构}{官方录像恢复幻灯片 V029;00:37:12}

读图:先看 relation,再听/看 outcome

图中强调 relative attention 的 score decomposition。先追踪当前 note 与历史 note 的时间间隔,再比较 vanilla attention;relative signal 提供结构先验,但最终音乐质量还依赖 tokenization、training corpus、sampling 和评价方法。

\lecturefigure{slide-30-music-transformer-demo.jpg}{Music Transformer 与其他模型的 qualitative sample 页面}{官方录像恢复幻灯片 V030;00:37:18}

Demo 是证据,但证据强度有限

网页样例可帮助听众感受 repetition、coherence 和 drift,却容易受 cherry-picking、播放片段和主观偏好影响。应把它与 held-out likelihood、结构指标、blind listening study 和多 seed 样例结合,而不是把一段好听音乐当作普遍胜利。

\teachervoice{讲者播放/展示音乐 sample,是为了让 relative position 的影响可感知;他没有把 demo 当作完整 metric。课堂保留这种定性证据,同时必须明确它只能提出“长程结构更好”的观察,不足以确定唯一原因。}

本章小结

Self-attention 本身不知道顺序。Absolute encoding 让模型看到 index,relative/bias/rotation 让 pairwise interaction 直接感知距离,Music Transformer 则提供长结构应用。Position representation 是 attention interface 的核心组成,而非输入前的一次装饰性相加。

Long Context:Quadratic Complexity 只是第一层问题

随着 context length 增长,attention 同时遭遇计算与 activation memory:\(QK^\top\)\(n^2\) scores,softmax 中间量也要读写。课程把 long-context 方法分为固定局部/稀疏模式、content-based sparse routing、linear/factored approximation 与 external memory/retrieval;真正难点是算法结构能否映射到硬件。

两类瓶颈:Compute 与 Attention-logit Memory

标准 attention 的主要项为:

\[ \operatorname{FLOPs}_{\mathrm{score/value}}\approx 4n^2d_hH, \qquad \operatorname{Memory}_{\mathrm{logits}}=O(Hn^2). \]

其中 \(n\) 是 sequence length,\(d_h\) 是 head dimension,\(H\) 是 head count。即使总 FLOPs 还能接受,materialize 全部 logits 也可能先耗尽 HBM;FlashAttention 的关键正是避免把完整 score matrix 反复写回显存。

\lecturefigure{slide-31-evolution-attention-challenges.jpg}{Attention 演化面对 quadratic compute 与 memory-bound 两个问题}{官方录像恢复幻灯片 V031;00:40:27}

读图:两条问题不能用同一个数字概括

左侧架构图指向 attention,文字列出 quadratic complexity 与 memory bound。先区分运算量、activation 容量、memory bandwidth 和 kernel utilization;线性 FLOP 方法若产生不规则 gather/scatter,可能仍比 dense tiled kernel 慢。

Local、Sparse、Routing 与 LSH Patterns

固定 window 把每个 token 的候选邻居限制为 \(w\),复杂度从 \(O(n^2d)\) 降为 \(O(nwd)\)。多层 local pattern 可逐步传播信息;strided/global token 建立跨区连接;routing/LSH 根据内容近似找出高相似 token,尝试保留 full attention 中真正有权重的边。

\lecturefigure{slide-32-long-context-patterns.jpg}{Local、sparse、routing 与 LSH attention pattern}{官方录像恢复幻灯片 V032;00:44:48}

读图:连接图决定信息传播直径

先看每个 pattern 的 nonzero blocks,再问两个远 token 需要多少层才能通信。Local window 规则、kernel 友好但长程路径变长;routing/LSH 更 content-aware,却引入 clustering、sorting 和不规则 memory access。稀疏比例相同不代表速度相同。

\teachervoice{讲者回忆 image/music sparse attention,并提出一种重要观察:多数层可以局部,只有靠后的少数层承担真正 long-distance modeling。Content-based sparsity 的理论吸引力很强,但 memory movement 往往吃掉 FLOP savings。}

Linear、Factored 与 External Memory

另一组方法改变 attention factorization 或引入 memory。Linear attention 用 kernel feature 把 \(\operatorname{softmax}(QK^\top)V\) 重新结合;factored attention 把二维/长序列 interaction 分解;Memorizing Transformer 或 retrieval 则把部分历史放到外部 store,按 query 读取。

\lecturefigure{slide-33-long-context-methods.jpg}{Linear、factored 与 retrieval/memory 路线}{官方录像恢复幻灯片 V033;00:44:54}

术语消化:Long-context 方法在改哪一层

路线 核心机制 主要风险
Local/fixed sparse 预定义少量 attention edges 可能错过内容相关远距边
Routing/LSH sparse 按内容聚类或近邻检索 不规则访存、近似误差、复杂实现
Linear/factored 改写或分解 attention kernel 表达与 numerical stability 可能变化
External memory/retrieval 把历史存储在模型外并按需读取 index freshness、retrieval error 与 latency

Long context 不等于有效使用 long context

能够接收 \(n\) 个 token,只证明接口容量;还要测试远距离信息是否被检索、干扰是否增加、position 是否外推、答案是否依赖正确证据,以及 latency/throughput 是否可接受。

本章小结

Long-context attention 有两个正交瓶颈:pairwise compute 与 intermediate memory。Local/sparse/routing/linear/memory 路线分别改变连接图、近似方式或存储位置;任何复杂度结论都必须继续追问 kernel 与 hardware mapping。

Not All FLOPs Are Equal:Attention 的 Systems Co-design

算法论文常用 FLOPs 比较效率,实际加速却受 HBM bandwidth、on-chip SRAM、kernel fusion、parallel granularity 和 KV cache 支配。\term{HBM(High Bandwidth Memory,高带宽显存)}是 GPU 外部堆叠 DRAM,容量大但访问成本高;\term{SRAM(Static Random-Access Memory)}位于芯片上,容量小、延迟低。高性能 kernel 尽量让数据在 SRAM 中复用。

Memory Hierarchy 与 Arithmetic Intensity

\term{arithmetic intensity(算术强度)}定义为每搬运一个 byte 完成多少 FLOPs:

\[ I=\frac{\text{FLOPs}}{\text{bytes moved}}. \]

\(I\) 低,kernel 常受 bandwidth 限制;减少 FLOPs 却增加 HBM round trip 可能更慢。Dense matrix multiplication 规则、可 tile、数据复用高,因此经常击败理论 operation 更少的不规则算法。

\lecturefigure{slide-34-flops-memory-hierarchy.jpg}{FLOPs、带宽与 GPU memory hierarchy}{官方录像恢复幻灯片 V034;00:49:36}

读图:先定位数据在哪一层 memory

金字塔从寄存器/SRAM 到 HBM 和主存,越靠近 compute 越快但越小。先问 Q/K/V、logits 和 output 是否写回 HBM,再问是否能 tile/recompute;“少算一次”若要求多次慢速搬运,不一定节省时间。

\teachervoice{Vaswani 反复说 practical bottleneck “always ends up being memory movement”。他不是否认 algorithmic complexity,而是提醒研究者:只有当稀疏、近似或低精度方案能形成规则、高复用 kernel 时,论文中的 FLOP reduction 才可能变成 wall-clock gain。}

KV Cache、MQA 与 GQA

Autoregressive inference 会缓存历史 keys/values,避免每步重算。\term{KV cache} 的大小近似与 layer 数、context length、KV head 数和 head dimension 成正比。Multi-query attention(MQA)让所有 query heads 共享一组 K/V;grouped-query attention(GQA)在若干 query heads 之间共享一组 K/V,在质量与 memory/bandwidth 间折中。

\lecturefigure{slide-35-gqa-mqa-activation-memory.jpg}{MHA、GQA 与 MQA 的 KV activation memory}{官方录像恢复幻灯片 V035;00:51:06}

读图:Queries 与 KV heads 不必一一对应

左图 MHA 为每个 query head 保存独立 K/V,中图按 group 共享,右图 MQA 只保留一组。先数 K/V columns,再估算 decode 时读取量;减少 KV heads 可显著降低 memory bandwidth,但共享过强可能损失某些 relation capacity。

Online Softmax 与 Fused Kernel

普通 softmax 需要先找 row max、再求指数和、再归一化,多次读取 scores。Online algorithm 在流式 block 中维护 running max \(m\) 和 normalization \(\ell\)

\[ m' = \max(m,\max_j s_j),\qquad \ell'=e^{m-m'}\ell+\sum_j e^{s_j-m'}. \]

其中 \(s_j\) 是新 block scores。配合 tiled attention,可在 SRAM 中完成 normalization 与 value accumulation,不 materialize 完整 \(n^2\) matrix。\term{fused kernel(融合算子)}把多个 GPU 操作合成一个 kernel,减少 HBM 读写和 launch overhead。

\lecturefigure{slide-36-online-softmax-systems.jpg}{Online softmax 与 bandwidth-aware attention optimization}{官方录像恢复幻灯片 V036;00:51:27}

读图:算法公式与 kernel schedule 是两层设计

页面同时放 online normalization、memory hierarchy 和 tiled attention。先看数值等价性,再看 block 如何留在 SRAM;FlashAttention 类方法的优势来自 IO-aware schedule,不是改变模型定义。结果也依赖 GPU architecture、shape 和 implementation quality。

Online softmax 的流式归一化概念伪代码
running_max = -inf
running_sum = 0.0
weighted_value = 0.0
for score_block, value_block in blocks:
    new_max = max(running_max, max(score_block))
    old_scale = exp(running_max - new_max)
    block_weight = exp(score_block - new_max)
    running_sum = old_scale * running_sum + sum(block_weight)
    weighted_value = old_scale * weighted_value + block_weight @ value_block
    running_max = new_max
output = weighted_value / running_sum

不要用 Parameter Count 代替 Serving Cost

同参数模型可因 KV heads、context length、batching、precision、parallelism 和 kernel 不同而有完全不同 latency/throughput。训练 FLOPs、prefill FLOPs、decode bandwidth 与 end-to-end request cost 必须分开报告。

本章小结

Attention optimization 从 equation 延伸到 data movement。Memory hierarchy 解释 FLOP reduction 为何可能无效,MQA/GQA 改变 KV state,online softmax/fusion 改变执行 schedule。现代 Transformer architecture 与 systems 已不可分割。

从 Architecture 到 Universal Substrate

讲座最后把 Transformer 放回 consolidation thesis。它已从 translation backbone 扩展到 vision、contrastive learning、语言模型和 tool-using systems,但课程也明确列出未覆盖的 layer norm、FFN 修改、higher-order attention 与 faster decoding。Universal substrate 是一种趋势描述,不是“所有问题已经统一”的宣告。

其他领域的扩展与本讲的有意省略

Vision Transformer 把图像 patch 当 token,contrastive model 把跨模态表示对齐;这些变化证明 token mixing + feature transformation 的 block 可迁移。与此同时,pre/post layer norm、gated FFN、higher-order interaction、speculative/non-autoregressive decoding 都会显著影响现代系统,本讲只选择 attention/position/system 主线。

\lecturefigure{slide-37-advancements-other-areas.jpg}{Transformer 扩展到 vision 与 contrastive learning}{官方录像恢复幻灯片 V037;00:52:33}

读图:迁移的是 block motif,不是输入天然相同

图像需要 patch/tokenization 和二维 position,contrastive learning 需要跨样本 objective。先看共享的 Transformer encoder,再看 modality-specific input/output;跨领域成功支持 architecture reuse,却不意味着所有 inductive bias 都应删除。

\lecturefigure{slide-38-not-covered-topics.jpg}{本讲未展开但同样重要的 Transformer 演化方向}{官方录像恢复幻灯片 V038;00:54:15}

一场 80 分钟讲座不能替代完整领域地图

Pre-vs-post norm 影响深层稳定性,FFN/gating 影响 capacity,higher-order attention 改变 interaction,speculative decoding 改善 inference。把“未覆盖”误读为“不重要”,会让讲义比课堂更武断。

\teachervoice{讲者主动展示 Not Covered 页,是一种 evidence hygiene:他承认大量重要进展没有进入叙事。高质量笔记也应保留范围声明,而不是为了显得完整,把所有后续术语硬塞进课堂。}

LLM as a Prompt-programmable Substrate

当同一 pretrained model 能通过 prompt 执行广泛任务,它开始像一种通用计算 substrate:用户不再为每个任务训练独立模型,而是用 context 指定行为。这里的“programming”仍是 probabilistic conditioning,受到训练数据、instruction following、context window 和 reliability 限制。

\lecturefigure{slide-39-llms-universal-substrate.jpg}{LLM 作为 prompt-programmable universal substrate}{官方录像恢复幻灯片 V039;00:57:15}

读图:Prompt 是接口,不是可靠性证明

Pac-Man 式图示表达一个模型吸收多种任务。先问任务是否真的共享 model weights,再问输出能否验证;few-shot breadth 说明 consolidation,却不能保证 exact computation、fresh knowledge、long-horizon execution 或 safety。

Consolidation 会把问题向下游迁移

模型接口变统一后,差异不会消失,而会转移到 data mixture、prompt/tool schema、evaluation、serving、feedback 与 safety。系统更简单的是表面 API,不一定是完整工程栈。

现代 Transformer 是 Data-center System

大模型训练和 serving 跨成千上万 GPU,涉及 all-reduce、all-gather、reduce-scatter 等\term{collectives(集合通信)}、网络拓扑、拥塞、并行策略与容错。模型图上的一个 layer,在运行时被切成多个 device 上的参数、activation 和 communication schedule。

\lecturefigure{slide-40-modern-transformer-datacenter.jpg}{现代大规模 Transformer 必须作为 data-center system 理解}{官方录像恢复幻灯片 V040;00:59:06}

读图:参数规模扩大后,网络也进入模型 critical path

机房照片不是装饰。先问 tensor/data/pipeline parallel 如何切分,再看 collective 是否被 compute overlap;模型 quality 可能相同,cluster topology 和 congestion 却决定训练是否可扩展。Architecture researcher 也需要理解 systems boundary。

\teachervoice{讲者说如果真的研究 modern large-scale Transformer,就必须学习 all-reduce、InfiniBand、RoCE 与 congestion。大 Transformer “now in some sense is a data center”;这与开场对 Dartmouth machine-capacity 判断的反转形成闭环。}

Tools:哪些能力应该在模型内,哪些应该调用外部系统

\term{tool use(工具使用)}让模型通过结构化 interface 调用 calculator、search、database、code executor 或其他 service。它不是回到脆弱 pipeline,而是把可验证、精确、已有的软件能力留在外部,让模型负责选择、组合和解释。

\lecturefigure{slide-41-llms-using-tools.jpg}{LLM 通过工具连接搜索、计算与外部软件}{官方录像恢复幻灯片 V041;00:59:24}

读图:Swiss-army knife 仍需要明确接口

不同工具有 schema、权限、cost 和 failure mode。先看模型何时决定调用,再看结果如何验证和进入下一步;tool breadth 可以扩大 capability,但错误 routing、prompt injection 与不可逆 action 也扩大风险。

\teachervoice{Q&A 中 Vaswani 给出非常工程化的判断:不应花“每个位置十亿 FLOPs”去计算两个数,某些能力就该交给外部工具;模型应承担需要语义判断和组合的 thinking。工具边界是 capability allocation,不是模型不够纯粹。}

It Is Time to Build:产品反馈也是学习信号

讲者主张与真实用户互动可以暴露能力缺口,形成 data/feedback/model improvement loop。产品并不自动产生好数据:反馈会有 selection bias、privacy、reward hacking 和短期 KPI;但离开真实 workflow,研究者很难知道模型在哪些 interface 上真正失败。

\lecturefigure{slide-42-time-to-build.jpg}{真实使用与模型改进可以形成产品反馈闭环}{官方录像恢复幻灯片 V042;01:00:06}

Build 的研究价值来自可观测 Failure

高价值闭环应记录任务、工具轨迹、用户修正、执行结果和失败分类,并区分“用户喜欢”与“任务正确”。只有把反馈转成可审计训练/evaluation artifact,产品使用才会提升模型,而不是只放大已有偏差。

本章小结

Transformer 的 consolidation 已跨越模态和任务,但仍有大量未覆盖的 architecture work。LLM 成为通用 substrate 后,系统问题转向 data center、tools、feedback 与 verification;统一模型没有让工程消失,而是重新组织工程边界。

Research Directions 与 Q&A:仍不知道什么

课堂最后没有用“scale solves everything”收尾,而是列出 uncertainty、inference-time learning、adaptive thinking、planning 和 quantization。Q&A 又补上 non-autoregressive ordering、language world knowledge、generalization、multi-agent coordination、modularity 与 gradient descent 等限制条件。这些 spoken nodes 是本讲 teacher voice 最密集的部分。

五条公开 Research Directions

第一,模型应知道自己不知道什么;第二,模型能否在 inference time 学会新 skill,而不是每次都更新参数;第三,能否按问题难度分配 adaptive compute;第四,reasoning/planning 是否可由小模型、external planner 或更好 representation 完成;第五,低 precision 能否继续降低 memory traffic 与提高 matrix throughput。

\lecturefigure{slide-43-research-directions.jpg}{不确定性、inference-time learning、adaptive thinking、planning 与 quantization}{官方录像恢复幻灯片 V043;01:00:51}

读图:五个方向跨越 model、algorithm 与 system

Knowing what you do not know 属于 calibration/evaluation;learning skills at inference time 属于 memory/adaptation;adaptive thinking 和 planning 属于 compute allocation;quantization 属于 numerical/system co-design。它们不能被一个“更大模型”指标统一验收。

\teachervoice{讲者注意到 diffusion model 可通过更多采样 compute 改善质量,而语言模型当时缺少同样清晰的 adaptive-compute knob。他追问:能否让小模型在难题上多想、连接 external planner,从而接近大模型 reasoning,而不是每个 token 都支付最大成本。}

Non-autoregressive Decoding:真正缺的是 Order Oracle

Q&A 进一步解释 parallel generation。若已经生成的 latent/context 足以使下一组 token 条件独立,就可并行产生这一组;难点是学习这个 grouping/order。一个分组 factorization 为:

\[ p(y\mid x)=\prod_{g=1}^{G}\prod_{i\in S_g}p\!\left(y_i\mid x,y_{S_{<g}}\right), \]

其中 \(S_g\) 是第 \(g\) 个可并行生成的 token group,\(S_{<g}\) 是之前已生成 groups。若 oracle 给出正确 groups,问题容易许多;实际模型还要发现 conditional independence,并处理多模态输出分布。

\teachervoice{讲者说如果有人给出“先生成这三个词,再生成那两个词”的 oracle ordering,non-autoregressive generation 会更有机会。他们尝试用 vector-quantized latent sequence 建模依赖,translation 上可工作,却需要 distillation 降低数据 entropy,最终 practical impact 不及 speculative decoding。}

Language-only World Model:不充分,但比直觉更有用

课堂没有接受“文本能学到全部物理世界”,也没有否认其 usefulness。大语言模型从文本中吸收大量 object、procedure 与 social knowledge,可作为 robotics planner 的高层先验;perception、control 与 environment feedback 仍由其他系统提供。关键是区分 knowledge coverage 与 action grounding。

能规划不等于能闭环控制

语言模型说出合理步骤,只证明它能组织文本先验;机器人还需识别当前对象、估计状态、满足动力学、安全执行并从失败恢复。World knowledge 是 planner input,不是 physical verification。

\teachervoice{Vaswani 的立场很务实:language alone 也许不完整,但机器人已能把大模型当 planner,说明文本承载的世界信息比许多人预期更多。我们甚至还没有完全榨取现有模型的 usefulness,因此不能用终极不足否定当前工程价值。}

Generalization:新能力可能来自大规模 Recombination

如果训练数据覆盖极广,传统 OOD 边界变得难定义。模型可能没有见过“用 Chaucer 韵律描述这堂 Stanford lecture”的精确样本,却见过讲座、Chaucer、韵律和改写,能够组合成新输出。这是有用的 compositional generalization,即使其原子信息来自训练分布。

不要把 Recombination 贬成“只是记忆”

检验应区分 exact memorization、template interpolation、systematic composition 与 algorithmic extrapolation。大规模 recombination 可以产生真实价值,却不保证长度、数字、规则或状态空间上的任意外推;不同 benchmark 测量不同 generalization。

Multi-agent Systems:Decomposition、Coordination、Verification

多个 agent 是否优于一个大模型,不由角色数量决定。讲者给出三个基础问题:目标如何按各 agent skill 分解,过程如何协调共享状态和依赖,结果如何验证。没有 verification,更多 agent 只会制造更多文本与更复杂 failure propagation。

Multi-agent 的三项最低验收

Goal decomposition 要把任务拆成可判定 subgoal;coordination 要处理顺序、资源、冲突与共享 memory;verification 要用测试、环境状态或外部证据检查结果。三者缺一,所谓 swarm 只是并行采样。

\teachervoice{讲者半开玩笑说“最好的 agents 是 neurons”,因为它们通过 gradient 协同更新。对于显式 multi-agent,他没有给出万能架构,而是明确承认 decomposition、coordination、verification 仍处早期。}

Modularity、MoE 与“Architecture 服务 Gradient Descent”

人类设计的 module 常因 routing、credit assignment 和联合优化困难而失败。Mixture of Experts(MoE)提供 learned routing,使部分 specialization 在 end-to-end gradient descent 中出现;但 expert identity 不等于完整认知模块,责任仍可能分布在 attention、residual stream 与多个 experts 中。

\teachervoice{Vaswani 说自己有时觉得“我们只是在构建 architecture 来服务 gradient descent”。这句话不是贬低架构,而是指出可训练性是硬约束:一个模块划分再优雅,如果 credit 无法传播、routing 无法学习,就难以替代较均质但可优化的网络。}

本章小结

Research directions 跨越 calibration、adaptation、compute allocation、planning 和 numerical efficiency。Q&A 进一步表明:parallel generation 需要 order/independence structure,language world knowledge 有用但不等于 grounding,multi-agent 需要 verification,modularity 必须服从可训练性。

总结与延伸:Love the Transformer,但不要停止追问

这堂课的标题不是无条件崇拜 Transformer,而是接受一种研究事实:它把 content-based routing、parallel representation learning、residual computation 和 scalable matrix operations 结合成极强 substrate,并推动 NLP 从专用 pipeline 走向共享系统。真正值得“love”的不是某个固定 block,而是 consolidation、learned interface 与 algorithm--system co-design 的方法。

九条可迁移的工程结论

下面的结论可用于评估新的 sequence model、agent architecture 或 long-context 系统。它们把历史、机制和系统证据连接起来,避免团队只比较参数量或单个 benchmark。

  1. 先问系统吸收了哪些接口。 Consolidation 的价值来自减少 hand-written boundaries,而不是模型名称更新。
  2. 区分 expressivity 与 trainability。 LSTM 能表达复杂算法,仍可能因 sequential critical path 不适合 scale。
  3. 把 attention 视为 content routing。 Q/K 决定连接,V 决定内容,FFN 与 residual 决定后续变换。
  4. 记录失败的原始目标。 Parallel reading 成功,parallel writing 仍受 mode/order 限制。
  5. Position 是 pairwise interface。 长度外推取决于 encoding、frequency、training range 与 attention behavior。
  6. 复杂度必须下钻到 data movement。 FLOPs、activation、bandwidth、kernel regularity 和 latency 要分开报告。
  7. 模型内外能力要合理分工。 Exact、fresh、可验证操作适合工具,语义组合与策略选择适合模型。
  8. 多 agent 必须有 decomposition、coordination、verification。 角色提示不能代替系统协议。
  9. 用范围声明保护结论。 一张 attention map、一段音乐 demo 或一个 benchmark 都只支持有限主张。

把本讲压缩成一句话

Transformer 的持久价值不在于“attention 永远是最终答案”,而在于它展示了如何把通用问题表达、内容寻址、并行矩阵计算、可训练残差结构与硬件友好实现组合成可扩展 substrate;下一代架构仍必须回答这些约束。

一张系统审计表

维度 应追问的问题 常见误读
Representation token、position、state 如何表示? 统一 tokenization 等于统一语义
Routing 信息按内容、位置还是固定 topology 交换? attention weight 就是完整解释
Dependency 哪些步骤必须 sequential? 训练可并行等于 inference 可并行
Complexity FLOPs、activation、bandwidth 各是多少? Big-O 更低就一定更快
Memory KV、外部 retrieval、长期状态在哪里? context 能装下就能有效使用
Interface 输出由模型生成还是调用工具? 工具越多能力越可靠
Learning 梯度、in-context memory、反馈分别更新什么? 所有“学习”都等同于参数训练
Evidence 结果、demo、interpretability 各证明什么? 局部证据被外推为通用能力

拓展阅读

\begingroup \footnotesize

阅读时建议沿用系统审计表,并持续区分三层:论文证明的 mechanism/result、课堂给出的 historical/engineering judgment、以及今天读者可能做出的 extension。只要一条结论跨越了 source boundary,就应明确标注它是推论而非课堂原话。 \endgroup