JAMA | 机器学习中的可解释性:SHAP分析图像复刻与解读

简介: JAMA | 机器学习中的可解释性:SHAP分析图像复刻与解读

一、引言

JAMA Network Open作为JAMA系列期刊之一,在医学研究领域发挥着重要作用。其开放获取的特点使得更多人可以接触到最新的研究成果,包括机器学习在医学领域的应用。


机器学习模型的可解释性一直是研究的热点和挑战之一。特别是在医学领域,对模型决策的解释性要求更高,以确保决策过程透明且可信赖。

SHAP分析作为一种用于解释模型预测结果的方法,在提供了对模型决策过程的解释性同时,也有助于改善模型的可解释性和可靠性。它通过计算特征对预测结果的贡献程度,帮助我们理解模型的预测逻辑。

二、机器学习中的可解释性

2.1 可解释性在机器学习中意义和价值

机器学习模型的可解释性是指能够清晰解释模型预测结果的过程和原因。具有良好可解释性的模型可以增强用户对模型决策的信任度,帮助用户理解模型背后的逻辑,从而提高模型的实用性和可靠性。

2.2 可解释性方法的比较与应用场景

在机器学习中,有多种可解释性方法,如局部解释性方法(如LIME)、全局解释性方法(如SHAP)、基于规则的解释性方法等。这些方法各有优劣,并适用于不同的应用场景。局部解释性方法适用于理解单个预测的原因,全局解释性方法适用于理解整体模型行为,而基于规则的方法适用于生成易解释的规则集。

2.3 SHAP分析的原理和算法介绍

SHAP(SHapley Additive exPlanations)是一种基于博弈论的模型解释方法,它通过计算特征值对模型预测结果的贡献度,为每个特征提供了一个解释性分数。SHAP值的计算基于Shapley值的概念,通过对特征值进行排列组合,计算每个特征对模型输出的影响。SHAP分析可以帮助我们理解模型预测的原因,并为模型预测结果提供直观的解释。

三、Shap分析图像复刻

  • 「数据集准备」
import xgboost
X, y = shap.datasets.boston()
print(X, y)

结果展示:

CRIM    ZN  INDUS  CHAS    NOX  ...  RAD    TAX  PTRATIO       B  LSTAT
0    0.00632  18.0   2.31   0.0  0.538  ...  1.0  296.0     15.3  396.90   4.98
1    0.02731   0.0   7.07   0.0  0.469  ...  2.0  242.0     17.8  396.90   9.14
2    0.02729   0.0   7.07   0.0  0.469  ...  2.0  242.0     17.8  392.83   4.03
3    0.03237   0.0   2.18   0.0  0.458  ...  3.0  222.0     18.7  394.63   2.94
4    0.06905   0.0   2.18   0.0  0.458  ...  3.0  222.0     18.7  396.90   5.33
  • 「示例数据集介绍」
CRIM:城镇人均犯罪率
ZN:住宅用地超过 25,000 平方英尺的比例
INDUS:非零售商业用地的比例
CHAS:查尔斯河虚拟变量,如果附近是河流则为 1,否则为 0
NOX:一氧化氮浓度(每千万份)
RM:住宅平均房间数
AGE:1940 年之前建造的自住单位的比例
DIS:到波士顿五个就业中心的加权距离
RAD:高速公路的可达性指数
TAX:每 10,000 美元的全值财产税率
PTRATIO:城镇师生比例
B:1000(Bk - 0.63)^2,其中 Bk 是城镇黑人的比例
LSTAT:人口中地位较低者的百分比
  • 「模型拟合」
model = xgboost.XGBRegressor().fit(X, y)
  • 「shap分析」
import shap
import pandas as pd
import numpy as np
import matplotlib as plt
explainer = shap.Explainer(model)
shap_values = explainer(X)
  • 「同版图像复刻」
shap.plots.beeswarm(shap_values,plot_size="auto")

已经八九不离十了,还差颜色不同,来调整一下:

shap.plots.beeswarm(shap_values,max_display=30,plot_size=[10,8],color=plt.get_cmap("viridis"))

基本差不多复刻出来了。

四、SHAP分析解读

4.1 解读SHAP分析结果的步骤和技巧

  • 「理解SHAP值」:SHAP值表示每个特征对模型预测的贡献程度。正值表示增加预测值,负值表示减少预测值。
  • 「特征重要性排序」:根据SHAP值的大小对特征进行排序,了解哪些特征对预测影响最大。
  • 「解释单个预测」:通过展示每个特征对于某个特定预测结果的贡献,解释模型每个预测的依据。
  • 「可视化解释」:使用图表直观地展示SHAP值,比如Summary Plot、Force Plot等,有助于理解模型的决策过程。

