摘 要:随着电力行业的不断发展,高压电缆的铺排以及地下电缆隧道的建设与维护逐渐成为该领域中的热点问题之一。将迁移学习的核心思想与经典的卷积神经网络(LeNet5)相结合,提出了一种基于迁移学习卷积神经网络的电缆隧道锈蚀识别算法,实现了电缆隧道内部电源箱、风机等设备的锈蚀识别。该算法基于Tensorflow框架,能够有效地解决训练样本不足、训练时间冗长以及识别精度不高的问题。通过引入4种经典的目标识别算法进行对比实验,进一步验证了所提方案在网络训练时间以及识别精确度上的优势,为后续电缆隧道巡检机器人系统的构建提供了坚实的理论基础与实验支撑。
关键词:迁移学习;卷积神经网络;电缆隧道;锈蚀识别;Tensorflow框架;故障诊断与定位
0 引言
随着城市地下配电网的建设日渐完善,电缆隧道的建设和维护在中国现代化发展进程中具有越来越重要的地位。然而,电缆隧道的天然地理环境导致其存在渗水、潮湿、电缆老化、设备锈蚀破损等问题[1-3]。目前,隧道内电缆及其配套设备的检修主要依靠人工完成,隧道内的大量浓烟、有害气体、高压电缆漏电以及电缆隧道坍塌等问题都有可能对工作人员的生命安全造成威胁。
随着机器人技术及图像识别技术的发展,利用巡检机器人对电缆隧道内部情况进行检测逐渐成了一种行之有效地解决方案[4-8]。近年来,国内外的许多公司及科研机构都已研发出了不同应用领域的隧道巡检机器人。文献[4]开发的输水隧道机器人,能够有效地修复隧道内壁,提高了施工效率和安全性。文献[5]研制了一套名为“巡游者”的地下电缆检测机器人,能够进入地下沿着电缆爬行,找出故障发生的位置。国内的隧道机器人研究尚处于起步阶段,目前大部分研究均着力于对隧道机器人本身结构的改进以及机器人的路径规划与避障研究[6-8],对机器人智能化功能的研究较少。特别地,基于电缆隧道潮湿复杂的内部环境,设计一种可应用于电缆隧道巡检机器人的设备锈蚀识别方案,不仅对隧道内部的建设和维护具有重大的意义,同时对隧道内部检修人员的人身安全起到良好的保障作用。
近年来,深度学习的理论引领了人工智能的前沿,以卷积神经网络为典型代表的深度学习算法在数字图像识别[9]、语音识别[10]等诸多研究领域取得了良好的研究效果。具体地,卷积神经网络(convolutional neural network, CNN)的提出受启发于视觉系统的结构,即猫视觉皮层电生理的结构模型[11]。文献[12]设计并采用了基于误差梯度的算法训练卷积神经网络,并最早将CNN用于手写数字识别,取得了极佳的识别效果。在卷积神经网络发展历程中,网络的结构不断被优化,提出了包括 Lenet5[13],Dan Ciresan Net[14],AlexNet[15]等在内的多种网络结构。其中,LeNet5是最早提出的卷积神经网络模型,具有简单的网络结构以及明确的数学表达。相比于传统的神经网络模型[16-18],卷积神经网络共享卷积核,能够快速地处理高维数据;同时在图像预处理过程中无须手动选择图像特征,通过大量的训练数据集进行训练,就能够取得很高的检测识别效果。这一系列的优势使得卷积神经网络逐渐得到了电力行业中专家和学者的广泛关注。
目前,国内外针对锈蚀识别的研究较少,且主要集中于混凝土钢筋的锈蚀识别[19-20]。本文将设计一种基于卷积神经网络的识别算法,应用于电缆隧道的锈蚀识别中。值得注意的是,由于电缆隧道复杂的内部环境以及昏暗的灯光效果,使得图像数据采集工作的开展较为困难,间接导致了采集到的有效图像数据集不足,可能无法满足卷积神经网络的训练过程,导致最终的识别精度不高。基于此,本文引入了迁移学习的概念[21],允许迁移已有的相关知识来解决目标领域中小数据样本的训练问题。本文主要的突出点如下:
(1)基于卷积神经网络,提出了一种电缆隧道锈蚀识别算法,能够有效地识别电缆隧道中锈蚀设备以及锈蚀区域,能够确保电能的稳定输出,同时为电缆隧道的工作人员提供足够的人身安全保障。
(2)引入了迁移学习的概念,解决了基于中小规模数据集训练的卷积神经网络难以获得较高识别精度的问题。
(3)电缆隧道锈蚀识别的实现为后续隧道巡检机器人系统的构建提供了一个良好的可拓展智能应用典范,有助于其他相关应用进一步的开发与实现。
1 卷积神经网络
卷积神经网络一般由输入层、隐含层、全连接层以及输出层组成。其中输入层用于接受对应的输入图像数据;隐含层通常由若干卷积层和池化层连接而成,负责特征的提取和组合;提取的特征送入全连接层,并通过激活函数得到最终的输出层判别结果。值得注意的是,整个网络中每一层均由不同权重值的神经元构成,连接着前后层网络,起到正向传输预测值和反向调整权重参数的作用。本文采用最经典的LeNet5卷积神经网络,其具体网络拓扑结构如图1所示。

