建立有效的机器学习(ML)系统意味着要问很多问题,仅仅训练一个算法模型然后走开是不够的,好的从业者会充当侦探,探索以更好地理解他们的模型:数据点的改变将如何影响模型的预测?它对不同的群体有不同的表现吗?
回答这些问题并不容易。探索“假设”场景通常意味着编写定制的一次性代码来分析特定的模型,这个过程不仅效率低下,而且使得非程序员很难参与ML模型的成形和改进过程。Google AI PAIR计划的一个焦点是让广泛的人员更容易检查、评估和调试ML系统。
今天,我们启动了What-If工具,这是开源TensorBoard web应用程序的新特性,它允许用户在不编写代码的情况下分析ML模型,给定指向TensorFlow模型和数据集的指针,What-If工具为探索模型结果提供了交互式可视化界面。
What-If显示一组250张脸图片,以及他们从一个检测微笑的模型中得到的结果。
What-If工具具有大量特性,包括使用Facet自动可视化数据集、从数据集手动编辑示例并查看这些更改的效果能力,以及部分依赖图的自动生成,该图显示了随着单个特征的改变,模型的预测如何变化,让我们更详细地探讨两个特征。
探索数据场景中的假设场景
反设事实
通过单击按钮,可以将数据池与模型预测不同结果的最相似点进行比较,我们称这些观点为“反事实”,它们可以揭示你的模型的决策边界。或者,你可以手工编辑DATAPONT,并探究模型的预测如何变化。
在下面的截图中,这个工具被用在一个二进制分类模型上,该模型基于UCI人口普查数据集中的公众普查数据预测一个人是否赚取了超过5000美元。这是ML研究人员使用的一个基准预测任务,特别是当分析算法公平性时。我们将很快讨论这个问题,在这种情况下,对于所选的数据点,模型以73%的信心预测该人的收入超过5000美元,该工具已经自动定位数据集中模型预测收入低于5000美元的最相似的人,并将两者并排进行比较,在这种情况下,只有一个小的差异在年龄和职业变化,模型的预测已经翻转。
反事实比较
性能与算法公平性分析
你还可以研究不同分类阈值的影响,同时考虑诸如不同数值公平性标准之类的约束。下面的屏幕截图显示了在开源CelebA数据集上训练的微笑检测器模型的结果,该数据集由名人的带注释的脸部图像组成。
下面,按照是否有褐色头发将数据集中的人脸图像分为两组,对于两组中的每一个,都有一条ROC曲线和预测的混淆矩阵,以及用于在确定脸部在微笑之前设置模型必须有多自信的滑块。在这种情况下,两个组的置信阈值由工具自动设置以优化机会均等。
比较两片数据在微笑检测模型上的性能,并将其分类阈值设置为满足“机会均等”约束
Demos
为了说明What-If工具的性能,我们已经发布了一组使用预训练模型的演示:
检测误分类:一种多类分类模型,它从植物花的四个测量值中预测植物类型,该工具有助于显示模型的决策边界以及导致错误分类的原因,该模型用UCI虹膜数据集进行训练。
二元分类模型中的公平性评估:微笑检测的图像分类模型。该工具有助于评估算法公平性在不同的子群中的算法公平性。为了展示工具如何帮助发现模型中的这种偏差,在没有提供特定人群子集的任何示例的情况下,有目的地训练了模型。评估公平性需要仔细考虑整体环境,但这是一个有用的定量起点。
跨不同子组调查模型性能:根据人口普查信息预测受试者年龄的回归模型。该工具有助于显示模型跨子组的相对性能以及不同特征如何分别影响预测。该模型用UCI人口普查数据集进行了训练。
实践
我们已经在谷歌内部的团队测试了What-If工具,并看到了这种工具的即时价值。一个团队很快发现他们的模型错误地忽略了他们数据集的整个特性,导致他们修复了以前未发现的代码bug;另一个团队使用它来可视化地组织从最佳性能到最差性能的示例,引导他们发现关于他们的模型表现不佳的示例类型的模式。
我们期待着Google内外的人们使用这个工具来更好地理解ML模型,并评估其公平性,该工具代码是开源的,欢迎开发者对What-If工具做更多优化贡献。
248 thoughts on “机器学习模型的无代码探索,谷歌发布What-If 工具”