【可解释性】机器学习模型算法汇总及如何选择

目录

1. 可解释性机器学习模型汇总

(1) Partial Dependence Plot(PDP)

(2)Individual Conditional Expectation(ICE)

(3) Permuted Feature Importance

(4) Global Surrogate

(5) Local Surrogate(LIME)

(6) Shapley Value(SHAP)

2. 如何选择合适的可解释性算法


1. 可解释性机器学习模型汇总

(1) Partial Dependence Plot(PDP)

        PDP是十几年之前发明的,它可以显示一个或两个特征对机器学习模型的预测结果的边际效应。它可以帮助研究人员确定当大量特征调整时,模型预测会发生什么样的变化。

【可解释性】机器学习模型算法汇总及如何选择_第1张图片

上面图中,x轴表示特征f_{0}的值,y轴表示预测值。阴影区域中的实线显示了平均预测如何随着f_{0}值的变化而变化。PDP能很直观地显示平均边际效应,因此可能会隐藏异质效应。

例如,一个特征可能与一半数据的预测正相关,与另一半数据负相关。那么PDP图将只是一条水平线。

(2)Individual Conditional Expectation(ICE)

ICE和PDP非常相似,但和PDP不同之处在于,PDP绘制的是平均情况,但是ICE会显示每个实例的情况。ICE可以帮助我们解释一个特定的特征改变时,模型的预测会怎么变化。

【可解释性】机器学习模型算法汇总及如何选择_第2张图片

如上图所示,与PDP不同,ICE曲线可以揭示异质关系。但其最大的问题在于:它不能像PDP那样容易看到平均效果,所以可以考虑将二者结合起来一起使用。

(3) Permuted Feature Importance

Permuted Feature Importance的特征重要性是通过特征值打乱后模型预测误差的变化得到的。换句话说,Permuted Feature Importance有助于定义模型中的特征对最终预测做出贡献的大小。

【可解释性】机器学习模型算法汇总及如何选择_第3张图片

如上图所示,特征f2在特征的最上面,对模型的误差影响是最大的,f1在shuffle之后对模型却几乎没什么影响,生息的特征则对于模型是负面的贡献。

(4) Global Surrogate

Global Surrogate方法采用不同的方法。它通过训练一个可解释的模型来近似黑盒模型的预测。

  • 首先,我们使用经过训练的黑盒模型对数据集进行预测;

  • 然后我们在该数据集和预测上训练可解释的模型

训练好的可解释模型可以近似原始模型,我们需要做的就是解释该模型。

  • 注:代理模型可以是任何可解释的模型:线性模型、决策树、人类定义的规则等。

【可解释性】机器学习模型算法汇总及如何选择_第4张图片

使用可解释的模型来近似黑盒模型会引入额外的误差,但额外的误差可以通过R平方来衡量

  • 由于代理模型仅根据黑盒模型的预测而不是真实结果进行训练,因此全局代理模型只能解释黑盒模型,而不能解释数据。

(5) Local Surrogate(LIME)

LIME(Local Interpretable Model-agnostic Explanations)和global surrogate是不同的,因为它不尝试解释整个模型。相反,它训练可解释的模型来近似单个预测。LIME试图了解当我们扰乱数据样本时预测是如何变化的。

【可解释性】机器学习模型算法汇总及如何选择_第5张图片

上面左边的图像被分成可解释的部分。然后,LIME 通过“关闭”一些可解释的组件(在这种情况下,使它们变灰)来生成扰动实例的数据集。对于每个扰动实例,可以使用经过训练的模型来获取图像中存在树蛙的概率,然后在该数据集上学习局部加权线性模型。最后,使用具有最高正向权重的成分来作为解释。

(6) Shapley Value(SHAP)

Shapley Value的概念来自博弈论。我们可以通过假设实例的每个特征值是游戏中的“玩家”来解释预测。每个玩家的贡献是通过在其余玩家的所有子集中添加和删除玩家来衡量的。一名球员的Shapley Value是其所有贡献的加权总和。Shapley 值是可加的,局部准确的。如果将所有特征的Shapley值加起来,再加上基值,即预测平均值,您将得到准确的预测值。这是许多其他方法所没有的功能。

该图显示了每个特征的Shapley值,表示将模型结果从基础值推到最终预测的贡献。红色表示正面贡献,蓝色表示负面贡献。

2. 如何选择合适的可解释性算法

下表从复杂度方面对以上可解释性方法做出排序

【可解释性】机器学习模型算法汇总及如何选择_第6张图片

选择算法时可以从以下几个方面考虑:

(1)你是需要了解一个模型的整个逻辑,还是只关心某个特定决策的原因?这决定了你是想要一个全局方法还是局部方法。

(2)从时间代价考虑

(3)用户的专业水平是什么?预测模型的用户可能有不同的背景知识和任务经验。他们可以是决策者、科学家、工程师等等。了解用户在任务中的经验是感知模型可解释性的一个关键方面。领域专家可能喜欢更复杂的解释,而其他人可能想要一个容易理解和记忆的解释。

你可能感兴趣的:(算法,人工智能)