今天来学习一下Shapley Values,先上概念,以及研究背景(borrowed from Wikipedia):

The Shapley value is a solution concept in cooperative game theory.

A coalition of players cooperates, and obtains a certain overall gain from that cooperation. Since some players may contribute more to the coalition than others or may possess different bargaining power (for example threatening to destroy the whole surplus), what final distribution of generated surplus among the players should arise in any particular game? Or phrased differently: how important is each player to the overall cooperation, and what payoff can he or she reasonably expect? The Shapley value provides one possible answer to this question.

如果对博弈论以及合作博弈不清楚的,可以先读一下A Unique Method for Machine Learning Interpretability: Game Theory & Shapley Values!,个人觉得写的很不错。贴一个作者的个人简介:

这里借用他的例子来直观的理解Shapley Values:

Three friends – Ram, Abhiraj, and Pranav – go out for a meal. They order and share fries, wine, and pi. It is hard to figure out who should pay how much since they did not eat an equal share. So, we have the following information:

  • If Ram is eating alone, he would pay 800
  • If Abhiraj is eating alone, he would pay 560
  • If Pranav is eating alone, he would pay 700
  • If Ram and Abhiraj both eat together, they would pay 800
  • If Ram and Pranav both eat together, they would pay 850
  • If Abhiraj and Pranav both eat together, they would pay 720
  • If Ram, Abhiraj, and Pranav all eat together, they would pay 900
    So, it turns out the actual amount all 3 of them pay when they eat together is 900. Now, the task at hand is to figure out how much each of them should pay individually.

这个问题是一个如何公平的分配费用的问题,而Shapley Values被用来公平地分配信用或贡献给每个玩家(参与者),首先先穷举所有可能的序列,接着根据每种顺序计算每个人相应的边际贡献,再进行求平均得到每个参与者的Shapley Value。具体的如下图所示:

采样每个序列得到:

  • (Ram, Abhiraj, Pranav) – (800,0,100)
  • (Abhiraj, Ram, Pranav) – (560, 240, 100)
  • (Abhiraj, Pranav, Ram) – (560, 160, 180)
  • (Pranav, Ram, Abhiraj) – (700, 150, 50)
  • (Pranav, Abhiraj, Ram) – (700, 20, 180)
  • (Ram, Pranav, Abhiraj) – (800, 50, 50)

所以Ram, Abhiraj, Pranav支付的钱分别为:
Ram=800+240+180+150+180+8006≈392Ram=\frac{800 + 240 + 180 + 150 + 180 + 800}{6} \approx 392Ram=6800+240+180+150+180+800​≈392Abhiraj=0+560+560+50+20+506≈207Abhiraj=\frac{0 + 560 + 560 + 50 + 20 + 50}{6} \approx 207Abhiraj=60+560+560+50+20+50​≈207Pranav=100+100+160+700+700+506≈302Pranav=\frac{100 + 100 + 160 + 700 + 700 + 50}{6} \approx 302Pranav=6100+100+160+700+700+50​≈302这加起来刚好为900。

Shapley Values for Machine Learning Interpretability

前面介绍了Shapley Values的概念及其计算,在A Unique Method for Machine Learning Interpretability: Game Theory & Shapley Values!中已经举例介绍了Shapley Values在Machine Learning Interpretability上的一个应用,这里我不再赘述,我将简单介绍一下Shapley Values在模型可解释上的一些现有工作。

  • The Shapley Taylor Interaction Index发表在ICML2020上,提出了一种Shapley Value的泛化版Shapley-Taylor,将Shapley Value拓展到k个特征。
  • 上交张拳石老师在AAAI2021上的Interpreting Multivariate Shapley Interactions in DNNs基于多元变量交互的角度来解释DNN。
  • 发表在ICLR2022上的Axiomatic Explanations for Visual Search, Retrieval, and Similarity Learning使用了The Shapley Taylor Interaction Index中的second-order Shapley-Taylor,对之前的一些可解释算法(如CAM, GradCAM, LIME, SHAP, SBSM等)进行了回炉重造(妙呀,学会了),效果如Figure1,2所示。



基于Shapley Values的文章很多,这里不再举例了,毕竟笔者也没好好调研过,有兴趣自行研究。

References

  • Shapley value - Wikipedia
  • A Unique Method for Machine Learning Interpretability: Game Theory & Shapley Values!
  • Interpreting Multivariate Shapley Interactions in DNNs
  • The Shapley Taylor Interaction Index
  • Axiomatic Explanations for Visual Search, Retrieval, and Similarity Learning