图1 LeNet5网络结构
Fig. 1 The network structure of LeNet5
基于图1,卷积神经网络与普通神经网络的区别在于,卷积神经网络包含了一个由卷积层和下采样层构成的特征抽取器。具体的,卷积层中一个神经元只与部分邻层神经元连接。卷积运算的目的是提取输入的不同特征,第一层卷积层只能提取一些低级的特征,如边缘、线条和角等层级,更多层的网络能从低级特征中迭代提取更复杂的特征。在卷积神经网络的一个卷积层中,通常包含若干个特征平面,每个特征平面由一些矩形排列的神经元组成,同一特征平面的神经元共享权值,这里共享的权值就是卷积核。卷积核一般以随机小数矩阵的形式初始化,在网络的训练过程中卷积核将学习得到最优的权值。共享权值(卷积核)带来的直接好处是减少网络各层之间的连接,同时又降低了过拟合的风险。当输入图像与卷积核进行卷积运算,经过激活函数以后得到卷积层的特征图,表达式为

式中:为l层第j张特征图;
为第j张特征图对应的输入特征图的集合;
为第l-1层第i张特征图和第l层第j张特征图向量的卷积核;
为l层第j张特征图的偏置。这里,选择线性修正单元 (rectified linear units, ReLU)作为激活函数,其具体的函数表达式为

进一步,池化层也称下采样层,通常有均值下采样和最大值下采样2种形式。特别的,下采样也可以看作一种特殊的卷积过程,目的是对大尺寸图像不同位置的特征进行聚合统计。下采样层获得的特征具有更低的维度,且具有平移不变性。卷积和下采样大大简化了模型复杂度,减少了模型的参数。本文采用均值下采样操作,取扫描窗口中的像素平均值作为下采样层特征图对应位置的像素值,具体的数学表达式为

