深度学习在动车组检修作业评价的应用研究

2023-09-28 02:30顾小山倪建军
中国新技术新产品 2023年16期
关键词:内核卷积检修

顾小山 倪建军

(中国铁路上海局集团有限公司南京动车段,江苏 南京 210000)

高速动车组具有运行环境复杂、客载量大、长交路持续运行的特点,对整个动车组牵引辅助系统、制动系统、铁路砟道性能影响非常大,给提升动车组列车检修效率及控制检修成本带来了巨大挑战[1]。根据相关指导意见,结合南京动车段多次实践验证,该文建立动车组质量与安全大数据分析管理系统,以满足设备检修需要,减轻作业强度。

该系统借鉴SE模块和深度可分离卷积[2]的优点,设计了全新的神经网络模型用于对比服务。作业人员手持巡检仪对巡检作业关键点进行拍照,系统将拍摄的图片与模板进行对比,分析、确认巡检效果,并对拍摄的作业图片进行评分,反馈作业质量,实现对作业过程质量的初步评价。

1 深度可分离卷积

传统的深度神经网络(如GoogLeNet、ResNet等)虽然能够以高精度的检索结果完成图像对比分类任务,但由于越来越深的传统的神经网络需要学习大量的参数,这将需要很高的计算资源(价格昂贵的GPU)。为此,该系统架构考虑数据容量庞大且需要进行高效的运算,因此采用深度可分离卷积[3]完成对整体模型架构的压缩和加速。

一张图像是具有宽度、高度以及深度的,并不是二维的。在此该文进行一个假设,给定一个12×12×3像素(RGB)的输入图像。对图像做一个5×5的卷积,不加填充,步幅为1。如果只考虑图像的宽度和高度,卷积过程为12×12-(5×5)→8×8。5×5内核中,对每25个像素进行标量乘法,每次输出一个数字。由于没有填充(12-5+1=8),最终得到一个8×8像素的图像。

因为图像存在3个通道,卷积核也需要有3个通道。这意味着不是做5×5=25次乘法,而是每次内核移动时做5×5×3=75次乘法。就像二维解释一样,对每25个像素做标量矩阵乘法,输出一个数字。在经过5×5×3内核之后,12×12×3图像将变成8×8×1图像,如图1所示。

图1 传统卷积过程

如果想增加输出图像中的通道数量(比如大小为8×8×256的输出),可以创建256个内核的方式来创建256个8×8×1图像,将其进行堆叠,创建出8×8×256图像输出,如图2所示。

图2 传统卷积过程

深度可分离卷积是一个可以替代传统卷积层的架构。卷积的过程中,不同的出入通道采取不同的卷积核,整个卷积操作可以分解为2个过程,即深度卷积和点向卷积。

深度卷积是在不改变深度的前提条件下对输入图像进行深度方向卷积,在此使用了3个5×5×1形状的内核,如图3所示。

图3 深度卷积过程

每个5×5×1内核迭代图像的1个通道(注意:1个通道,而不是所有通道),得到每25个像素组的标量积,得到一个8×8×1图像。将这些图像叠加在一起可创建8×8×3图像。

点向卷积之所以如此命名,是因为它使用了一个1×1内核,或者说是一个遍历每个点的内核。该内核有一个深度,不管输入图像有多少通道,在此处的例子中,其为3。因此,通过8×8×3图像迭代1×1×3内核,得到8×8×1图像。

以此类推,创建256个1×1×3内核,每个内核输出一个8×8×1图像,以得到形状为8×8×256的最终图像,如图4所示。

图4 逐点卷积过程

通过上述将传统卷积层拆分为深度卷积和点向卷积。更抽象地说,如果原始卷积函数是12×12×3-(5×5×3×256)→12×12×256,经过分析可以将这个新的卷积表示为12×12×3-(5×5×1×1)→(1×1×3×256)→12×12×256。

原始卷积中有256个5×5×3内核,可以移动8×8次,代表256×3×5×5×8×8=1228800次乘法。然而,在深度卷积中,有3个5×5×1的内核移动了8×8次。也就是3×5×5×8×8=4800。在点向卷积中,有256个1×1×3的内核移动了8×8次,即256×1×1×3×8×8=49152。把它们相加即是53952次乘法。52,952比1,228,800小很多。计算量越少,网络就能在越短的时间内处理更多的数据。

