反事实分析和 What-if
What-if 反事实解决了“如果更改操作输入,模型会预测什么”这一问题。 使用反事实能够根据机器学习模型对输入(特征)更改的反应方式来理解和调试该模型。
标准可解释技术粗略评估机器学习模型,或按照特征的预测重要性将特征排名。 相比之下,反事实分析通过“询问”模型来确定对特定数据点的哪些更改会翻转模型决策。
此类分析有助于将独立的相关特征的影响分隔开来。 它还有助于更细致地了解特征需要发生多大的变化才能看到分类模型的模型决策翻转和回归模型的决策变化。
负责任 AI 仪表板的反事实分析和 What-if 组件有两项功能:
- 生成一组对特定点更改最小的示例,从而改变模型的预测(显示具有相反模型预测的最接近的数据点)。
- 使用户能够生成自己的 What-if 扰动,以了解模型对特征变化的反应。
负责任 AI 仪表板的反事实分析组件的最大区别之一是,你可以确定哪些特征可以改变,以及这些特征对于有效和合乎逻辑的反事实示例的允许范围。
此组件的功能来自 DiCE 包。
需要实现以下目的时,可以使用 What-If 反事实:
- 通过扰乱性别、种族等敏感属性,然后观察模型预测是否发生变化,来以决策评估者身份检查公平性和可靠性标准。
- 深入调试特定的输入实例。
- 为用户提供解决方案,并确定他们应该怎么做才能从模型中获得所需的结果。
如何生成反事实示例?
为了生成反事实,DiCE 实现了一些与模型无关的技术。 这些方法适用于任何非透明盒分类器或回归器。 它们基于对输入点附近的点进行采样,同时基于接近度(以及可选的稀疏性、多样性和可行性)优化损失函数。 目前支持的方法有:
- 随机搜索:此方法对某个查询点附近的点进行随机采样,并将反事实作为其预测标签为所需类的点返回。
- 遗传搜索:此方法使用遗传算法对点进行采样,并考虑到优化与查询点的接近度、尽可能少地更改特征,并在生成的反事实中寻找多样性这些综合目标。
- KD 树搜索:此算法从训练数据集中返回反事实。 它基于距离函数在训练数据点上构造一个 KD 树,然后将最近的点返回给生成所需预测标签的特定查询点。
后续步骤
- 了解如何通过 CLIv2 和 SDKv2 或工作室 UI 生成“负责任 AI”仪表板。
- 了解负责任 AI 仪表板支持的反事实分析和 what-if 扰动可视化效果。
- 了解如何根据在负责任 AI 仪表板中观察到的见解生成负责任 AI 记分卡)。