基于轻量级网络的钢板表面缺陷分类研究

2022-02-09 02:05闫俊红龚志成李忠虎
计算机仿真 2022年12期
关键词:钢板卷积准确率

闫俊红,龚志成,李忠虎

(内蒙古科技大学信息工程学院,内蒙古 包头 014010)

1 引言

钢铁产业是国家经济发展的重要基石,尤其是汽车、建筑等传统行业和航空航天、电子机械等高精尖行业对产量需求日益增长,由于在生产过程中由于生产工艺、控制技术等诸多因素容易产生氧化铁皮、斑块、裂纹、麻点、划伤[1-2]等缺陷,传统人工目测方法效率低且效果差,故在工业检测领域中引入智能检测技术具有重要的意义。

随着计算机发展和人工智能领域兴起,在深度学习理论提出和庞大的数据累积下[3-6],卷积神经网络表征学习能力得到了广泛关注且应用于表面缺陷检测的领域里也越来越广泛,王宪保[7]等提出一种基于深度学习模型对太阳能电池片表面缺陷进行检测的方法;Park[8]等设计了一种简易的CNN模型对表面零件上的缺陷进行检测且准确率高达98%;景军峰[9]等通过微调卷积神经网络模型结构对织物表面缺陷识别的方法;Malekzadeh[10]等采用vgg-DNN的fc6层的输出作为特征输入到SVM中实现飞机表面缺陷分类,精度可达96%以上;Fusaomisa[11]等提出一种SssNet的改进双分支卷积神经网络模型,充分挖掘出了缺陷与正常样本间的差异。然而传统深度学习大量的时间和计算资源都在在设计网络模型中消耗,并且针对不同任务需要重新建立模型复杂且耗时,数据集不足或网络层数过深带来的过拟合现象。

本文提出了一种改进的MobileNetV3模型的钢板缺陷分类方法,主要贡献如下:

1) 能高效布置在硬件需求即资源有限的设备上,解决了大模型的实际使用限制。

2) 在KTH-TIPS数据集上预训练学习纹理特征,再在钢板缺陷上进行二次训练并微调超参数,解决了针对新任务再次布置训练网络产生庞大计算量和大量浮点运算以及大容量的内存空间的需求。

3) 改进后的模型通过舍弃相关冗余参数并添加相关结构层,降低了整体的参数量的同时保持良好的模型精度。

2 钢板表面的缺陷分类模型设计

2.1 网络模型压缩

为了降低卷积神经网络的计算和存储消耗,网络模型压缩问题这种轻量化设计思想衍生为了两类:压缩神经网络结构和设计新的网络模型,前者通常采用网络修剪、低秩分解等为主要方法,在不影响原有架构的基础上降低模型参数,后者以设计特殊化、结构化计算核心和紧凑的计算单元,进一步减小模型参数,得到高效能网络结构。

图2 改进后MobileNetV3模块

在网络模型中引入迁移学习,是压缩网络模型的一种手段,可大致分为基于样本、特征、模型以及关系的四种常见迁移方法,迁移学习中相关术语的定义如下所示:

定义1 领域(Domians):一个领域可以表示为

D={X,P(x)}

(1)

式中X表示特征空间;P(x)表示x={x1,x2,…,xn}∈X,xi∈Rd,i=1,2,…,n的边缘分布,xi表示第i幅图的特征,Rd表示领域的特征集。

定义2 任务(Tasks):给定某一个具体的领域D={X,P(x)},一个任务可以表示为

T={Y,f(·)}

(2)

式中:Y表示类标签空间;f(·)表示目标预测函数,可以预测任意的实例类标签,一个任务的解可以从训练数据中学习获得,xi,yi表示不同的特征,m表示对应特征的维度,i表示当前第i幅图片,本文迁移学习流程图如图1所示。

图1 本文迁移学习流程图

2.2 改进的MobileNetV3

MobileNetV3继承了MobileNetV1模型中深度可分离卷积结构和MobileNetV2模型中具有线性瓶颈的逆残差结构,本质上是在MnasNet基础上进行完成了对模型的轻量化与优化,核心部分NetAdapt算法的引入使得MobileNetV3模型具备了获取最佳的拓展层滤波器数量和瓶颈层的通道数量的能力。

