跳到主要内容

可解释 AI(XAI)

可解释性需求

可解释 AI(Explainable AI,XAI)是指能够以人类可理解的方式解释其决策过程和推理逻辑的 AI 系统。随着 AI 在高风险场景中的应用扩展,可解释性已从学术研究需求演变为法律要求。

监管要求

  • 欧盟 GDPR 第 22 条(2018):当自动化决策对个人产生重大影响时,数据主体有权获得解释
  • EU AI Act(2024):高风险 AI 系统必须具备足够的透明度和可解释性
  • 美国 Equal Credit Opportunity Act:信贷拒绝必须提供具体原因
  • 巴塞尔 III:银行内部风险模型需要可向监管机构解释

用户信任

  • 用户更愿意采纳能解释原因的 AI 建议("根据您近3个月的交易记录...")
  • 不可解释的 AI 拒绝更容易引发投诉("系统说不行,但不知道为什么")
  • 在医疗、法律等专业场景中,专家需要理解 AI 的推理过程才能接受或驳斥其建议

调试与改进

  • 当 AI 犯错时,可解释性帮助开发者理解错误原因(是数据问题还是模型问题?)
  • 特征重要性分析帮助发现 AI 使用了不应使用的特征(如:种族信息代理变量)
  • 分布偏移检测:生产环境中重要特征的分布变化是模型性能下降的信号

事后解释方法(Post-hoc Explanation)

事后解释方法不改变模型本身,而是在模型做出预测后,用额外的方法解释这个预测是如何产生的。

LIME(Local Interpretable Model-agnostic Explanations)

Ribeiro et al.(2016)提出的局部近似解释方法:

原理

  1. 针对待解释的单个预测,在该点附近生成大量扰动样本
  2. 用目标模型对这些样本进行预测
  3. 用一个简单的线性模型(易解释)拟合这些样本和预测值
  4. 线性模型的系数即为各特征的局部重要性
from lime import lime_tabular

explainer = lime_tabular.LimeTabularExplainer(
training_data,
feature_names=feature_names,
class_names=['Rejected', 'Approved']
)

explanation = explainer.explain_instance(
data_row=applicant_features,
predict_fn=credit_model.predict_proba,
num_features=5
)

explanation.show_in_notebook()
# 输出:收入(+0.35), 工作年限(+0.22), 负债率(-0.41)...

局限

  • 局部线性假设不总是成立,对非线性区域解释不准确
  • 多次运行结果不稳定(随机性)

SHAP(SHapley Additive exPlanations)

基于博弈论中 Shapley 值的特征归因方法,数学理论更完备:

原理:将每个特征对预测结果的贡献量化为 Shapley 值,满足效率性(所有特征贡献之和 = 预测与基准值的差)、对称性、虚空性等公理。

import shap

explainer = shap.TreeExplainer(xgboost_model)
shap_values = explainer.shap_values(X_test)

# 单个预测的解释
shap.force_plot(
explainer.expected_value[1],
shap_values[1][0],
X_test.iloc[0]
)

# 全局特征重要性
shap.summary_plot(shap_values[1], X_test)

SHAP 的优势

  • 全局一致性(所有实例的解释用同一基准值)
  • 处理特征交互(不同特征的贡献考虑了特征间的相互作用)
  • 支持树模型(精确计算)和深度学习模型(近似计算)

Grad-CAM(图像可视化)

Selvaraju et al.(2017)提出的卷积神经网络解释方法:

原理:利用目标类别对最后一层卷积层特征图的梯度,加权平均后生成热力图,高亮显示对分类决策贡献最大的图像区域。

应用

  • 医学影像 AI 解释(高亮显示模型关注的病灶区域)
  • 自动驾驶感知(显示目标检测器关注的图像区域)
  • 工业质检(标注出缺陷定位区域)

注意力可视化

Transformer 模型中的注意力机制天然提供了一种可视化工具:

注意力权重分析

  • 对于文本分类任务,可视化每个词的注意力权重
  • 高注意力权重的词被认为对预测贡献更大

注意力的局限性

研究显示,注意力权重并不等同于特征重要性

  • Jain & Wallace(2019)证明注意力权重与 LIME/SHAP 的重要性排序不一致
  • 模型可以将高注意力权重赋予对预测无关的词
  • 注意力是"softmax 归一化的内积",并非因果性的"模型关注了这个词所以做出了这个决定"

模型卡片(Model Card)

Mitchell et al.(2019,Google)提出的模型透明度文档规范:

模型卡片应包含:

  • 模型概述:模型类型、用途、训练数据来源
  • 预期用途:适合的使用场景,以及明确不应使用的场景
  • 评估指标:在不同子群体(性别、年龄、地区)上的表现分解
  • 局限性:已知的偏见、失败案例、不适用场景
  • 道德考量:潜在的社会影响和使用风险

LLM 的不可解释性困境

大型语言模型对传统 XAI 方法提出了更大的挑战:

  • 规模:数千亿参数使精确 Shapley 值计算完全不可行
  • 非结构化输入:文本输入的特征空间极高维,LIME 的扰动策略难以设计
  • 自回归生成:每个 Token 的生成依赖所有前序 Token,解释整个输出序列极为复杂
  • Emergent Ability:LLM 在大规模训练后涌现的能力,连研究者自己也无法完全解释

链式推理(CoT)提升透明度

Chain-of-Thought(CoT)是目前 LLM 提升透明度最实用的方法:

  • 要求 LLM 在给出最终答案前,逐步展示推理过程
  • 用户可以审查推理链,发现逻辑错误
  • 对于复杂问题,CoT 既提升了准确率,也提升了可解释性
问:张三申请贷款被拒了,原因是什么?

无 CoT 回答:申请被拒绝。

有 CoT 回答:
分析申请人资质:
1. 月收入 5,000 元,月还款额要求为 2,800 元,负债收入比 56%(超过 50% 警戒线)
2. 近 12 个月有 3 次信用卡逾期记录
3. 当前未结清贷款 3 笔

综合评估:因负债率过高且近期有逾期记录,信用风险评分未达到最低审批门槛。

EU AI Act 对可解释性的要求

EU AI Act 将可解释性作为高风险 AI 系统的核心合规要求:

  • 高风险 AI 系统必须提供足够的透明度,使用户能够理解系统的输出
  • 对于影响个人权益的自动化决策,必须能够向受影响的个人提供有意义的解释
  • 要求保留日志,以支持事后审计和监管检查

XAI 在高风险场景的必要性

医疗

  • 医生接受 AI 建议前需要理解诊断依据("AI 认为这是肺癌,是因为右上叶结节的形态特征...")
  • 解释有助于医生发现 AI 可能忽略的临床信息

金融

  • 拒绝贷款必须提供合法理由(防止歧视诉讼)
  • 交易员需要理解 AI 风险预警的依据才能判断是否采取行动

司法

  • 法官需要理解风险评估 AI 的依据,才能决定是否采纳
  • 被告有权质疑 AI 评估的依据(正当程序保障)