Convolutional Networks for Voting-based Anomaly Classification in Metal Surface Inspection-论文阅读笔记
Posted wyypersist
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Convolutional Networks for Voting-based Anomaly Classification in Metal Surface Inspection-论文阅读笔记相关的知识,希望对你有一定的参考价值。
Convolutional Networks for Voting-based Anomaly Classification in Metal Surface Inspection
金属表面检测中基于投票的异常分类卷积网络
//2022.5.16日下午16:13开始阅读笔记
论文地址
论文贡献
本文针对于特殊任务中数据集较小而往往会导致模型过拟合出现的问题,作者提出了一种基于预训练权重并使用迁移学习的方法进行调整,然后作者还提出了一种多数投票机制SVM分类器,该SVM分类器可以融合卷积网络的最后三层提取的特征。这种分类器在不需要了解卷积网络性能的情况下是有用的。该方法不仅在分类方面优于传统的手工特征,而且在多个异常和纹理数据集上,与从预先选择的最佳层提取的其他深度卷积网络特征相比,也取得了良好的效果。
论文内容
1.介绍
本文主要关注的是缺陷的分类任务。然后作者接着以具体的数据集进行介绍。AVI异常金属表面检查数据集包含具有广泛照明条件的异常斑块,其中不同类别的异常也具有较大的类内方差和较小的类间方差,如图1所示。因此,对于如此复杂且具有挑战性的异常数据集,需要一个有效的异常分类框架作为合适的解决方案。
典型的特征提取技术包括Gabor滤波器组[4]、尺度不变特征变换(SIFT)[3]和模糊特征[5]。除了异常分类[11],[17,18,19],这些流行的传统特征在许多领域都取得了类似的分类结果。然而,对于小数据集,有必要使用区分性特征提取程序来避免过度拟合。
虽然小型数据集需要具有鉴别特征,但最近,大型数据集(如ImageNet)通过利用卷积神经网络(ConvNets)的变体进行特征提取和分类,已经达到了最先进的性能[7,8],[16],[19],[27]。文献表明,在这些大型数据集上训练的ConvNet在许多分类、识别和分割任务中超过了传统手工特征的性能[1,2],[13,14]。
本文的一个贡献在于利用ConvNet的优势,它通过大型数据集学习通用图像表示,用于小型数据集上的任务。通过迁移学习,这些深度convnet可以用作小型数据集的强大特征提取器。而受益于预先学习的ConvNet功能,由于过度拟合,使用小数据集对分类层进行微调是一项挑战。此外,对于小数据集,ConvNet层的识别能力是不一致的。
因此,在本文中,我们建议通过从最后三层(不包括最后完全连接的层和softmax分类层)提取特征,通过转移学习使用deep ConvNet进行图像表示。此外,为了获得稳定的分类解决方案,我们提出了一种多数投票机制(MVM),通过使用支持向量机(SVM)分类器融合从这三层提取的特征。该框架可用于实现鲁棒分类,而无需事先了解性能最佳的ConvNet及其层。此外,拟议框架的灵活性允许使用任何ConvNet,例如视觉几何组(VGG)的ConvNet。
2.相关工作
A.迁移学习
在文献中,许多在大型数据集(如ImageNet)上训练的CONVnet都用不同的体系结构进行了讨论[7,8],[10]。从包含大量类的大型数据集中学习ConvNet功能的好处是,可以在层中学习通用功能。从这些CONVnet的层中提取的方向等特征可以使用参数调整等技术传输到不同领域的其他数据集[13,14],[22,23]。例如,Oquab等人[22]提出了一种转移学习方法,可以微调convnet的参数,以便在其他数据集上使用学习到的模型。该方法重新训练最后一个完全连接的softmax分类ConvNet层,以便在应用于另一个相对较大的新数据集时提供更适合的模型。
尽管这种微调的ConvNet在分类任务[7]中实现了越来越高的精度,但由于ConvNet参数的过度拟合,微调不适用于小型数据集。虽然这些数据集的域与用于训练ConvNet的域不同,但它仍然可以通过迁移学习[7]、[21]、[23]用作特征提取器。例如,Cimpoi等人证明,要将这些特征传输到其他数据集,不需要进行微调[27]。此外,Razavian等人[21]注意到,当在ImageNet数据集上训练的ConvNet用作场景数据集的特征提取器时,分类精度很高。
B.异常分类
在大多数文献中,使用传统的手工特征提取方法对异常进行了分类。对于金属表面有缺陷的NEU数据集,Song等人表明,使用散射卷积网络(SCN),一种ConvNet,可以获得类似的结果[19]。然而,Pan等人后来证明,诸如密集移位+IFV和局部筛选模式(LSP)等传统特征的表现略好于SCN[18]。然而,这些传统功能的性能仅归因于性能的微小提高。与小型NEU缺陷数据集类似,Haddad等人使用传统手工特征处理半导体单元中的异常分类【33】。虽然传统特征被用于小数据集的异常分类,但Patrick等人声称,另一个ConvNet OverFeat对于相同的NEU数据集表现良好[26]。尽管已对ConvNet进行了异常分类探索,但只有一个预先选择的ConvNet层,例如OverFeat中的第一个完全连接层,始终用于分类。此外,使用单个线性SVM分类器对这些选定ConvNet层的特征进行训练。
在我们的工作中,我们建议利用深度ConvNets的转移学习的优点对小型数据集进行异常分类。与转移学习的标准方法【22】、【27】不同,我们提出了MVM,使用SVM分类器组合来自ConvNet多层的特征,而不是使用来自单个预定义层的特征。除了提供特征识别能力的稳定性外,不需要任何深层网络中最佳性能层的先验知识。
3.基于深度神经网络的异常分类
本文提出了一种基于深度神经网络的转移学习的分类框架,用于异常分类任务中的特征提取。图2显示了拟议的框架,该框架使用从ImageNet学习的ConvNet提取多个深度特征,然后使用线性SVM分类器进行分类。最后,还提出了一种多数投票机制(MVM)作为通用分类框架,用SVM分类器将提取的特征组合起来。
A.深度卷积网络
作者首先说明包含通用特征的卷积网络具有广泛的应用。接着,作者说明了使用不同复杂程度的骨干网络均适用于本文提出来的框架。
作者又说明了:虽然该框架允许使用任何ConvNet,但我们建议使用VGG deep模型作为比较的基础,因为使用从ConvNet更深层次提取的特征可以增加分类[9]、[10]、[21]。这些模型由不同的体系结构组成,这些体系结构遵循LeNet和AlexNet的传统ConvNet体系结构【6】、【8】。根据Simonyan等人[8]和Chatfield等人[23]的培训,它们包括VGG-S、VGG-F、VGG-M、VGG-M-128、VGG-M-1024、VGG-M-2048、VGG-16和VGG-19。此外,当在更大的数据集上测试时,VGG模型比其他ConvNet(如DeCAF和AlexNet)表现更好[16]、[23]、[27]。因此,在实验中,我们使用VGG ConvNets作为默认值。
B.使用卷积网络传递特征
对于大型纹理和缺陷数据集的分类,DenseSIFT+IFV等传统特征和编码方法已显示出良好的结果【16】、【18、19】、【27】。当样本数较多时,可以提取高分辨特征并训练通用分类器。然而,对于小型数据集,使用简单的传统特征和编码器学习通用特征和分类器是一个挑战。相反,需要强大的功能,例如使用大型数据集训练的深层转换层中的功能。然而,专门使用小数据集训练的ConvNet也存在过度拟合问题。
ConvNet需要一个大的数据集,以确保模型能够在不过度拟合的情况下拟合数据集,因为需要调整许多参数。与从头开始训练convnet不同,那些在大型数据集(如ImageNet)上训练过的convnet可以用来提取其他数据集的特征。通常,对于任何训练好的ConvNet用于迁移学习,使用任务的数据集重新训练分类层。然而,对于小数据集,微调会导致过度拟合。因此,我们移除网络的最后一个完全连接和softmax分类层,并利用剩余的ConvNet进行特征提取。
C. 多层深层特征提取
由于各层对小数据集的区分能力各不相同,因此使用了来自各个深层ConvNet层的深层特征。Razavian等人[21]证明,随着深层特征的提取,分类会增加。另一方面,Cimpoi等人表明,第二个完全连接(SFC)层的特征在材料数据集的大纹理上表现一致[27]。然而,对于较小的数据集,情况并非如此,因为第一个完全连接(FFC)层和SFC层之间交替出现最具辨别力的特征,这两个层都代表全局图像。此外,图像局部区域中最后一个卷积(LC)层的卷积特性允许将其解释为局部图像描述符[27]。为了确保在特征提取中同时表示局部和全局图像描述符,使用LC、FFC和SFC层的更深层进行特征提取。
D. 多层深层特征分类
经证明,由SVM分类器补充的ConvNet特征改善了数据集的分类,类似于ImageNet【21】。除了允许在不过度拟合的情况下学习区分性分类器(尽管数据集很小),SVM还可以与公共缺陷和纹理数据集的先前分类工作进行比较【11】、【18】、【27】。因此,这些分类器用于训练每个提取的深层特征【18】。
使用三种线性SVM分类器,即SVM LC、SVM FFC和SVM SFC,分别从LC、FFC和SFC层训练深层特征。这些分类器用于使用测试集对从相应层提取的特征进行分类。各层的分类标签(预测LC、FFC和SFC)仅基于提取的特征并在该特定层上训练分类器。
E.多数投票机制
虽然SFC层在大型数据集中的性能是一致的[27],但在小型数据集中性能最好的层完全取决于数据集。尽管FFC和SFC层之间的性能存在这种波动,但SVM分类器必须具有鲁棒性才能处理这种不稳定性。因此,MVM也是通过利用所有选择层的特征和分类器来确定分类输出的。
在这个建议的机制中,所有预测LC、FFC和SFC的大部分被指定为预测标签。当所有预测都不同且没有多数预测时,条件优先级也被分配给在大多数ConvNet中具有最佳平均性能的层。基于实验,我们提出将预测FFC作为条件优先级。
此外,当在任何深度网络中都没有关于最佳性能层的先验知识时,MVM还用于增强分类结果。因此,我们的框架非常灵活,允许使用任何ConvNet。由于ConvNet的最佳性能层依赖于数据集,特别是对于小型数据集,因此该机制通过减少确定最佳性能层的需要来提高效率。
4.实验结果
本节比较了提议的分类框架在三个领域的数据集上的有效性,即工业AVI异常数据集、公共缺陷和材料数据集上的基准纹理。所有数据集都以材质的纹理特征为主。选择24x224图像,以符合224×224×3的输入架构。对于大多数ConvNet,LC、FFC和SFC层的特征向量的尺寸分别为14x14x512、1x4096和1x4096。另一方面,对于VGG-M-128、VGG-M-1024和VGG-M-2048,其各自SFC层的特征为1x128、1x124和1x2048。为了对从小数据集中提取的特征训练强分类器,根据每个数据集的实验设置将输入数据分成训练集和测试集。平均多类分类准确率被用作衡量标准,以比较所提出框架的有效性。
A.AVI异常数据集
AVI数据集包含来自五个独特类别的局部异常补丁,即图1中的Melt、Plusmetal、Scratch、Skuff和Shadowing。各类别中分别有30、40、20、180和50个异常样本。这个小数据集在每个类别中的异常样本数量不均衡,这对分类任务来说是一个挑战。此外,各类异常(如擦伤和擦伤)之间的类间方差很低。另一方面,每个异常类别中的类内方差非常高,例如冥王星中的样本彼此非常不同。对于这个AVI异常数据集,根据10次运行的平均分类精度对实验进行评估。对于每次运行,数据集随机分为训练数据和测试数据,其中一半数据集用于训练。
1.跨越深度卷积层的分类。对于图3所示的八个选定的深度模型,比较在每个ConvNet层提取的特征的性能。在这个小数据集上,使用线性SVM分类器来描述每个ConvNet层的鉴别能力。随着从更高层提取深层特征,所有CONVnet的性能都呈上升趋势。可以观察到,最佳性能通常来自每个ConvNet的最后三层,这三层对应于LC、FFC和SFC层。与Razavian等人[21]的结论类似,来自更高层的特征在具有挑战性的AVI异常数据集的分类中也表现良好。因此,在所提出的框架中使用这三层来提取深层特征是有效的。
2. 深度特征与MVM的比较。表一比较了从LC、FFC和SFC层以及MVM中提取的深度特征的性能,并将这些层中的每一层作为优先级。对于该数据集中的这些CONVnet,性能最好的层主要在FFC和SFC之间交替。然而,这种性能的不稳定性可以使用所提出的MVM来解决,因为它不需要关于最佳性能层的先验知识。对于大多数ConvNet来说,MVM的性能是最好的,或接近其各自最佳层的第二位。例如,VGG-19的最佳深度特性FFC,实现了76.59%的准确率,而其对应的具有预测FFC条件优先级的最佳MVM,MVM(FFC)的准确率为75.26%。此外,MVM(FFC)与其他单层深度特征以及其他两个MVM(在所有网络的平均精度方面具有不同的条件优先级)相比,表现最好。因此,我们使用MVM(FFC)和VGG-19作为基线,在以下实验中进行比较,VGG-19在所有CONVnet中实现了最佳MVM(FFC)性能,用MVM-VGG-19表示。
3. 与传统手工制作功能的比较。传统特征(如灰度直方图、模糊(Blur)[5]、Gabor滤波器组(Gabor filter bank)[4]和DenseSIFT(DenseSIFT)[17])以及SPM(SPM)[24]、SC(SC)[25]和IFV(IFV)[18]等技术与基线进行了比较,如表II所示。使用线性SVM分类器的这些手工特征的准确率低于52%。然而,基线MVM-VGG-19达到75.26%,比传统功能至少高出23%。值得一提的是,在所有ConvNet中使用深度功能的表现优于最好的手工制作功能。这些实验表明,对于具有不同类间和类内方差的异常的小数据集,所提出的框架比传统特征更具区分性。
我们的框架的基线MVM-VGG-19具有预测FFC的条件优先权,进一步分析,以便在金属表面缺陷和材料纹理的其他公共数据集上进行分类。
B.NEU缺陷数据集
NEU数据集也是一个类似纹理的小缺陷数据集,由300个局部缺陷图像组成,分别对应于钢表面上的六种缺陷类别,如图4[19]所示。值得注意的是,与AVI异常数据集中最主要的类别相比,该公共数据集的每个类别的训练样本都更多。
虽然DenseSIFT+IFV在该数据集上具有较高的准确性,但AVI数据集并非如此【18】。因此,使用Pan等人[18]的实验设置,将基线MVM-VGG-19与最先进的结果进行比较,如表三所示。除了超过OverFeat[26]和SCN[19]等其他ConvNet的性能外,MVM-VGG-19的性能也与其他最先进的传统功能(如局部二进制模式(LBP)、LSP和DenseSIFT+IFV)相当。可以观察到,对于该缺陷数据集,传统特征和建议的基线都实现了高分类。尽管缺乏关于性能最佳的ConvNet层的先验信息,但所提出的机制在应用于该数据集时仍具有稳定性。
C.材料纹理数据集
CUReT[28]、UMD[32]、UIUC[29]、KTH-TIPS[30]和KTH-TIPS2[31]是用于材料纹理分类的一些大型基准数据集。虽然这些公共数据集具有类似于异常和缺陷数据集中金属表面的纹理特性,但它们也更大,并且具有光照不变性。使用每个数据集各自的实验设置,将MVM-VGG-19的性能与最先进的ConvNet功能进行比较,如表IV[11],[27]所示。对于几乎所有的数据集,与之前的方法相比,MVM-VGG-19的性能相当好。即使是KTH-TIPS-2b,MVM-VGG-19的性能也可与其最佳性能相媲美。虽然在这些以前的方法中,预先选择的单层用于特征提取,但所提出的方法不需要关于单层性能的先验知识。与只使用全局图像描述符的预选单层特征不同,我们提出的方法融合了由全局和局部图像描述符组成的三层特征。因此,该框架对于这些数据集的分类是有效的。
5.总结
在本文中,我们提出了一种通过转移学习从convnet中灵活地提取多层深层特征的方法,作为小型数据集分类框架的一部分。该方法的灵活性允许使用任何ConvNet进行特征提取。此外,还提出了一种多数投票机制(MVM),通过使用线性SVM分类器融合多层深层特征来克服小数据集的过度拟合问题。此外,该方法不需要关于性能最佳的ConvNet层的先验知识。与传统手工制作的特征和其他具有预选层的convnet相比,可以观察到在具有挑战性的异常和纹理数据集上的显著性能。
本文仅作为日后复习之用,并无他用。
以上是关于Convolutional Networks for Voting-based Anomaly Classification in Metal Surface Inspection-论文阅读笔记的主要内容,如果未能解决你的问题,请参考以下文章
Visualizing and Understanding Convolutional Networks
卷积神经网络用于视觉识别Convolutional Neural Networks for Visual Recognition
Visualizing and Understanding Convolutional Networks论文复现笔记
pytorch 笔记: 复现论文 Stochastic Weight Completion for Road Networks using Graph Convolutional Networks(代
DenseNetDensely Connected Convolutional Networks (2018) 全文翻译