task-data explainablity
模型解释——特征重要性、LIME与SHAP - 知乎 (zhihu.com)
机器学习6种模型可解释性方法汇总,你最常用哪一种? - 知乎 (zhihu.com)
分类模型的可解释性_why should i trust you论文介绍-CSDN博客
oneTaken/awesome_deep_learning_interpretability: 深度学习近年来关于神经网络模型解释性的相关高引用/顶会论文(附带代码) (github.com)
基于规则的模型(Rule-based Model),例如决策树,得益于其透明的内部结构和良好的模型表达能力,仍在医疗、金融和政治等对模型可解释性要求较高的领域发挥着重要作用。然而,传统的基于规则的模型由于其离散的参数和结构而难以优化,尤其在大规模数据集上,这严重限制了规则模型的应用范围。而集成模型、软规则和模糊规则等,虽然提升了分类预测能力,但牺牲了模型可解释性。
paper
鱼和熊掌不可兼得?清华团队提出高准确率的可解释分类模型_澎湃号·湃客_澎湃新闻-The Paper论文链接:https://arxiv.org/abs/2109.15103代码链接:https://github.com/12wang3/rrl
Partial Dependence Plot (PDP);
PDP是十几年之前发明的,它可以显示一个或两个特征对机器学习模型的预测结果的边际效应。它可以帮助研究人员确定当大量特征调整时,模型预测会发生什么样的变化。Individual Conditional Expectation (ICE)
ICE和PDP非常相似,但和PDP不同之处在于,PDP绘制的是平均情况,但是ICE会显示每个实例的情况。ICE可以帮助我们解释一个特定的特征改变时,模型的预测会怎么变化。Permuted Feature Importance
Permuted Feature Importance的特征重要性是通过特征值打乱后模型预测误差的变化得到的。换句话说,Permuted Feature Importance有助于定义模型中的特征对最终预测做出贡献的大小。Global Surrogate
Global Surrogate方法采用不同的方法。它通过训练一个可解释的模型来近似黑盒模型的预测。- 首先,我们使用经过训练的黑盒模型对数据集进行预测; 然后我们在该数据集和预测上训练可解释的模型。训练好的可解释模型可以近似原始模型,我们需要做的就是解释该模型。- 注:代理模型可以是任何可解释的模型:线性模型、决策树、人类定义的规则等。- 由于代理模型仅根据黑盒模型的预测而不是真实结果进行训练,因此全局代理模型只能解释黑盒模型,而不能解释数据。Local Surrogate (LIME)
LIME(Local Interpretable Model-agnostic Explanations)和global surrogate是不同的,因为它不尝试解释整个模型。相反,它训练可解释的模型来近似单个预测。LIME试图了解当我们扰乱数据样本时预测是如何变化的。——上面左边的图像被分成可解释的部分。然后,LIME 通过“关闭”一些可解释的组件(在这种情况下,使它们变灰)来生成扰动实例的数据集。对于每个扰动实例,可以使用经过训练的模型来获取图像中存在树蛙的概率,然后在该数据集上学习局部加权线性模型。最后,使用具有最高正向权重的成分来作为解释。Shapley Value (SHAP)
Shapley Value的概念来自博弈论。我们可以通过假设实例的每个特征值是游戏中的“玩家”来解释预测。每个玩家的贡献是通过在其余玩家的所有子集中添加和删除玩家来衡量的。一名球员的Shapley Value是其所有贡献的加权总和。Shapley 值是可加的,局部准确的。如果将所有特征的Shapley值加起来,再加上基值,即预测平均值,您将得到准确的预测值。这是许多其他方法所没有的功能。
特征重要性
优点:
简单易用,不需要额外的计算或工具,只需调用XGBoost的内置函数即可得到结果。
适用于任何类型的XGBoost模型,无论是回归、分类、排序还是多输出问题。
可以选择不同的重要性类型,比如weight、gain、cover等,来反映不同的评价标准。
可以方便地绘制特征重要性的柱状图或树状图,来直观地展示和比较每个特征的重要性。
缺点:
不够精确,因为它忽略了特征之间的
相互作用
和依赖关系
,可能会高估
或低估
某些特征的影响。不够局部,因为它只能给出全局的特征重要性,
不能针对某个特定的样本或预测结果进行解释
。不够模型无关,因为它
依赖于XGBoost模型
本身提供的指标,不能应用于其他类型的机器学习模型。
LIME
LIME(Local Interpretable Model-Agnostic Explanation)是一种与模型无关
的事后解释方法
。
LIME的关键特性包括两个:
- 与模型无关。LIME只使用原始输入特征和模型预测值,对具体模型种类无要求,可以兼容树模型、神经网络等模型。
- 局部解释。通过局部代理模型,对单个样本的预测值进行解释。
与模型无关比较好理解,局部解释需要理解局部代理模型的概念。代理模型是指对复杂黑盒模型的特征和预测值,使用简单易懂的模型
(比如线性回归)重新拟合,从而理解黑盒模型所发现的规律,这里的简单易懂的模型就是黑盒模型的代理模型。而局部代理指的是代理模型的样本取自待解释样本的附近
。
优点
应用比较广泛,表格数据、图像或文本领域都可以使用。
模型无关。SVM、XGBoost、神经网络等都可以用LIME解释。
LIME可以通过预测值之间的距离,度量出局部代理模型接近单个样本的黑盒模型预测值的程度。
LIME可能会使用原有模型中未使用到的,但是易于理解的特征。例如,一个文本分类器用词语embedding之后的特征入模,但是解释的时候可以用衍生的变量(比如,这个单词在句子中是否出现过),来拟合局部代理模型。相对于原特征,这个新特征更容易解释。
缺点
LIME的
解释不稳定
。不稳定性主要来自于对要解释的样本进行抽样所带来的随机性,重新抽样后生成的样本发生变化,再拟合模型,单个样本中关于特征的重要性可能会发生变化。只进行正态抽样会
忽略掉特征之间的相关性
,导致产生一些不合理的样本
,比如身高180的人体重90斤,此处身高和体重一般是具有相关性的。这里核函数(权重)的设置需要进行多次尝试,以判断得到的解释是否合理。
SHAP
SHAP(Shapley Additive Explanation)是一种借鉴了博弈论思想
的事后解释方法,SHAP通过计算模型中各个特征的边际贡献
来衡量各个特征的影响大小,进而对黑盒模型进行解释,该边际贡献在SHAP中称为Shapley Value。
SHAP具有3条重要性质:
局部保真性(Local Accuracy):对于单个样本,每个特征的影响与常数项之和等价于模型的输出结果。事后解释模型对单个样本的预测值与黑盒模型对单个样本的预测值相等。
缺失无影响(Missingness):特征值中的缺失值对模型的影响为0。这不同于XGBoost的特征重要度,因为XGBoost在处理缺失值时会根据增益判断缺失值分裂到左孩子节点还是右孩子节点,对模型一定会造成影响。
一致性(Consistency):当更改某个特征的边际贡献度时,其他特征的边际贡献度不应该发生变化,模型最终结果的变化等价于该特征的边际贡献度的变化。而XGBoost的特征重要性,因为是在整个训练集上计算得到重要性期望,更改某个特征会使得其他特征的重要性也发生变化。另外,一致性还体现在,当黑盒模型发生变化时,特征的SHAP值随着特征在新模型中贡献的变化而变化。
优点
基于博弈论,理论基础完备,包括对称性、可加性、有效性等公理;对比LIME只是假设机器学习模型在局部有线性关系,没有坚实的理论基础。
SHAP公平地分配了样本中每个特征的贡献值,最终解释了单个样本模型预测值与平均模型预测值之间的差异;LIME并不能保证模型的预测值可以公平地分配给每一个特征。
Shapley Value可以有不同的
对比解释
,其既可以解释单个样本的模型预测值与平均模型预测值之间的差异,也可以解释单个样本的模型预测值与另一个样本的模型预测值之间的差异。缺点
计算耗时过长
。虽然TreeSHAP的时间复杂度只有多项式级别,但这仅仅是针对树模型而言的。其他近似算法的计算复杂度仍然不低。当特征之间存在相关性时,有些近似算法的效果会变差,如Kernel SHAP的近似算法要求
特征之间要互相独立
,然而大多数情况并不满足这一条件(如用户的身高和体重往往存在很大的相关性),这会导致得到的关于黑盒模型的解释性结果不够准确。