什么是 反事实解释?
反事实解释是一种局部解释:描述对当前样本的一组或多组受约束特征改动,使已拟合模型产生指定的替代输出。
快速了解
| 规范文档 | 官方规范 |
|---|
工作原理
先定义目标输出与可行动集合
声明待解释样本、模型版本、精确目标或容差、用户或操作方能改变的特征、不可变属性、单调约束、合法类别、时间范围和行动成本。Wachter、Mittelstadt 与 Russell把反事实解释表述为无需打开模型内部逻辑、通过较小改动取得期望模型输出的解释。
同时优化多项质量标准
候选需要达到目标,在有意义的距离下接近原样本,只改变少数特征,位于联合数据分布的合理区域,并满足可行性约束。由于多种行动都可能到达同一输出,应返回多样方案,而不是任意一个局部最优。DiCE 研究形式化了接近度与多样性的权衡,并允许加入上下文约束。
验证追索而不是承诺结果
必须把候选重新送入生产预处理与模型,测试邻近扰动和不同模型版本,估计数据支持,并审核受保护群体是否能以可比成本采取行动。反事实首先是关于已拟合决策函数的陈述。若要声称建议行动会导致现实结果,还需要结构因果模型和干预假设,普通反事实解释并不能提供这些证据。
主要特点
- 面向声明的替代类别、分数、概率或输出区间
- 在显式可行性约束下搜索邻近特征改动
- 平衡有效性、接近度、稀疏性、合理性、成本与多样性
- 可使用模型梯度或与模型无关的搜索方法生成
- 必须保持不可变属性和行动间的合法依赖
- 解释模型决策,但不保证因果追索或跨版本稳定
常见用途
- 向申请者展示哪些可控改动会改变模型决策
- 检验决策边界是否为受影响用户提供现实选择
- 发现某次预测附近的不合理捷径或脆弱区域
- 比较不同群体或模型版本的追索成本与可获得性
- 生成有明确边界的假设案例,支持人工复核与申诉
示例
Loading code...常见问题
怎样判断一个反事实解释有效?
最低要求是候选经过完全相同的生产预处理与模型后,能在容差内达到声明目标。真正可用还要求取值合法、不可变属性不变、转换路径可行、成本可接受、联合分布有支持,并明确时间范围。越过模型阈值只是必要条件,不是充分条件。
反事实解释与特征归因有什么区别?
SHAP 等归因方法在声明的背景约定下,为当前预测分配各特征贡献;反事实解释则主动寻找能改变预测的替代输入。前者回答当前配置中哪些特征贡献多少,后者回答为达到目标可以怎样改,并额外需要行动范围、成本和可行性约束。
反事实解释等同于对抗样本吗?
两者都可能跨越模型决策边界,但目标不同。对抗样本常寻找暴露脆弱性的微小扰动,即使该变化无法理解或执行;反事实解释应当可理解、可行、稀疏、合理并服务用户目标。不过约束不足的反事实生成器同样可能返回对抗式伪影。
为什么系统应提供多个反事实方案?
决策边界通常存在多种解,数学距离最近的方案对某位用户可能不可用或不合意。多样方案可以展示成本、时间、稀疏性和可控特征之间的权衡,让用户选择现实路径。但多样性必须服从有效性与可行性,外观不同却无法执行的候选没有价值。
按照反事实建议行动能保证现实结果吗?
不能。它最多保证在数值容差内,当前模型会对建议输入给出目标预测。现实行动可能联动其他变量,模型可能错误或被重新训练,输入与结果也可能受混杂影响。因果保证需要可识别的结构模型、明确干预语义和真实结果验证。