Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Sparse Autoencoders (SAE)

稀疏自编码器(SAE)将网络激活拆分为大量特征,每次只有少数特征处于激活状态,是解释 LLM 的核心工具。

稀疏自编码器(SAE)是一种自编码器,它通过隐藏层重建输入;对于任何给定输入,隐藏层中只有少数单元会被激活。在当前 AI 研究中,SAE 使用大型语言模型(LLM)或视觉模型的内部激活进行训练,隐藏单元数量远多于输入维度,因此每个隐藏单元(称为特征或潜变量)往往会响应一种人类可识别的概念。它们是机制可解释性的重要工具:Anthropic 于 2024 年开展的《扩展单义性》研究在 Claude 3 Sonnet 的激活上训练了最多包含 3,400 万个特征的 SAE,并发现了金门大桥、代码错误和欺骗等概念对应的特征。

稀疏特征为何有助于可解释性#

大型模型中的单个神经元通常具有多义性,会响应多个互不相关的概念。Anthropic 在《超位置的玩具模型》中研究的超位置假说解释了原因:只要同一时间只有少数概念处于激活状态,具有 d 个维度的层就能以近乎正交的方向表示远多于 d 个概念。SAE 会搜索这组过完备方向。它生成的稀疏激活编码会列出其中出现的少数方向及其强度,因此比数千个混合的神经元值更容易理解。

稀疏自编码器的工作原理#

编码器将激活向量映射为一个宽得多的潜变量向量,随后经过 ReLU 处理;解码器则将激活重建为各列的加权和,因此每个解码器列都表示一个特征的方向。训练会最小化重建误差,同时施加稀疏性约束。经典做法是在潜变量上施加 L1 惩罚,这是一种正则化;OpenAI 的 TopK SAEs 对每个输入只保留最大的 k 个潜变量,并将其扩展为一个针对 GPT-4 激活、包含 1600 万个潜变量的 SAE;而 Google DeepMind 的 JumpReLU SAE 会将所有低于学习所得阈值的潜变量置零。训练完成后,SAE 的潜变量主要有两种用途:

下面的玩具示例将 64 个已知特征方向压缩到 32 个维度中,因此没有任何单一维度与某个特征一一对应;然后训练 TopK SAE 来还原这些特征:

import torch
import torch.nn.functional as F

torch.manual_seed(0)
# Toy activations: 64 feature directions packed into 32 dimensions (superposition), ~3 active per sample
features = F.normalize(torch.randn(64, 32), dim=1)
acts = (torch.rand(8192, 64) * (torch.rand(8192, 64) < 0.05)) @ features

encoder, decoder = torch.nn.Linear(32, 256), torch.nn.Linear(256, 32)  # 256 latents: 8x overcomplete
optimizer = torch.optim.Adam([*encoder.parameters(), *decoder.parameters()], lr=1e-3)
for step in range(3000):
    # TopK sparsity: keep each sample's 4 largest latents and zero the rest
    values, idx = encoder(acts).topk(4, dim=-1)
    latents = torch.zeros(len(acts), 256).scatter(-1, idx, F.relu(values))
    loss = (decoder(latents) - acts).pow(2).sum(-1).mean()
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

directions = F.normalize(decoder.weight.T, dim=1)  # one learned direction per latent
print(f"Unexplained variance: {loss.item() / (acts - acts.mean(0)).pow(2).sum(-1).mean().item():.3f}")
print(f"Features matching a single neuron: {(features.abs().max(dim=1).values > 0.9).sum().item()} of 64")
print(f"Features matching an SAE latent: {((directions @ features.T).max(dim=0).values > 0.9).sum().item()} of 64")

每个样本最多激活 4 个潜变量时,SAE 留下了 7.1% 无法解释的方差。64 个预置特征中,没有任何一个与单个输入维度的余弦相似度超过 0.9;而这 64 个特征都能与某个 SAE 潜变量的解码器方向对齐。

应用场景#

  • 特征发现:研究人员会收集最能激活某个潜变量的输入,并为每个潜变量添加标签;他们通常会让 LLM 撰写标签,然后利用这些特征审查模型所表示的内容。
  • 引导:将某个特征钳制在较高值会改变模型行为,这与添加引导向量的效果类似。2024 年 5 月,Anthropic 曾短暂发布 Golden Gate Claude,这是一个放大了大桥特征的版本,以至于几乎每个回答都会提到大桥。
  • 电路追踪:Anthropic 于 2025 年发布的归因图使用跨层转码器(一种 SAE 变体,它读取一层的激活并重建后续 MLP 层的输出),以追踪 Claude 3.5 Haiku 内部的多步计算。
  • 开放 SAE 套件:Google DeepMind 发布了 Gemma Scope,其中包含 Gemma 2 2B 和 9B 每一层的 JumpReLU SAE;Gemma Scope 2 则为参数量从 270M 到 27B 的 Gemma 3 模型新增了 SAE 和转码器。SAELens库可以训练和加载这类 SAE。
  • 视觉模型:在 CLIP 和 Vision Transformer 激活上训练的 SAE 同样能发现可解释的视觉概念。SAE 需要激活向量数据集,而 Ultralytics YOLO26中的 model.embed()会为任意层索引返回每张图像的一个平均池化激活向量,默认使用倒数第二层。

局限性#

SAE 对激活的重建并不完美;用重建结果替换某一层的激活会显著增大模型损失。发现的特征取决于字典大小和训练过程,因为更宽的 SAE 会将一个特征拆分为多个更细的特征,而且某些潜变量从不激活。2025 年 3 月,Google DeepMind 的可解释性团队报告称,基于 SAE 特征构建的探针在检测分布外提示中的有害意图时,表现不如普通线性探针;该团队还表示,将降低基础 SAE 研究的优先级,同时继续把 SAE 作为多种工具之一。

  • 标准自编码器:通过比输入更窄的瓶颈压缩数据,以实现压缩或降维。SAE 会扩大隐藏层并强制施加稀疏性,以分离不同概念。
  • 线性探针:训练有监督分类器来检测预先选定的某个概念。SAE 属于无监督方法,无需标签即可发现特征。
  • 表示工程(RepE):通过对比成对提示上的激活来寻找概念方向,而 SAE 的特征仅通过重建获得。
  • 稀疏编码:一种较早的字典学习方法,SAE 通过单次编码器前向传播来近似它,而不是针对每个输入单独优化。Olshausen 和 Field(1996)证明,从自然图像中学习到的稀疏编码会产生局部化、定向、类似边缘的滤波器,与初级视觉皮层简单细胞的感受野相似。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来