4.2 如何利用SHAP分析改进模型

  • 「特征选择」:根据SHAP值的分析结果,选择重要性较高的特征,可以帮助简化模型并提高模型的泛化能力。
  • 「调整模型参数」:根据SHAP分析发现的特征贡献,调整模型参数,如正则化参数的设置,以提高模型性能。
  • 「数据采样优化」:根据SHAP值的分析结果,针对特定特征值的样本数据进行重点关注,有针对性地进行数据采样。

五、总结

在机器学习领域,模型的可解释性对于提高模型的信任度、理解模型决策过程、发现潜在问题以及推动模型应用和部署都至关重要。SHAP分析作为一种先进的解释性工具,可以帮助我们深入理解模型预测结果背后的原因,识别重要特征,并提供直观的解释,从而增强模型的可解释性和透明度。

*「未经许可,不得以任何方式复制或抄袭本篇文章之部分或全部内容。版权所有,侵权必究。」

目录
相关文章
|
3月前
|
机器学习/深度学习 算法 数据可视化
机器学习模型中特征贡献度分析:预测贡献与错误贡献
本文将探讨特征重要性与特征有效性之间的关系,并引入两个关键概念:预测贡献度和错误贡献度。
376 3
|
6天前
|
机器学习/深度学习 数据采集 运维
机器学习在运维中的实时分析应用:新时代的智能运维
机器学习在运维中的实时分析应用:新时代的智能运维
42 12
|
26天前
|
机器学习/深度学习 分布式计算 算法
【大数据分析&机器学习】分布式机器学习
本文主要介绍分布式机器学习基础知识,并介绍主流的分布式机器学习框架,结合实例介绍一些机器学习算法。
169 5
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
机器学习之解释性AI与可解释性机器学习
随着人工智能技术的广泛应用,机器学习模型越来越多地被用于决策过程。然而,这些模型,尤其是深度学习模型,通常被视为“黑箱”,难以理解其背后的决策逻辑。解释性AI(Explainable AI, XAI)和可解释性机器学习(Interpretable Machine Learning, IML)旨在解决这个问题,使模型的决策过程透明、可信。
52 2
|
2月前
|
数据采集 移动开发 数据可视化
模型预测笔记(一):数据清洗分析及可视化、模型搭建、模型训练和预测代码一体化和对应结果展示(可作为baseline)
这篇文章介绍了数据清洗、分析、可视化、模型搭建、训练和预测的全过程,包括缺失值处理、异常值处理、特征选择、数据归一化等关键步骤,并展示了模型融合技术。
124 1
模型预测笔记(一):数据清洗分析及可视化、模型搭建、模型训练和预测代码一体化和对应结果展示(可作为baseline)
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
阿里云人工智能平台 PAI 团队发表的图像编辑算法论文在 MM2024 上正式亮相发表。ACM MM(ACM国际多媒体会议)是国际多媒体领域的顶级会议,旨在为研究人员、工程师和行业专家提供一个交流平台,以展示在多媒体领域的最新研究成果、技术进展和应用案例。其主题涵盖了图像处理、视频分析、音频处理、社交媒体和多媒体系统等广泛领域。此次入选标志着阿里云人工智能平台 PAI 在图像编辑算法方面的研究获得了学术界的充分认可。
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
机器学习中空间和时间自相关的分析:从理论基础到实践应用
空间和时间自相关是数据分析中的重要概念,揭示了现象在空间和时间维度上的相互依赖关系。本文探讨了这些概念的理论基础,并通过野火风险预测的实际案例,展示了如何利用随机森林模型捕捉时空依赖性,提高预测准确性。
102 0
机器学习中空间和时间自相关的分析:从理论基础到实践应用
|
1月前
|
机器学习/深度学习 算法
探索机器学习模型的可解释性
【10月更文挑战第29天】在机器学习领域,一个关键议题是模型的可解释性。本文将通过简单易懂的语言和实例,探讨如何理解和评估机器学习模型的决策过程。我们将从基础概念入手,逐步深入到更复杂的技术手段,旨在为非专业人士提供一扇洞悉机器学习黑箱的窗口。
|
2月前
|
机器学习/深度学习 数据可视化 算法
机器学习中的回归分析:理论与实践
机器学习中的回归分析:理论与实践
|
2月前
|
机器学习/深度学习 数据采集 算法
【Python篇】从零到精通:全面分析Scikit-Learn在机器学习中的绝妙应用
【Python篇】从零到精通:全面分析Scikit-Learn在机器学习中的绝妙应用
51 2
下一篇
DataWorks