黄冬梅,王玥琦,胡安铎,孙锦中,时帅,孙园,房岭锋
(1.上海电力大学 电子与信息工程学院,上海 201306;2.上海电力大学 电气工程学院,上海 200090;3.上海电力大学 数理学院,上海 201306;4.国家电网有限公司,北京 100031)
输电线路绝缘子串常年暴露在复杂多变的环境中,较易发生故障。因此,需要及时准确地对绝缘子进行状态识别。人工巡检和无人机巡检是目前识别绝缘子状态的主要方式。传统的人工巡检方法准确率较高,但存在效率低、浪费人力等问题;无人机巡检减少大量的人力,但是采集到的绝缘子照片数量随巡检范围的扩大呈指数级增加,实时处理大量的图片对于处理器和通信网络是一个巨大的挑战[1-4]。
除了硬件方面的要求,基于无人机巡检的绝缘子状态识别[5]还需要有高精度的识别算法支撑,提升识别准确率的关键在于准确提取图片信息特征[6]。文献[7]通过提取S分量以突显目标区域,考虑绝缘子形状特征的影响设计特征向量,区分正常和缺陷的绝缘子图像。文献[8]利用绝缘子“粗”分割技术进行图像分割,通过计算有效像素点占比,识别“掉串”故障现象。传统的图像处理技术提取的特征具有易提取、可区分性和不变性的特点,但主要依赖人工设计的特征提取器,存在鲁棒性差、调参复杂等问题。文献[9]基于去除卷积核间的相关性思想,提取独立的特征信息,进而提高绝缘子状态识别的准确率。文献[10]结合弱监督细粒度分类的思想,采用过特征图合并和双线性池化操作将多网络提取到的特征进行融合,实现绝缘子正常与故障状态的识别。文献[11]使用一个集成3种单层感知结构的多层感知器,提取高质量的特征检测绝缘子故障。基于神经网络的图像分类算法具有训练快、泛化能力强等优点,同时存在计算量大、需要大量的数据来训练模型的缺点。
边缘计算是近年来在海量数据的处理方面兴起的新范式[12],具有快速处理和分析数据、占用网络流量较少的优点。因此,本文提出了一种融合多维度特征的绝缘子状态边缘识别方法。首先利用云边协同和边边联邦协同的技术手段[13],将图像分类计算、模型更新下沉到边缘设备,在边缘节点处实时处理图片信息。同时,为进一步提高识别的准确率,从网络宽度、特征空间维度和通道维度三方面考虑,在ResNet101[14]基础上使用Inception模块构建数据池化层,并将压缩激励模块(squeeze-and-excitation module,SE)[15]、卷积注意力模块(convolutional block attention module,CBAM)[16]分别嵌入带跳跃连接线的残差块结构和ResNet101的大层中,使模型更关注信息丰富的区域,更好地实现网络的特征提取。最后,通过全连接层得到绝缘子的状态。该方法考虑从多个不同的维度提取特征,使得改进后的ResNet101残差神经网络有高效的特征提取能力,具有更准确的故障识别效果。
边缘计算是一种分布式计算,在靠近数据源头的网络侧,部署了具有计算、存储能力的边缘设备,就近处理采集到的数据,而不需要将大量的数据上传到云中心再进行处理。边缘计算减轻了云端网络带宽、核心节点的压力,也使得边缘物联网设备的计算和存储能力得到最大利用。
目前,大部分的研究都将神经网络模型放在云端进行训练[17],同时云端还负责数据分析、模型更新等任务,边缘节点只负责存储和预处理本地数据。本文研究的绝缘子状态识别对实时性要求较高,且采集到的数据为短周期数据,不适合将数据上传到云端再进行状态识别。
因此,本文采用了一种新的云边协同计算的方法,将识别算法、模型更新转移到边缘节点完成,云端只负责模型设计和最初的训练工作[18]。本文提出的绝缘子状态识别系统框架如图1所示。
图1 云边协同和边边联邦协同联合的绝缘子状态识别训练框架Fig.1 Training framework for insulator state recognition based on cloud edge collaboration and edge-edge federation collaboration
ResNet网络通过堆叠多个残差块结构,从深度方面提升了卷积神经网络的分类能力。因此本文使用ResNet101作为主干特征提取网络,提出了一种融合多维度特征的绝缘子状态识别方法。改进后的ResNet101整体网络结构如图2所示。
图2 多维度特征融合的整体网络结构Fig.2 Overall network structure based on multidimension feature fusion
改进后的ResNet101网络能够关注于图像中最具有辨别力的区域,提高模型的特征提取能力,从而提高分类准确率,网络结构的参数配置如表1所示。
表1 多维度特征融合的ResNet101网络参数配置Table 1 Parameter configuration of ResNet101 network based on multi-dimension feature fusion
为提高无人机电力巡检中绝缘子故障识别的准确率,本文提出一种改进的计及多维度特征提取的残差网络。通过使用Inception模块构建数据池化层,并将轻量级的SE模块、CBAM模块分别嵌入带跳跃连接线的残差块的内部结构、ResNet101的第一层的大层之前和最后一层的大层之后[19],从网络宽度、特征空间维度和通道维度对图像进行高效的特征提取。
(1)基于Inception模块改进的数据池化层。GoogLeNet神经网络框架[20]首次引入了Inception结构,以增加网络宽度的方式提升模型的性能。在传统的残差网络中,数据输入端的数据池化层由 7×7的卷积层和池化层组成,使用 7×7卷积操作实际上是用来直接对呈百万级数量的输入图片降采样[21]。考虑到本文研究的绝缘子样本有限,因此本文设计了一种基于Inception模块改进的数据池化层,能够有效提取绝缘子图像特征,结构如图3所示。图3中改进的数据池化层以结构并行方式,通过串联和堆叠多个不同尺寸的卷积核来代替 7×7的卷积核。首先,将输入的图片同时传入4个分支,使用 1×1的卷积核进行降维以及映射处理,第3个分支使用2个级联的 3×3滤波器进一步执行卷积操作,在每一个卷积层后加入批量标准化(BN)和ReLU激活函数,增加网络的非线性;然后,将得到的4个不同尺度特征矩阵按深度进行拼接,得到输出特征矩阵;最后,考虑到随着层数加深可能出现过拟合的现象,将改进后的数据池化层嵌入带跳跃连接线的结构中,通过最大池化层得到输出特征矩阵。
图3 改进的数据池化层结构Fig.3 Improved data pooling layer structure
(2)压缩-激励模型。不同于Inception模块通过使用多尺度的卷积核提取特征图上的全局关联信息,SE模块考虑特征通道间的相互关系,通过权值重标定操作来提取各通道间的全局关联信息。因此,本文将SE模块嵌入带跳跃连接线的残差块内部结构中,抑制效果较小的特征图权重,并使有效的特征图的权重放大,同时减少过拟合的风险。本文将改进后的残差块称为SEResidual block,结构如图4所示。给定一个输入x,通过Residual残差块,得到一个c2×h×w的特征图,接着分三步操作来实现特征重标定。首先是压缩操作,通过执行全局平均池化操作将输入的特征图沿着空间维度压缩成c2×1×1的特征向量,用于上下文建模。同时加入ReLU激活函数,增加网络的非线性。然后是激励操作,由两个全连接层组成。通过降维比r先进行降维处理得到(c2/r)×1×1的特征向量,再升维得到c2×1×1的特征向量。其中r是一个缩放参数,其目的是减少通道个数从而降低计算量。接着将经过Sigmoid归一化后的权重与输入特征矩阵相乘,实现对原始特征的重标定。最后将重标定的特征矩阵与输入x相加,得到最终输出。
图4 残差块改进结构Fig.4 Improved structure of residual block
(3)卷积注意力模块。相比SE模块只关注于特征通道间的关系,CBAM模块可以同时考虑特征空间维度和通道维度,依次从空间和通道两个不同的维度推算注意力图。在神经网络中使用卷积注意力模块,可以提升网络的特征提取能力,使模型更加关注图像中最具有辨别力的区域。卷积注意力模块结构如图5所示。
图5 CBAM结构Fig.5 CBAM structure
对于一个给定的输入特征图F∈Rc×h×w,首先经过通道注意力模块得到最终的通道注意力图Mc∈Rc×1×1。
通道注意力特征图计算公式为
式中:σ表示Sigmoid激活函数;MLP为多层感知机;分别表示被平均池化、最大池化的特征。
得到通道维度优化后的特征图F′为
式中:⊗表示按位相乘。将经过通道优化后的特征图F′作为输入,再经过空间注意力模块得到最终的空间注意力图Ms∈R1×h×w。
空间注意力特征图计算公式为
式中:σ表示Sigmoid激活函数;f7×7表示大小为7×7的卷积操作;分别表示沿着通道被平均池化、最大池化的特征。
得到空间维度优化后的特征图F′′为
为了评估本文构建的框架应用于绝缘子状态识别的有效性,采用3个边缘节点开展绝缘子状态识别实验。实验使用由国家电网公司提供的开源绝缘子数据集[22],数据集包括无人机捕获的正常绝缘子图像和合成的有缺陷绝缘子图像两类,其中正常绝缘子600张,缺陷绝缘子248张。通过 0°、90°、180°和 270°旋转图像的方法进行数据扩增,将数据集扩充到原来的4倍,共3 392张绝缘子图像。按7∶ 3的比例将扩充后的数据集分为训练集和测试集。在模型的基本参数设置方面,选择优化器Adam,学习率设置为0.005,batch size为 32,Dropout设为 0.5,迭代轮数设为30轮。测试过程中用的深度学习框架为Pytorch,编程语言为Python。
本文搭建如下实验环境以模拟实际场景:选用计算能力较强的GPU服务器作为云中心,笔记本电脑模拟边缘网络的边缘节点,硬件设备参数如表2所示。将本实验采用的基于3个边缘计算节点的云边协同状态识别系统与基于云计算模式的识别系统、基于云边协同计算模式的识别系统进行对比,设置2组实验。第一组实验的3个边缘计算节点分别处理1 130、1 130 和 1 132 张图片;第二组实验的3个边缘计算节点分别处理1 500、1 000和892张图片。假设智能终端设备、边缘服务器、云服务器的CPU频率分别为0.5 GHz、0.9 GHz 和 1.4 GHz。对比结果如表3 所示。
表2 边缘端与云端设备对比Table 2 Comparison of edge and cloud devices
表3 模型训练延时比较Table 3 Comparison of model training delays
由表3可知,基于云计算模式的识别系统模型识别准确率达到99%,对比本实验将计算下沉到3个边缘节点后的准确率分别为99%、98.5%、99.2%。实验表明,基于3个边缘计算节点的云边协同状态识别系统减少大量模型训练延时的同时,较好地保持了识别准确率。
2组实验的任务完成时间如图6所示。在2组实验中,基于云计算模式的任务完成时间最长,达到2 868 s,这是由于云计算将大数据集中化处理,需要大量的数据上传和下载时间。第一组实验中,3个边缘计算节点处理的任务数较为均衡,云边协同计算和边边联邦协同计算分散化处理了本该传输到云计算中心的数据,使得任务完成时间减少约66%,并且2种计算模式耗时相差不大;第二组实验中,3个边缘计算节点处理的任务数不均衡,边边联邦协同计算协同各边缘计算节点之间的计算资源,相比云边协同计算节省340 s,任务完成时间较短。
图6 3种计算模式的任务完成时间Fig.6 Task completion time of three computing modes
为了评估本文提出的模型对绝缘子图像故障识别的有效性,使用准确率、精确率、召回率和特异度4个评价指标来判定有效性。
为验证本文设计的绝缘子状态识别模型的有效性,选取不同的卷积神经网络进行对比实验,所有模型均使用相同的基本参数训练。对比结果如表4所示。由表4的数据表明,利用改进后的ResNet101网络可以很好地对绝缘子状态进行分类,从而正确识别绝缘子状态,实现绝缘子故障检测。
表4 不同卷积神经网络识别结果对比Table 4 Comparison of recognition results of different convolution neural networks
为研究模块嵌入对模型识别准确率的影响,在使用同一训练集样本的情况下,分别对ResNet101原网络嵌入不同模块来进行消融实验,得到嵌入不同模块的神经网络识别结果。ResNet101网络的识别准确率最低,为96.4%。将Inception、SE和CBAM模块嵌入ResNet101网络,模型准确率分别提升了0.8个百分点、1.9个百分点和1.2个百分点。文献[19]的方法是将CBAM模块插入到ResNet101网络的4个大层之后,识别准确率达到了96.7%;改变CBAM模块嵌入位置,仅在ResNet101网络第一层大层之前和最后一层大层之后插入,准确率为97.2%,表明CBAM模块嵌入网络的位置对识别准确率有一定程度的影响;本文同时嵌入Inception、SE和CBAM模块的网络,模型性能最好,准确率达到99.0%。从对比实验结果可以看出,不同的模块分别嵌入ResNet101网络,相比ResNet101模型准确率都会有所提升。
为了进一步分析基于多模块融合的ResNet101分类模型提取到的绝缘子图像的特征,通过查看卷积神经网络在正向传播过程中的中间层传出的特征图,更直观阐明网络模型具体学习到的特征[24]。本文随机抽选绝缘子测试集中的1张图片进行可视化分析,如图7所示。分别将这张图片输入ResNet101和本文改进后的ResNet101的模型中,然后把网络中间某些层输出的特征图按通道作为图片进行层可视化展示,前12个通道的特征图结果如图8、图9所示。一共有4组图片,分别代表数据池化层、max pool、layer 1、layer 4 的输出,每组的个数为12。
图7 绝缘子图片Fig.7 Insulator picture
图8 ResNet101网络输出的特征图Fig.8 Characteristic diagram of ResNet101 network output
图9 基于多模块融合的ResNet101网络输出的特征图Fig.9 Characteristic diagram of ResNet101 network output based on multi-module fusion
在经过数据池化操作之后,滤波器过滤掉大量无关信息,靠近输入层的特征图保留了图像具体细节的纹理特征,所以部分特征图可以看到绝缘子形状信息。图像中高亮部分对应绝缘子目标。对比图8a)与图9a)可以看出:图9a)的细节比图8a)更加丰富、细腻,纹理特征也更加明显,表明本文方法得到的数据池化层输出的特征比ResNet101网络更加丰富,能更有效地提取特征,也证明了Inception模块能更好地融合特征信息;对比图8b)与图9b)可以看出:在经过最大池化操作后,相比本文提出的方法,ResNet101网络得到的特征图信息更加丰富,说明嵌入的CBAM模块能协同空间和通道两个维度,更好地提取图像特征;从图8c)与图9c)可以看出:再经过layer1、layer4等更深层的操作后,特征图更关注某些轮廓边缘区域的细节部分,得到的信息也更加丰富;对比图8d)与图9d)可以看出:图8d)中部分卷积核只提取了少量的特征信息,图9d)中大量卷积核存在信息缺失(对应图上深蓝色的方格),表明SE模块有效抑制了效果较小的特征图的权重,也能说明多模块融合能够有效地提取特征。
针对目前绝缘子状态识别存在实时性差、识别准确率低的问题,本文提出一种融合多维度特征的绝缘子状态边缘识别方法,经实验验证后得到如下结论。
(1)通过搭建云边协同和边边联邦协同联合的绝缘子状态识别训练框架,将数据预处理、识别算法、模型更新过程在边缘节点完成,保证了状态识别的实时性。
(2)采用基于多模块融合的ResNet101网络模型对绝缘子图像进行状态识别,识别准确率为99.0%、精确率为99.7%、召回率为98.9%、特异度为0.993。
实验表明,本文提出的融合多维度特征的绝缘子状态边缘识别方法在性能上优于其他识别模型,能够从不同维度高效提取特征,具有较高的精确率与实时性,能够有效识别出电力巡检图像中故障的绝缘子。针对电网气象灾害,考虑复杂气象条件下绝缘子状态的多样性以及设计出更轻量的模型是未来研究的重点。