问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

SHAP法可解释性机器学习介绍:理论与方法

创作时间:
作者:
@小白创作中心

SHAP法可解释性机器学习介绍:理论与方法

引用
1
来源
1.
https://www.bilibili.com/read/mobile?id=39776258

从列线图到SHAP,机器学习模型的可解释性方法正在经历一场变革。本文将为您详细介绍SHAP方法的理论背景及其计算公式,帮助您更好地理解这一在药物开发等领域的热门工具。

SHAP的历史发展

SHAP方法的发展可以追溯到2010年,当时Štrumbelj和Kononenko首次将Shapley值引入机器学习模型的解释性分析中,用于量化特征对模型预测结果的贡献。到了2017年,Lundberg等人进一步扩展了这一方法,提出了SHAP分析,并将其他特征解释方法(如LIME、DeepLIFT等)统一到一个理论框架下,发布了开源包,促进了SHAP在机器学习中的广泛应用。

SHAP方法的理论基础

在机器学习领域中,模型的可解释性一直备受关注,是一个重要的课题。尽管复杂的模型如深度神经网络和集成模型(如XGBoost、LightGBM)在预测性能上表现优异,但通常被视为“黑箱”,难以解释其内部决策过程。

SHAP(SHapley Additive exPlanations)是一种解决这一问题的工具,用来解释机器学习模型预测结果的方法。它提供了一种基于博弈论概念的方法来解释模型的预测结果,并帮助我们理解每个特征对于预测结果的贡献程度。

追根溯源,SHAP分析的基础是Shapley值,这是博弈论的一个概念。而Shapley值则可为一组合作完成共同目标的“玩家”提供公平的收益分配方式。

为便于理解,在机器学习模型中,我们可以将每个特征(如年龄、性别等)视为参与预测游戏的玩家。玩家们(特征)通过合作,共同影响游戏(模型)的最终预测结果。SHAP法则是最公正的裁判,借助博弈论的观点来理解这些特征的影响,以更公平合理的方式分配它们的贡献。

SHAP值的计算方法

我们可以举一个简单的组合药物疗法的例子,来理解SHAP值的计算公式。

案例:假设我们正在分析三种药物的组合效果,三种药物分别命名为A、B和C。

  • 药物 A、药物 B 和药物 C 一起使用时的反应率为 90%。
  • 每种药物单独使用时的反应率如下:
  • 药物A:40%
  • 药物B:50%
  • 药物C:60%
  • 假设我们还知道两种药物组合的反应率(即在博弈论中称为两个玩家的联盟或组内的大小为 2 的子集):
  • 药物 A 和药物 B:70%
  • 药物 A 和药物 C:65%
  • 药物 B 和药物 C:80%

那么,如果三种药物一起使用时的效果为90%,如何公平地分配每种药物对这个结果的贡献呢?

这个时候就可以用上我们的SHAP法,通过对所有可能的药物组合中的边际贡献进行加权平均,计算它们的SHAP值,得出每种药物对最后疗效的贡献度。

具体计算公式如下:

公式符号解释:

使用该公式计算药物组合时,各药的边际贡献及其SHAP值,我们可以从下表看到,所有SHAP值的总和等于90%(20.83% + 33.33% + 35.83% )。

表2 举例药物组合的边际贡献,说明如何计算Shapley值

通常情况下,研究者们会使用以下公式计算机器学习模型预测中特征贡献的SHAP值。但这种方法非常耗时,因此,对于常见的机器学习模型:学者们开发了多种实现方式和近似算法,以便高效地计算SHAP值。

  • 对于树模型(如 XGBoost、随机森林、LightGBM、CatBoost):
    树模型利用其特有的树结构路径分割特点,可以通过Tree SHAP 算法快速、精确地计算出 SHAP 值。

  • 基于神经网络的模型:
    通过使用“计算图”或者模型的“可微性”,可以近似地计算 SHAP 值。常用的Python包SHAP提供了两种工具——DeepExplainer 和 GradientExplainer,分别适用于不同的神经网络模型。

  • Kernel SHAP:
    作为一种通用的近似方法,该法适用于所有类型的监督学习模型,它的核心思想是通过加权采样来近似计算 SHAP 值。

  • 具体来说,使用该方法时,首先需要选择一个具有代表性的数据集作为背景数据集,以反映模型的一般输出行为。

  • 然后通过反复采样和加权估算 SHAP 值

综上所述,SHAP分析通过Shapley值的思想,以博弈论的视角解释特征的重要性,逐渐成为解释机器学习模型的一种常用且广泛认可的方法。作为机器学习的最佳助手,SHAP法我们一定要有所了解。

下一篇我们将介绍SHAP分析可视化!大家敬请期待!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号