ML之shap:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图/依赖关系贡献图可视化实现可解释性之详细攻略

目录

基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图可视化实现可解释性

# 1、定义数据集

# 2、数据预处理

# 2.1、分离特征与标签

# 3、模型建立和训练

# 3.1、数据集切分# 3.2、模型训练

# 4、模型特征重要性解释可视化

# 4.1、单个样本基于shap值进行解释可视化

# (1)、挑选某条样本数据并转为array格式

# (2)、利用Shap值解释RFC模型

# T1、基于树模型TreeExplainer创建Explainer并计算SHAP值,且进行单个样本力图可视化(分析单个样本预测的解释)

# T2、基于核模型KernelExplainer创建Explainer并计算SHAP值,且进行单个样本力图可视化(分析单个样本预测的解释)

# 4.2、多个样本基于shap值进行解释可视化

# (1)、基于树模型TreeExplainer创建Explainer并计算SHAP值

# (2)、全验证数据集样本各特征shap值summary_plot可视化

# (3)、依赖关系贡献图dependence_plot可视化


相关文章
ML:机器学习可解释性之SHAP值之理解单样本单特征预测
ML之shap:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图可视化实现可解释性之详细攻略
ML之shap:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图可视化实现可解释性之详细攻略实现

相关文章
ML之PDP:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用DT决策树&RF随机森林+PDP部分依赖图可视化实现模型可解释性之详细攻略
ML之PDP:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用DT决策树&RF随机森林+PDP部分依赖图可视化实现模型可解释性之详细攻略实现

基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图可视化实现可解释性

# 1、定义数据集

数据集来源:Dataset:FIFA 2018 Statistics数据集(Predict FIFA 2018 Man of the Match预测2018年国际足联最佳球员)的简介、下载、使用方法之详细攻略_一个处女座的程序猿的博客-CSDN博客

Date Team Opponent Goal Scored Ball Possession % Attempts On-Target Off-Target Blocked Corners Offsides Free Kicks Saves Pass Accuracy % Passes Distance Covered (Kms) Fouls Committed Yellow Card Yellow & Red Red Man of the Match 1st Goal Round PSO Goals in PSO Own goals Own goal Time
14-06-2018 Russia Saudi Arabia 5 40 13 7 3 3 6 3 11 0 78 306 118 22 0 0 0 Yes 12 Group Stage No 0
14-06-2018 Saudi Arabia Russia 0 60 6 0 3 3 2 1 25 2 86 511 105 10 0 0 0 No Group Stage No 0
15-06-2018 Egypt Uruguay 0 43 8 3 3 2 0 1 7 3 78 395 112 12 2 0 0 No Group Stage No 0
15-06-2018 Uruguay Egypt 1 57 14 4 6 4 5 1 13 3 86 589 111 6 0 0 0 Yes 89 Group Stage No 0
15-06-2018 Morocco Iran 0 64 13 3 6 4 5 0 14 2 86 433 101 22 1 0 0 No Group Stage No 0 1 90

# 2、数据预处理

# 2.1、分离特征与标签

df_X    Goal Scored  Ball Possession %  Attempts  ...  Yellow & Red  Red  Goals in PSO
0            5                 40        13  ...             0    0             0
1            0                 60         6  ...             0    0             0
2            0                 43         8  ...             0    0             0
3            1                 57        14  ...             0    0             0
4            0                 64        13  ...             0    0             0[5 rows x 18 columns]
df_y 0     True
1    False
2    False
3     True
4    False
Name: Man of the Match, dtype: bool

# 3、模型建立和训练

# 3.1、数据集切分
# 3.2、模型训练

# 4、模型特征重要性解释可视化

# 4.1、单个样本基于shap值进行解释可视化

# (1)、挑选某条样本数据并转为array格式

输出当前测试样本:5 Goal Scored                 2
Ball Possession %          38
Attempts                   13
On-Target                   7
Off-Target                  4
Blocked                     2
Corners                     6
Offsides                    1
Free Kicks                 18
Saves                       1
Pass Accuracy %            69
Passes                    399
Distance Covered (Kms)    148
Fouls Committed            25
Yellow Card                 1
Yellow & Red                0
Red                         0
Goals in PSO                3
Name: 118, dtype: int64
输出当前测试样本的真实label: False
输出当前测试样本的的预测概率: [[0.29 0.71]]
输出当前测试样本:7 Goal Scored                 0
Ball Possession %          53
Attempts                   16
On-Target                   4
Off-Target                 10
Blocked                     2
Corners                     7
Offsides                    1
Free Kicks                 20
Saves                       1
Pass Accuracy %            77
Passes                    466
Distance Covered (Kms)    107
Fouls Committed            23
Yellow Card                 1
Yellow & Red                0
Red                         0
Goals in PSO                0
Name: 35, dtype: int64
输出当前测试样本的真实label: False
输出当前测试样本的的预测概率: [[0.56 0.44]]

# (2)、利用Shap值解释RFC模型

# T1、基于树模型TreeExplainer创建Explainer并计算SHAP值,且进行单个样本力图可视化(分析单个样本预测的解释)

# T2、基于核模型KernelExplainer创建Explainer并计算SHAP值,且进行单个样本力图可视化(分析单个样本预测的解释)

# 4.2、多个样本基于shap值进行解释可视化

# (1)、基于树模型TreeExplainer创建Explainer并计算SHAP值

# (2)、全验证数据集样本各特征shap值summary_plot可视化

