抽象的:
改进 AI 系统需要同时关注数据和模型架构。之前的研究强调以数据为中心,侧重通过数据采集、标记、清理和增强等技术来提高数据质量。虽然数据清理和扩充已被证明可以提高模型的准确性,但数据转换尚未得到充分探索。在这里,我们展示了一个案例研究,展示了数据转换在提高目标检测准确性方面的有效性。我们在执行四种数据转换时保持模型架构、参数和网络配置不变:1) 调整图像大小和裁剪图像以消除噪声,2) 消除标签不一致,3) 校正跨组数据分布以训练更通用的模型,和 4) 执行逆变换以重新计算边界框位置并将它们与未裁剪的图像合并。我们的结果表明,这种以数据为中心的 AI 方法显着提高了模型性能,标记技术的改变导致 >50% 的准确性提高,后处理转换将精度提高了 14%,召回率提高了 1%。
背景:
目标检测在计算机视觉应用中的使用非常广泛。这涉及识别感兴趣的区域并将它们分类为预定义的类别,如徽标或文本。对象检测是实例分割、对象跟踪和 OCR 等计算机视觉任务的基础(Zhao 等人,2019 年)。深度神经网络 (DNN) 在各个领域的部署越来越多,导致许多研究人员致力于提高 DNN 模型的性能。网络架构设计和网络参数优化方面的技术进步促成了深度学习最近的成功(Karimi 等人,2020 年)。人们已经付出了相当大的努力来构建能够准确执行目标检测任务的强大模型,并在某些情况下超越人类感知系统(Liu 等人,2022 年)。
2014 年之后基于深度学习的检测时期表明在提高目标检测模型的准确性方面取得了进展。已经提出了许多架构来实现这一点,包括 RCNN (Girshick et al., 2013)、SPPNet (He et al., 2014)、Faster RCNN (Ren et al., 2015)、SSD (Liu et al., 2015) 、金字塔网络(Lin 等人,2016 年)、RetinaNet(Lin 等人,2017 年)和 YOLO(Redmon 和 Farhadi,2016 年、2018 年;Bochkovskiy、Wang 和 Liao,2020 年;Couturier 等人,2021 年;Im 等人等人,2021 年;李等人,2022 年)。AI 系统的基础在于其代码和数据,这两者在创建稳健模型方面都发挥着关键作用(Patel,2022)。
然而,虽然对模型结构和训练功能给予了很多关注,但用于训练 AI 模型的数据尚未得到充分研究。以数据为中心的提高模型准确性的方法经常被忽视,并且花费大量时间根据有缺陷的数据对模型进行微调。有时,数据本身是模型准确性较低的主要原因,与模型优化无关(Patel,2022)。这种事态最近引起了一些学者的关注,导致对以数据为中心的机器学习和数据进化的重要性进行研究(Liu 等人,2022 年)。
Motamedi、Sakharnykh 和 Kaldewey 提出了一个数据集优化管道,通过数据质量增强和基于 GAN 的数据合成将模型精度提高了 5%(Motamedi、Sakharnykh 和 Kaldewey,2021)。(Mazumder et al., 2022) 发现多个最先进的模型在特定任务上效果很好,因此提高数据集质量可以在不改变算法的情况下提高准确性。(Im et al., 2021) 使用数据预处理技术将对象检测精度提高了 0.1(召回率)和 0.04–0.06 边界框精度。(Mittlefehldt, 2022) 发表的关于松鼠检测器模型的案例研究表明,数据清理和微调边界框将精度从 74% 提高到 96%,召回率从 79% 提高到 91%。
以数据为中心的策略,如删除不准确的标签、添加说明边缘情况的实例、数据预处理(如背景去除、对比度调整、微调注释)以及使用数据增强,是以数据为中心的 AI 中常用的方法(Mazumder 等人. , 2022). 仅仅通过迭代数据集,参与者就将基线准确率从 64.4% 提高到了 85.8%;人类水平表现 (HLP) 为 90.2%(Im等人,2021 年;Whang等人,2021 年;Mazumder 等人,2021 年;Mazumder等人。 , 2022; 米特费尔德,2022 年)。Andrew NG 呼吁转向以数据为中心的人工智能。尽管深度学习在计算机视觉方面取得了重大进展,但很少有人通过数据清理、扩充和转换等技术来研究数据属性如何影响准确性。
一项关于机器学习数据收集的调查(Roh、Heo 和 Whang,2021 年)将机器学习数据收集确定为提高数据质量的主要领域是数据获取、标记和清理。在这三个主要领域中,本案例研究的重点是通过数据转换等以数据为中心的策略来提高目标检测模型的准确性,并探讨标记策略对准确性的影响。
数据集
该数据集包括从立体光度相机获得的 246 个灰度 TIFF 文件,代表轮胎的线性扫描,在黑色表面上具有不同大小的黑色文本标记。由于尺寸变化和表面颜色,使用最先进的模型直接从这些图像中检测文本具有挑战性。这些图像分为两类:一类是从顶部或底部裁剪了部分文本,另一类是没有。标签平等对待部分和全文。图像宽度变化很大,在 43k 和 100k 像素之间的宽度不到 25%,大部分在 100k 和 110k 像素之间,如表 1 所详述。但是,解决这个问题超出了本案例研究的范围。
方法
本案例研究的目的是使轮胎上的监管标记的质量检查过程自动化。捕获了尺寸为 (104912,2048) 的轮胎立体光度图像,并训练了一个深度学习模型来检测轮胎标记以供以后验证。本节概述了为使用不同的数据转换训练更快的 RCNN 模型而进行的实验。基本模型的精度为 0.25,召回率为 0.21,而两者的业务要求均高于 85%。为了提高准确性,考虑了两种方法:以模型为中心的方法和以数据为中心的方法。在探索数据后,选择了以数据为中心的方法,对实验结果进行逐步分析,精确度为 0.93,召回率为 0.90。
数据转换 1:调整大小和裁剪
最先进的模型,例如 Faster RCNN、SSD、Yolo、CenterNet 和 EfficientNet,支持的最大输入数据大小为 1024x1024 像素。因此,此用例中的原始图像需要调整大小和/或裁剪以训练用于检测文本标记和执行 OCR 的模型。这对确定最佳图像转换方法提出了挑战,该方法可以将高分辨率图像转换为 Faster RCNN 模型支持的分辨率,同时保留 OCR 文本的质量。实验 1 涉及将图像大小调整为 1024x1024 分辨率,导致不可读的文本标记。将图像大小调整为 1024x19 同时保持原始图像的纵横比也会产生不可读的文本标记。将图像裁剪为 1024x1024 会导致大多数图像中出现部分文本标记,这不符合检测整个单词/段落的用例要求。为了在保持文本可读性的同时实现网络支持的图像大小,使用了调整大小和裁剪的组合。尝试了大小分辨率和裁剪大小的不同组合,并选择将图像大小调整为 6400x256 并从大小为 640x256 的调整大小的图像中随机裁剪 15 张图像的方法来创建训练数据集。这产生了 3690 张尺寸为 640x256 的裁剪图像,用于训练模型。重新计算相应的边界框坐标以将它们重叠在裁剪图像上,并将数据随机分为训练集、测试集和验证集。使用训练集训练 Faster RCNN 模型,在 0.5 的阈值下得到 0.25 的精度和 0.21 的召回率。
数据改造二:去除标签不一致
为了满足实现 85% 以上的准确率和召回率的业务需求,我们进行了数据分析,以确定有助于实现所需模型准确率的潜在数据质量改进。分析揭示了数据集中标签不一致的问题,如图 8 所示,其中一些词被组合在一个边界框中,而其他词被多个边界框分隔开。
根据 (Brown, 2022),数据不一致会导致 AI 系统混乱。这种认识促使我们更新数据标记过程以确保一致性。为实现这一目标,我们采用了一种策略,根据每个单词或段落之间的距离为它们创建单独的边界框。因此,我们更新了所有图像中 30% 的标签。更新标签后,我们使用与之前相同的配置训练 Faster RCNN 模型。该模型在验证集上达到了令人印象深刻的 0.99 精度和 0.99 召回率。
数据变换3:去除测试集和验证集的偏差
在实现精确率和召回率的显着提高后,我们进行了数据分析以检查过度拟合。我们发现测试集和验证集缺少带有部分文本的图像,导致偏向于全文图像。这使得模型检测部分文本标记的能力降低。为了解决这个问题,我们手动创建了一个新的测试和验证集,其中包含包含部分和完整文本、不同字体大小和类型以及不同亮度级别的图像。我们将剩余的图像添加到训练集,并将数据分成 80% 用于训练集,5% 用于测试集,15% 用于验证集。然后,我们使用与之前相同的配置在新集上训练 Faster RCNN 模型。该模型在验证集上达到了 0.94 的精度和 0.90 的召回率,
数据变换4:逆变换-1
为了满足业务要求,在整张图像上达到 85% 以上的准确率和召回率,在训练和推理之前对高分辨率图像进行了裁剪。尽管在这些裁剪后的图像上实现的精度和召回率是可以接受的,但需要重新计算模型生成的边界框的坐标以覆盖整个图像。为了只检测每个文本标记一次,使用确定性裁剪代替验证集的随机裁剪。创建了 10 个尺寸为 640x256 的裁剪用于推理,并在后处理期间重新计算边界框坐标并将其覆盖在整个图像上。比如crop-2的x轴bounding box坐标是50,经过后期处理后就是640+50 = 690。
数据转换 5:逆变换 — 2
验证集用于使用在上一步中训练的模型预测文本标记的边界框,结果精度为 0.78,召回率为 0.89。但是,这达不到业务所需的准确性。有两种方法可以提高模型的准确性:以模型为中心的方法,涉及修改模型架构或微调超参数,或以数据为中心的方法,涉及转换数据以提高整个图像的准确性。由于该模型在裁剪后的图像上表现良好,但在整个图像上表现出较低的准确性,因此我们选择了以数据为中心的方法并分析了验证集的失败,以确定数据转换可以提高准确性的区域。
测试了几种方法来合并位于裁剪图像边缘的边界框。最初,合并坐标为 0 或裁剪图像宽度的边界框,但这产生了将不同单词的边界框合并在一起的问题。根据数据分析,发现要合并的边界框之间的平均距离为 15 个像素。尝试了不同的阈值来合并具有不同距离的边界框,但由于距离的可变性,这种方法没有提供所需的改进。另一种方法是裁剪具有 10 像素重叠的图像,然后使用某个阈值根据它们之间的距离合并边界框。在边界框的 x 轴和 y 轴上测试了不同的距离阈值后,使用以下标准来合并边界框:
这种方法将精度提高到 0.93,将召回率提高到 0.90。
我们使用逐步以数据为中心的方法来解决实验每个阶段的问题,并使用数据转换提高验证集的准确性,同时在整个实验过程中保持算法/模型和模型配置相同。
结果
结论
Andrew NG 谈到了以数据为中心的方法如何更有价值,并呼吁社区转向以数据为中心。在以数据为中心的 AI 社区中探索了数据清理和数据扩充,并显示出模型准确性的显着提高。我们的案例研究包括三个数据转换,有助于实现物体检测模型的良好准确性,以检测轮胎图像(立体光度图像)上的标记。
· 去除标签不一致
· 手工制作的测试集和验证集,以实现训练、测试和验证集中图像类型的相似分布。
· 用于计算解决方案最终输出的精度和召回率的逆变换。
· 逆变换合并边界框后的后处理
在此案例研究中,我们基于以数据为中心的 AI 范例引入了数据转换以提高模型准确性。除了数据标记对模型精度的影响外,我们还展示了预处理和后处理期间数据转换对模型精度的影响。我们保持模型和模型配置不变,同时使用以数据为中心的方法实现业务所需的精确度和召回率