写作时间:2026-06-28
主题:Algorithmic Recourse / Counterfactual Explanation / Causal AI / Responsible AI
1. 这个词到底在说什么?
Algorithmic Recourse 通常被翻译成“算法救济”。这个翻译有一点法律味,但方向是对的。
它关心的不是 AI 系统能不能给一个漂亮解释,而是:
当一个人受到算法不利决策影响时,系统是否能给出一条真实可执行的改变路径,使他未来有机会得到更好的结果。
比如,一个贷款模型拒绝了某个申请人。普通解释会说:
你被拒绝,是因为收入低、存款低、负债率高。
反事实解释可能会说:
如果你的存款增加 1 万元,模型就会批准你。
算法救济真正要问的是:
对这个具体的人来说,增加 1 万元存款是否现实?需要多久?成本是多少?是否有其他更低成本路径?如果银行模型下个月更新,这条建议还有效吗?如果他真的照做,现实中的信用状况会改善,还是只是把模型骗过去?
所以,算法救济不是“解释过去为什么失败”,而是“设计未来如何翻盘”。
2. 为什么 recourse 这个词听起来怪?
recourse 在英文里不是一个特别日常的词。它更接近:求助、诉诸、补救手段、最后可以依靠的办法。
常见表达包括:
legal recourse:法律救济;have recourse to law:诉诸法律;without recourse:无追索权;the only recourse is...:唯一办法是……
所以 algorithmic recourse 的语感不是“算法来救你”,而是:
当算法系统对你作出不利决定时,你是否仍然拥有某种可执行、可申诉、可改变命运的补救通道。
这就是它和公平性、责任归属、可解释 AI、法律治理强相关的原因。
3. 它和解释性 AI 的区别
很多人第一次看到 algorithmic recourse,会把它理解成 explainable AI 的一个分支。这只对了一半。
解释性 AI 主要回答:
模型为什么这么判断?
算法救济回答:
你接下来能怎么做?
这两个问题差很多。
Explanation:解释为什么输
模型说:
你被拒绝,因为负债率高、收入不稳定、信用历史短。
这是一种后验解释。它帮助人理解模型,但未必给人行动路径。
Counterfactual Explanation:如果哪里不同会赢
模型说:
如果你的存款多 1 万元,你会被批准。
这比解释更进一步,因为它开始谈“如果不同会怎样”。但它仍然可能只是模型特征空间里的一个点。
Recourse:你如何真实翻盘
系统说:
在你的现实约束下,未来 6 个月内更可行的路径是:先还清 5000 元信用卡债务,保持 3 个月稳定流水,把负债收入比降到 35% 以下,再重新申请。这个路径比单纯增加存款更稳健,且对模型更新不那么敏感。
这才更接近 recourse。
所以,一个简洁区分是:
解释:为什么我输了?
反事实解释:如果哪里不同,我会赢?
算法救济:我现在能做什么,才有现实机会赢?
4. 一个好 recourse 需要满足什么?
一个坏的 recourse 很容易生成:
如果你年轻 10 岁,收入翻倍,学历变成博士,你就会被录取。
数学上可能成立,现实上毫无意义。
好的算法救济至少需要同时满足几类约束:
| 维度 | 核心问题 |
|---|---|
| Validity | 按建议改了之后,模型结果真的会变好吗? |
| Actionability | 用户真的能改这个变量吗?年龄、种族不能改;学历、收入能改但成本不同。 |
| Feasibility | 改完后的状态是否像真实世界中的人?会不会出现“22 岁但 30 年工作经验”? |
| Cost | 时间、金钱、心理、社会资源成本是否可承受? |
| Causality | 改这个变量是否真的会改善目标,还是只改变模型表象? |
| Robustness | 模型重训、阈值变化、分布漂移之后,这条建议是否仍然有效? |
| Fairness | 不同群体获得好结果所需付出的 recourse cost 是否系统性不同? |
| Agency | 用户是否能理解、比较并选择不同路径,而不是被系统单向规训? |
这里最关键的是:recourse 不是“最近的正类样本”,而是“对这个人可执行的干预路径”。
5. 领域从哪里开始:从 counterfactual 到 action
这个领域的早期核心是 counterfactual explanation。
Wachter 等人的反事实解释路线提出:给出一个离原样本尽可能近、但模型输出变好的反事实点。比如:
原始状态 x:贷款被拒
反事实状态 x':贷款通过
目标:让 distance(x, x') 尽可能小
这是一条自然路线,因为它直接回答“哪里改一点,模型就会变”。
但很快大家发现,这还不够。因为“特征变化”不等于“行动”。
Ustun 等人的 Actionable Recourse in Linear Classification 把问题往前推进了一步:
对高风险决策中的人来说,重要的是能否改变模型决定;recourse 应该尊重可行动变量、不可变变量和用户成本。
Karimi、Schölkopf、Valera 的 Algorithmic Recourse: from Counterfactual Explanations to Interventions 则更直接指出:
仅仅生成 counterfactual explanation 不够;真正的 recourse 应该理解为 intervention。
这一步非常重要。它把 recourse 从“解释模型边界”推向“设计现实行动”。
6. 因果视角:为什么这其实是一个 causal AI 问题?
从因果三层看,recourse 正好卡在第二层和第三层之间。
Observational:看到什么
P(Y | X = x)
比如看到:存款高的人更容易贷款获批。
但这只是相关性。
Interventional:做了什么会怎样
P(Y | do(X = x))
比如问:如果我主动增加存款,贷款通过率会不会提高?
这才是行动问题。
Counterfactual:同一个人如果当时不同会怎样
Y_x(u)
比如问:对这个具体申请人,如果他当时负债率更低,会不会被批准?
Algorithmic recourse 的难点是:它不能只在模型输入空间里改数字,而要理解真实世界里的干预。
比如模型可能发现“职业=医生”的人更容易获批,于是建议:
把职业改成医生。
但“成为医生”不是一个按钮。真实路径可能是:教育、资格证、实习、工作机会、收入结构、信用历史等一系列因果链条。
所以,causal recourse 要区分:
- 哪些变量可以直接干预;
- 哪些变量只能通过上游行动间接改变;
- 哪些变量不能改;
- 哪些变量只是 proxy,改变它并不会改变真实目标;
- 干预后其他变量如何沿因果机制一起变化。
这也是为什么 causal recourse 是这个领域最有长期价值的方向之一。
7. 当前研究问题地图
这个领域目前没有一个像 ImageNet 那样统一的 SOTA 排行榜。它更像一个问题簇:优化、因果、公平性、鲁棒性、人机交互、生成模型、法律制度都在里面。
我会把当前研究前沿分成六条主线。
7.1 静态优化式 recourse
最基础的问题是:
min cost(x, x')
s.t. f(x') = favorable outcome
x' satisfies actionability constraints
x' is feasible
也就是找到一个成本最低的改变,使模型输出从 unfavorable 变成 favorable。
代表方法包括:
- Wachter-style counterfactual explanations;
- Ustun-style actionable recourse;
- MACE;
- DiCE:生成多样化 counterfactuals;
- FACE:沿数据流形寻找可行反事实;
- CARLA:用于 benchmark 多种 recourse / counterfactual explanation 方法。
这条线的优点是清楚、可计算、容易落地。缺点是它常常把世界简化成“特征可以独立编辑”。
7.2 Causal recourse:从特征编辑到真实干预
Causal recourse 问的是:
推荐行动是否真的能改变现实目标,还是只改变模型表象?
典型问题包括:
- 已知 SCM 时,如何求最优行动?
- 因果图不完整或有误时,recourse 是否仍然可靠?
- latent variables / hidden confounding 下,如何给出有意义建议?
- 个体层面的反事实行动如何定义?
- recourse outcome 应该被看作同一固定个体的反事实,还是同一个人在不同时间、不同 latent condition 下的重复决策?
2026 年 Plecko、Wang、Bareinboim 的 Causal Algorithmic Recourse: Foundations and Methods 就明确指出:很多既有方法把 recourse outcome 当作固定单位的 counterfactual,但真实世界中的 recourse 往往是同一个人经历重复决策,且 latent condition 可能变化。
这实际上把 recourse 从“一次性反事实点”推向“长期机制过程”。
7.3 Robust recourse:模型变了以后还有效吗?
早期 recourse 有一个现实问题:
今天系统告诉你还清 5000 元就能通过。你照做了。三个月后模型重训,规则变了,你还是被拒。
这就是 robustness 问题。
Robust recourse 研究:
- 模型参数变化后,recourse 是否仍然 valid;
- 数据分布 shift 后是否仍然 valid;
- 用户执行有误差时是否仍然 valid;
- 模型重训后是否仍然 valid;
- 是否应该给带 margin 的建议,而不是贴着决策边界的最小改变。
Robust Counterfactual Explanations in Machine Learning: A Survey 这类工作总结的正是这个问题:counterfactual explanations 如果不鲁棒,就可能给用户制造虚假的行动希望。
7.4 Sequential / temporal recourse:改变不是一步完成的
现实行动通常不是一步特征替换,而是一段 trajectory。
例如贷款申请:
第 1 个月:减少信用卡使用
第 2-4 个月:保持稳定还款
第 5 个月:提高储蓄余额
第 6 个月:重新申请
这就把 recourse 变成序列决策问题。核心问题包括:
- 用户每一步执行后状态如何变化?
- 中途失败怎么办?
- 是否能根据用户反馈动态调整路径?
- 不同路径的长期成本如何比较?
- 时间本身是否应进入因果模型?
The Importance of Time in Causal Algorithmic Recourse 这类工作就在推进这个方向:recourse 不应只看一个静态样本,而要看时间、状态转移和行动序列。
7.5 Fairness and burden:谁更难获得救济?
算法救济有一个危险:它可能把结构性问题伪装成个人努力问题。
如果系统说:
你只要更努力、更有钱、更稳定,就可以被批准。
这听起来像是给了用户希望,但也可能是在把制度性歧视转嫁给个体。
公平性问题会问:
不同群体为了获得同样 favorable outcome,需要付出的 recourse cost 是否不同?
如果某些群体系统性地需要更高成本才能翻盘,那么 recourse 本身就暴露了不公平。
相关研究包括:
- equality of effort;
- fairness of causal algorithmic recourse;
- multi-agent / collective recourse;
- privacy risks of algorithmic recourse;
- incentives to offer recourse。
这说明 recourse 不是纯技术问题,而是技术、制度、激励和社会结构的交界。
7.6 Generative recourse:从搜索一个点到生成一族可行路径
传统方法经常在特征空间里搜索一个最优点。但真实世界中,用户需要的不是唯一答案,而是多个可比较方案。
生成式方法试图学习真实数据分布/流形,生成更 plausible 的候选 recourse。
比如 From Search To Sampling: Generative Models For Robust Algorithmic Recourse 这样的工作,方向就是从 search 走向 sampling:
不只是找一个满足模型输出的点,而是从真实可行分布中采样多条候选路径,同时平衡 proximity、plausibility 和 validity。
这条线很自然会和 VAE、GAN、normalizing flow、diffusion model 等生成模型结合。
但它也有风险:生成模型能生成“看起来合理”的 recourse,不代表因果上有效。所以最理想的方向不是单纯 generative recourse,而是:
generative model + causal constraints + user constraints + robustness check。
8. LLM 在这个领域能做什么?
大模型很适合做 recourse 的交互层,但不适合单独承担保证层。
LLM 可以做:
- 把模型解释翻译成人话;
- 与用户交互,收集现实约束;
- 把候选 recourse 转成行动计划;
- 帮用户比较不同方案;
- 解释成本、风险和不确定性;
- 在多轮执行中做计划更新。
但 LLM 不能被直接信任为 recourse engine。因为它可能幻觉,也不一定知道真实模型边界、因果结构和制度规则。
更合理的系统架构是:
结构化 recourse engine / causal model / optimizer
↓
生成候选行动路径
↓
robustness / fairness / feasibility check
↓
LLM 负责解释、交互、计划化、个性化表达
↓
用户反馈约束
↓
recourse engine 重新求解
也就是说:
LLM 是 interface 和 planner,不是因果保证本身。
这点对高风险场景非常重要。
9. 这个领域最深的冲突
Algorithmic recourse 表面上是“给用户行动建议”,但深层其实有四个冲突。
冲突一:解释权 vs 改变权
解释权只是让你知道为什么输。改变权才是让你有机会重新进场。
很多 XAI 只提供解释,却没有给人实际改变未来的能力。
冲突二:模型空间 vs 现实世界
模型空间里,特征可以自由改。现实世界里,变量有因果结构、时间成本和制度约束。
算法救济的关键是把模型边界翻译成现实行动路径。
冲突三:个体责任 vs 系统责任
recourse 很容易滑向:你被拒绝,是因为你还不够好;你照着系统建议改变自己就行。
但有些时候,问题在模型、制度或历史结构中,而不是个体身上。
好的 recourse 不应该只优化个体适应系统,也应该暴露系统性不公平。
冲突四:透明性 vs 可游戏化
系统如果公开说“改这三个变量就能通过”,用户可能 gaming the system。系统如果什么都不说,用户又没有救济权。
所以高风险 AI 系统必须在透明性、防作弊、用户权利和社会公平之间做制度设计。
10. 我的判断:recourse 是 causal AI 的一个好入口
我觉得 algorithmic recourse 很值得关注,因为它把因果 AI 的抽象问题压到了一个非常具体的场景里:
当 AI 参与现实决策时,它是否只负责给出判断,还是也必须承担让人理解、反驳、改变和重新进入系统的责任?
这不是一个单纯的模型问题,而是一个 human-AI system 问题。
它要求系统同时理解:
model boundary
→ real-world intervention
→ causal mechanism
→ user cost
→ institutional constraint
→ robustness over time
→ human agency
从这个角度看,当前 SOTA 的方向不是某一个算法,而是一种整体迁移:
static counterfactual feature editing
→ actionable recourse
→ causal recourse
→ robust / temporal / fair recourse
→ human-interactive recourse systems
或者更短:
从“如果你的特征变成这样,模型会批准你”,走向“在你的现实世界里,有哪些因果上有效、成本可承受、长期稳健的行动路径”。
这就是 algorithmic recourse 真正有意思的地方。
它不是解释 AI 的尾巴,而是高风险 AI 系统是否尊重人的能动性的一块试金石。
参考线索
- Berk Ustun, Alexander Spangher, Yang Liu.
Actionable Recourse in Linear Classification, 2018. - Amir-Hossein Karimi, Bernhard Schölkopf, Isabel Valera.
Algorithmic Recourse: from Counterfactual Explanations to Interventions, 2020. - Sahil Verma et al.
Counterfactual Explanations and Algorithmic Recourses for Machine Learning: A Review, 2020. - Gunnar König, Timo Freiesleben, Moritz Grosse-Wentrup.
A Causal Perspective on Meaningful and Robust Algorithmic Recourse, 2021. - Martin Pawelczyk et al.
CARLA: A Python Library to Benchmark Algorithmic Recourse and Counterfactual Explanation Algorithms, 2021. - Junqi Jiang et al.
Robust Counterfactual Explanations in Machine Learning: A Survey, 2024. - Prateek Garg, Lokesh Nagalapatti, Sunita Sarawagi.
From Search To Sampling: Generative Models For Robust Algorithmic Recourse, 2025. - Drago Plecko, Collin Wang, Elias Bareinboim.
Causal Algorithmic Recourse: Foundations and Methods, 2026.