0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用SHAP实现机器学习模型的输出预测

汽车玩家 来源:人工智能遇见磐创 作者:人工智能遇见磐创 2020-05-04 18:09 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

解释产生特定NBA球员预测薪水的特征(github)

利用SHAP实现机器学习模型的输出预测

我最喜欢的库之一是SHAP,它是解释机器学习模型生成的输出不可或缺的工具。 SHAP是几种不同的当前解释模型的顶点,并且通过为每个特征分配重要性值来表示用于解释模型预测的统一框架。反过来,可以绘制这些重要性值,并用于产生任何人都可以轻易解释的漂亮可视化。在您阅读时,您会注意到主题是可解释性,以及为什么它在机器学习中如此迫切。

在本文中,我提供了一个外行人对其作者Scott Lundberg和Su-In Lee的原始论文的评论

目的

线性模型易于解释。 考虑用于预测NBA球员薪水的经典线性回归模型(假设薪水完全基于每场比赛得分):

利用SHAP实现机器学习模型的输出预测

我们简单地将其解释为β1,即X对Y单位增加的平均影响。换句话说,如果凯文杜兰特得到27.5分,那么我们所要做的就是乘以β1来预测他的薪水。 使用线性模型,很明显模型如何达到预测。

但是神经网络呢,那里有重复的矩阵乘法和激活函数? 我们如何在输出的上下文中解释这一点?

利用SHAP实现机器学习模型的输出预测

随着我们转向更复杂的模型,具有更高的准确性,我们发现越来越难以解释这些模型如何产生预测。 由于以下几个原因,这是一个岌岌可危的困境:

·模型偏差是一个重要问题,因为它们最终可能会对决策产生不公平的影响。 一些数据存在内在偏差,特别是在涉及种族和性别偏见时,这会对模型的预测产生负面影响。 由于没有好的方法来解释模型如何做出决定,因此很难确定这些固有的偏见。

·模型改进也很困难如果您不知道要改进什么。当然,您可以调整超参数,直到获得最佳分数,但您拥有的数据类型更为重要。了解模型中不同特征的价值可为数据收集提供有价值的反馈,告知我们哪些类型的数据最重要.

·用户信任对于采用人工智能系统非常重要。 在人工智能治理中心最近的一份报告中,作者报告说:"有更多的美国人认为高级机器智能会比那些认为对人类有益的人有害。"复杂模型的可解释性有助于 更好的理解,建立模型如何做出决策的直觉,并最终产生用户信任。

添加功能归因方法

为了解释更复杂的模型,我们需要一个更接近原始模型的简单解释模型。

