又一机器学习模型解释神器:Shapash
来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习科技周边相关编程知识。下面本篇文章就来带大家聊聊《又一机器学习模型解释神器:Shapash》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

什么是 Shapash
模型可解释性和可理解性一直是许多研究论文和开源项目的关注的重点。并且很多项目中都配备了数据专家和训练有素的专业人员。
Shapash 适用于大多数 sklearn、lightgbm、xgboost、catboost 模型,并可用于分类和回归任务。它利用 Shap 后端来计算特征的局部贡献度,但是,这可以用其他一些计算局部贡献度的策略代替。数据科学家可以利用 Shapash 解释器对他们的模型进行调查和故障排除,或者部署以提供每个推测的可视化。并且它还可以用于制作可以为最终客户和企业家带来巨大价值的 Web 应用程序。

shabash 库
Shapash的目标
1. 显示清晰合理的结果
绘图和输出使用每个组件及其模式的标签:

2. Web 应用程序
数据科学家可以通过使用 Web 应用程序轻松探索全局和局部邻域之间的逻辑,从而快速理解他们的模型,并了解各种关键点如何发挥作用:

shapash 库 webapp
3. 总结并导出解释
Shapash 提出了一个简短而清晰的解释。它允许每个客户(无论他们的背景是什么),都能理解对托管模型清晰的解释,因为对 Shapash 特征进行了总结和清晰的说明。

4. 完整的数据科学报告
这里有完整的数据报告可以查看:https://shapash-demo.ossbymaif.fr/
Shapash 功能
Shapash 的一些功能如下所示:
1.机器学习模型:它适用于分类(二元或多类问题)和回归问题。它支持多种模型,如 Catboost、Xgboost、LightGBM、Sklearn Ensemble、线性模型和 SVM。
2.特征编码:它支持大量的编码技术来处理我们数据集中的分类特征,如单热编码、序数编码、Base N 编码、目标编码或二进制编码等。
3.SklearnColumnTransformer: OneHotEncoder、OrdinalEncoder、StandardScaler、QuantileTransformer 或 PowerTransformer
4.可视化: 提供一组视觉效果以轻松解释你的结果,并显示可理解和清晰的结果。
5.它与 Lime 和 Shap 兼容。它使用 Shap 后端只需几行代码即可显示结果。
6.它为参数提供了许多选项,以简洁地获得结果。
7.Shapash 安装简单和使用方便: 它提供了一个 SmartExplainer 类来理解你的模型并用简单的语法总结澄清。
8.部署: 对于操作使用的调查和部署(通过 API 或批处理模式)很重要。轻松创建 Web 应用程序以从全局导航到本地。
9.高度通用性: 要显示结果,需要进行非常多次的争论。但如果你在清理和归档数据方面做得越多,最终客户得到的结果就越清楚。

Shapash 如何工作
Shapash 是一个使机器学习易于理解和解释的Python库。数据爱好者可以轻松理解并分享他们的模型。Shapash 使用 Lime 和 Shap 作为后端,只需几行代码即可显示结果。Shapash 依赖于构建机器学习模型以使结果合理的各种重要进展。下图显示了 shapash 包的工作流程:

Shapash 是如何工作的
工作原理
- 首先,它编译每个步骤的元素,如数据准备、特征工程、模型拟合、模型评估和模型理解。
- 其次,它提供了一个 WebApp 和图表来更好地理解模型。可以与客户分享和讨论模型的结果。
- 最后,它为您提供了可解释性的摘要。
安装
可以使用以下代码安装 Shapash:
<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip</span> <span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">install</span> <span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">shapash</span>
对于 Jupyter Notebook: 如果你正在使用 jupyter notebook 并且想要查看内联图,那么你需要使用另一个命令:
<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip</span> <span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">install</span> <span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">ipywidgets</span>
入门
在这里我们将使用数据集房价预测来探索 Shapash 。这是一个回归问题,我们必须预测房价。首先我们分析数据集,包括单变量和双变量分析,然后使用特征重要性、特征贡献、局部和比较图对可解释性建模,然后是模型性能,最后是 WebApp。
分析数据集
单变量分析
使用可以查看下图,了解名为First Floor Square Feet的要素。我们可以看到一个表格,其中显示了我们的训练和测试数据集的多种统计数据,例如平均值、最大值、最小值、标准偏差、中位数等等。在右侧图中可以看到训练和测试数据集的分布图。Shapash 还提到了我们的特征是分类的还是数字的,它还提供了下拉选项,在下拉菜单中所有功能都可用。

单变量分析
对于分类特征,训练和测试数据集显示了非重复值和缺失值。在右侧,显示了一个条形图,其中显示了各要素中相应类别的百分比。

特征中的类别
目标分析
还可以看到对名为 Sales Price 的目标变量的详细分析。在左侧,显示了所有统计数据,如计数、平均值、标准差、最小值、最大值、中位数等,用于训练和预测数据集。在右侧,显示了训练和预测数据集的分布。