式中:w和bsub为下采样核的权重和偏置;Dzk为下采样过程中特征图的局部区域;xi为该区域内所有神经元的值。
接着,经卷积层和下采样层完成特征提取任务,将提取到的特征进一步输入全连接层,全连接层在整个卷积神经网络中起到“分类器”的作用。全连接一般会把卷积输出的二维特征图转化成一个一维向量。卷积层、池化层将原始数据映射到隐含层特征空间,全连接层则将学到的“分布式特征表示”映射到样本标记空间,交给最后的分类器或者回归,从而得到输出层的状态。
特别地,由于卷积神经网络在进行物体识别时,对于数据样本(质量,数量以及关联性)的要求较高,可以通过引入迁移学习来改进网络性能。
2 基于迁移学习卷积神经网络的锈蚀识别算法
针对特定领域(例如电缆隧道设备锈蚀识别)图像数据集已标注的样本数量不足的问题,需要通过其他相关性较大的数据集进行弥补和填充。因此,这一部分引入了一种全新的基于迁移学习的卷积神经网络识别算法,利用相关领域的数据集对卷积神经网络参数进行微调,实现了基于小规模数据集卷积神经网络的锈蚀识别。
2.1 卷积神经网络预训练
卷积神经网络的预训练模型如图1(LeNet5)所示,共包含5层相互关联的网络层。其中第一层卷积层设置6个卷积核,卷积核大小为5×5;第二层下采样层采用均值下采样方法,大小设置为2×2;第三层卷积层设定有16个卷积核,选取卷积核的大小仍然为5×5;第四层下采样层的参数设定和第二层保持一致,不再重复描述;第五层为全连接层。值得注意的是,这里的激活函数选择ReLU函数。
2.2 迁移学习
在实际的电缆隧道锈蚀识别应用中,最关键的问题是无法获取足够多的有效训练数据,且已有的标注训练与测试样本大部分依赖人工采集,存在很大的主观因素,导致最终的识别率存在一定的不稳定性。基于此,采用迀移学习的方法,主要解决训练样本数量不足的问题。
事实上,基于卷积神经网络的迁移学习是将经过预训练的卷积神经网络模型在新的目标任务数据集上进行二次训练,该过程也可以理解为网络微调。在整个过程中,经过大规模数据集预训练得到的网络模型,分类器之前的所有网络层次结构可以作为一个通用的特征提取器,输入该卷积神经网络模型的测试图像能够生成一个图像特征表示向量,该特征具备一定的泛化能力。
如图2所示,本文根据目标任务,即电缆隧道的锈蚀识别,修改对应的输出层神经元数目,并随机初始化全连接层神经元的权重。通过收集得到其他场景的锈蚀数据集,预训练整个卷积神经网络,利用得到的权重参数初始化其余网络层的参数,最后利用目标任务训练集训练整个网络,得到最终的网络模型。
2.3 网络训练方法
卷积神经网络最常使用梯度下降法进行有监督的网络训练,其中所有的滤波器权重都通过训练过程进行迭代更新以使损失函数最小化。标准的梯度下降法在整个网络训练数据集上更新权重和偏置,计算开销较大,容易导致网络训练时间冗长不易于收敛。引入一种小批量随机梯度下降算法,利用小批量训练样本集上的平均梯度来更新权重和偏置,可以有效地减小计算代价,同时加快网络的训练速度[22]。

图2 迁移学习具体流程
Fig. 2 The algorithm process of transfer learning
3 实验结果与分析
为了验证提出的基于迁移学习的卷积神经网络在电缆隧道锈蚀识别中的可行性与有效性,进行了一系列的仿真实验。整个实验过程基于Ubuntu-16.04操作系统下的Tensorflow平台完成。基本的计算机配置:CPU双核2.5 GHz,GPU采用单块 Titan X,12 G 显存,32 G 内存。Tensorflow是谷歌发布的第2版分布式机器学习框架,能够支持用户搭建神经网络并配备不同的算法接口,方便用户自定义机器学习的框架,非常适用于基于迁移学习的卷积神经网络构建。
基于前文所述,具体的仿真结果如图3所示,其中,检测到的锈蚀区域均由红色方框表示。实验结果表明,基于其他相关领域的数据集预先进行训练提取到的特征能够作为通用的视觉特征,并有效地应用在电缆隧道的锈蚀识别任务中,取得了较为良好的识别效果。
为了验证提出方案在速度和识别精确度上的优势,本文引入4种经典的目标检测识别算法,即经典的CNN算法[13]、SVM算法[16],BPNN算法[17]以及ELM算法[18],分别应用到电缆隧道内部设备的锈蚀识别中,与本文提出的方案进行对比,其中为了突出说明迁移学习对于网络性能的影响,实验中经典CNN算法所选择的网络超参数以及激活函数均与本文方案中的卷积神经网络相同。对比过程包含了网络训练时间及算法识别精度2个部分。
3.1 网络训练时间