假设我们有一个形式为f(x)的复杂模型,那么解释模型g(z')≈f(x)。

利用SHAP实现机器学习模型的输出预测

稍微分解g(z'),我们将一些效应φᵢ归因于每个特征z'。 通过总结所有这些效果及其特征,我们可以近似原始模型的输出。 这被定义为附加特征归属方法。 事实证明,其他当前的解释模型遵循相同的解释模型,允许它们全部统一到一个单一的框架中。

附加特征归属方法的属性

1.局部精度:最重要的属性之一是解释模型能够匹配原始模型的输出。

2.缺失:如果缺少特征,则该特征没有效果,或φᵢ= 0。

3.一致性:如果模型发生变化,使得特征贡献增加或保持不变,那么特征属性或φᵢ不应减少。

这导致我们SHAP值,它统一了以前的方法,并展示了上述属性。

SHAP值

SHAP值(φᵢ)用于描述特征的重要性。 请考虑以下图表:

利用SHAP实现机器学习模型的输出预测

f(x)是模型预测的输出,E[f(z)]是如果没有特征则预测的基值。 换句话说,E[f(z)]只是平均模型输出。

当我们包括一个特征x 1,然后φ1,解释我们如何从基值到新的预测值,现在由E [f(z)|给出。 z 1 = x 1]。 对剩余的变量x 1,x 2,x 3重复这个过程,估计φ1,φ2和φ3的SHAP值,显示模型最终如何到达预测输出f(x)。

不同口味的SHAP(different favours of SHAP)

SHAP有多种实现方式,每种方式都适用于特定的模型类型,可以实现更快的逼近。

·TreeExplainer

TreeExplainer专为树集合方法开发,如XGBoost,LightGBM或CatBoost。

·DeepExplainer

DeepExplainer是为深度学习模型开发的,支持TensorFlow / Keras。

·GradientExplainer

GradientExplainer也是为深度学习模型中的SHAP值而开发的,但速度比DeepExplainer慢,并且做出了不同的假设。 此方法基于Integrated Gradient归因方法,并支持TensorFlow / Keras / PyTorch。

·KernelExplainer

KernelExplainer使用加权线性回归近似任何类型模型的SHAP值。

使用特定于模型类型的算法(TreeExplainer,DeepExplainer)而不是通用KernelExplainer更快更有效。

总结

作者发现人类解释和SHAP解释之间的关联比任何其他方法更强,这表明了SHAP的强大和直观性。 计算出的SHAP值很容易在美观,简单的图中显示,这些图解释了特征如何影响特定预测。 这使得SHAP成为一个令人信服的工具,可以自信地解释和解释任何模型。

有关如何实现SHAP的教程,请查看我的笔记本,看看我们如何解释渐变提升树的预测结果。 SHAP github还提供了很多资源,可以提供有关如何实现DeepExplainer,KernelExplainer和其他有用功能的更多示例。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4816

    浏览量

    98839
  • 机器学习
    +关注

    关注

    67

    文章

    8571

    浏览量

    137438
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    普渡机器人正式发布具身智能大模型PuduFM 1.0

    2026年5月11日,普渡机器人正式发布具身智能大模型Pudu Foundation Model(PuduFM 1.0)。该模型构建了三大核心技术维度,实现了从“简单执行”向“物理认知
    的头像 发表于 05-15 11:52 548次阅读
    普渡<b class='flag-5'>机器</b>人正式发布具身智能大<b class='flag-5'>模型</b>PuduFM 1.0

    《多模态大模型 前沿算法与实战应用 第一季》精品课程简介

    模态选择 :根据任务需求自动选择最优模态组合。例如在低光照场景下,模型会优先依赖激光雷达而非摄像头进行感知。 具身智能 :结合机器人实体,实现视觉、触觉、语言等多模态的实时交互与学习
    发表于 05-01 17:46

    机器学习中的数据质量双保障:从“验证”到“标记”

    机器学习的世界里,有句老话尤为贴切:“garbagein,garbageout”(输入垃圾,输出垃圾)。无论模型架构多先进、算法多精妙,数据的质量始终是决定
    的头像 发表于 04-24 15:48 180次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>中的数据质量双保障:从“验证”到“标记”

    大晓机器人开源实时生成世界模型Kairos 3.0-4B

    近日,大晓机器人重磅开源开悟世界模型3.0(Kairos 3.0)-4B 系列具身原生世界模型。作为业内首个实现 “多模态理解 — 生成 — 预测
    的头像 发表于 03-14 16:54 2097次阅读
    大晓<b class='flag-5'>机器</b>人开源实时生成世界<b class='flag-5'>模型</b>Kairos 3.0-4B

    强化学习会让自动驾驶模型学习更快吗?

    是一种让机器通过“试错”学会决策的办法。与监督学习不同,监督学习是有人提供示范答案,让模型去模仿;而强化学习不会把每一步的“正确答案”都告诉
    的头像 发表于 01-31 09:34 948次阅读
    强化<b class='flag-5'>学习</b>会让自动驾驶<b class='flag-5'>模型</b><b class='flag-5'>学习</b>更快吗?

    从数据到模型:如何预测细节距键合的剪切力?

    预估其剪切力?行业内的研究数据为我们揭示了可能性。今天,科准测控小编将带您了解如何基于实验数据建立并应用预测模型实现从“测量”到“预估”的关键跨越。 一、从平方定律到经验公式 直观上,我们可能会假设
    发表于 01-08 09:45

    机器学习和深度学习中需避免的 7 个常见错误与局限性

    ,并验证输出结果,就能不断提升专业技能,养成优秀数据科学家的工作习惯。需避免的机器学习和深度学习数据错误在训练数据驱动的人工智能模型时,我们
    的头像 发表于 01-07 15:37 413次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>和深度<b class='flag-5'>学习</b>中需避免的 7 个常见错误与局限性

    基于ETAS嵌入式AI工具链将机器学习模型部署到量产ECU

    AI在汽车行业的应用日益深化,如何将机器学习领域的先进模型(如虚拟传感器)集成到ECU软件中,已成为业界面临的核心挑战。
    的头像 发表于 12-24 10:55 6526次阅读
    基于ETAS嵌入式AI工具链将<b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>模型</b>部署到量产ECU

    模型赋能物资需求精准预测与采购系统:功能特点与平台架构解析

        大模型赋能物资需求预测与采购智能化:核心功能与价值解析    大模型赋能物资需求精准预测与采购系统通过深度整合多源数据、构建动态预测
    的头像 发表于 12-16 11:54 517次阅读

    labview如何实现数据的采集与实时预测

    现有以下问题:labview可以实现数据的采集以及调用python代码,但如何将这两项功能集成在一个VI文件里,从而实现数据的采集与实时预测。现有条件如下:已完成数据的采集系统,python中的
    发表于 12-03 21:13

    基于全局预测历史的gshare分支预测器的实现细节

    的调研,我们将BHR的位数定为10位,具有10位BHR的GShare分支预测器既能保证较高的预测正确率,又能照顾到实现面积。 方式历史寄存器PHT PHT模块由两个简单双端口RAM构成,如下图所示
    发表于 10-22 06:50

    超小型Neuton机器学习模型, 在任何系统级芯片(SoC)上解锁边缘人工智能应用.

    Neuton 是一家边缘AI 公司,致力于让机器 学习模型更易于使用。它创建的模型比竞争对手的框架小10 倍,速度也快10 倍,甚至可以在最先进的边缘设备上进行人工智能处理。在这篇博文
    发表于 07-31 11:38

    【嘉楠堪智K230开发板试用体验】K230机器视觉相关功能体验

    画图 机器学习模型在通过摄像头获取图像后,经过处理输入后,在输出环节通常还需要进行后处理,例如图像检测应用中,目标位置的框选等。 在K230中提供了画图的功能,可以
    发表于 07-08 17:25

    模型在半导体行业的应用可行性分析

    的应用,比如使用机器学习分析数据,提升良率。 这一些大模型是否真的有帮助 能够在解决工程师的知识断层问题 本人纯小白,不知道如何涉足这方面 应该问什么大模型比较好,或者是看什么视频能够
    发表于 06-24 15:10

    边缘计算中的机器学习:基于 Linux 系统的实时推理模型部署与工业集成!

    你好,旅行者!欢迎来到Medium的这一角落。在本文中,我们将把一个机器学习模型(神经网络)部署到边缘设备上,利用从ModbusTCP寄存器获取的实时数据来
    的头像 发表于 06-11 17:22 1206次阅读
    边缘计算中的<b class='flag-5'>机器</b><b class='flag-5'>学习</b>:基于 Linux 系统的实时推理<b class='flag-5'>模型</b>部署与工业集成!