APP下载

面向工件表面缺陷的无监督域适应方法

2021-05-24姚明海沈颖琦柳嘉敏

小型微型计算机系统 2021年6期
关键词:全局准确率局部

姚明海,沈颖琦,柳嘉敏

(浙江工业大学 信息工程学院,杭州 310000)

E-mail:ymh@zjut.edu.cn

1 引 言

现阶段大部分基于深度学习的表面缺陷检测是有监督的表征学习方法,表征学习的本质是将缺陷检测问题看作计算机视觉中的分类任务[1].然而表征学习需要有标签数据集的支持,标记数据集又要满足数据分布相同的要求,数据分布又会受到光照变化、视角变化的影响[2,3].特别是在工业生产中,拍摄环境和拍摄机器的不同会导致样本本身处于不同的分布,对工件表面图片进行标注同样需要大量的人工劳作.而很多工件表面的缺陷类型相同或者相似,例如钢板的表面缺陷[4]包含开裂、氧化、划痕、夹杂杂质、凹坑等,磁片的表面缺陷包含氧化、划痕、凹坑,其中氧化、划痕、凹坑为相同的缺陷类型.但是由于数据本身表面分布和拍摄条件的不同,导致磁片表面图片与钢板表面图片具有很大的差异性,如将钢板表面缺陷分类模型直接用于磁片表面的缺陷分类,会导致极高的错误率.而再将磁片进行缺陷标注,会增加繁琐的数据集制造工作.根据磁片表面和钢板表面具有相同类型的缺陷,本文将探索如何利用有标签的工件表面数据来检测另一种无标签的工件表面缺陷种类.

迁移学习将源域的知识迁移到目标域,降低了深度学习模型对于大量标记数据的要求,能有效地解决少量数据学习能力不足的问题[5,6].基于迁移学习的思想,本文利用工件表面之间缺陷的相似性来解决无标签数据的分类,首先要减少二者之间的分布差异.迁移学习中的领域自适应可以有效地降低有标签源域数据和无标签目标域数据的分布差异.在无域适应方法的情况下,只能将有标签源域数据进行分类,域适应方法通过增加源域和目标域之间的关联程度对无标签的目标域进行有效分类.

现有的域适应方法主要分为两类,第1类方法通过最小化源域和目标域数据分布之间的散度准则来实现,从而实现域不变的特征表示;第2类方法是基于对抗的域适应,使用生成模型或域混淆损失函数.虽然上述方法在Office31和手写数字等公开数据集中取得了较好的效果,但是由于这些方法都是基于局部的特征自适应,没有考虑全局背景的自适应,导致在背景分布差异较大的数据集(例如工件表面)上并没有那么好的效果.

为了更好的解决全局特征的自适应问题,本文首先将源域的数据与目标域数据在全局特征上对齐,并加入了语义损失保证了在对齐全局特征的同时不丢失局部特征,再采用最小化生成域数据与目标域数据的协方差矩阵的差从而对齐局部特征,进一步提高了背景分布差异较大的域迁移分类准确率.

本文的提出方法的优点如下:

1)利用对抗生成网络和协方差矩阵对齐,做到全局特征和局部特征的共同适应,在背景分布差异较大的域迁移中也能取得不错的结果.

2)把语义损失加入总体优化目标中作为正则项,保证了全局特征对齐的图形经过分类网络后不丢失局部的特征信息.

3)将领域自适应的方法应用到不同的工件的缺陷迁移上,不再局限于同类别不同分布的迁移.

2 相关工作

域适应方法主要有两类,最小化源域和目标域数据分布之间的散度准则和基于对抗的域适应.

