面向激光焊接缺陷识别的可解释性深度学习方法
2022-06-08刘天元郑杭彬杨长祺鲍劲松汪俊亮顾俊
刘天元,郑杭彬,杨长祺,鲍劲松,*,汪俊亮,顾俊
1. 东华大学 机械工程学院 智能制造研究所,上海 201600 2. 上海航天精密机械研究所,上海 201600 3. 上海市激光技术研究所,上海 200235
激光焊接具有功率密度高、热输入量低、焊缝窄、热影响区及变形小、焊接速度快等优点,在航空发动机叶盘叶片、航空用薄壁件、飞行器等零部件的焊接上得到了广泛的应用。但是,由于参数不匹配、装配误差、焊接振动等复杂原因会导致未熔透、过熔透、间隙过大、左右错边、油污等缺陷的发生。因此,基于激光焊接过程信息实现焊接质量的有效监测对于提高激光焊接质量至关重要。其中,基于视觉传感的监测方法以其无接触、可靠性高、包含信息丰富等优势得到了学术界和工业界广泛关注。
如图1所示,针对激光焊接过程中视觉信号的处理方法主要有2种思路,即基于特征工程和基于深度学习的思路。特征工程一般遵循图像预处理、特征提取、特征选择、特征分类的技术路线。在预处理阶段主要是对图像进行去噪、滤波、增强和边缘检测等操作。在特征提取阶段主要是从几何空间、色彩空间、梯度空间等提取焊接缺陷的特征,如几何空间的尺寸特征、色彩空间的像素特征以及梯度空间的纹理特征。在特征选择阶段主要通过主成分分析、独立成分分析等方法对特征维度进行约减。在特征识别阶段主要通过支持向量机、逻辑回归和感知器等方法对特征模式进行判断。基于特征工程的思路优点在于由人为参与特征识别的全流程,因此该方法提取的特征模式的可解释性极强,即对缺陷特征的提取过程及模型的决策过程都有明确的认知。但是,特征工程的思路存在人为参与程度高和中间子任务多的问题。较高的人为参与程度不但导致数据的价值无法得到充分发挥,而且使模型的效果严重依赖专家水平。中间子任务多不但会导致全局最优难以实现,而且会降低模型开发的整体效率。基于深度学习的方法可以实现从原始图像到焊接缺陷类型的端到端的映射。该思路不但可以充分挖掘数据价值,而且对专家经验的依赖较低。此外,该思路可以实现全局优化并因此提高模型的开发效率。在智能化技术与制造业不断融合的趋势下,基于深度学习的激光焊接缺陷识别(Deep Learning based Laser Welding Defect Recognition, DL-LWDR)已成为当今的研究热点。但是,DL-LWDR会面临以下挑战。第一,激光焊接过程存在的振动、金属蒸汽等因素会对成像质量造成干扰,这需要一个复杂度较高的模型才能挖掘出让模型做出准确判断的抽象特征。第二,航空航天领域对产品的可靠性要求极高,这要求对缺陷识别模型有一个透明的认知。然而,深度学习模型被公认为黑箱模型,即无法完全知道深度学习模型的内部运作机制及其决策依据,且复杂度越高的深度学习模型其可解释性越差。为了提高DL-LWDR在航空领域的实际应用价值,如何在提高DL-LWDR的可解释性的同时兼顾准确性成为了本文的关注点。
在可解释性研究方面,主要分为事前可解释和事后可解释2种思路。事前可解释倾向于开发一种本身具有可解释性的模型,事后可解释倾向于采用相关解释性方法去白化黑箱模型。就深度学习模型而言,更适合采用事后可解释性的策略。在事后可解释方面,又可以分为整体可解释和局部可解释2个研究方向。整体可解释试图研究模型学习到了什么,局部可解释试图研究模型对某类别做判断的依据,在实际应用中针对局部可解释的研究更广泛。相关局部可解释方法有敏感性分析、局部近似、梯度反传、类激活映射(Class Activation Mapping, CAM)等。敏感性分析是从定量的角度研究针对输入的微小扰动对决策的影响;局部近似是利用简单的具有可解释性的模型拟合待解释模型针对某一输入的决策过程;梯度反传是利用反向传播机制将模型的梯度信息逐层传递到模型的输入端,从而揭示输入样本的特征重要性。CAM的基本思想是将特征图的加权组合作为模型对某类别的响应。上述方法中,CAM方法可以参与到网络的训练过程,这意味着模型的准确性和可解释性具有被统一优化的可能。但是,传统的CAM方法仅利用最后一个卷积层的特征图作为类激活映射的依据。最后一个卷积层虽然具有最丰富的语义信息,但是丢失了很多边缘、结构等初级信息。考虑到不同的激光焊接缺陷具有不同的轮廓形态,本文提出一种融合多尺度特征的类激活映射方法(Class Activation Mapping Incorporating Multiscale Features, MSF-CAM)。MSF-CAM将多尺度特征作为类别激活的依据,可以从不同的尺度对模型的决策依据进行解释。此外,多尺度信息的加入对模型的准确性也会起到促进作用。
图1 LWDR的2种思路Fig.1 Two ideas for LWDR
1 方法介绍
1.1 总体框架
所提MSF-CAM方法的总体框架如图2所示,MSF-CAM的骨干部分为经典的VGG16网络,该网络共有5个卷积块(Block,=1,2,…,5)。每个Block内部分别具有2、2、3、3、3个卷积层,在Block内部以及输入与Block之间均由卷积(Convolution, Conv)操作进行连接。相邻的Block之间通过最大值池化(Max Pooling, MP)进行连接,MP操作可实现特征图的维度约简并得到多尺度特征。得到多尺度特征之后,针对每一个尺度的特征分别利用7个1×1卷积将通道数压缩到与输出类别一致,然后通过全局平均池化(Global Average Pooling, GAP)得到多尺度特征的一维表示。得到多尺度特征的一维表示之后,利用真实标签对其进行深度监督以促进网络对多尺度特征的学习和利用。在训练过程中,共有5条误差反向传播路径。
图2 MSF-CAM方法的总体框架Fig.2 Overall framework of MSF-CAM method
1.2 多尺度特征提取
该部分主要涉及Conv、MP、GAP操作。Conv操作的主要作用是可以自适应的提取熔池/匙孔图像的抽象特征。假设第层为Conv层,第-1层为MP层或输入层。则第层的计算公式为
(1)
(2)
MP操作不但可以实现特征维度的约简,而且还可以获取不同尺度的特征。得到多尺度特征之后,首先采用1×1卷积对多尺度特征的通道进行压缩,然后用GAP操作获取每个尺度下的特征表示。GAP操作是针对某一张特征图,计算其所有像素的平均值以作为该特征图的表征。设待进行GAP操作的特征图为FM,则GAP操作可描述为
(3)
式中:表示FM中某位置上的像素值;和表示FM的长与宽,FM表示特征图的数量。
由式(3)可知,GAP操作可以实现空间范围的特征压缩,即将一张二维特征图压缩为一个标量。得到特征图的GAP值之后,通过SoftMax函数将其映射为类别概率。SoftMax函数的表达式为
(4)
1.3 多尺度类激活映射
经典的类激活映射(Classic CAM, C-CAM)的基本原理是针对最后一个卷积层进行GAP操作,并用SoftMax函数将GAP操作的结果映射为输出类别的概率。然后将GAP层与输出层之间针对某一类别的概率值乘以对应的特征图,最后将相乘的结果进行叠加并作为模型对该类别响应的解释。虽然最后一个卷积层包含最丰富的语义信息,但是缺乏对初级特征的表达。因此,本文在C-CAM思想的基础上考虑融合多尺度特征的类激活映射。MSF-CAM的形式化描述如下。令,表示GAP值与输出类别之间的概率矩阵,FM,表示特征图。则针对类别C的MSF-CAM可表示为
(5)
式中:表示特征尺度的总数;表示某一尺度下的特征图总数。
由于不同Block中的特征图尺度不一样,因此式(5)采用上采样(Upsample)操作将不同尺度下的类激活映射上采样至与原图同一尺寸之后再叠加。为了利用多尺度特征来增强对类别C的解释能力,本文只关心对类别C有正影响的像素点。因此,在MSF-CAM过程中,首先采用Relu激活函数来过滤对类别C判断无用的像素点,Relu激活函数的表达式为
(6)
针对类别C的MSF-CAM如图3所示。
图3 融合多尺度特征的类激活映射Fig.3 Class activation mapping by incorporating multiscale features
2 试验与分析
2.1 激光焊接试验
为了模拟真实的生产环境,本文搭建了图4(a)所示的激光焊接试验系统,该系统由焊接模块(实指示线)和视觉模块(虚指示线)组成。图4(b)为某型号的激光焊接现场。为了尽量获取高质量焊接图像,采用工装夹具对焊件进行固定;通过相机支架将高速相机固定在激光头上;并采用辅助光和滤光片以降低强烈弧光的影响。在基本参数方面,焊件选用长度、宽度、厚度分别为300、120、2 mm的SS304不锈钢板;保护气采用流量为25 L/min的氩气;焊接速度为2 m/min;离焦量为+8 mm;相机型号为CP70-2M;激光器型号选为IPG-YLS6000;辅助光源的波长为808 nm;滤光片的中心波长为808 nm。通过对激光功率、不锈钢板的装配位置、焊件表面的改变可获取未熔透、正常、过熔透、间隙过大、右错边、左错边、油污7种类型对应的熔池/匙孔图像。
经过大量试焊确定工艺后,本文在14块不锈钢板上进行焊接以获取特定的缺陷类别。试验共采集了7 531张熔池/匙孔图像,各类别对应的实际图像及横截面示意如图5所示。从图5可以看出,随着熔透程度的增加,熔池区域的宽度、匙孔区域的不规则程度、熔池/匙孔区域的金属蒸汽和飞溅均会增加。间隙过大会导致液态熔融金属泄露,在图像中会呈现出熔池不饱满、匙孔区域有延伸的特点。左错边和右错边会呈现出熔池/匙孔前端极度不对称的特点。其中,左错边是指位于焊接方向左侧的母材低于装配位置的缺陷,右错边是指位于焊接方向右侧的母材低于装配位置的缺陷。油污缺陷对应的图像会在熔池/匙孔前端呈现出逆流的特点。
为了对所提方法的性能进行综合评估,本文将获取的原始数据按照7∶2∶1的比例分为训练集、验证集和测试集3部分。具体的数据分布如表1所示。
图4 激光焊接现场及试验系统Fig.4 Laser welding site and test system
图5 不同类别对应的熔池/匙孔图像Fig.5 Molten pool/keyhole images corresponding to different categories
表1 数据分布及划分情况Table 1 Distribution and division of data
2.2 算法试验
2.2.1 试验设置
鉴于本文的主旨不包含参数优选,因此本文根据经验将学习率设置为10,损失函数采用交叉熵,优化器选用Adam。此外,将数据集按照表1划分为训练集、验证集、测试集。训练过程中将批次设置为4以加速训练。在训练周期方面,本文对所有数据遍历100次并保存最佳模型。在环境方面,所提方法在Windows10操作系统、NVIDIA 1050显卡(4 GB显存)的硬件以及Pytorch深度学习框架下进行算法性能试验。为了防止模型过拟合,采用迁移学习的方法加载基于ImageNet的预训练模型。即本文将VGG16在ImageNet上训练的权重作为本文骨干网络的权重,本文针对新加入的1×1卷积部分的权重进行训练。在对比试验方面拟将所提方法与C-CAM及没有加载预训练模型的MSF-CAM(MSF-CAM Without Pre-Trained model, MSF-CAM-WPT)进行对比。
在评价指标方面,采用准确率(Accuracy, ACC)、精确率(Precision, PRE)、召回率(Recall, REC)、F1-score这4个指标对相关方法进行综合评估。各指标的定义如下:
(7)
(8)
(9)
(10)
式中:TP表示某图像实际为正类同时被识别为正类;TN表示某图像实际为负类同时被识别为负类;FP表示某图像实际为负类同时被识别为正类;FN表示某图像实际为正类同时被识别为负类。ACC指所有预测正确的样本占总样本的比重;PRE指在被预测为正类的所有样本中实际为正类的比重;REC指实际为正类的样本中被预测为正类的比重;F1-score是对PRE和REC调和平均的综合评价指标。
2.2.2 训练过程分析
MSF-CAM、C-CAM及MSF-CAM-WPT方法的训练过程如图6所示。MSF-CAM经过90次迭代即可收敛于0.99左右,且收敛过程平稳。而经典的CAM方法经过100次迭代才可收敛于0.97左右。这主要是因为MSF-CAM方法在模型中融合了多尺度特征,因此可以对熔池/匙孔图像的特征进行更好的表征。在对训练集中的数据完成一次遍历后,利用验证集对模型进行验证。从图6中可以看出,MSF-CAM和C-CAM方法在验证集上的结果和训练集上相差不大,这说明基于ImageNet进行预训练后二者没有发生明显的过拟合现象。作为对比,MSF-CAM-WPT方法在训练集和验证集上的差异较大,即发生了较为明显的过拟合现象。
在模型训练完成后,将其保存为可测试文件。然后用测试集对模型性能进行测试。在指标方面,我们采用准确率、精确率、召回率、F1-score、模型的大小以及模型针对单幅图像的识别时间对模型进行综合评估,模型在测试集上的相关指标得分如表2所示。由于对多尺度特征的深度利用,MSF-CAM方法的准确率和综合评价指标F1-score相对于C-CAM方法均提高了2%左右。为了将多尺度特征用于对模型决策依据的解释,本文在Block后面插入了1×1卷积,因此模型体积和测试时间略有增加。考虑到当今工业相机的帧率一般不超过100 Hz且工控机的硬盘容量一般在1 TB以上,因此所提方法仍可满足在线监测的需求。
图6 不同方法的训练和验证过程Fig.6 Training and validation process for different methods
值得注意的是,所建立的模型是基于本文实验环境下采集的数据得到的。鉴于本文的关注点是在提高DL-LWDR的可解释性的同时兼顾准确性,因此本文没有针对模型对相机角度、位置和光照条件等的鲁棒性进行优化。针对这一点,在未来工作中可从以下方面展开。在数据获取阶段,可以通过大量的改变相机角度、位置和光照条件等以获取更丰富的原始数据。在模型训练阶段,可以通过仿射变换对原始数据进行增广以模拟复杂的工况。在模型优化阶段,可以通过迁移学习的方法利用新数据对在原始数据上构建的模型进行微调。
模型在测试集上的最终分类结果的混淆矩阵如图7所示,标签0、1、2、3、4、5、6分别代表过熔透、间隙过大、未熔透、右错边、油污、正常、左错边这7个类别。从混淆矩阵中可以看出C-CAM更容易错分未熔透和过熔透、右错边和间隙过大,而MSF-CAM对这一情况有所改善,这说明多尺度特征的引入对上述两对状态间的鉴别性特征的提取具有重要作用。
表2 不同方法的测试结果Table 2 Test results for different methods
图7 不同方法测试结果的混淆矩阵Fig.7 Confusion matrix of test results for different methods
2.2.3 可解释性分析
图8展示了所提方法在不同尺度下的类激活图。从中可以看出网络的浅层(Block、Block)倾向于提取散点和短线等初级特征,但是这些初级特征之间缺乏关联,因此无法单独根据浅层特征的类激活映射对模型的决策做出解释;网络的深层(Block、Block)倾向于提取目标级的语义特征;网络的中层(Block)提取的特征类型介于浅层和深层提取的特征级别之间。虽然基于Block的类激活映射图中已经可以大致看出模型做决策的依据在哪个区域,但仍然不易于人类的理解。此外,可以看出送气管道对模型的判断起到了干扰作用。
图9显示了C-CAM和MSF-CAM这2种方法产生的类激活图。通过对比可以发现:C-CAM产生的类激活映射与MSF-CAM方法在Block层次产生的类激活映射类似,但是C-CAM方法仅通过一路损失对网络进行训练,因此C-CAM方法产生的类激活映射图比Block层次产生的类激活映射图在分类导向上更强。但是通过对MSF-CAM方法产生的类激活图的观察可以发现:融合了多个尺度的类激活图可以从初级特征的角度对模型的决策依据做出解释。如:MSF-CAM对未熔透、熔透、过熔透三者的区分不但关注了熔池/匙孔的区域信息而且还更加关注了熔池区域的左右边缘上,这意味着模型是关注到了熔池的宽度做出的决策,这非常符合人类的认知。同样地,对左错边和右错边的识别不但关注到了熔池/匙孔区域的前端不对称的地方,还对该部位的轮廓特征进行了着重关注。对油污缺陷则关注到了熔池/匙孔前端呈现逆流状的区域。对间隙过大的缺陷则关注到了熔池/匙孔前端的弧线型特征。因此,融合了多个尺度的类激活图可以对模型的决策依据做出更符合人类直观感受的解释。
图8 不同尺度下的类激活图Fig.8 Class activation map at different scales
图9 可解释性方法的对比Fig.9 Comparison of different explainability methods
3 结 论
1) 针对基于视觉的激光焊接缺陷识别问题,建立了基于深度学习的识别模型,所提方法可以自适应的提取激光焊接缺陷的抽象特征。
2) 针对基于深度学习的激光焊接缺陷识别可解释性差的问题,提出了融合多尺度特征类激活映射方法,该方法可以对模型的准确性和可解释性进行统一优化。
3) 融合多尺度特征的类激活映射方法MSF-CAM针对7类缺陷的识别问题准确率为98.12%,识别单幅图像需8.28 ms,可满足基于视觉的在线监测需求。
4) 融合多尺度特征的类激活映射方法不但可以对模型的决策依据做出目标级的解释,而且还可以从初级特征的角度做出更直观的解释。