基于联邦学习的智能电表故障诊断方法及设备转让专利

申请号 : CN202010597352.5

文献号 : CN111537945B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 肖勇周密郑楷洪钱斌

申请人 : 南方电网科学研究院有限责任公司

摘要 :

本发明公开了一种基于联邦学习的智能电表故障诊断方法及设备,该诊断方法包括:设置能够运行在智能电表端的轻量级故障检测模型;智能电表集群数据特征提取,即对智能电表采集数据提取公共重叠特征;在每个智能电表终端上进行故障检测模型的训练;中间训练参数上传给电力数据中心的服务器;服务器进行参数的融合计算并回传到各本地模型进行更新;完成共享模型的训练。应用本发明所提供的技术方案,可以在保护智能电表用户隐私数据的前提下,充分利用庞大的集群数据来提升用户侧智能电表故障检测的能力。

权利要求 :

1.一种基于联邦学习的智能电表故障诊断方法,其特征在于,在智能电表侧设置能够运行的轻量级故障检测模型,与每个智能电表相连的嵌入式计算设备作为数据方参与到联邦学习框架下的模型训练中;所述故障检测模型用于识别故障类型,其输入参数为智能电表端的采集数据,各智能电表端的采集数据具有重叠的公共特征;

利用智能电表采集数据的公共特征集对故障检测模型进行训练,在每一轮迭代完成之后与数据中心进行一次通信,迭代过程包括各本地模型装载一批本地数据样本,通信则在完成一次训练之后将训练梯度和损失函数加密汇总到联邦学习智能电表故障诊断框架中训练协作者进行训练参数的汇总与更新;所述训练协作者为数据中心服务器;

联邦学习训练协作者负责调度整个训练过程,完成参数汇总操作:所述联邦学习训练协作者统计参与者发送过来的损失函数和梯度信息,完成梯度信息的汇总融合以确保全局损失函数在向着收敛的方向不断优化;

各智能电表端的采集数据共同参与完成智能电表故障诊断共享模型的训练,所述智能电表故障诊断共享模型运行于数据中心服务器上。

2.根据权利要求1所述的基于联邦学习的智能电表故障诊断方法,其特征在于,数据不需要直接汇总到数据中心,所有参与者需要按照由数据中心提供的具有相同加密规则的密钥来对自身设备产生的数据进行加密并用于训练本地模型;构成整个训练系统的数据样本来自一个业务范围内的智能电表集群,所述智能电表集群的规模可根据实际需求进行设置。

3.根据权利要求1所述的基于联邦学习的智能电表故障诊断方法,其特征在于,在全局损失函数不断优化的过程中,每一轮通信过程由训练协作者提供参数来更新各本地模型,更新参数通过智能电表终端侧与数据中心的网络来完成。

4.一种用于实现如权利要求1至3任一所述的基于联邦学习的智能电表故障诊断方法的设备,其特征在于,包括与智能电表相连的嵌入式设备,所述嵌入式设备包括处理器、存储器及网络通信模块,所述处理器用于执行智能电表故障诊断方法,所述存储器用于记录智能电表产生的数据及存储轻量级本地模型和训练参数;所述网络通信模块用于与所述数据中心进行通信。

说明书 :

基于联邦学习的智能电表故障诊断方法及设备

技术领域

[0001] 本发明涉及电力系统智能电表故障检测技术领域,特别是涉及一种基于联邦学习的智能电表故障检测方法及设备。

背景技术

[0002] 针对电力系统中智能电表的故障诊断问题,已有的诊断模型是部署在计量系统运营中心的,通过智能电表采集数据、计量点监控数据以及抄表数据等经传统运营手段获得
的数据来进行故障诊断。大数据以及物联网时代背景下,智能设备正逐渐向高性能计算、高
智能方向发展。而利用大数据构建机器学习模型、构建用户数据画像以及挖掘数据信息则
成为了当下数据研究领域的热点,但其中信息安全与数据隐私问题受到了研究人员极高的
重视,其原因在于数据拥有者对数据保护的需求以及想得到性能较好模型而联合数据这两
点之间的矛盾。
[0003] 综上所述,考虑到电力系统中智能电表集群规模大且涉及用户数据隐私保护的问题,传统方法在获取数据时必定会侵犯到用户隐私。如何充分利用数据提升业务模型能力
以及有效地保护数据隐私成为了目前本领域需要解决的问题。

发明内容