最小化源域和目标域数据分布之间的散度准则,包含了多种不同的度量方法,其中将两个领域的数据一起映射到一个高维的再生核希尔伯特空间再利用一阶的最大均值差异(MMD)[7]最为常用,代表的方法包含了TCA[8],DaNN[9],DDC[10],DAN[11].前两个方法是基于浅层的神经网络,后两个方法都是基于AlexNet模型,DDC利用单核的MMD适配了最后一层分类层,DAN改进了DDC,将AlexNet的后3层进行了适配,同时也将单一的MMD改进成了多核MMD.王翎等人结合了域混淆和DAN,在DAN的后两层中间加入了域混淆,准确率相比于DAN有一定的提高[12].SUN利用二阶统计量对齐(CORAL)的方法,通过对源域和目标域进行线性变换来将他们各自的二阶统计量对齐,从理论上证明了匹配二阶统计量效果好于最小化一阶的MMD,等同于最小化二阶多核的MMD,CORAL的优化目标由两部分组成:损失函数和分布距离,损失函数用来度量预测值和真实值的差异,分布距离用于减少域之间的差异[13].Zellinger W等人提出了中央矩差异(CMD)将不同域的特征表示差异最小化[14].Kang提出了一种新的比较自适应网络CAN优化度量,它明确地对类内域和类间域的差异进行了建模,设计了一种交替的更新策略,以端到端方式训练CAN[15].

另一种方法是基于对抗训练来进行域适应.ADDA方法利用源域标签信息训练一个分类器,使得源域分类误差最小,再利用GAN的对抗思想训练目标域的网络[16].CyCADA方法在模型上执行像素级的重构损失项和语义损失项以强制局部分布和全局分布在结构上保持一致性,从而实现局部和全局的域迁移[17].Long提出了一种多对抗性域自适应算法(MADA)方法,该方法捕获多模式结构,以支持基于多个域鉴别器的不同数据分布的细粒度对齐.利用线性时间内的反向传播计算梯度,通过随机梯度下降实现自适应.该方法使用多个判别器来学习数据分布的多模结构,增加了对类别的判别能力,从而增加了正迁移,减少了负迁移[18].

3 提出的方法

本文提出了全局特征和局部特征共同适用的无监督方法(GLDA),总体结构如图1所示.为了方便描述,设源域数据集为Xs={(x1,y1),…,(xns,yns)},共含有ns个有标签数据,目标域数据集为Xt={u1,u2,…,unt},共含有nt个无标签数据.

图1 GLDA网络结构图Fig.1 Structure of GLDA network

整个网络包含3个子网络,生成器网络Gs_t,鉴别器网络Dt和分类网络.分类网络包含3个输入,源域数据集Xs,生成域数据集Xs′和目标域数据集Xt.

GLDA首先将源域的数据通过一个生成器网络Gs_t生成具有目标域风格的数据(生成域数据集),其次使用判别器来判断输入是目标域还是生成域的数据.生成器网络模型和判别器网络模型如图2所示.

图2 生成器模型和判别器模型Fig.2 Generator model and discriminator model

其中生成器模型包含了3个卷积层,残差块和3个反卷积层,图中箭头下面的数字代表特征的数量,源域的数据在经过卷积层后能生成更多的特征,特征层再经过与卷积层相同尺寸的反卷积层后图片的尺寸恢复到原尺寸.生成的图片与目标域的图片作为判别器的输入.判别器包含了5层卷积层.结合判别器和生成器的优化目标,设置全局特征对齐损失如公式(1)所示:

