从安装到部署:XAI工具包的完整工作流指南

【免费下载链接】xai XAI - An eXplainability toolbox for machine learning 【免费下载链接】xai 项目地址: https://gitcode.com/gh_mirrors/xa/xai

XAI是一个以AI可解释性为核心设计的机器学习库,包含各种用于数据分析和模型评估的工具。本指南将带你完成从安装到部署的完整工作流程,帮助你轻松上手这个强大的机器学习可解释性工具包。

🚀 快速安装XAI工具包

系统要求

  • Python 3.5、3.6或3.7版本
  • 已安装uv包管理器(推荐)

安装步骤

首先安装uv,一个快速的Python包管理器:

curl -LsSf https://astral.sh/uv/install.sh | sh

然后安装XAI:

uv pip install xai

如果你想从源代码安装,可以克隆仓库并运行:

git clone https://gitcode.com/gh_mirrors/xa/xai
cd xai
uv pip install -e .

验证安装

安装完成后,你可以使用以下命令清理构建 artifacts和缓存文件,验证安装是否成功:

uv run xai-clean

🔍 数据科学工作流详解

XAI库基于负责任机器学习的8项原则设计,提供了端到端的可解释性解决方案。下面是使用XAI的典型工作流程:

XAI工作流程 XAI工作流程概览:展示了数据分析、模型评估和生产监控三个核心步骤

1️⃣ 数据分析阶段

XAI提供了强大的数据分析工具,帮助你识别数据中的不平衡和潜在问题。

首先加载示例数据集:

import xai.data
df = xai.data.load_census()
df.head()

数据集预览 XAI内置的人口普查数据集预览

检查数据不平衡

查看单列类别的不平衡情况:

ims = xai.imbalance_plot(df, "gender")

性别不平衡分析 性别列的类别不平衡可视化

查看多列交叉的不平衡情况:

im = xai.imbalance_plot(df, "gender", "loan")

多列交叉不平衡分析 性别和贷款状态交叉的类别不平衡可视化

数据平衡处理

使用上采样/下采样平衡数据:

bal_df = xai.balance(df, "gender", "loan", upsample=0.8)

数据平衡处理 使用XAI平衡数据后的效果

特征相关性分析

可视化特征间的相关性:

_ = xai.correlations(df, include_categorical=True, plot_type="matrix")

相关性矩阵 特征相关性矩阵可视化

或者使用层次聚类树状图:

_ = xai.correlations(df, include_categorical=True)

相关性树状图 特征相关性层次聚类树状图

2️⃣ 模型评估阶段

在训练模型后,XAI提供了多种评估工具来分析模型性能和公平性。

特征重要性分析
def get_avg(x, y):
    return model.evaluate(f_in(x), y, verbose=0)[1]

imp = xai.feature_importance(x_test, y_test, get_avg)
imp.head()

特征重要性 使用置换法计算的特征重要性

模型性能指标可视化
_ = xai.metrics_plot(y_test, probabilities)

模型性能指标 模型整体性能指标可视化

按特定列分析性能差异:

_ = xai.metrics_plot(
    y_test,
    probabilities,
    df=x_test_display,
    cross_cols=["gender"],
    categorical_cols=categorical_cols)

性别交叉性能指标 不同性别群体的模型性能对比

混淆矩阵分析
xai.confusion_matrix_plot(y_test, pred)

混淆矩阵 模型预测结果的混淆矩阵

ROC曲线分析
_ = xai.roc_plot(y_test, probabilities)

ROC曲线 模型的ROC曲线

按保护属性分组的ROC曲线:

protected = ["gender", "ethnicity", "age"]
_ = [xai.roc_plot(
    y_test,
    probabilities,
    df=x_test_display,
    cross_cols=[p],
    categorical_cols=categorical_cols) for p in protected]

分组ROC曲线 不同人口统计群体的ROC曲线对比

📊 高级分析功能

XAI还提供了一些高级分析功能,帮助你更深入地理解模型行为。

概率阈值分析

d = xai.smile_imbalance(
    y_test,
    probabilities)

概率阈值分析 不同概率阈值下的模型性能分析

手动审核阈值分析

d = xai.smile_imbalance(
    y_test,
    probabilities,
    bins=9,
    threshold=0.75,
    manual_review=0.375,
    display_breakdown=False)

手动审核阈值分析 展示添加手动审核阈值后的模型性能提升

📚 更多资源

通过本指南,你已经了解了XAI工具包的安装方法和核心功能。开始使用XAI来构建更透明、更公平的机器学习模型吧!

【免费下载链接】xai XAI - An eXplainability toolbox for machine learning 【免费下载链接】xai 项目地址: https://gitcode.com/gh_mirrors/xa/xai

Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