目标分析
多元变量分析
上面我们 详细讨论了单变量分析。在本节中,我们将看到多元分析。下图显示了训练和测试数据集的前 20 个特征的相关矩阵。还根据不同的颜色显示了相关性标度。这就是我们如何使用 Shapash 可视化特征之间的关系。

多元分析
模型可解释性
特征重要性图
通过使用这个库,我们可以看到该特征的重要性。特征重要性是一种寻找输入特征在预测输出值中的重要性的方法。下图显示了特征重要性曲线:

特征重要性图
特征贡献图
这些曲线帮助我们回答诸如特征如何影响我的预测、它的贡献是积极的还是消极的等等。这个图完成了模型的可解释性的重要性,模型的整体一致性更有可能理解特征对模型的影响。
我们可以看到数值和分类特征的贡献图。
对于数值特征

征贡献图
对于分类特征

对于分类特征
局部图
我们可以绘制局部图。下图显示了局部图:

局部图
比较图
我们可以绘制比较图。下图显示了比较图:

比较图
模型性能
在数据分析之后,我们正在训练机器学习模型。下图显示了我们预测的输出。在左侧,显示了真实值和预测值的统计数据,如计数、最小值、最大值、中值、标准偏差等。在右侧,显示了预测值和实际值的分布。

模型性能
WebApp
经过模型训练后,我们也可以构建一个WebApp。这个网络应用程序显示了我们数据的完整仪表板,包括我们迄今为止所涵盖的内容。下图显示了仪表板。

WebApp
项目地址:https://github.com/MAIF/shapash
写在最后
本篇文章简单介绍了shapash 的基本功能及绘图展示,相信大家对该python库有一定的认识。
以上就是《又一机器学习模型解释神器:Shapash》的详细内容,更多关于机器学习,Shapash的资料请关注golang学习网公众号!
数据科学必知必会:10个重要概念+22张图表含义
- 上一篇
- 数据科学必知必会:10个重要概念+22张图表含义
- 下一篇
- 新款 MacBook Air 和配备 M2 的 13 英寸 MacBook Pro 将于今年晚些时候推出
-
- 科技周边 · 人工智能 | 52分钟前 | 生成 版权 提示词 BlueWillow 品牌Logo
- BlueWillow提示生成品牌Logo教程
- 457浏览 收藏
-
- 科技周边 · 人工智能 | 1小时前 | AI模型 官方网站 哩布哩布AI LoRA训练 Checkpoint库
- 哩布哩布AI官网入口与链接分享
- 310浏览 收藏
-
- 科技周边 · 人工智能 | 1小时前 |
- 10月国产车市降价14款新能源占10款
- 151浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- ChatExcel酷表
- ChatExcel酷表是由北京大学团队打造的Excel聊天机器人,用自然语言操控表格,简化数据处理,告别繁琐操作,提升工作效率!适用于学生、上班族及政府人员。
- 3194次使用
-
- Any绘本
- 探索Any绘本(anypicturebook.com/zh),一款开源免费的AI绘本创作工具,基于Google Gemini与Flux AI模型,让您轻松创作个性化绘本。适用于家庭、教育、创作等多种场景,零门槛,高自由度,技术透明,本地可控。
- 3407次使用
-
- 可赞AI
- 可赞AI,AI驱动的办公可视化智能工具,助您轻松实现文本与可视化元素高效转化。无论是智能文档生成、多格式文本解析,还是一键生成专业图表、脑图、知识卡片,可赞AI都能让信息处理更清晰高效。覆盖数据汇报、会议纪要、内容营销等全场景,大幅提升办公效率,降低专业门槛,是您提升工作效率的得力助手。
- 3437次使用
-
- 星月写作
- 星月写作是国内首款聚焦中文网络小说创作的AI辅助工具,解决网文作者从构思到变现的全流程痛点。AI扫榜、专属模板、全链路适配,助力新人快速上手,资深作者效率倍增。
- 4545次使用
-
- MagicLight
- MagicLight.ai是全球首款叙事驱动型AI动画视频创作平台,专注于解决从故事想法到完整动画的全流程痛点。它通过自研AI模型,保障角色、风格、场景高度一致性,让零动画经验者也能高效产出专业级叙事内容。广泛适用于独立创作者、动画工作室、教育机构及企业营销,助您轻松实现创意落地与商业化。
- 3815次使用
-
- GPT-4王者加冕!读图做题性能炸天,凭自己就能考上斯坦福
- 2023-04-25 501浏览
-
- 单块V100训练模型提速72倍!尤洋团队新成果获AAAI 2023杰出论文奖
- 2023-04-24 501浏览
-
- ChatGPT 真的会接管世界吗?
- 2023-04-13 501浏览
-
- VR的终极形态是「假眼」?Neuralink前联合创始人掏出新产品:科学之眼!
- 2023-04-30 501浏览
-
- 实现实时制造可视性优势有哪些?
- 2023-04-15 501浏览

