跳转至

[CS25] Self Attention & NPTs — Aidan Gomez

LaTeX 源码 · 备用 PDF

字段 内容
作者/整理 基于公开课程资料整理
来源 Stanford CS25
日期 2021

[CS25] Self Attention & NPTs — Aidan Gomez

引言:Transformer 的核心与历史

Aidan Gomez 是 Transformer 原始论文“Attention Is All You Need”的共同作者之一,也是 Cohere 的联合创始人。本讲分为两部分:第一部分回顾 Transformer 的核心机制和历史,第二部分介绍 Non-Parametric Transformers(NPTs)。

从 LSTM 到 Transformer

Transformer 之前的世界

在 Transformer 之前,序列建模的主流方法是 LSTM + 注意力:

  • LSTM 提供序列处理能力
  • 注意力机制(Bahdanau, 2014)用于编码器-解码器之间的对齐
  • 但注意力仅用于两个序列之间,而非序列内部

Transformer 的两大创新:(1) 自注意力——序列内部的注意力;(2) 多头注意力——多个并行的注意力头。

自注意力机制

自注意力的数学形式

\[ \text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V \]

其中 \(Q = XW_Q\)\(K = XW_K\)\(V = XW_V\)\(X\) 是输入序列。

关键特性:

  • 每个 token 可以直接关注序列中的任意其他 token
  • Query-Key 电路和 Output-Value 电路是完全独立的
  • 缩放因子 \(\sqrt{d_k}\) 防止点积过大导致 softmax 饱和

自回归解码

Transformer 使用因果掩码(causal mask)实现自回归生成:

  • 训练时:所有位置并行计算,掩码防止看到未来 token
  • 推理时:逐 token 生成,利用 KV 缓存避免重复计算
  • 相比 LSTM 的逐步处理,训练效率大幅提升

本章小结

Transformer 通过自注意力和并行训练彻底改变了序列建模,成为现代 AI 的基础架构。

Non-Parametric Transformers(NPTs)

动机:将注意力用于数据点之间

传统机器学习处理表格数据(tabular data)时,模型独立处理每个数据点。NPTs 的核心思想是:让数据点之间也能通过注意力互相“交流”

NPTs 的核心架构

将整个数据集视为一个序列,其中每个“token”是一个数据点(包含所有特征):

  1. \(N\) 个数据点排列为序列
  2. 每个数据点的 \(D\) 个特征被嵌入为一个向量
  3. 通过多层自注意力让数据点之间互相影响
  4. 预测目标变量时,模型可以参考所有其他数据点

训练方式:掩码预测

  • 随机掩码部分数据点的目标变量
  • 模型根据未掩码的数据点(类似 few-shot 上下文)预测被掩码的目标
  • 类似 BERT 的掩码语言模型,但应用于表格数据

NPTs 不等于 kNN

虽然 NPTs 让模型参考其他数据点,但它不是简单的 k 近邻检索。通过多层注意力的堆叠,NPTs 可以学习高阶依赖——即数据点之间的复杂关系模式,这是单层注意力或 kNN 无法捕捉的。

与 few-shot 学习的联系

NPTs 天然适合 few-shot 和 one-shot 学习场景:

  • 未掩码的数据点相当于“支持集”
  • 掩码的数据点相当于“查询集”
  • 模型学会了从少量示例中泛化

本章小结

NPTs 将 Transformer 的序列建模能力扩展到数据点之间,为表格数据和 few-shot 学习提供了新的视角。

Self-Attention as Data Routing

从注意力权重到可解释路径

Attention 的 Query-Key dot product 在训练中学到的结构,常常对应一种“数据路由”——每个 token 选择与哪些 token 交流。可以把这一机制看成一种soft routing:每条 token 的输出是所有 token 的加权组合,权重代表选择的概率。

Routing 的两个角度

  • 解释性角度:attention map 可以可视化,有助于理解模型为什么把某些 token 关联
  • 工程角度:可以在推理时只保留 top-k 的注意力,降低计算与内存

低秩与稀疏注意力的落地

在训练大模型时,attention 的权重矩阵可能是低秩的,代表只有少数“路”被持续使用;而稀疏 attention 机制(BigBird、Longformer)则强制让每个 token 只连接部分其他 token。在实际工程里,可以借助稀疏 attention 近似,把成本控制在线性级别。

稀疏机制的风险

虽然稀疏 attention 降低了复杂度,但如果掩码位置选择不当,会丢失关键依赖。例如在长文本中,把文末 token 的注意力限制在局部,会导致无法捕捉跨段落的依赖。

本章小结

Self-attention 可以看成数据之间的 soft routing,将信息在不同 token 之间按结构化方式分发。低秩与稀疏的设计可以降低成本,但要保留全局依赖需要谨慎。

NPTs at Scale: Benchmarks and Metrics

Benchmarking data-aware models

