可解释性因问题不完整才需要,评测必须对齐主张分三级

Towards A Rigorous Science of Interpretable Machine Learning

Finale Doshi-Velez, Been Kim

stat.ML, cs.AI, cs.LG

2017-02-28

这篇2017立场文把可解释性定义为向人讲清楚,指出需求来自问题形式化的不完整,并给出应用、人、功能代理三级评测框架。

这篇在解决什么

2017 年前后,可解释机器学习已经热到 Google Scholar 五年内能搜出两万多篇,社区对「什么叫可解释、怎么比」却几乎没有共识。当时评测主要走两条路。一条把方法丢进某个应用或简化版应用,好用就当可解释,LIME 那类工作常被这样用。另一条先宣称稀疏线性模型、规则列表、梯度提升树属于可解释模型类,再在类内做优化。两条路都停在面子效度:人看了觉得像那么回事。

这留下一批没法回答的比较问题。同一类「可解释模型」里每个实例都一样可解释吗?特征稀疏和原型稀疏怎么比?所有应用的可解释需求都一样吗?同一时期,欧盟 GDPR 要求 2018 年起对「显著影响用户」的算法决策提供解释权,评测标准却还没立住。

Doshi-Velez 和 Kim 写的是立场文,不是新算法。目标是把可解释性收成可操作定义,并画出能互相比较的评测地图。

方法

可解释性被收成一句话:向人用能懂的方式解释或呈现的能力。心理学里「什么算一条解释」本身还没定论,这篇不追求哲学闭合,只要求能用数据驱动的方式操作化。

可解释性通常不是最终目标。公平、隐私、可靠性、鲁棒性、因果、可用性、信任这些辅助准则,有的已经能形式化:公平和隐私社区当时已有严格定义,不必绕道可解释性。写不进损失函数的那些,解释的用处是把缺口露出来。一份说得通的解释对不上因果结构,就是警报。

不是所有系统都需要解释。广告投放、邮编分拣、飞机防撞可以不解释:要么错了代价不大,要么问题已被真实部署充分验证,模型不完美也可以信。需要解释的根因叫 incompleteness,问题形式化的不完整。它和 uncertainty 不是一类东西。导弹位置的融合估计有不确定度,但不确定度可以量化、可以进决策;不完整带来的是还没被量化的偏差,比如把领域知识塞进模型选择之后,偏差往哪边偏都不知道。

五个典型缺口写得很具体。科学理解没法完整陈述「什么叫获得了知识」。安全场景列不全失败模式,也标不全所有坏输出。伦理上的公平观念太抽象,写得进的受保护类别之外,数据里还会长出事先没想到的偏见。目标错配时优化的是代理目标,临床系统可能只管降胆固醇,不管患者是否坚持服药。多目标权衡里,隐私和预测质量可以各自写清,怎么切却要一事一议。

评测被拆成三级,越往上越贵、越贴任务。

应用接地是真用户、真任务:医生做诊断,可视化工具改分割。对照基线是人写的解释帮不帮得了另一个人完成同一任务。人接地是真人、简化任务,用普通人代替领域专家,测解释好不好懂,不绑死最终应用。三种实验模板:二选一强迫选择;前向模拟,给人解释和输入,让人预测模型输出;反事实模拟,给人解释、输入和输出,问改什么才能把预测改成目标值。主题模型里的 intrusion-detection 测试被归到前向模拟。功能接地不找人,用稀疏度、决策树深度当代理。前提是这个模型类或正则项已经被人接地实验验证过;方法还不成熟、或者做人实验不伦理时也可以先走这一档。

三级必须互相喂数据。设想一张矩阵:行是真实任务,列是方法,格子是终端任务表现,再做矩阵分解找可解释性的隐维度,类似协同过滤。同时呼吁建带人类评估接口的任务仓库,对标当时的 UCI、OpenML、OpenAI Gym。

任务侧假说包括:全局还是局部;不完整发生在哪、有多严重;用户能花多少时间;用户专业程度如何切认知组块。方法侧假说包括:认知组块是原始特征、有语义的派生特征还是原型;组块数量;规则和层级这类组合方式;单调性;人对不确定度和随机性到底懂多少。

给研究者的硬建议是主张和评测档必须对齐。做特定应用就该应用接地,或做贴近任务的人接地;只是把某个已认定的可解释模型类优化得更好,功能接地就够。引用和比较时用同一套标签:形式化缺在哪、评在哪一档、任务因素、方法因素。

结果

这是立场文,没有新模型,也没有和 LIME、稀疏线性模型对着打的准确率。能当结果的是那张评测地图,以及当时钉死的外部约束。

条目内容
论文类型立场文,13 页
评测档应用接地、人接地、功能接地
不需要解释后果不严重,或问题已被真实部署验证
需求根因形式化不完整,不是可量化不确定度
当时法规节点GDPR 解释权指向 2018 年
文献体量过去五年 Google Scholar 相关论文超过 2 万篇

人接地三实验被写成可复用模板,不是新测得的分数。功能接地被明确降级:稀疏度可以在同一表示里比较,特征稀疏和原型稀疏之间没有共同尺度,在人实验验证之前不能当公理。对照对象是当时的评测实践本身,应用内「好用即解释」和「先认定模型类再优化」都被标成只有面子效度。

为什么重要

九年后回头看,这篇几乎成了可解释性评测的默认坐标系。后来大量 XAI 论文仍停在功能接地:报稀疏度、报注意力是否对齐、报对黑盒的保真度,却很少做人实验,更少把医生、律师、安全工程师拉进真任务。主张和评测档错位,正是 2017 年就在防的事。

对从业者可执行的切割很具体。产品要过合规或临床,只优化代理指标不够,得准备应用接地。还在试一种新的解释形式,可以先用人接地的前向模拟或反事实模拟,成本比请专家低。只是把已经验证过的稀疏模型再压一档稀疏,功能接地说得过去。

另一个仍有用的问题:先问形式化缺在哪,再决定要不要解释。广告排序、已验证的防撞系统可以不解释。目标函数明显是代理、失败场景列不全、公平定义写不完的系统,解释是把缺口摊开的工具,不是装饰。

这是框架文,读完不会多一个 SHAP 替代品。写 XAI 论文或做评测方案时,它能挡住一次把稀疏度当成可解释性本身。

局限与存疑

隐维度被写成假说,矩阵分解那条路没有真的建出来。任务仓库也只是倡议,论文没有发布数据集或评测平台。

三级之间如何换算没有公式。应用接地成功能不能推出人接地分数,人接地分数能不能推出稀疏度阈值,全是开放问题。没有这个换算,功能接地论文仍然可以自称可解释,这篇的批评打不疼。

定义依赖「对人可理解」,而人是异质的。同一份解释,临床专家和医院伦理委员要的粒度不同。论文指出了这一点,但没有给出测量协议。

2017 年的外部锚点已经过期。GDPR「解释权」后来在法律界争论过,是否真的构成对算法解释的强制要求;这篇把法规当紧迫性证据,没有处理后续的法律解释分歧。「两万篇」是当时 Google Scholar 检索量,口径宽,不能当领域精确普查。

作为立场文,它没有用自己的框架评一篇具体方法。LIME 只作为应用内评价的例子出现,没有被放到三级框架里打分。框架好不好用,这篇自己没做一次示范。

术语

原文与代码

社区讨论

相关论文

全部论文解读