图3 实验仿真结果
Fig. 3 The obtained simulation results
利用5种方法分别对电缆隧道中采集到的图像进行训练。为了尽可能地减少网络参数对5种方法训练速度的影响,在训练过程中均采用小批量梯度下降法,同时学习速率统一设定为0.1。同时,所有训练数据集中图像数量与分辨率保持一致。特别地,由于训练过程中存在一定的不稳定性,即每次训练所需的时间可能会有偏差,因此对5种方法训练10次求取平均值作为最终的结果。具体的训练时间对比如图4所示。

图4 5种方法网络训练时间对比
Fig. 4 The training time of 5 different methods
基于图4,提出的算法相比于CNN,SVM,BPNN方法网络训练时间有明显的减少,这是因为卷积神经网络经过预训练得到了较为理想的权重和偏置,使得进行二次训练时网络更容易收敛。而ELM方法训练时间最短,这是因为其只需要更新隐含层与输出层之间的权重,同时整个训练过程是求解MP广义逆矩阵的过程,相比于其他方法中的网络训练过程更容易实现。
3.2 算法识别精确度
利用5种算法分别对电缆隧道中采集的100张图像进行锈蚀识别,识别结果包含了4种可能:图像中有锈蚀区域且被正确识别、图像中未出现锈蚀区域同时未识别到锈蚀区域、图像中有锈蚀区域但未被识别到、图像中没有锈蚀区域却被误识别到存在锈蚀状况。显然,前2种情况说明识别准确,后2种情况说明存在误识别状况。识别精确度的数学表达式为正确识别的图像数量与总的图像数量之商,具体结果如表1所示。
表1 5种算法的识别精确度对比
Table 1 The recognition accuracy of 5 different methods

值得注意的是,由于上述5种方法均存在一定的不确定性,因此表1中识别精确度的结果为20次实验求取平均值的结果。基于表格中的统计数据,5种方法对风机设备中锈蚀区域的识别具备更高的识别精确度,具体的原因可能与收集得到的电缆隧道内部图像本身有关。由于标定的训练与测试图像数据集中包含更多的风机图像,使得风机图像特征更易于检测与采集。其次,相比于4种传统的识别算法,本文提出的算法显示了更高的识别精度,这是因为利用迁移学习,将经过预训练的卷积神经网络模型在新的任务小规模数据集上进行二次训练,可以进一步加强所提取特征的语义表达能力,从而在最终的电缆隧道锈蚀识别应用中取得更高的识别精确度。
综上,尽管提出的算法在网络训练中没有ELM算法速度快,但是其识别精确度最高。同时,当网络训练完成后,可以对网络进行封装,后续的识别过程可以通过训练好的网络封装进行,因此网络训练速度的快慢对后续的识别过程影响不大。
4 结论
本文提出了一种基于迁移学习的卷积神经网络电缆隧道锈蚀识别的新方法。该方法能够解决特定领域图像数据集样本不足的问题,实现小样本数据集的精确识别。通过与4种经典的识别算法进行全面的比较与分析,得到如下结论。
(1)利用卷积神经网络进行模式识别,能够提取较高层次的图像特征,具备充分的图像表示能力和泛化能力,从而能够更好地完成对新任务(电缆隧道的锈蚀识别)的迁移学习。
(2)相比于4种经典识别算法,提出方法在网络训练时间上优于CNN,SVM以及BPNN;尽管相比于ELM在网络训练速度上没有优势,但是在最终的识别率(95.9%)高于ELM算法(87.1%)。
(3)训练好的网络能够进行网络封装,直接应用于电缆隧道巡检机器人的锈蚀识别中。