NPT 们在 tabular benchmarks(如 UCI、OpenML)表现突出,但重复训练成本很高。Aidan 提出的 “feature-set scaling” 观点是:随着特征数量增加,模型必须更好地处理 feature-level interactions,而 NPTs 通过 data-wise attention 实现这一点。

模型家族 处理数据依赖 Few-shot 可解释性
MLP 极低
GNN / DeepSets 限于局部图结构 部分
NPT 全局数据 attention 中等
NPT 与传统模型的比较

Precision / Recall for masked targets

训练 NPTs 时,掩码目标的分布可以用 ROC 曲线来判断模型是否过度依赖某个 feature。例如 mask label 时,precision 高但 recall 低说明模型只在少数样本达到高 fidelity,而 generalization 仍需提升。

本章小结

NPTs 在表格 benchmark 上具有优势;评估时需同时看 mask precision 与 recall,避免模型只在易解样本上取得高分。

Operationalizing NPTs and Attention Systems

Deployment requirements

将 NPT 投入生产,需要解决以下几点:

  • Data sharding:整个 dataset 满足 attention,但 production pipeline 通常增量更新
  • Caching embeddings:attention 需要每个 token embedding,因此必须缓存并更新
  • Monitoring drift:数据分布 shift 会导致注意力权重失效,需要实时 drift 检测

Data engineering cost > Modeling cost

Aidan 强调:NPT 的建模贡献可能只占项目一半 effort,另半是 data engineering(清洗、合并、版本管理)。模型看起来很漂亮,但如果数据 pipeline 不能保持一致,性能会剧烈波动。

Operational checklist for attention systems

  • 每次数据更新前,执行 “attention heatmap sanity check”:确认新的 data chunk 没有触发空 attention
  • 将 attention weight distribution log 到 monitoring 系统,设定 drift threshold
  • 对服务端推理请求做 prioritized caching:多次访问同一 data point 时 reuse attention results

本章小结

部署 attention-heavy 模型必须同时管好数据 pipeline 与监控。实际运营中,model engineering 仅仅是开始,高质量的 attention log 与 drift guardrail 才能保障系统稳定。

Slide 1 — Transformer Reunion

开场 slide:Aidan 回顾 Transformer 原始论文与 Cohere 的愿景(时间戳 00:02:15)。

Slide 2 — Routing Patterns

展示 attention routing 的热图示意,强调 soft routing 而非 hard wiring(时间戳 00:12:40)。

Slide 3 — Feature Scaling

feature scaling chart,说明随着维度增加模型需要更多数据点之间交互(时间戳 00:17:20)。

Slide 4 — Few-shot Masks

掩码预测流程图,用 few-shot 设置作为可视化背景(时间戳 00:23:05)。

Slide 5 — Attention Heatmaps

Attention heatmap 解释图,强调 drift monitoring 要追踪的指标(时间戳 00:29:10)。

Slide 6 — Data Pipeline

数据 pipeline diagram,提到 data sharding 与 embedding cache 需求(时间戳 00:33:45)。

Slide 7 — Operational Checklist

Operational checklist,列出 attention log、drift guardrail、cache 设计(时间戳 00:38:56)。

Slide 8 — Incident Timeline

Incident timeline figure,用于讲述 post-mortem 的时间线(时间戳 00:44:25)。

Slide 9 — AI SRE Stack

AI SRE stack figure,展示 observation→response→automation 三段(00:48:10)。

本章小结

本节以幻灯片画廊形式重访关键时刻,结合 caption 说明时间线、运维、事件复盘和 monitoring 的真实引用,确保视觉证据与文字内容同步。

Slide 10 — Governance Toolkit

治理工具包:展示 guardrail checklist 与 action owners(时间 00:52:40)。

Slide 11 — Evidence Matrix

Evidence matrix:对比 NPT/Transformer 的 evidence with operations(时间 00:55:18)。

Slide 12 — Future Directions

未来方向 slide:highlight hybrid attention + reinforcement agents in production(时间 00:59:00)。

总结与延伸

关键要点

  • Transformer 让序列内部的 attention 成为可能,而 NPT 将 attention 扩展到数据点之间
  • Self-attention 本质上是 data routing,可解释性与稀疏化设计决定了如何推广长序列
  • NPT 在 tabular benchmark 上强于传统 MLP/DeepSets,需要同时关注 precision 和 recall
  • 生产部署不仅是模型,更是 data engineering、caching 与 attention drift monitoring
  • 通过 attention log、heatmap sanity check 与 incident checklist 才能让 attention 系统稳定运行

进一步阅读

  • Vaswani et al., “Attention Is All You Need,” NeurIPS 2017
  • Kossen et al., “Self-Attention Between Datapoints: Going Beyond Individual Input-Output Pairs in Deep Learning,” NeurIPS 2021
  • Garnelo et al., “Neural Processes,” ICML 2018 Workshop
  • Parmar et al., “Image Transformer,” ICML 2018 — attention 视作 routing 的早期例证
  • Izmailov et al., “Subspace Inference for Deep Learning,” ICML 2021 — 低秩参数更新的补充阅读