机器学习模型通常在与其训练集分布一致的预留测试数据上进行评估。然而,当现实世界的数据分布与测试集不同时,此类评估可能会高估模型的性能。模型仍可能以令人意外的方式出错——例如,系统性地错误处理某些输入,而这些输入看起来并不比模型能顺利处理的其他输入更具挑战性。
在 NeurIPS 2021 的“可解释人工智能调试与诊断方法”研讨会上,研究团队将介绍 Defuse 方法。该方法能自动发现模型在特定类型输入上的错误,并提供纠正这些错误的方法。
给定一个训练好的图像分类模型,Defuse 会生成逼真的新图像,这些图像是在模型处理错误的测试集输入基础上变化而来的。接着,Defuse 将误分类的图像归类为高层级的“模型缺陷”——即持续导致错误的一组相似图像。用户因此可以识别其模型可能失败的场景,并训练出更健壮的模型。
在重新训练过程中,研究团队将人工生成的、易导致错误的数据与模型的原始训练数据按参数 λ 控制的比例混合。实验表明,在三个样本数据集的每一个上,都存在一个 λ 值,能使模型在 Defuse 识别的输入类别上保持较高性能,同时基本保留其在原始数据上的性能。
为了促进该问题的进一步研究,研究团队已在 GitHub 上公开了 Defuse 的代码。
为了生成合成图像,研究团队在分类器的训练数据上训练了一个变分自编码器。变分自编码器被训练为输出与其输入相同的数据,但在此过程中,它会产生一个捕捉输入显著特征的向量表示。该向量表示定义了一个潜在空间,其中的邻近性表示数据的相似性。
变分自编码器训练完成后,其潜在空间被用于生成新的图像数据。VAE 的潜在表示是 Defuse 三个主要步骤的基础:识别、蒸馏和修正。
研究团队在三个公共基准数据集上进行了实验,评估了模型在执行修正后,在误分类区域测试数据和原始测试集上的准确性。他们比较了 Defuse 与仅在由标注员标记为分类器错误的识别步骤图像上进行微调的基线方法。总体而言,这些结果表明 Defuse 中的修正步骤能非常有效地纠正识别和蒸馏过程中发现的错误。
Defuse 生成的误分类实例的新颖性:研究团队期望 Defuse 能发现超出可用数据所揭示的、新颖的模型误分类情况。为了验证这一假设,他们比较了 Defuse 提出的错误(误分类区域数据)和误分类的训练数据。研究团队选择了误分类区域中的 10 张图像,并在误分类训练数据中找到了它们的最近邻。结果显示,误分类区域中的数据揭示了与训练集中发现的不同类型的错误。
Krishnaram Kenthapadi。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。