探索表征工程(RepE),以监控和控制人工智能的行为。了解如何操控Ultralytics 的内部状态,从而构建更安全、可控的模型。
表征工程(RepE)是机器学习领域的一种先进方法,它通过分析和直接 操纵神经网络的内部认知状态(即表征),来监控和控制其 行为。 作为一种针对 人工智能安全与对齐的自上而下方法,RepE将关注点从 单纯修改模型的输入或输出转移开来。相反,它在实时推理过程中读取并改变 大型语言模型和视觉系统的内部隐藏状态, 从而使开发者 无需重新训练 网络,即可引导模型朝着诚实、无害或特定视觉特征等预期概念发展。
RepE的核心概念在人工智能安全中心(Center for AI Safety)发表的奠基性论文《表征工程》(Representation Engineering)中进行了详尽阐述, 该概念主要分为两个阶段:读取和控制。
在“阅读”阶段,研究人员分析模型的隐藏层是如何编码特定概念的。通过 观察不同提示或图像下的激活函数输出 ,工程师能够从潜空间中分离出与某个概念(例如真实性或特定物体类别) 相对应的具体“方向”。这在很大程度上基于 Anthropic机制可解释性研究,该研究旨在 对神经网络进行逆向工程。
在“控制”阶段,这些被隔离的表征会在 前向传播过程中被人工增强或抑制。这种干预能够实时有效地改变模型的行为,该技术与OpenAI关于构建可控、 可预测的人工智能系统的对齐与安全指南高度契合。
要全面理解RepE,必须将其与计算机视觉和自然语言处理中常用的其他技术区分开来:
RepE正在推动多个领域内健壮且可控的人工智能取得重大进展,其背后得到了 诸如 麻省理工学院计算机科学与人工智能实验室(MIT CSAIL)在神经网络可解释性方面研究等机构的支持:
虽然直接编辑激活函数需要高深的数学处理,但RepE的第一步——读取 表征——可以通过现代深度学习框架来实现。通过利用 PyTorch 钩子文档,开发者可以提取诸如 Ultralytics 模型的内部状态,从而分析视觉概念是如何 被编码的。
from ultralytics import YOLO
# Load the recommended Ultralytics YOLO26 model for state-of-the-art vision tasks
model = YOLO("yolo26n.pt")
# Access the underlying PyTorch model to register a forward hook
pytorch_model = model.model
internal_representations = []
# Define a hook function to capture the output of a specific hidden layer
def hook_fn(module, input, output):
internal_representations.append(output)
# Attach the hook to a middle layer (e.g., layer index 5) to read representations
handle = pytorch_model.model[5].register_forward_hook(hook_fn)
# Run inference on an image to capture the cognitive state of the model
results = model("https://ultralytics.com/images/bus.jpg")
# The captured representations can now be analyzed for RepE steering
print(f"Captured latent representation shape: {internal_representations[0].shape}")
# Remove the hook to clean up memory
handle.remove()
随着模型日益复杂, TensorFlow 关于表征学习的指南以及 Google 安全研究中所述的技术均强调, 理解并优化这些内部状态,对于构建下一代安全、可靠的人工智能 架构至关重要。
开启您的机器学习未来之旅