# (3)、依赖关系贡献图dependence_plot可视化

ML之shap:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用RF随机森林+计算SHAP值单样本力图/依赖关系贡献图可视化实现可解释性之攻略相关推荐

  1. ML之PDP:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用DT决策树RF随机森林+PDP部分依赖图可视化实现模型可解释性之详细攻略

    ML之PDP:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用DT决策树&RF随机森林+PDP部分依赖图可视化实现模型可解释性之详细攻 ...

  2. ML之PFI(eli5):基于mpg汽车油耗数据集利用RF随机森林算法和PFI置换特征重要性算法实现模型特征可解释性排序

    ML之PFI(eli5):基于mpg汽车油耗数据集利用RF随机森林算法和PFI置换特征重要性算法实现模型特征可解释性排序 目录 基于mpg数据集利用RF随机森林算法和PFI置换特征重要性算法实现模型特 ...

  3. ML之PDP:基于titanic泰坦尼克是否获救二分类预测数据集利用PDP部分依赖图对RF随机森林实现模型可解释性案例

    ML之PDP:基于titanic泰坦尼克是否获救二分类预测数据集利用PDP部分依赖图对RF随机森林实现模型可解释性案例 目录 基于titanic泰坦尼克是否获救二分类预测数据集利用PDP部分依赖图对R ...

  4. ML之interpret:基于titanic泰坦尼克是否获救二分类预测数据集利用interpret实现EBC模型可解释性之全局解释/局部解释案例

    ML之interpret:基于titanic泰坦尼克是否获救二分类预测数据集利用interpret实现EBC模型可解释性之全局解释/局部解释案例 目录 基于titanic泰坦尼克是否获救二分类预测数据 ...

  5. ML之yellowbrick:基于titanic泰坦尼克是否获救二分类预测数据集利用yellowbrick对LoR逻辑回归模型实现可解释性(阈值图)案例

    ML之yellowbrick:基于titanic泰坦尼克是否获救二分类预测数据集利用yellowbrick对LoR逻辑回归模型实现可解释性(阈值图)案例 目录 基于titanic泰坦尼克是否获救二分类 ...

  6. 可视化查看依赖关系_图可视化分析解决方案KeyLines介绍

    Cambridge Intelligence作为图可视化领域的标杆公司,其产品KeyLine.ReGraph.KronoGraph都是图可视化领域典型解决方案,我们可以通过对KeyLine等相关产品的 ...

  7. VB.net:VB.net编程语言学习之基于VS软件利用VB.net语言实现对SolidWorks进行二次开发的简介、案例应用之详细攻略

    VB.net:VB.net编程语言学习之基于VS软件利用VB.net语言实现对SolidWorks进行二次开发的简介.案例应用之详细攻略 目录 调用SolidWorks功能简介 1.宏录制步骤 (1) ...

  8. 【数据可视化(图形绘制)攻略】——配对样本T检验/Wilcoxon配对秩检验

    配对样本T检验/Wilcoxon配对秩检验的数据可视化(图形绘制)攻略 ggpubr包的应用 配对T检验和Wilcoxon配对非参数检验的图形可视化均可以应用ggpubr包,简单好用.可达到如下效果哟 ...

  9. Py之eli5:eli5库的简介、安装、使用方法之详细攻略

    Py之eli5:eli5库的简介.安装.使用方法之详细攻略 目录 eli5库的简介 1.eli5库有助于机器学习的可解释性 2.eli5库实现了几种用于检查黑盒模型的算法(参见检查黑盒估计器) 3.e ...

最新文章

  1. Kotlin 类的定义
  2. Java项目:美食菜谱分享平台系统设计和实现(java+springboot+mysql+ssm)
  3. make时候说找不到makefile_找不到答案的时候,就去看一看这个世界
  4. boost::polygon::detail::robust_fpt相关的测试程序
  5. php warning date(),lnmp打开cacti时提示PHP Warning: date()
  6. 11.13 模10计数器设计
  7. centos linux怎么安装mysql_CentOS-Linux系统下安装MySQL
  8. Android 2.2 带来全新拍照增强特性
  9. 从零开始学Pytorch(十五)之数据增强
  10. codeblocks无法编译运行_编程必修课:一文弄懂python的运行机制
  11. 清溪行 ( 一作宣州清溪 )
  12. 别再用代码开发了!整理了30套精美可视化大屏模板,零套路直接领
  13. DevExpress 创建EXCEL
  14. [SCM]源码管理 - perforce的trigger和daemon
  15. bootstrap datepicker 在bootstrap modal中不显示问题
  16. 我的团长我的团第八集
  17. 博士申请——Research Proposal
  18. PokerNet-poker recognition: 扑克识别 (6)
  19. 小程序 6位数密码输入
  20. iOS自动化_免越狱_免签名

热门文章

  1. 数据工程师该如何增加核心竞争力?
  2. skyworth E900-S 安装沙发
  3. UNIX痛恨者手册[转贴自 FreeBSDChina]
  4. 【数字逻辑】如何根据真值表的内容写出对应的逻辑关系式?
  5. 批量地导入本地的scholar.enw到endnote
  6. @Configuration Spring注解详解
  7. android帧动画倒放,GIF动态图怎么倒放_倒放GIF动态图的简单方法介绍_3DM手游
  8. Android studio最新版安装教程
  9. 做最好的日期控件,My97 DatePicker
  10. BS软件测试初学者,BS软件测试要点总结!