负责任 AI 是一种以安全、可信、合乎道德的方式评估、开发和部署 AI 系统,并做出负责任决策和行动的方法。
Responsible AI Toolbox 是一套工具,提供一系列模型与数据探索和评估的用户界面和库,帮助用户更好地理解 AI 系统。这些界面和库使 AI 系统的开发者和利益相关者能够更负责任地开发和监控 AI,并采取更好的数据驱动行动。
该工具箱由三个仓库组成:
Responsible AI 仪表板是一个一体化界面,使您能够轻松完成模型调试和决策制定的不同阶段。这种可自定义的体验可以朝多种方向发展,从整体分析模型或数据,到对感兴趣的群体进行深入分析或比较,再到解释和扰动单个实例的模型预测,以及向用户提供业务决策和行动信息。
为了实现这些功能,仪表板汇集了多个开源工具包在以下领域的理念和技术:
Responsible AI 仪表板旨在实现以下目标:
本仓库包含演示如何使用此组件的 Jupyter notebook 示例。点击此处开始使用。
使用以下 pip 命令安装 Responsible AI Toolbox。
如果在 jupyter 中运行,请确保安装后重启 jupyter 内核。
pip install raiwidgets
Responsible AI Toolbox 的优势在于其可定制性。它使用户能够设计满足其特定需求的量身定制的端到端模型调试和决策工作流。需要一些灵感吗?以下是一些示例,展示如何组合 Toolbox 组件以不同方式分析场景:
请注意,模型概览(包括公平性分析)和数据探索器组件默认处于启用状态!
表格数据示例:
文本示例:
视觉示例:
此 Responsible AI Toolbox API 支持使用 Python numpy.ndarray、pandas.DataFrame、iml.datatypes.DenseData 或 scipy.sparse.csr_matrix 格式的数据集训练的模型。
Interpret-Community 的解释函数接受模型和管道作为输入,只要模型或管道实现了符合 Scikit 约定的 predict 或 predict_proba 函数。如果不兼容,您可以将模型的预测函数包装成一个包装函数,将输出转换为受支持的格式(Scikit 的 predict 或 predict_proba),然后将该包装函数传递给所选的可解释性技术。
如果提供了管道脚本,解释函数会假定运行中的管道脚本返回预测结果。该仓库还支持使用 PyTorch、TensorFlow 和 Keras 深度学习框架训练的模型。
Responsible AI Toolbox 中的工具还可以与提供商(例如 Azure 认知服务)以 API 形式提供的 AI 模型一起使用。要查看示例用例,请参阅以下文件夹:
| 仓库 | 涵盖工具 |
|---|
| Responsible-AI-Toolbox 仓库(此处) | 本仓库包含四个用于模型评估和决策制定的可视化组件: 1. Responsible AI 仪表板,一个一体化界面,汇集了工具箱中多个成熟的负责任 AI 工具,用于对模型进行全面的负责任评估和调试,并做出明智的业务决策。借助该仪表板,您可以识别模型错误、诊断这些错误发生的原因并进行缓解。此外,因果决策功能可为您的利益相关者和客户提供可操作的建议。 2. 错误分析仪表板,用于识别模型错误并发现模型表现不佳的数据群体。 3. 可解释性仪表板,用于理解模型预测。该仪表板由 InterpretML 提供支持。 4. 公平性仪表板,用于通过跨敏感特征和群体的各种群体公平性指标来理解模型的公平性问题。该仪表板由 Fairlearn 提供支持。 |
| Responsible-AI-Toolbox-Mitigations 仓库 | Responsible AI Mitigations 库可帮助 AI 从业者探索在模型对特定数据群体表现不佳时可能最合适的各种测量和缓解步骤。该库目前有两个模块: 1. DataProcessing,提供用于提高特定群体模型性能的缓解技术。 2. DataBalanceAnalysis,提供用于诊断因类别标签或特征值的数据不平衡而导致的错误的指标。 3. Cohort:提供用于处理和管理群体的类,允许通过简单直观的界面为每个群体创建自定义管道。该模块还提供学习不同群体的不同解耦估计器(模型)并将其组合的技术,以优化群体公平性的不同定义。 |
| Responsible-AI-Tracker 仓库 | Responsible AI Toolbox Tracker 是一个 JupyterLab 扩展,用于管理、跟踪和比较机器学习实验结果以改进模型。使用此扩展,用户可以在同一框架内查看模型、代码和可视化工件,从而加快模型迭代和评估过程。主要功能包括: 1. 管理和链接模型改进工件 2. 分群模型评估与比较 3. 与 Responsible AI Mitigations 库集成 4. 与 mlflow 集成 |
| Responsible-AI-Toolbox-GenBit 仓库 | Responsible AI Gender Bias (GenBit) 库可帮助 AI 从业者衡量自然语言处理(NLP)数据集中的性别偏见。GenBit 的主要目标是分析您的文本语料库并计算指标,以洞悉语料库中存在的性别偏见。 |
| Responsible AI 仪表板流程 | 用例 |
|---|
| Model Overview -> Error Analysis -> Data Explorer | 识别模型错误,并通过了解底层数据分布来诊断错误 |
| Model Overview -> Fairness Assessment -> Data Explorer | 识别模型公平性问题,并通过了解底层数据分布来诊断问题 |
| Model Overview -> Error Analysis -> Counterfactuals Analysis and What-If | 通过反事实分析诊断单个实例中的错误(导致不同模型预测的最小变化) |
| Model Overview -> Data Explorer -> Data Balance | 了解由数据不平衡或特定数据群体代表性不足导致错误和公平性问题的根本原因 |
| Model Overview -> Interpretability | 通过理解模型如何做出预测来诊断模型错误 |
| Data Explorer -> Causal Inference | 区分数据中的相关性与因果关系,或决定应用哪些最佳处理以获得正向结果 |
| Interpretability -> Causal Inference | 了解模型用于决策的因素是否对现实世界结果具有因果影响 |
| Data Explorer -> Counterfactuals Analysis and What-If | 解答客户关于下次可以采取什么不同措施以从 AI 获得不同结果的问题 |
| Data Explorer -> Data Balance | 全面了解数据,识别比其他特征更常获得正向结果的特征,并可视化特征分布 |