Causal Representation Learning
学习因果表征学习 (CRL),帮助 AI 模型编码因果关系因素、提升泛化能力,并支持机器人和制造业检测。
因果表征学习(CRL)是一种机器学习方法,旨在将复杂观测(例如图像、视频、音频或传感器读数)转换为能够反映底层系统如何产生因果关系的高层变量。CRL 不仅学习能够预测标签的特征,还寻求与物体位置、光照、机器状态或人类动作等有意义因素相对应的表征。
其目标是让模型推理某个因素发生变化时可能出现的结果,而不是仅依赖训练期间观察到的相关性。这种方法将传统的通过嵌入进行表征学习与因果推断中的思想结合起来,帮助 AI 系统跨环境泛化,并支持干预、反事实问题和决策。
因果表征学习的工作原理#
神经网络通常会将高维输入映射到内部的潜在空间中。正如 Google 的机器学习嵌入简介所述,这些紧凑的向量可以在降低输入复杂度的同时保留有用的关系。然而,普通嵌入可能会将因果属性与偶然模式混合在一起。
例如,野生动物分类器可能会将雪与狼联系起来,因为其训练集中的大多数狼图像都有积雪背景。因果表征应将动物身份与背景条件分离,使模型能够识别森林或草地中的狼。
CRL 通常包含三个相互关联的目标:
- 恢复有意义的潜在变量: 表征应捕捉生成观测结果的底层因素,而不仅仅是便于预测的捷径。
- 建模因果结构: 变量之间的关系可以通过有向图表示,并遵循因果模型框架中所述的原则。
- 在干预下保持稳定: 改变一个因素应当在表征中产生适当且局部的变化。DoWhy 干预文档说明了干预与仅根据观测数据进行条件化之间的差异。
干预会主动设置某个变量,例如改变机器人的速度。反事实则会询问在不同设置下会发生什么,例如,如果机器人移动得更慢,是否会发生碰撞。
相关概念与关键区别#
CRL 与多种机器学习理念存在交集,但其目标有所不同。
- 对比学习 通过拉近相关样本并分离不相关样本来学习表征。它可以支持 CRL,但仅凭相似性并不能确立因果关系。
- 自监督学习 从无标签数据中生成训练信号。CRL 可以利用这些信号,同时加入关于干预、环境、时间或因果结构的假设。
- 因果推断 通常会估计已定义变量之间的影响,例如治疗、年龄和康复情况之间的影响。CRL 则首先从原始感知输入中发现有用的因果变量。这一区别是更广泛的因果表征学习概述的核心。
- 解耦表征学习 尝试将独立因素分配到不同的潜在维度。解耦表征不一定具有因果性,因为分离后的因素可能仍未体现其影响方向或对干预的响应。
- 因果发现 会搜索变量之间的关系。CRL 还会进一步学习变量本身。在可能的情况下,应对候选结构进行测试,具体如DoWhy 图反驳中所述。
在多视图 CRL 中,不同摄像头或传感器从不同角度观测同一系统。部分可观测性意味着每个视图只能揭示部分因果因素。无配对的多域设置更加困难,因为来自不同环境的观测并不逐实例对应。
实际应用#
自主机器人: 仓库机器人接收摄像头、深度和运动数据,其中包含障碍物位置、光照、地面纹理以及自身运动等信息。因果表征可以将可控因素(例如转向)与环境因素(例如阴影)分离开来。通过域随机化进行训练,可以让系统接触受控变化;而因果结构则有助于确定哪些变化应当影响导航决策。
制造业检测: 缺陷检测器可能会错误地将生产线、摄像头角度或材料颜色与缺陷产品联系起来。CRL 可以帮助将缺陷类型、机器设置和光照隔离为不同因素。当设备或工厂发生变化时,这可以减少捷径学习,并更便于调查工艺温度或压力是否促成了缺陷,而不仅仅是与缺陷同时出现。
实践工作流与局限性#
Ultralytics YOLO 可以生成标准视觉嵌入,开发者可以在设计独立的因果学习流程之前对其进行检查:
from ultralytics import YOLO
# Load a pretrained image classification model
model = YOLO("yolo26n-cls.pt")
# Generate an ordinary visual representation
source = "https://ultralytics.com/images/bus.jpg"
embeddings = model.embed(source)
# Inspect the selected image embedding
embedding = embeddings[0]
print(embedding.shape)这一已记录的Ultralytics YOLO26工作流会提取嵌入,但它本身不会使表征具备因果性。建立因果关系需要合适的数据、假设、干预、多种环境或时间证据。
实践人员应改变疑似干扰因素,评估模型在不同域中的性能,并审查数据集偏差。Ultralytics Platform 可以支持数据集标注、训练、部署和受控的数据集版本管理。部署后,持续进行模型监控至关重要,因为稳定的验证准确率并不能保证因果有效性。评估还应遵循更广泛的NIST 关于 AI 有效性与稳健性的指导,并包括子群体检查,例如 Google 的识别数据集偏差指南中所述的检查。