通过观察样本缺陷复杂程度及识别难度,科学对MobileNetV3架构作出改进,Resolution表示输入图像的分辨率,Channels和Layers分别表示模型通道数和网络层数,如下表1所示为改进后的MobileNetV3网络结构及相关参数,如下图2所示为改进后的MobileNetV3模块,首先考虑将网络结构中的对模型贡献度较小的卷积层通道数进行删减,故选择将表1倒数第二行Conv层的通道数精简为原先的1/3左右,由1280删减至460,其次考虑到单纯删除通道数可能会引发模型的拟合能力骤降,故在模型结构输入层后引入一个1×1的点卷积结构,在保留对原始缺陷图像的平面结构的基础上,完成对钢板缺陷图像的每一个像素点的信息整合,通过有效的降维达到进一步减参的目的,同时增加MobileNetV3的网络模型深度,即加入非线性以提升网络表达能力,最后考虑到本文钢板表面缺陷数据主要是由于在加工中因表面过烧、脱碳、疏松、变形、内应力过大以及表面硫、磷等杂质含量较多而产生的发纹、热裂纹、冷裂纹等以纹理特征为主的纹理缺陷图像。通过引入迁移学习思想,并且考虑只有将网络模型学习到的具有共性的知识迁移到目标领域才能避免负迁移现象的发生,故选择数据增强后的KTH-TIPS数据集作为源域完成对改进后MobileNetV3模型的预训练,鉴于由于两个数据集中都含有相似的高级特征,应选择保留预训练网络层级中包含关于钢板表面缺陷数据集相关信息,即相关模型及权重参数。实验结果发现,迁移学习后的模型不仅避免由于钢板缺陷样本量不足引发的过拟合现象,导致最终对钢板表面缺陷图像测试数据识别精度的大打折扣,同时也能在KTH-TIPS数据集中学习到几何特征更为复杂且种类更为繁多的纹理图像,故利用数据增强方式对KTH-TIPS纹理数据集进行扩充,在节约大量的计算及时间资源的同时,保证了模型整体的鲁棒性及训练效果,具体方法如下:

1) 删除神经网络末尾层级;

2) 添加一个新全连接层并保证输出数量和新数据集类别数量一致;

3) 随机初始化全连接层权重并冻结预训练网络中所有权重;

4) 训练并更新新的全连接层权重;

表1 改进的MobileNetV3网络结构

3 实验分析

3.1 数据集

本文源域数据集使用瑞典皇家理工学院纹理数据集(KTH-TIPS),其类型包含有砂纸、铝箔、发泡胶、灯芯绒、亚麻、棉等共11类,通过翻转、旋转、色彩抖动、加噪等数据增强方式,在原来4752张总量基础上扩充约3倍,共计11720张。目标域采用NEU钢板缺陷样本包含夹杂、划痕、压入氧化皮、裂纹、麻点和斑块,六类轧制钢板缺陷,每个类下包含300张图片,共计1800张图片缺陷,部分纹理及缺陷数据集样图如图3和图4所示。

图3 KTH-TIPS纹理数据集样图

图4 钢板缺陷数据集样图

通过引入交叉验证法(cross validation)的思想,在二次训练数据集上尝试划分不同的训练集和验证集数量进行多组验证,交叉验证法相对于留出法数据量要求小且样本信息损失小,通过评价插值方法质量的方法,通过交叉验证的报告数据统计量设置的插值方法是否合理,同时还可以比较不同的插值模型得出的不同质量的结果,交叉验证法一般使用统计指标来进行评价,在给定模型样本上,利用大部分样本建立模型,留小部分样本在刚建立的模型上进行预报,求出小部分样本的预报误差,并记录平方加,和进行数据集分割在样本充足情况下,一般至少大于总数的50%,本文选择平均误差作为评价指标,进行多组划分样本数据误差数据比较最终确定按照4:1进行划分数据集样本作为训练集及验证集。

3.2 实验环境

本文实验环境:Intel i5-8400处理器,连接云端并使用单个NVIDIA Tesla V100 GPU进行云计算,操作系统Ubuntu 16.04.6,显存16GB,内存32GB,硬盘100GB,编程环境python3.7,编辑器采用Jupyter Notebook,学习框架采用Tensorflow1.14.1。

3.3 实验设置

配置相关实验环境,利用Python语言搭建ShuffleNetV2、MobileNetV2、改进后的MobileNetV3模型及迁移学习后的深度卷积神经网络ResNet50模型,设置迭代次数Epoch为3000轮,批尺寸(Batch_Size)为40,初始学习率为0.025,学习率设置衰减模式为自然指数衰减,同时设置文件路径保存迭代次数中最优模型,每个Epoch训练结束后保存准确率、及学习率大小,每组模型训练保证喂入相同训练数据集及预训练数据集,配置相同参数及运行环境。

3.4 实验结果及相关评价指标分析

训练次数Epoch为500左右时学习率由0.0025衰减值至0.0000225,作为梯度下降法中搜索步长的方法,其设置很大程度影响到模型收敛的效果,学习率衰减方式可分为等间隔的调整(STRPLR)、多步长衰减(MULTISTEPLR)、指数衰减型调整(EXPONENTIALLR)等方式,通过分析文中网络模型训练难易程度,且考虑设置训练迭代次数较为长防止学习率过大直接跳过最优值,且保证模型收敛速度,故学习率采用自然指数衰减方式如图5所示。改进后的MobileNetV3模型在迭代次数为300左右就开始收敛且几无波动,而原始模型在迭代次数为750左右时才开始缓慢收敛,模型通过迁移学习二次训练,冗余参数的删减及相关结构层添加增强了模型的鲁棒性和收敛速度,在同一个训练目标任务下,改进后的MobileNetV3效率远远高于原始模型,故曲线收敛的速度快,改进前后的MobileNetV3准确率变化曲线如图6所示。

