《武汉工程大学学报》  2024年04期 439-445   出版日期:2024-08-28   ISSN:1674-2869   CN:42-1779/TQ
基于联邦分割学习的输电线路异物检测算法


现代社会快速发展,电力供应已经成为不可或缺的基础设施。输电线路作为电网的重要组成部分,其安全运行对整个电力系统的稳定性有着直接影响。异物侵入输电线路是一个常见问题,可能导致短路、电力损耗甚至大规模停电事件。输电线路上的异物包括树枝、鸟巢、飞行物体等,它们可能因自然因素或人为活动而出现在输电线路附近或直接接触电线。因此,及时准确地检测输电线路上的异物对于维护电网安全和稳定运行至关重要[1]。电网巡检是保障供电稳定性和可靠性的关键措施,能及时发现和解决潜在问题,确保电力系统的稳定运行[2]。传统的电网巡检依赖人工操作完成对电网线路、变电站和设备的检测[3]。然而,人工方法受到其固有局限性的制约,在复杂的操作环境中效率不足,容易受到主观性和人为错误的影响。
随着计算机视觉和机器学习技术的发展,输电线路检测领域开始融入先进技术进行创新。目标检测作为计算机视觉领域中一项基础而关键的任务,包括图像分类和目标定位[4]。当前主流的目标检测算法多基于神经网络,实现自动化的特征提取[5]。神经网络模仿人类视觉系统的工作方式,能有效识别图像中的关键特征,例如电线路上的异物等,从而提供更客观高效的筛选过程。在此背景下,文献[6]提出了一种基于单阶段检测框架的绝缘子检测模型,文献[7]提出了一种基于深度学习的电网关键特征提取算法。这些方法有效地完成了模型的训练,但它们对服务器的依赖程度过高,未充分发挥边缘设备在数据处理和计算中的潜在能力,在边缘场景下存在效率不足和资源浪费的问题。
近年来,物联网技术的发展和边缘计算的兴起在学术界和工业界引起了广泛关注[8]。物联网技术为输电线路检测提供了创新方案,通过在电网上部署传感器和监测设备,实现远程数据收集和监测[9]。其中深度学习与物联网技术的结合,即边缘智能,成为新的发展趋势。边缘智能的关键在于解决计算资源的限制和训练成本[10]。随着电网中终端设备数量的增加,尤其是分布在不同地理位置的设备,传统的中心化深度学习训练方法不再适用。因此,如何在资源受限的终端设备上有效进行神经网络训练成为热门研究方向。
应对上述问题,研究者开始调整联邦学习(federated learning,FL)训练过程,以适应输电线路检测中终端设备的异构性和通信条件的动态变化[11]。FL是一种在保护隐私的前提下,通过加密交换客户端模型参数来训练高性能全局模型的方法[12]。在经典联邦学习(classic federated learning,CFL)架构中,计算负载大的工作在设备上执行,服务器仅聚合来自设备的权重,计算强度较低[13]。
分割学习(split learning,SL)是一种创新的机器学习方法,通过将模型分成客户端和服务器端子模型来优化训练过程。客户端子模型在本地训练,而服务器端子模型在服务器上训练,且服务器无法访问客户端的原始数据,显著降低了客户端的计算需求,使得在计算资源有限的设备,如终端设备上,也能进行有效的模型训练[14]。
本文结合FL和SL的优势,提出联邦分割学习(federated split learning,FSL),并设计基于FSL的检测算法(federated split learning detection algorithm, FSLDA)来解决输电线路异物检测问题。该算法能分散计算任务到多个终端设备,有效利用终端设备资源,实现训练时间的缩减及终端设备计算负荷的降低。同时,敏感数据仅在本地处理,保障了数据的隐私性和安全性。在输电线路异物检测的实际应用中,FSLDA不仅实现了高精度的异物识别,同时在计算效率和能源利用方面实现了显著改进,证明了其在处理高度复杂任务时的出色能力,为智能电网、自动化监控和维护等领域提供强有力的技术支持,使这些领域能在不牺牲性能的条件下处理更为复杂的任务,展现出其广泛的应用潜力和深远的影响力。
1 系统模型
在输电线路异物检测的任务中,系统整体采用云边端架构,如图1所示。系统在训练期间对能力较弱的设备做出计算优化,其中边缘服务器与终端设备的交互为重点部分。性能受限的设备会将神经网络的部分结构卸载至服务器,以便继续执行任务。服务器负责完成神经网络计算的剩余部分,并聚合最后模型参数,进一步更新全局参数。
FSLDA训练由云服务器下发任务开始,电网巡检的中央调度中心制定任务需求并将其分配给相关的边缘服务器,为任务提供数据验证的历史数据集也传输至边缘服务器,供后续处理和分析。边缘服务器在接收到任务指令后,初始化全局神经网络模型。随后,模型参数会通过无线网络分发到各个无人机上。数据采集和本地训练阶段,无人机开始执行实时图像采集,获取训练数据。无人机本地神经网络模型训练也随即开始,训练至指定的神经网络分割点。无人机本地训练完成后,神经网络的中间激活状态和数据标签会上传至边缘服务器进行后续计算。边缘服务器接收中间参数后,进行剩余神经网络层的训练并产生预测结果。预测结果会影响全局参数更新,并反馈给无人机更新本地模型,以准备下一轮模型训练。此外,预测结果还会被安全地上传至云端进行数据备份。持续执行迭代过程,直至任务完成。通过将边缘计算功能与无人机的操作紧密结合,FSLDA为输电线路检测提供了一种高效且可靠的解决方案,同时确保成本效益。
2 基于FSL的输电线路检测
2.1 轻量化目标检测模型
在常见的目标检测模型中,牛津大学视觉几何组(visual geometry group,VGG)提出的系列网络结构擅长于目标识别和图像特征提取。常见的VGG网络结构过于复杂,不适合使用在终端设备上。本文设计了一个VGG简化版本VGG5,保持了原网络结构的高效特征提取能力,结构简单,适用于计算能力较弱的终端设备[15]。
VGG5网络包括3个卷积层、2个池化层和2个全连接层。卷积层使用了3[×]3大小的卷积核,1层使用64个,后续逐渐增加,以更深入地提取图像特征。每个卷积层采用1个激活函数加速训练过程,减少梯度消失的问题。在每个卷积层之后,有1个2[×]2的池化层,步长设为2,用来减少特征向量的空间维度,从而减少模型的参数数量和计算量。
在卷积层和池化层之后,使用2个全连接层来进行高级特征的整合和分类。第1个全连接层包含大量神经元,以充分捕获前面网络层提取的特征。最后1个全连接层则根据二分类任务的需求,设置2个输出节点,并在激活函数的作用下输出概率分布,完成分类任务。
2.2 基于CFL的深度学习
在CFL训练过程中,服务器初始化全局深度学习模型[M],然后将其分发给所有参与的终端设备。终端设备k共有K个,这些设备是电网巡检的无人机、传感器或其他监测设备[16]。
每个设备使用本地数据[Dk]对模型进行训练,服务器拥有全局先验数据集[Ds],用来完成数据验证。训练需要最小化损失函数[Fk(M, Dk)],该函数用来评估模型在特定数据中的表现。例如,对于电网巡检,损失函数是预测的巡检结果与实际结果之间的差异。其次,是梯度的计算和上传,在每个设备上,损失函数相对于模型参数的梯度计算为:
[?Fk=?Fk(M, Dk)?M] (1)
梯度反映模型参数应如何调整以最小化损失。计算出的梯度随后被上传到中央服务器,服务器接收来自所有设备的梯度并进行聚合,以更新全局模型。更新公式为:
[Mnew=M-η?1Kk=1K?Fk] (2)
其中[η]是学习率,更新后的模型随后被分发给各个终端设备,被下一轮训练使用。
在CFL中,终端设备独立训练完整的神经网络模型,模型参数上传至服务器以算术平均方式更新全局模型[17]。然而,训练完整的神经网络模型需要较高的计算能力,超过了一般终端设备的处理能力。因此,解决计算资源限制对训练效率的影响成为FL研究领域亟待解决的问题。
2.3 FSL优化
为解决终端设备在CFL中无法完成模型训练的问题,引入了SL方法来优化模型训练过程。以输电线路的异物检测为例,终端设备与边缘服务器协作完成异物的识别工作。使用的神经网络模型有[N]层,每层可以表示为[Li],其中[i∈[1, ?, N]]。神经网络的训练从输入到输出称为一个轮次,总轮次可以表示为[R]。对于每一轮训练[r],设备k的工作负载记为[Wk],工作负载由[Dk]和神经网络参数决定。每一轮训练中,设备[k]的训练速度为[vr, k]。边缘服务器接收来自终端设备的中间量参数并完成后续训练工作,服务器的训练速度为[vr, s]。
如图2所示,神经网络的分割可以发生在卷积层或全连接层之间,从而实现在不同设备上的分散训练。将分割点表示为[p],[ p∈[1, N]]。若[p<N],网络层[[1, ?, p]]在本地训练,然后经由无线线路传输神经网络中间层参数,边缘服务器接收到参数后,将继续训练剩余网络层[[p+1, N]]。若[p=N],则所有神经网络模型在终端设备上训练,没有参数或网络层卸载到边缘服务器,只有最终的预测结果传输到服务器验证。若[p=0],神经网络只在边缘服务器训练,终端设备将原始数据传输到边缘服务器完成计算任务。然而,原始数据的直接传输可能导致隐私泄露问题,因此在FSLDA中不考虑这种情形。
<G:\武汉工程大学\2024\第2期\危欢-2.tif>[输入][分割点1][分割点2][分割点3][分割点4][卷积层1][卷积层2][卷积层3][分割点5][全连接层1][全连接层2][分割点6]
图2 神经网络结构及分割点
Fig. 2 Neural networks and split points
假设在第[r]轮训练中,设备[k]和服务器之间的网络带宽为[Br, k],卸载比例为[μr, k],设备卸载到服务器时传输的中间参数大小用[L]表示。则有[μr, kWk]大小的任务量在终端设备本地训练,卸载[1-μr, kWk]的任务量到边缘服务器训练。因此,在第[r]轮中,设备[k]的训练时间可以表示为:
[tr, k= μr, kWkvr, k+(1-μr, k)Wkvr, s+LBr, k] (3)
其中 [μr, kWkvr, k] 和 [(1-μr, k)vr, s] 分别是边缘设备和服务器的训练时间,[LBr, k] 是传输参数的通信时间。在一个训练任务中[L]和[Br, k]是不受系统控制的量。同步训练时,服务器需要等待所有设备完成本地训练,然后再完成自己的训练。因此,在一个训练轮次中,框架的总训练时间为:
[tr=max{tr, k}Kk=1] (4)
此外,FSLDA还根据训练时间对框架的能耗进行建模。单一训练轮次的能耗定义为由3部分组成的总能耗:终端设备训练客户端子模型的能耗、传输中间层参数的能耗以及边缘服务器训练服务器端子模型的能耗。一般来说,边缘服务器的能量供应充足,因此不考虑边缘服务器计算所需的能耗。由此可知,设备[k]完成一轮训练的能量消耗可以计算为:
[er, k=Ponrμr, kWkvr, k+PoffrLBr, k] (5)
其中[Ponr]和[Poffr]分别表示物理网设备训练模型的平均功率和传输参数的平均功率。FSLDA同时考虑时间与能耗对训练的影响,允许设备根据自身性能选择合适的分割策略,扩展终端设备的可能性。
3 实验结果与分析
3.1 数据准备
为满足输电线路异物检测的需求,构建了一个输电线路异物数据集。该数据集由800多张无人机捕获的原始图片组成,如图3所示。为了增强训练数据的多样性并预防模型过拟合,数据集使用了包括图像旋转、镜像翻转、亮度调整、高斯噪声添加、图像缩放和裁剪等数据增强技术。这些措施能帮助模型更精准地解析电网图像在不同条件下的变化。同时,为模拟各个地区不同的输电线路数据,数据集分为4个部分,分别在3台终端设备和1台服务器上处理和使用。
<G:\武汉工程大学\2024\第2期\危欢-3.tif><G:\武汉工程大学\2024\第2期\危欢-3.tif>[(b)][(a)]
图3 数据样本:(a)含有异物的输电线路,
(b)没有异物的输电线路
Fig. 3 Data sample:(a)transmission line with foreign object,(b)transmission line without foreign object
3.2 实验环境
实验设备包括1个边缘服务器以及3个边缘设备。边缘服务器搭载11代英特尔 i5 11320处理器(3.20 GHz),16 GB内存,运行Windows 11操作系统,并安装了PyTorch 1.10.2版本。2台边缘设备使用树莓派4B(设备1和设备2),配备Broadcom BCM2711处理器(1.5 GHz),8 GB内存,运行树莓派操作系统。这2个设备搭载PyTorch 1.7.0版本,但使用读写速度不同的储存卡,设备1为10 MB/s,而设备2为30 MB/s。实验另有1台配有Intel Core i5-7200处理器(2.5 GHz)、8 GB内存的边缘设备(设备3),运行Windows 10操作系统,安装PyTorch 1.10.2版本。在实验过程中通过在交流电源插座和边缘设备电源之间使用数字功率计来获取树莓派的功耗信息。神经网络模型在FSLDA和CFL两种框架下进行训练,并比较性能。
3.3 实验结果
测试FSLDA和 CFL在输电线路异物数据集上的准确率,结果如图4所示。FSLDA与CFL在输电线路异物数据集下训练深度学习模型得到的准确率均在98%以上,两种方法得到的结果曲线走向一致,在训练80次左右完成收敛。实验结果表明,FSLDA在准确率上能完成训练任务目标,不受神经网络分割影响。
<G:\武汉工程大学\2024\第2期\危欢-4.tif>[0 10 20 30 40 50 60 70 80
训练次数 / 次][100
95
90
85
80
75
70][准确率 / %][CFL
FSLDA]
图4 不同方法下的电网异物检测准确率
Fig. 4 Accuracy of foreign object detection in grid with
different methods
对不同设备在每个分割点上的训练时间与计算能耗进行初步评估,得到终端设备的基础性能指征。表1是终端设备在不同分割点得到的基准能耗表现,从表中能看出,设备1在分割点1处有最低的训练能耗,在该点,设备1将大部分计算任务卸载到边缘服务器以减少本地开销。设备2在分割点1和分割点5得到了相同的数值表现,是因为本地计算能耗和参数传递能耗在这两个分割点达到平衡。对于设备3和边缘服务器,由于它们均通过直连电路获得能源,不存在能耗短缺问题,故未对其能耗问题进行探讨。各个设备在不同卸载点上的平均训练时间如表2所示,其中,对于计算能力有限的设备1,最短的训练时间在分割点1,它将大多数计算任务卸载到服务器以减轻自身计算负载,以获得最佳的训练时间。计算能力较强的设备2,在分割点6取得最短的训练时间,此时任务完全在本地执行,只需将最后结果上传至服务器。最后,对于计算能力远超树莓派的设备3,本地训练能体现出它的最佳性能。
表1 终端设备在不同分割点的基准能耗
Tab. 1 Benchmark energy consumption of terminals at
different split points
[设备 基准能耗 / (mA·h) 分割点
1 分割点
2 分割点
3 分割点
4 分割点
5 分割点
6 设备1 6.1 9.2 7.7 8.5 8.2 7.8 设备2 3.2 6.3 4.0 4.2 3.2 3.6 ]
表2 终端设备在不同分割点的基准训练时间
Tab. 2 Benchmark training time for terminals at
different split points
[设备 基准训练时间 / s 分割点
1 分割点
2 分割点
3 分割点
4 分割点
5 分割点
6 设备1 22.1 42.6 26.2 24.4 26.5 25.8 设备2 16.7 29.8 15.3 16.4 12.1 11.3 设备3 25.3 18.2 13.1 9.7 5.5 4.5 ]
基于表1中终端设备的基础能耗信息,获得FSLDA与CFL在训练能耗上的对比结果,如图5所示。设定设备1的卸载方案为分割点1,而设备2分别在分割点1和分割点5进行测试。结果显示,设备1在分割点1处获得了显著的性能改善,其能耗优化了20%。而设备2则在分割点5处表现最佳,其能耗优化了15%。FSLDA对能源消耗的改善非常显著,特别是在边缘设备上,计算资源有限的设备将自身高负载任务卸载到服务器能有效改善能耗,使其完成时间更长的任务。
[10 20 30 40 50
训练次数 / 次][500
400
300
200
100
0][能耗 / (mA·h)]<G:\武汉工程大学\2024\第2期\危欢-5.tif>[设备1 CFL
设备2 CFL
设备1 FSLDA
设备2 FSLDA分割点1
设备2 FSLDA分割点5]
图5 终端设备在不同方法下的总能耗
Fig. 5 Total energy consumption of terminals by
different approaches
FSLDA的训练时间基于表2的基础数值,将设备1的卸载方案设置为分割点1,设备2和设备3的卸载方案均设置为分割点6。在上述卸载方案下,获得设备运行单轮的结果(图6)和神经网络运行50次后的结果(图7)。设备1在分割点1的训练时间明显小于CFL,总时间减少10%。设备2和设备3有少量优化。
<G:\武汉工程大学\2024\第2期\危欢-6.tif>[0 5 10 15 20 25 30 35 40 45 50
训练次数 / 次][40
35
30
25
20
15
10
5][时间 / s][设备1 CFL
设备2 CFL
设备3 CFL
][设备1 FSLDA
设备2 FSLDA
设备3 FSLDA]
图6 终端设备在不同方法下的单轮训练时间
Fig. 6 Single round training time of terminals with
different methods
<G:\武汉工程大学\2024\第2期\危欢-7.tif>[25
20
15
10
5][时间 / min][0 10 20 30 40 50
训练次数 / 次][服务器CFL
设备1 CFL
设备2 CFL
设备3 CFL
][服务器FSLDA
设备1 FSLDA
设备2 FSLDA
设备3 FSLDA]
图7 设备在不同方法下的总训练时间
Fig. 7 Total training time of devices with different methods
为了解决设备2时间与能耗最优化问题,设计了一组在分割点5和分割点6的对比实验,揭示不同分割点下的设备2时间与能耗关系。实验结果如图8所示,其中线型图代表时间变化,柱形图反映能耗情况。从图8中可以观察到,当在分割点5时,计算时间较优,即在该分割点下,设备2能以更快的速度完成任务。而在分割点6时,能耗的表现更为优越。说明在分割点6,处理时间略有增加,但设备的能耗显著降低。通过这组实验可以证明,FSLDA可以根据应用场景的需求,精准地选择模型分割点,优化设备在执行任务时的时间效率和能耗。这对于设计和实施高能源效率和快速响应的智能系统具有重要意义,尤其是在对时间敏感或面临能源限制的应用环境中。
<G:\武汉工程大学\2024\第2期\危欢-8.tif>[0 10 20 30 40 50 60
训练次数 / 次][11
10
9
8
7
6
5
4
3
2
1
][时间 / min][分割点5时间
分割点6时间
分割点5能耗
分割点6能耗][200
160
120
80
40
0
][能耗 / (mA·h)]
图8 设备2在不同分割点的时间与能耗
Fig. 8 Device 2 time and energy consumption at
different split points
4 结 论
为解决输电线路异物检测任务中的资源浪费和隐私泄露问题,提出了一种边缘计算驱动的输电线路异物检测算法FSLDA。该算法结合FL与SL,构建了一个既高效又安全的分布式学习方案。通过与CFL的对比实验,验证了所提出方案的可行性和效率。FSLDA在保持准确率不变的同时,能够显著优化终端设备的计算能力,训练时间缩短了10%,能耗降低了20%,表明FSLDA在加强计算效率方面的显著优势,还显示了其在节能和环境友好方面的重要贡献。同时,FSLDA通过仅使用设备的本地数据进行训练,有效地保护了用户数据的隐私,减少了数据泄露的风险。这一策略为终端设备在保障安全和隐私的前提下参与复杂计算任务提供了新的可能性。