[0004] 本发明提出了一种基于联邦学习的智能电表故障诊断方法及设备,其目的是:在智能电表侧运行故障诊断模型,利用联邦学习的去中心化的训练模式来对故障诊断模型进
行训练,联邦学习框架将来自各智能电表端的采集数据进行联合,用以训练多边故障检测
模型,提高智能电表故障的识别准度。
[0005] 为解决上述技术问题,本发明提供如下技术方案:
[0006] 一种基于联邦学习的智能电表故障诊断方法,包括如下步骤:
[0007] 在智能电表终端侧产生的实时数据源上设置故障检测模型:本发明所述的基于联邦学习的智能电表故障检测方法,首先根据业务问题设置数学模型,因此本发明专利将故
障诊断定义一个分类问题,采用包括输入层,多个隐含层以及softmax输出层的神经网络。
而联邦学习模式要求多方数据共同参与共享神经网络模型的训练,因此在智能电表侧部署
相同的数学模型。此外,在模型训练完之后,部署于智能电表侧的模型通过直接读入设备采
集数据来进行故障分析。
[0008] 智能电表采集数据特征提取:在本发明所述的基于联邦学习的智能电表故障检测框架下,智能终端数据不需整合与存储在数据中心。根据上一步中所述的本地模型对训练
的要求,训练用数据直接使用本地存储介质上的数据,通过读取载入来完成训练集加载。而
数据集则根据故障特征提取智能电表采集数据中的公共部分,取公共特征并在用户域横向
联合各数据集。
[0009] 本地模型训练:针对智能电表故障检测神经网络模型的训练,每个本地模型的训练按照传统单机神经网络设置相同的迭代次数、学习速率等训练参数。以及设置样本批次、
初始权值等模型参数。
[0010] 本地模型的中间参数上传:此步骤需要用到网络信道,具体为:本地智能电表侧的计算设备完成一次迭代之后,将中间训练参数通过通讯模块上传给数据中心,数据中心在
整个训练过程中充当训练协作者。
[0011] 参数融合与回传:充当训练协作者的数据中心在汇总所有模型上传的参数之后,基于联邦学习定义的联合损失函数来计算更新梯度,并在计算完之后将更新矩阵分发回各
个本地模型以完成自身的更新。
[0012] 完成共享模型训练:各个本地模型在达到训练协作者设置的迭代次数之后停止训练的过程以及进行故障诊断的过程,具体包括:
[0013] 完成训练步骤:确认联合损失函数收敛,停止参数上传,以及停止更新三个步骤。
[0014] 故障诊断步骤:在共享模型得到最优的参数之后,每次进行本地智能电表故障诊断问题分析时,共享模型(数据中心侧)与本地模型(智能电表侧)具有相同的结构,因此读
取输入样本后可以很好地拟合数据特征;进一步的,产生的计算结果将映射到对应的智能
电表故障类型上。
[0015] 本发明还提出了一种用于所述的基于联邦学习的智能电表故障诊断方法的设备,包括:
[0016] 处理器:能够支持训练轻量级联邦学习框架下神经网络模型的计算设备,用于运行基于联邦学习的故障检测模型对应的程序;
[0017] 与处理器相连的存储器:具有读写与存储功能的计算机存储介质,用于存储故障检测模型对应的程序文件以及一定时间范围内的计量数据样本。
[0018] 与处理器相连的网络通信模块:完成训练中间参数在数据中心服务器与智能电表集群之间的传输。
[0019] 综上所述,应用本发明所提供的方法,首先部署在智能电表端的故障检测模型,并设定联邦学习框架下的样本特征集合。在训练过程中,完成训练参数的上传,以及由数据中
心完成更新参数的回传。最后,优化后的故障检测神经网络用以对智能电表端进行故障分
析。
[0020] 应用本发明所提供的技术方案,可以在保护智能电表用户隐私数据的前提下,充分利用庞大的集群数据来提升用户侧智能电表故障检测的能力。

附图说明

[0021] 图1为本发明的实施流程图;
[0022] 图2为本发明的神经网络结构图;
[0023] 图3为本发明的协作训练实施流程图;
[0024] 图4为本发明的设备结构图。

具体实施方式