(该节图片来自于网络,地址为https://blog.csdn.net/makefish/article/details/88716534)。

2 Squeeze-and-Excitation(SE模块)

为了使模型在计算效率高的情况下保持精度稳定甚至有所提高,该文在此采用了通道注意力机制。为使模型更加轻量,可减少计算,深度可分离卷积会对通道进行分组。借鉴SENet,采用Squeeze-and-Excitation(SE)模块对通道之间的关系进行关注,模型将对不同通道特征的重要程度进行自动学习。SE模块先通过卷积得到特征图,然后进行Squeeze操作,从而得到通道级的全局特征,进一步对全局特征进行Excitation操作,目的是学习各个通道间的关系,得到不同通道的权重。最后将原来的特征图乘以权重得到最终特征。本质上来看,SE模块是在通道维度上做注意力操作,该种机制可以让模型抑制那些不重要的通道特征,更关注信息量最大的通道特征。SE模块如图5所示。

图5 SE模块

SE模块的主要组成部分包括Squeeze操作和Excitation操作,适用于所有映射Ftr:X→U,X∈RH'×W'×C',U∈RH×W×C,以卷积为例,卷积核为V=[v1,v1,...,vc],其中vc表示第c个卷积核,那么输出如公式(1)所示。

式中:*代表卷积操作;vsC代表一个3D卷积核。

其输入单个通道上的空间特征,对特征空间关系进行学习,只是由于对各个通道的卷积结果进行了求和操作,因此导致卷积核学习到的空间关系和通道特征关系混合在一起。SE模块可以解决这一问题,通过抽离这种混杂,使模型直接学习到通道特征关系。

卷积只是在局部空间进行操作,导致U难以获取用于提取通道之间关系的足量信息。而由于感受也比较小,网络中前面的层在这个问题上更严重。正因为这样,SENet提出了解决方案——Squeeze操作,它是将一个通道上整个空间特征编码为一个全局特征,采用全局均值池化层来实现,如公式(2)所示。

Sequeeze操作只得到了全局描述特征,接下来需要另外一种运算来抓取通道之间的关系。该操作需要满足2个准则:第一点是要灵活,它要可以学习到各个通道之间的非线性关系;第二点是学习的关系不是互斥的,因为这里允许多通道特征,而不是one-hot形式。基于此,该文采用sigmoid形式的门控机制,如公式(3)所示。

式中:δ表示ReLU激活函数;σ表示sigmoid激活函数;分别是2个全连接层的权值矩阵,其中r是中间层隐藏层节点数。

为了达到提升泛化能力及降低模型复杂度的目的,该文采用包括2个全连接层的瓶颈结构。其中第一个全连接层起到的作用是降维,降维系数为r,是个超参数,然后采用ReLU激活函数进行激活。另一个全连接层的作用是见降低的维度恢复原始的维度。

最后输出表示为s和U的向量积,即图5中的Fscale(·,·)操作如公式(4)所示。

实际上在整个操作过程中,可以理解为通过学习各个通道的权重系数,使模型对各个通道的特征更具有辨别能力。

3 基于深度学习的对比服务模型

自动评价系统中的对比服务基于深度神经网络模型,其中网络模型的主要模块是基于通道注意力的深度可分离卷积块。该模块既可高效完成对比任务,又能保障精度,因此结合SE模块和深度可分离卷积的特点构造了新型的神经网络模型结构,如图6所示。

图6 深度神经网络模型

在深度可分离卷积块模块中,经过深度可分离卷积得到的张量流U,首先经过全局均值池化层得到每一个通道对应的一个标量值。其次经过两层全连接层的先降维、再升维的变化(增加非线性特征)。再经过Sigmoid激活函数处理。最终把得到的向量(向量长度和U的通道数相同)和U进行点积操作(Scale),输出新的张量流。

使用CADSConv模块构建新的网络模型。通过CADSConv模块完成特征提取工作,最后添加SoftMax层完成最终的对比服务。Softmax激活函数如公式(5)所示。

输出计算图如图7所示。假设模板作业图像库中有3个类别,当工作人员在现场采集的新图片经过神经网络提取特征后会得到3个输出节点值,这3个值经过Softmax激活函数激活后变成对应各自的概率值,该概率值就会当作对比服务中的相似度值,即概率值越高,相似度越大,于是可认为该采集图片属于哪一个类别,至此完成对比任务。

图7 输出计算图

4 结论

动车组检修作业质量自动评价系统能够将现有的视频采集资源有效整合起来,利用自动评鉴系统解决了之前需要人员进行手工导入的图像、语音和视频的记录、保存、查看系统问题,通过自动图像识别减轻了现场工人的工作量,提高了现场使用人员的检修质量。将所有视频资源经过数据管理、资源管理、统计分析和终端设备配置等,自动生成局、段、所、班组和人员等各级人员需要的统计分析报表,为铁路检修提供保障,为决策者提供有利的支撑。

猜你喜欢
内核卷积检修
基于3D-Winograd的快速卷积算法设计及FPGA实现
强化『高新』内核 打造农业『硅谷』
从滤波器理解卷积
基于嵌入式Linux内核的自恢复设计
检修
Linux内核mmap保护机制研究
基于傅里叶域卷积表示的目标跟踪算法
电力系统继电保护二次回路的维护与检修
论自动化焊接设备的预检修
茂名式大修