图5 训练模型学习率衰减

图6 MobileNetV3模型改进前后对比

迁移学习后的ResNet50模型采用压缩网络方式轻量化网络,可是压缩后的网络模型始终依赖于原始网络模型,且在网络架构上并未做出任何改进,两图中的准确率及曲线收敛速度远远不及其它三种轻量级网络模型,由图9观察可得改进后的MobileNetV3在验证集上迭代次数Epoch为200左右开始收敛且之后训练中几乎无波动,改进之后的模型具有更好的鲁棒性和泛化能力,迁移学习后ResNet50、ShuffleNetV2、MobileNetV2、改进后的MobileNetV3在钢板缺陷训练集及验证集上识别精确度变化曲线如图7和图8所示。

图7 缺陷训练集准确率变化曲线

图8 缺陷验证集准确率变化曲线

“Accuracy”表示各模型在缺陷数据集集上的识别准确率,“Parameter Amount”表示模型中卷积核等所有参数数量,同时引入Recall(召回率)和F1分数作为评价指标。文中改进MobileNetV3模型相比于原始模型1.24×106的参数量下降为原来1/4左右,实验发现改进后MobileNetV3的准确率值高达99.7%,比其它网络高出0.5%到10%,F1分数是将准确率和精确度结合的一种综合指标,F1值越高模型越理想,“Predict Times”表示训练好模型对单张缺陷样本的实时检测时间,改进后的MobieNetV3模型单张检测效率相对于原始模型及其它模型提升11.9%到28.6%,模型评价数值见表2。

表2 各种网络模型实验评价指标对比

由上述实验综合分析,MobileNetV3各项指标均为最优,ResNet50、MobileNetV2、ShuffleNetV3及原始MobileNetV3模型在钢板表面缺陷的检测中对于夹杂等微小型和长宽比较大缺陷会产生漏检,即对微小缺陷识别能力较弱,文中MobileNetV3通过预训练学习到纹理特征后并做出相关改进,在钢板表面缺陷数据集上识别准确度均为最佳,神经网络模型在各类缺陷识别准确率见表3。

表3 各类缺陷模型分类准确率对比

FLOPS(每秒峰值速度),即每秒执行的浮点运算数,FLOPS经常用来评估使用到大量浮点运算的科学计算领域,Tesla V100 GPU单精度浮点性能高达15TFLOPS,双精度浮点高达7.5TFLOPS,更适用于超大数据的复杂计算,在本文缺陷样本训练中容易造成资源过剩现象,同时为证明轻量级网络在资源有限设备上的可移植性,故利用Intel Core(TM) i7-4720HQ CPU和GeForce 950M GPU两种硬件受限的平台进行训练。通过搭建网络模型并分析训练效率发现轻量级网络MobileNetV3模型在两种资源受限平台上,训练速度明显要优于原始模型及DenseNet121、DenseNet101模型,改进后的MobileNetV3模型在CPU平台上的的检测速度为28.04FPS,在原始模型基础上速度提升1.4倍,相对于两种深度网络模型分别提升7.1倍、4倍,另外在GPU平台上,检测速度可达229.75FPS,在原始模型基础上速度提升4.7倍,相对于两种深度网络模型分别提升15.3倍、12.4倍,本文改进后的MobileNetV3即使在资源受限平台上也能保持较高的检测速率,在进一步节约了企业购进高性能检测设备同时也能够满足工业中实时检测需求,具体参数见表4。

表4 资源受限平台实时检测效率

4 结论

本文通过建立钢板缺陷数据集分类识别任务,在删除MobileNetV3冗余参数及添加相关结构基础上,通过选择合适的迁移学习方案,改进后的MobileNetV3模型在目标钢板缺陷数据上识别准确率高达99.7%,收敛速度快且具有较强鲁棒性,且在文中布置两个资源有限平台上仍然保持28.04FPS和229.75FPS的实时检测效率。综合试验分析得出,本文方法在提高了对钢板缺陷样本检测精度的同时进一步降低了模型参数,在模型实时性和识别精度上都有了显著提高。

猜你喜欢
钢板卷积准确率
双钢板与锁定钢板在复杂肱骨近端骨折治疗中的疗效比较
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
卷积神经网络的分析与设计
从滤波器理解卷积
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法
基于B7A接口的钢板立体仓库控制系统设计