[0025] 为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是
全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提
下所获得的所有其他实施例,都属于本发明保护的范围。
[0026] 如图1所示,基于联邦学习下本地数据联合建模的概念,将智能电表采集数据中的用户隐私信息加以保护,通过集群终端共同完成智能电表故障诊断模型的共享训练。具体
地,该方法包括以下步骤:
[0027] 步骤1:部署轻量级本地数据模型,并利用自己的本地数据对模型进行训练,该模型为故障类型识别的分类神经网络。本发明专利所述的一种基于联邦学习框架的智能电表
故障诊断方法需要参与者在本地部署具有相同结构的模型。该模型的具体结构在针对图2
的具体实施中做阐述。
[0028] 步骤2:对智能电表产生的计量采集数据进行特征对齐,需要利用公共的特征部分对模型进行训练。智能终端群的数据设为n维特征,数据中心得到加工统计数据则设为m维
特征,本发明专利采用联邦学习横向模式这两类数据进行联合。具体过程为,智能终端群的
提取公共特征之后的数据集,数据中心带有故障类型标签的统计数据集,利用这两类数据
对共享模型进行训练。
[0029] 步骤3:采用神经网络中经常使用的随机梯度下降法进行模型的迭代计算,并对标函数进行收敛操作。
[0030] 步骤4:中间参数的上传;
[0031] 步骤5:融合与回传过程;
[0032] 步骤6:经过预先设置的全局迭代优化次数的模型训练后,本专利提出的框架便完成共享神经网络的训练。
[0033] 步骤4、5是联邦学习统筹多方本地模型进行共享学习的核心机制。本发明专利利用网路进行参数的传输:首先将本地训练参数发送给数据中心,数据中心处理完中间参数
的汇总计算之后,将更新参数回传给各本地模型。
[0034] 图2为步骤1所对应的具体实施过程:本发明所述的一种基于联邦学习的智能电表故障诊断方法,其故障分类模型采用多个隐含层与Softmax分类函数相结合的神经网络(以
下称为“Softmax网络”)。Softmax网络可以自动学习样本特征并完成多目标分类。对于带标
签的训练数据,从智能电表终端获取的故障问题,利用Softmax网络进行故障的分类处理。
Softmax分类函数作为深度神经网络的损失函数对输出数值进行处理。Softmax函数将以串
联的形式接到多个隐含层计算之后的输出上,并进行数值到相对概率的转化。在本发明行
所述的智能电表故障检测中,对于智能电表终端集群域的采集数据采用该网络进行分类检
测时,首先将该数据域包含的运行终端数据、负控参数、终端配置参数、抄表参数等数据表
进行特征向量化,进而通过神经网络映射到设备存在的异常问题上,该异常问题包含智能
电表对应的终端损坏、用电异常、电压异常、时钟异常等。
[0035] 关于Softmax函数的定义如下所示:
[0036]
[0037] 其中Vi为神经网络直接输出值,C则定义为待分类问题的类别数,Si是Softmax函数的输出值,即输出元素i与总输出元素和的比值。线性分类器模型最后输出层包含了n个
输出值集合:V=[C1,C2,C3,C4,…,Cn](这里的C1至Cn为任意整数),经过Softmax处理后,
数值转化为相对概率之后的输出集合:S=[S1,S2,S3,…,Sn],这里的相对概率均为非负小
数。集合S中,对应数值最大的项的概率最大,则表明该样本预测为该类的可能性最大。
Softmax函数将网络输出值转化为相对概率,在计算过程中,需要对数值溢出的问题进行处
理。如下图公式(2)(3)所示:要对V进行数值处理:V中的每个元素减去集合中的最大值。较
之最初的softmax分类函数,这里对函数的输入值做了调整,这样就保证了数值域的统一,
避免了在优化过程中出现学习速率跳跃或者缓慢的问题。
[0038] D=max(V)
[0039]
[0040] 图3为步骤4、5所对应的联邦学习框架下智能电表故障诊断模型训练协作的具体实施过程。
[0041] 具体而言,智能电表包含了表码信息、功率信息、错误告警信息等。从数据中心的角度来看,数据处理过程是将上传来的数据以队列的形式存储到大数据存储服务器上。虽
然数据中心也对应了所有用户群体上,但由于数据分为原始采集数据和二次加工数据(汇
总数据),因此特征维度上存在差异。所有智能端的用户隐私数据导致了彼此之间存在信息
孤岛。因此原始数据在在智能电表上,而汇总数据在网级数据中心。
[0042] 该实施过程具体包括:
[0043] 1)同态加密过程:
[0044] 同态加密保证是保证数据隐私以及训练能够进行的前提。对于单独的一个本地神经网络的训练过程,其网络结构定义为如下公式,
[0045]
[0046] 其中网络的输出结果即预测值为 则是该神经网络中采用的激活函数(本发明专利所述的具体过程是由每层的激活函数和最后一层的Softmax函数共同构成,这里仅表示
了三层)。权值矩阵α0,α1,α2的形式满足与输入特征向量X的乘法运算。本地训练会产生两次
中间计算结果和一次最终结果,表示为如下公式,这里在输入层时表示为temp0=X。
[0047] tempi=fa(αitempi‑1+bi)
[0048] 在同态加密训练过程中,各个模型的中间结果保存在本地。假定样本标签yi由数据中心确定,对于N个智能电表终端和数据中心协同参与的神经网络模型可以定义如下目
标函数:
[0049]
[0050] 同时,为了方便文中的叙述而将 简记为 函数h是每个本地神经网络最后一层的输出(N表示智能电表集群,C表示数据中心),即hθ=temp2。Θ是为了防止过拟合问
题而采取的L2正则化表示,其表达的是神经网络权值所对应的特征空间,形式同函数h一样
即N表示智能电表、C表示数据中心。此外,本地模型设置为简单的全连接神经网络结构可以
减小计算开销。本发明专利将训练目标设置为使函数J最小化,即多本地数据模型协作下来
求解min(J(Θ))。对于模型更新计算,则使用反向传播算法更新权值Θ,具体如下:
[0051]
[0052] 本发明专利所属的基于联邦学习计量装置故障诊断方法模型,利用同态加密来对参与训练的智能电表设备和数据中心进行参数的交换。记加密函数为Enc( ),则N个智能电
表和数据中心C的加密损失函数表示为:
[0053]
[0054] 其中同态加密加法运算表示为:
[0055]
[0056]
[0057]
[0058] 这里公式Enc(lj∈N)表示了任意本地设备端上运行的模型的同态加密损失函数,公式Enc(lj=C)则表示数据中心的,其区别在于数据中心有样本标签(智能电表常见的故障类
型以及对应的数值化标识)。任意一个智能设备和网级数据中心的联合损失函数定义为公
式Enc(lNC),因此可以得到总的同态加密损失函数表示为:
[0059] Enc(L)=Enc(lj∈N)+Enc(lj=c)+∑Enc(lNc)
[0060] 进一步定义本地模型的梯度为:
[0061]
[0062] 其中,当j=N时表示本地模型的同态加密梯度,j=C时表示在数据中心服务器上部署的模型所需要的同态加密梯度。根据上述公式所描述的同态加密计算方法,本实验对
各个本地模型权值矩阵利用 进行更新。
[0063] 2)模型训练的调度过程:
[0064] 训练调度保证了分布式联合训练机制的最终效果和计算效率。如图3所示,为本发明专利中智能电表故障诊断联合训练的调度方法。其中从本地模型到调度组件为加密梯度
的上传过程,从调度组件到各个本地模型为加密梯度反馈。在图3中由双向箭头
③表示。
[0065] 智能电表侧的计算设备在完成模型训练之后,将损失函数Enc(l1)和故障预测值上传到数据中心,数据中心自身计算的Enc(li=c)和 也一并汇总。各本地模
型在获得全体损失函数后进行下一步更新,而数据中心则获得各个本地模型上传的参数后
计算出带有同态加密的联合损失函数Enc(L),根据损失函数将 传给各个本地模
型对Θ进行更新。智能电表侧的工作环境使得故障类型标签只能存储在数据中心,本地模
型需要加密参数 的支持。因此本发明专利通过该种协作机制来完成联邦学习
下模型的更新。
[0066] 在联邦机制下,所有本地设备的数据在特征维度上是一致的而样本群体不同,因此数据中心在整个联合训练机制下作为具有同等地位的参与者贡献了业务需求所对应的
标签和与智能电表不重叠的特有数据。
[0067] 此外,本地模型训练过程不存在数据的传输且同态加密的运算能够保持结果不变性,因此数据得到了保护且损失函数和模型的输出在计算结果不变的前提下得到了加密,
因此在联邦学习模式下的智能电表故障诊断模型对于数据的使用是安全的。
[0068] 图4为本发明所提供的一种基于联邦学习的智能电表故障设备,该设备包括与智能电表相连的嵌入式设备,所述嵌入式设备包括处理器、存储器及网络通信模块。
[0069] 所述处理器用于运行程序代码,且具备本地存储数据功能、神经网络训练功能以及中间训练参数通过网络上传到数据中心的功能;数据中心计算设备在功能上同理。
[0070] 所述存储器位于智能电表侧,包括U盘、移动硬盘、只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)等满足嵌入式应用需求的程
序代码的存储介质。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的
都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施
例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以
描述的比较简单,相关之处参见方法部分说明即可。
[0071] 本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通
技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些
改进和修饰也落入本发明权利要求的保护范围内。