Shapley Values相关推荐

  1. 【可解释机器学习】Shapley Values and SHAP (SHapley Additive exPlanations)

    Introduction 在这一章节首先我们介绍什么是shapley value(夏普利值)和什么是SHAP.接下来先从原理上解释shapley的数学原理. for example 假设以下场景:你训 ...

  2. 用XGBoost入门可解释机器学习!

    Datawhale干货 来源:Scott Lundberg,来源:数据派THU 本文长度为4300字,建议阅读8分钟 本文为大家介绍用XGBoost解释机器学习. 这是一个故事,关于错误地解释机器学习 ...

  3. JMC | 人工智能在药物发现中的应用:走进广阔的天地

    JMC推出 "Artificial Intelligence in Drug Discovery "特刊,强调人工智能(AI)在制药研究中的新兴作用.本期的一个焦点是阐明人工智能方 ...

  4. 《强化学习周刊》第25期:DeepMind提出无模型风险敏感强化学习、谷歌发布 RLDS数据集生态系统...

    No.25 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  5. 独家 | 用XGBoost入门可解释机器学习

    作者:Scott Lundberg 翻译:和中华 校对:张一然 本文长度为4300字,建议阅读8分钟 本文为大家介绍用XGBoost解释机器学习. 这是一个故事,关于错误地解释机器学习模型的危险以及正 ...

  6. 如何在谷歌云平台上部署可解释性模型

    2020-02-26 21:52 导语:获取 TensorFlow 模型的局部和全局解释 图片来源于 Pixabay 现代机器学习和人工智能在解决复杂的问题方面取得了令人印象深刻的成果.然而,复杂的问 ...

  7. 模型可解释性技术概览

    XAI系列二:模型可解释性技术概览 传统网络安全威胁分析依赖专家知识及基本的数据分析,然而随着攻击技术的复杂化.安全数据接入的多元化,高性能人工智能技术越来越多的应用到威胁分析中,试图解放安全行业的生 ...

  8. 谈谈机器学习模型的可解释性

    随着AI和机器学习的发展,越来越多的决策会交给自动化的机器学习算法来做.但是当我们把一些非常重要的决定交给机器的时候,我们真的放心么?当波音飞机忽略驾驶员的指令,决定义无反顾的冲向大地:当银行系统莫名 ...

  9. Paper:《A Unified Approach to Interpreting Model Predictions—解释模型预测的统一方法》论文解读与翻译

    Paper:<A Unified Approach to Interpreting Model  Predictions-解释模型预测的统一方法>论文解读与翻译 导读:2017年11月25 ...

  10. dash使用_使用Dash和SHAP构建和部署可解释的AI仪表盘

    dash使用 In recent years, we have seen an explosion in the usage of Machine Learning (ML) algorithms f ...

最新文章

  1. c语言归并排序代码详细注释,C语言实现排序算法之归并排序详解
  2. python 通登录银行_Python3 适合初学者学习的银行账户登录系统实例
  3. P3201-[HNOI2009]梦幻布丁【启发式合并,链表】
  4. Scala中的while循环
  5. 图的遍历——深度优先搜索+广度优先搜索
  6. Seata详解(二)
  7. BugFree的安装
  8. 超级PK:Sybase与Oracle的十二场性能比拼
  9. hashmap扩容_聊一聊HashMap
  10. 现代通信原理思维导图--第四章 信道
  11. sh计算机c盘如何管理,c盘瘦身三种方法详解
  12. 图像质量评价函数SSIM介绍
  13. 金蝶系统提示服务器不是有效的,金蝶服务器不是有效的,请重新设置问题
  14. MATLAB 如何将视频和音频写入同一个文件?以视频上下颠倒为例,附带详细注释
  15. 盘姬工具箱v1.10最新版 非常实用的工具箱软件
  16. 虚拟服务器不识别网银盾,电脑浏览器无法使用建行E路航网银盾的解决方法
  17. 剑指offer第9题及扩展 斐波那契数列
  18. Android实用视图动画及工具系列之九:漂亮的图片选择器,高性能防崩溃图片选择工具
  19. Google Drive资源下载(附DPED dataset百度云链接)
  20. SQLServer常用的字符串函数

热门文章

  1. 图像加密技术综述(常见的图像加密算法简介)
  2. 1976国际标准大气_Matlab
  3. 企业园区网IPv6地址规划方案与应用
  4. adb 命令获取ip和mac地址
  5. k 均值算法(k-means)
  6. Qt实现 文件比较工具
  7. html微博图片上传,如何使上传新浪微博照片更清晰
  8. 基于微信教室图书馆座位预约小程序毕业设计毕设作品(6)开题答辩PPT
  9. Java中的JPA是什么意思?
  10. MAC下安装yarn方法