反事实分析和假设分析

What-if 反事实解决了“如果更改操作输入,模型会预测什么”这一问题。 它们通过显示它对输入(功能)更改的反应来帮助你了解和调试机器学习模型。

标准可解释技术粗略评估机器学习模型,或按照特征的预测重要性将特征排名。 相比之下,反事实分析通过“询问”模型来确定对特定数据点的哪些更改会翻转模型决策。

这种分析可以帮助您将相关特征的影响单独分离出来。 它还有助于更细致地了解特征需要发生多大的变化才能看到分类模型的模型决策翻转和回归模型的决策变化。

负责任 AI 仪表盘的反事实分析和假设组件有两个功能:

  • 生成一组对特定点更改最小的示例,从而改变模型的预测(显示具有相反模型预测的最接近的数据点)。
  • 使用户能够生成自己的 What-if 扰动,以了解模型对特征变化的反应。

负责 AI 仪表板的反事实分析组件的主要区别之一是,可以识别哪些功能因有效和逻辑反事实示例而异及其允许的范围。

此组件的功能来自 DiCE 包。

需要实现以下目的时,可以使用 What-If 反事实:

  • 通过扰乱性别、种族等敏感属性,然后观察模型预测是否发生变化,来以决策评估者身份检查公平性和可靠性标准。
  • 深入调试特定的输入实例。
  • 为用户提供解决方案,并确定他们应该怎么做才能从模型中获得所需的结果。

如何生成反事实示例?

为了生成反事实,DiCE 使用与模型无关的技术。 这些方法适用于任何不透明框分类器或回归器。 在优化基于邻近度的损失函数时,他们会在靠近输入点的地方进行采样。 损失函数还可以包括稀疏、多样性和可行性术语。 目前支持的方法有:

  • 随机搜索:此方法在查询点附近随机选择样本,并返回预测标签符合所需类别的反事实点。
  • 基因搜索:此方法使用遗传算法对点进行采样。 它优化与查询点的邻近度,更改尽可能少的功能,并寻求生成的反事实之间的多样性。
  • KD 树搜索:此算法从训练数据集中返回反事实。 它基于距离函数在训练数据点上生成 KD 树。 然后,它将返回与具有所需预测标签的查询点最近的点。

后续步骤

  • 了解如何通过 YAML 和 Pythonstudio UI
  • 了解责任 AI 仪表板中所支持的反事实分析和假设干扰可视化。
  • 了解如何根据在负责任 AI 仪表板中观察到的见解生成负责任 AI 记分卡