为什么我的模型不工作?
文章讨论了机器学习中常见的陷阱,这些陷阱导致模型在实际应用中失败,尽管在测试时表现良好。关键问题包括误导性数据(隐藏变量、虚假相关性、标注错误)、数据泄露(在分割前进行预处理、前瞻偏差、迭代测试集过拟合)以及不恰当的指标选择(例如在数据不平衡时使用准确率)。作者推荐了REFORMS检查表以及使用显著性图、多样化基准和正确的数据分割等实践来提高模型的可靠性。
本文基于作者20年的机器学习经验以及论文《如何避免机器学习陷阱:给学术研究者的指南》,概述了导致模型在生产环境中失败的常见错误。首先,误导性数据:隐藏变量(例如新冠胸部扫描中的人体方向)和虚假相关性(例如坦克图像中的背景像素)会导致模型学习无关模式。对抗攻击正是利用了这些虚假相关性。即使是百分之几的标注错误,也会扭曲基准比较。其次,数据泄露:在分割测试数据之前,对完整数据集执行数据相关的预处理(如中心化、缩放、特征选择、数据增强)会泄露信息,导致性能虚高。时间序列预测中的前视偏差以及对测试集的迭代过拟合(即针对测试集训练)是常见的数据泄露形式。第三,不恰当的指标:在不平衡数据上使用准确率可能具有误导性。作者推荐了用于基于机器学习的科学研究的REFORMS检查清单,以及诸如检查显著性图、使用多个基准测试和确保正确数据分割等实践。
来源: The Gradient —
原文
