关于人工智能:6个可解释AI-XAI的Python框架推荐

38次阅读

共计 2034 个字符,预计需要花费 6 分钟才能阅读完成。

随着人工智能的倒退为了解决具备挑战性的问题,人们发明了更简单、更不通明的模型。AI 就像一个黑匣子,能本人做出决定,然而人们并不分明其中原因。建设一个 AI 模型,输出数据,而后再输入后果,但有一个问题就是咱们不能解释 AI 为何会得出这样的论断。须要理解 AI 如何得出某个论断背地的起因,而不是仅仅承受一个在没有上下文或解释的状况下输入的后果。

可解释性旨在帮忙人们了解:

  • 如何学习的?
  • 学到了什么?
  • 针对一个特定输出为什么会做出如此决策?
  • 决策是否牢靠?

在本文中,我将介绍 6 个用于可解释性的 Python 框架。

SHAP

SHapley Additive explanation (SHapley Additive explanation)是一种解释任何机器学习模型输入的博弈论办法。它利用博弈论中的经典 Shapley 值及其相干扩大将最优信贷调配与部分解释分割起来(详见论文的细节和援用)。

数据集中每个特色对模型预测的奉献由 Shapley 值解释。Lundberg 和 Lee 的 SHAP 算法最后发表于 2017 年,这个算法被社区在许多不同的畛域宽泛采纳。

应用 pip 或 conda 装置 shap 库。

# install with pip
pip install shap

# install with conda
conda install -c conda-forge shap

应用 Shap 库构建瀑布图

应用 Shap 库构建 Beeswarm 图

应用 Shap 库构建局部依赖图

LIME

在可解释性畛域,最早闻名的办法之一是 LIME。它能够帮忙解释机器学习模型正在学习什么以及为什么他们以某种形式预测。Lime 目前反对对表格的数据,文本分类器和图像分类器的解释。

晓得为什么模型会以这种形式进行预测对于调整算法是至关重要的。借助 LIME 的解释,可能了解为什么模型以这种形式运行。如果模型没有依照打算运行,那么很可能在数据筹备阶段就犯了谬误。

应用 pip 装置

pip install lime

LIME 构建的部分解释图

LIME 构建的 Beeswarm 图

Shapash

“Shapash 是一个使机器学习对每个人都能够进行解释和了解 Python 库。Shapash 提供了几种类型的可视化,显示了每个人都能了解的明确标签。数据科学家能够更轻松地了解他们的模型并分享后果。最终用户能够应用最规范的摘要来了解模型是如何做出判断的。”

为了表白数据中蕴含故事、见解和模型的发现,互动性和丑陋的图表必不可少。业务和数据科学家 / 分析师向 AI/ML 后果展现和互动的最佳办法是将其可视化并且放到 web 中。Shapash 库能够生成交互式仪表盘,并收集了许多可视化图表。与形状 / 石灰解释性无关。它能够应用 SHAP/Lime 作为后端,也就是说他只提供了更好看的图表。

应用 Shapash 构建特色奉献图

应用 Shapash 库创立的交互式仪表板

应用 Shapash 构建的部分解释图

InterpretML

InterpretML 是一个开源的 Python 包,它向钻研人员提供机器学习可解释性算法。InterpretML 反对训练可解释模型(glassbox),以及解释现有的 ML 管道(blackbox)。

InterpretML 展现了两种类型的可解释性:glassbox 模型——为可解释性设计的机器学习模型 (如: 线性模型、规定列表、狭义可加模型) 和黑箱可解释性技术——用于解释现有零碎(如: 局部依赖,LIME)。应用对立的 API 并封装多种办法,领有内置的、可扩大的可视化平台,该包使钻研人员可能轻松地比拟可解释性算法。InterpretML 还包含了 explanation Boosting Machine 的第一个实现,这是一个弱小的、可解释的、glassbox 模型,能够像许多黑箱模型一样准确。

应用 InterpretML 构建的部分解释交互式图

应用 InterpretML 构建的全局解释图

ELI5

ELI5 是一个能够帮忙调试机器学习分类器并解释它们的预测的 Python 库。目前反对以下机器学习框架:

  • scikit-learn
  • XGBoost、LightGBM CatBoost
  • Keras

ELI5 有两种次要的办法来解释分类或回归模型:

  • 查看模型参数并阐明模型是如何全局工作的;
  • 查看模型的单个预测并阐明什么模型会做出这样的决定。

应用 ELI5 库生成全局权值

应用 ELI5 库生成部分权重

OmniXAI

OmniXAI (Omni explained AI 的简称),是 Salesforce 最近开发并开源的 Python 库。它提供全方位可解释的人工智能和可解释的机器学习能力来解决实际中机器学习模型在产生中须要判断的几个问题。对于须要在 ML 过程的各个阶段解释各种类型的数据、模型和解释技术的数据科学家、ML 钻研人员,OmniXAI 心愿提供一个一站式的综合库,使可解释的 AI 变得简略。

以下是 OmniXAI 提供的与其余相似库的比照

https://avoid.overfit.cn/post/1d08a70ed36a41a481d9f2a66b01971a

作者:Moez Ali

正文完
 0