当前位置: 首页 > 科技观察

移除ImageNet标签错误,模型排名发生大变化

时间:2023-03-23 10:33:57 科技观察

去掉ImageNet标签错误,模型排名变化很大那些基于错误标签的研究很可能会被推翻和重复。从这个角度来看,管理好数据集的质量还是很重要的。很多人会使用ImageNet数据集作为benchmark,但是基于ImageNet预训练模型,最终结果可能会因数据质量不同而有所不同。在这篇文章中,来自Adansons的工程师KenichiHiguchi重新研究了《 Are we done with ImageNet? 》文章中的ImageNet数据集,并在去除错误标记的数据后重新评估了发布在torchvision上的模型。RemovingbaddatafromImageNetandre-evaluatingthemodel本文将ImageNet中的labelerrors分为三类,如下。(1)错误标注的数据(2)对应多个标签的数据(3)不属于任何标签的数据综上所述,大约有14000条错误数据。考虑到评估数据的数量是50000条,可以看出错误数据的比例是非常高的。下图是一些有代表性的误差数据。方法本研究不对模型进行重新训练,只剔除错误标注的数据,即上述(1)类错误数据,而从评估数据中排除所有错误数据,即(1)-(3)错误的数据来重新检查模型的准确性。为了去除错误数据,需要描述标签错误信息的元数据文件。在此元数据文件中,如果包含类型(1)-(3)的错误,则该信息将在“校正”属性中描述。该研究使用了一种名为AdansonsBase的工具,该工具通过将数据集链接到元数据来过滤数据。这里测试了10个模型,如下图。用于测试的10个图像分类模型的结果如下表所示(数值是以%为单位的准确率,括号中的数字为排名)。10个分类模型的结果基于AllEval数据,剔除错误数据类型(1),平均准确率提高了3.122分;排除所有错误数据(1)到(3),平均准确率提高了11.743点。正如预期的那样,排除坏数据后,准确率全面提高,这是毫无疑问的,因为与干净数据相比,坏数据的存在非常容易出错。在不排除坏数据的情况下进行评估,当坏数据(1)~(3)全部被排除时,模型的准确率排名发生变化。本文错误数据(1)有3670条,占全部5万条数据的7.34%,去除后准确率平均提高约3.22个点。当错误的数据被剔除后,数据规模发生了变化,单纯的比较精度可能会出现偏差。结论虽然没有特别强调,但在进行评估训练时使用准确标记的数据很重要。以前的研究在比较模型之间的准确率时可能会得出错误的结论。所以应该先评估数据,但这真的可以用来评估模型的性能吗?很多使用深度学习的模型往往不屑于对数据进行反思,而是急于通过模型的表现来提升准确率等评价指标,即使评价数据中包含错误数据,也没有经过准确处理。在创建自己的数据集时,比如在业务中应用人工智能时,创建高质量的数据集直接关系到提高人工智能的准确性和可靠性。本文的实验结果表明,仅提高数据质量就可以提高约10个百分点的准确率,这表明在开发AI系统时,不仅需要改进模型,还需要改进数据集。但是,要保证数据集的质量并不容易。虽然增加元数据的数量以正确评估AI模型和数据的质量很重要,但管理起来可能很麻烦,尤其是对于非结构化数据。