模型超参数

超参数是模型外部的配置选项。这些是无法从数据确定的值。超参数用于控制学习过程的速度和质量。

选择主干和预训练的权重

主干是指神经网络架构中用于特征提取的可互换组件。骨干网和预训练权重是模型的一部分。如今,更改主干和权重就像修改代码中的一个参数一样简单。这是对象检测和语义分割模型中使用的常用技术。一些流行的主干网络包括 ResNet 18、ResNet 34 和 VGG 19。

名称的非数字部分代表网络架构(例如 ResNet、VGG、ResNext)。该数字表示网络中的层数。数字越大,主干内部可训练的参数越多,模型容量越大。然而,更大的主干网需要更多的训练数据,并且推理延迟也会增加。

自动视觉检测项目中可用的数据量通常很小,每类大约 100 个。在实践中,我们通常从 ResNet 18、ResNet 34 和 ResNet 50 中选择主干。我们建议从大型网络主干开始,以确保我们能够充分适应训练数据。如果在训练中发现严重的过拟合问题,或者对模型延迟有严格要求,请使用较小的主干网。

检测制造缺陷的主干

目前还没有对制造数据中不同模型架构的性能进行彻底的审查。我们确实有一些研究可以参考。测试了 16 种流行的卷积架构在胸部 X 射线上的传输性能。这些发现发表在《计算机视觉和模式识别》杂志上,2021 年 1 月。

CheXtransfer:胸部 X 射线判读 ImageNet 模型的性能和参数效率 论文报告了 EfficientNet 和 MobileNet 等较新的架构通常表现不如 ResNet 等较旧的架构。因此,我们建议默认使用ResNet架构。

我们强烈建议使用 COCO 或 ImageNet 数据集的权重来初始化模型。这为更快、更准确的训练提供了一个更好的起点。 COCO 和 ImageNet 数据集大部分是动物、家具和现实生活中的其他常见物体。显然,这些显然不是制造中的缺陷图像。然而,根据经验,我们发现它们在训练时提供了更好的模型性能。

该建议已得到 CheXtransfer 论文的验证。研究人员发现,ImageNet 可以显着提高医学图像数据集上的模型性能。

模型训练的有效图像尺寸

为了有效捕获小缺陷,通常使用高分辨率工业相机收集制造图像。这些图像是非常大的文件。我们见过很多超过 6.75MB、大于 1500×1500 像素的项目。如此大的图像会减慢训练和推理速度。为了减少延迟,我们通常通过以下几种方式缩小图像大小:

  1. 如果仅对特定区域感兴趣,请将图像裁剪到感兴趣的区域。然后将裁剪后的图像输入到模型中。
  2. 将原始图像缩小到合理的比例。在扫描数据集的初始步骤中,发现了最小的缺陷。缩小尺寸后,最小的缺陷必须清晰可见,缩小尺寸后至少占据 5×5 像素。
  3. 如果图像要以其原始分辨率传递,请将图像裁剪为 16 个块或四行四列。然后将它们分批输入模型。这种方法会打破图像中的全局上下文。仅当需要一些局部特征来预测缺陷时才有效

超参数调优

有几个超参数可以根据输入数据分布进行调整。在Landing AI,我们通常根据训练集中的数据分布调整以下超参数。

  • 对象检测中的类权重调整 - 每个类的权重可以根据训练数据中相对于其他类的样本数量进行调整。
  • 对象检测中的锚参数调整 - 可以根据训练集中对象的尺寸调整锚框的大小和比率。
  • 历元数(模型对整个训练数据集完成的传递次数)——当验证损失收敛时,对训练作业应用早期停止技术。用户无需调整训练作业的纪元数。

根据我们过去的经验,我们发现在干净的数据集上进行基本的超参数调整可以比在标签严重、噪声较大的数据集上进行耗时、昂贵的参数搜索获得更好的性能。与模型训练相比,我们认为 MLE 的时间最好花在收集高质量标签和集成人工智能系统上。因此,我们建议 MLE 将大部分时间投入到数据迭代而不是模型迭代上。