Lglobal= -Eui~Xt[logDt(ui)]+
Exi~Xs[log(1-Dt(Gs_t(xi))]

(1)

其中E代表期望,Gs_t为生成器,Dt为判别器,xi为源域Xs中的数据,ui为目标域Xt中的数据,全局特征损失的第1部分表示判别器的优化目标,在输入目标域的数据时,判别器期望判别输入为目标域数据的概率尽可能的高.第2部分表示生成器的优化目标,生成器希望生成域的图片尽量的接近目标域的图片.所以判别器和生成器的优化目标变成了最大化判别器期望和最小化生成器期望,本文采取对判别器的期望取反,与生成器的优化目标取和作为对齐全局特征的优化目标.

最小化全局特征对齐损失的作用是为了使生成域的数据尽量接近于目标域的数据,并不能保证生成域的数据不丢失原本的局部特征.如图3所示,左边两张图代表源域的图片,右边的两张图代表生成域的图片,虽然生成的图片学习到了目标域的背景信息,包括了颜色特征,纹理特征和形状特征(钢铁学习到了磁片的轮廓特征),但是丢失掉了原有的局部特征(划痕特征).

图3 全局特征对齐的问题Fig.3 Problem in global alignment

为了避免这一现象的发生,本文增加了一项语义损失作为正则项.具体的操作是将全局特征对齐后的生成域数据经分类网络后的结果与源域数据经过分类网络后的结果做交叉熵损失,语义损失Lsem如公式(2)所示:

(2)

其中J代表代价函数,θ为分类器网络.加入该正则项后,可以在对齐源域和目标域全局特征的过程中,不丢失局部特征,在实验结果分析中的超参数分析中会给予证明.

经过全局特征对齐后的生成域数据与源域数据,目标域数据进入分类网络.GLDA方法采用的分类网络是基于Resnet50的分类网络,其相比于传统深度学习网络AlexNet增加了网络深度,并且利用残差结构解决了网络层数太多产生的梯度消失问题.为了防止对生成域局部特征分布细微差别过拟合,本文将距离损失放在瓶颈层,对生成域与目标域的局部特征对齐,采用的对齐方法是协方差对齐,协方差是最小化分布在生成域和目标域的二阶统计量,而最大均值差异仅为一阶对齐.并利用生成域和目标域协方差矩阵之间的Frobenius范数构造可微分的损失函数,局部特征对齐的损失函数如公式(3)所示:

(3)

(4)

(5)

其中F表示Frobenius范数.Cs′代表生成域在瓶颈层之后的协方差矩阵,Ct代表目标域在瓶颈层之后的协方差矩阵,d表示数据的维度.

GLDA方法选取源域数据的预测值和标签作为分类损失的依据,由于生成域的图片相较于源域的图片会造成一定的精度损失,所以在计算分类损失的时候,使用源域的数据效果更优,其中分类损失函数如公式(6)所示:

(6)

GLDA优化的目标函数融合了源域分类损失,全局特征对齐损失,局部特征对齐损失和语义损失,该优化目标可以同时对齐全局特征和局部特征.完整的目标函数如公式(7)所示:

L(Xs,Xt)=Lclass+λLsem+φ1Lglobal+φ2Llocal

(7)

其中λ表示语义损失的权值,φ1表示全局特征损失的权值,φ2表示局部特征损失的权值.

4 实验与分析

4.1 数据集

为了验证本文所提出方法的有效性,本文分别在工件表面数据集和Office31公开数据集[19]进行了实验.工件表面缺陷数据集包括了磁片域和钢板域,磁片域含3种类别,划痕214张,凹坑304张,氧化241张,钢板类别共6类,选取其中的凹坑,氧化和划痕3类,每个类别300张图片.实验包含两种域迁移:磁片→钢铁,钢铁→磁片.Office31数据集中包含3个领域的图片,分别来自amazon域,dslr域,webcam域,类别共31类.其中amazon域包含2817张300*300像素的RGB图片,dslr域包含498张1000×1000像素的RGB图片,webcam域包含795张RGB图片,像素不一.公开数据集实验包含了6组域迁移:A→W,W→A,A→D,D→A,W→D,D→W.数据集示例如图4所示,其中图4(a)、图4(b)为工件表面数据集,图4(c)、图4(d)、图4(e)为Office31公开数据集.

图4 数据集示例Fig.4 Examples of datasets

4.2 实验设置

本文实验平台CPU为i7-8700k,GPU为1080Ti(显存11GB),内存容量为32GB,系统Ubuntu16.04,基于Pytorch深度学习库进行开发.模型参数的更迭是基于Pytorch库中的SGD优化器,其中生成器,判别器的学习率设置为0.001,分类器网络最后一层全连接层学习率为0.01,其余网络层均为0.001,权值衰减系数设置为0.0005.为了充分训练源域数据和目标域数据,训练时将Batch_size的大小按各个域的数据比例来进行设计,并基于GPU的容量考虑,A域与D域之间进行迁移时的批次大小选择78和22,W域与D域进行迁移时批次大小选择53和33,A域与D域迁移时批次大小选择85和15,磁片域和钢板域批次大小选择42和50.在测试时,由于目标域在训练时并没有提供任何的标签数据,所以选择目标域的所有图像作为测试样本.每组迁移实验进行5次,取平均结果作为最后的目标域分类准确率.本实验将Resnet50[20]作为基准实验,对比实验均采取最小化源域和目标域分布之间的散度准则的方法,包含Deep domain confusion(DDC),Deep Coral,Deep adaptation network(DAN),CENTRAL MOMENT DISCREPANCY(CMD).

本文方法的超参数选取λ=0.75,φ1=0.25,φ2=0.75.实验结果如表1、表2所列,由于Office31数据集中,webcam域和dslr域差异较小,所以在表1 的最后一列本文对差异较大的4组实验(A→W,W→A,A→D,D→A)求取了平均准确率.

表1 Office31数据集实验结果Table 1 Result of Office31 datasets (单位:%)

4.3 实验结果分析

4.3.1 结果比较

如表1所列,在Resnet50作为基准模型的情况下,Office31数据集的平均分类准确率为76.8%,采用不同的域适应方法均能提升准确率,这表明了采用域差异最小化的方法能有效的提高目标域的分类准确率.且本文提出的方法平均准确率最高,达到了81.7%,相比于Resnet50提升了4.9%,比主流的域适应方法也能提升约2%.且分布差异较大的4组实验(A→W,A→D,W→A,D→A)在采用了本文提出的域适应方法后提升更为明显原因,相比于Resnet50提升了7%,相比于主流域适应方法能提升约3%.原因在于本文提出的方法保证了对齐全局特征的同时在经过分类网络后不会丢失局部特征,从而做到了全局特征和局部特征的共同适应.而域差异相对较小的两组实验(D→W,W→D),由于本身域之间的分布比较相近,所以只要采取了深度神经网络,就能取得很高的分类准确率,每种方法的准确率也都超过了95%.本文选取了4种模型对准确率的变化进行了分析,如图5所示,图5(a)为磁片→钢铁的迁移,图5(b)为Amazon域→Webcam域的迁移,可以看到Resnet50网络最早收敛,DAN和Deep Coral收敛速度次之,而本文提出的GLDA收敛最慢,原因是Resnet50的优化目标只有分类损失,而DAN和Deep Coral在Resnet50的基础上加入了域之间的对齐损失,本文提出的模型又在局部特征对齐的基础上增加了全局特征的对齐,所以相对收敛速度变慢,但是准确率得到了提升.

表2 工件表面缺陷数据集实验结果Table 2 Result of industrial component surfaces datasets (单位:%)

图5 不同方法下准确率对比图Fig.5 Accuracy based on different methods

如表2所列,在仅用Resnet50进行训练时,平均准确率仅为53.4%,采用常规的域适应方法后,准确率得到了一定的提升,采用本文提出的GLDA方法后,平均的准确率达到了80.2%,相比于普通的域适应方法,准确率提升明显.由于本文采取了全局背景和局部特征的共同适应,所以即使是边缘分布完全不同的工件表面,在其局部特征相似的情况下仍旧可以得到良好的分类效果.横向比较发现,磁片迁移到钢板上的准确率高于钢板迁移到磁片的准确率,根据图5可知,磁片表面的背景分布相对更为复杂,钢板表面的背景分布相对简单,所以磁片迁移到钢板上的准确率高.

4.3.2 可视化分析

为了更好地说明本文方法的有效性,本文在训练好的网络上采用t-SNE降维方法[21]进行了特征可视化分析,对比了Resnet50,Deep Coral,DAN和GLDA4种方法.

其中工件表面数据集(磁片→钢铁)可视化效果如图6(a)-图6(d)所示,Office31公开数据集(A→W)可视化效果如图6(e)-图6(h)所示.可以看到在仅采用深度学习方法(Resnet50)的情况下,源域同种类别可以很好的聚类,但是目标域的类别聚类效果很差,且和源域同种类别没有任何的联系.在采用域适应方法后,源域和目标域同种类别能有一定的聚类效果,但是在工件表面数据集上目标域的聚类效果仍然较为一般.而采用了本文提出的GLDA后,工业数据集上的目标域与源域的聚类效果更为明显,不同种类的间距加大,相同种类的间距减小,进一步提高了目标域的分类准确率.

图6 深度特征二维可视化Fig.6 2D visualization of the deep features

4.4 超参数分析

局部特征对齐在本文方法中为判别图像类型的依据,全局特征对齐的作用是消除背景分布的影响,语义损失项为保证在全局特征对齐的过程中不丢失局部特征.本文首先检验局部特征对齐对于算法性能的贡献,设置λ=0,φ1=0,选取φ2={0,0.25,0.5,0.75,1,1.25}.(准确率为公开数据集和工业部件数据集的所有迁移组别的平均值)

表3 不同局部特征对齐权值的准确率Table 3 Accuracy on different weight of local feature alignment (单位:%)

如表3所列,在无局部特征对齐时,准确率为71.0%,加入局部特征对齐后,准确率有明显提升,权值过大时,准确率会下降.当φ2=0.75时,准确率最高,为75.8%.

其次检验全局特征对齐以及语义损失项对于算法性能的贡献,设置φ2=0.75,选取φ1={0,0.25,0.5,0.75},λ={0,0.25,0.5,0.75,1}.

如表4所列,在未加入语义损失项时,直接在局部特征的对齐上增加全局特征对齐,准确率大大降低.而同时加入语义损失项和全局特征对齐后,准确率有明显的提升.当λ=0.75,φ1=0.25时,准确率最高,达到81.3%,相比于仅加入局部特征对齐时提高了5.5%.

表4 不同全局特征对齐权值的准确率Table 4 Accuracy on different weight of global feature alignment (单位:%)

4.5 实际工件检测性能比较实验

实际工件测试数据来自浙江金华某工厂中用basler工业相机拍摄的含有缺陷的磁片,经处理后每个类别各选取4000张,共12000张.我们以准确率,召回率,测试用时作为磁片缺陷分类的性能评价指标,其中准确率,召回率反映检出情况,预测时间反映检测的效率.

(8)

(9)

表5 实际生产中不同方法的性能比较实验Table 5 Performance comparison of different methods in actual production

如表5所列,凹坑类型的磁片召回率明显高于氧化和划痕类别,氧化和划痕类别的召回率相对较低,在采用本文所提出的方法后提升较为明显,说明该方法能更好地对不同域之间的不突出缺陷进行迁移.且该方法在准确率上优于其他域适应方法,达到77.1%.另外,几种方法都是基于resnet50模型,因此在预测时间上相近.

5 结 论

本文提出了全局背景和局部特征共同适应的无监督工件表面缺陷分类方法.研究了背景分布差异较大的不同工件表面缺陷的互相迁移问题,不再局限于同一种类不同分布的迁移.提出的方法利用对抗生成网络对齐全局特征和最小化生成域数据与目标域数据的协方差矩阵的差对齐局部特征,在全局特征对齐同时增加了语义损失从而不丢失局部特征.在工件表面数据集(磁片、钢铁)和公开数据集(Office31数据集)进行了验证,证实了方法的有效性.本文所提出的方法准确率高于其他方法,同时能更好地迁移不明显的缺陷,表现出了优越的性能,且检测效率不低于其他先进的方法,不足之处是训练时增加了模型的复杂度,相较于主流的域适应方法增加了训练时间.之后将继续研究如何在不增加训练模型复杂度的情况下,提升目标域的分类准确性以及在实时性上展开进一步的研究.

猜你喜欢

全局准确率局部
基于改进空间通道信息的全局烟雾注意网络
领导者的全局观
日常的神性:局部(随笔)
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
凡·高《夜晚露天咖啡座》局部[荷兰]
落子山东,意在全局
丁学军作品