基于双分支CNN-LSTM的电网虚假数据注入检测方法及装置

未命名 10-19 阅读:124 评论:0

基于双分支cnn-lstm的电网虚假数据注入检测方法及装置
技术领域
1.本发明涉及一种基于双分支cnn-lstm的电网虚假数据注入检测方法及装置,属于智能电网安全技术领域。


背景技术:

2.近年来,随着经济规模和科技水平的迅速提升,电力系统正朝智能化和网络化方向不断发展。先进的传感测量技术、通信技术以及计算机控制技术使电网信息物理不断融合形成了信息物理融合系统,然而这也给电力系统带来了更大的挑战。智能电网虚假数据注入攻击是一种恶意行为,实施者利用网络拓扑结构改变电力系统的量测数据,危及电力系统信息的完整性。此类攻击可以绕过控制中心的状态估计检测,具有较强的隐蔽性和干扰性。由于估计的状态并非真实的电网状态,因此发出的指令也不能很好地调控智能电网,进而导致智能电网在发电、输电、配电、电力消耗以及电价水平方面产生一系列不良响应。因此,研究如何防范虚假数据注入攻击,提高智能电网的防御能力,保障智能电网的安全性十分重要。
3.目前,基于深度学习技术的虚假数据注入攻击检测方法,主要是通过收集系统历史数据对设计的模型进行训练,根据电网量测数据的时序特征来进行虚假数据注入攻击检测,没有考虑在电网信息物理融合系统中各节点测量数据之间的空间特性,对虚假数据注入攻击的检测精度并不高。
4.因此,有必要设计一种融合cnn网络与lstm网络的虚假数据注入攻击检测模型,在保证不丢失特征的情况下,通过充分提取电网数据的时空特征来进行精确的虚假数据注入攻击检测。


技术实现要素:

5.目的:为了克服现有技术中存在的不足,本发明提供一种基于双分支cnn-lstm的电网虚假数据注入检测方法及装置,在深度学习领域内,卷积神经网络cnn能够用于数据空间特征的提取,lstm神经网络能够提取数据的时序特征,通过所构建的检测模型进行训练后,能够对电网虚假数据注入攻击实现精准的检测。
6.技术方案:为解决上述技术问题,本发明采用的技术方案为:
7.第一方面,一种基于双分支cnn-lstm电网虚假数据注入检测方法,包括如下步骤:
8.对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集。
9.构建双分支cnn-lstm电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练。
10.将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。
11.作为优选方案,所述对包含智能电网正常数据样本与虚假数据样本的数据集进行
预处理,并将预处理后的数据集划分为训练集与测试集,具体包括:
12.将电网数据样本标注标签,正常数据样本标签设置为1,虚假数据样本标签设置为0。
13.将智能电网正常数据样本与虚假数据样本进行归一化处理,得到归一化后的数据。
14.将归一化处理后的数据按照一定比例划分为训练集和测试集。
15.作为优选方案,所述归一化处理,计算公式为:
[0016][0017]
其中:x表示数据集原始数据,y表示处理之后得到的数据点,min表示数据集中该数据点的最小值,max表示数据集中该数据点的最大值。
[0018]
作为优选方案,所述双分支cnn-lstm电网虚假数据注入检测模型,具体包括:分支1卷积神经网络与分支2卷积神经网络,所述分支1卷积神经网络与分支2卷积神经网络的输出端均与特征融合层的输入端相连接,特征融合层依次与lstm网络、mlp网络、softmax函数相连接。
[0019]
作为优选方案,所述分支1卷积神经网络,包括依次连接的第一卷积层、激活函数层、第一最大池化层、激活函数层和第二最大池化层。
[0020]
作为优选方案,所述分支2卷积神经网络,包括依次连接的第三卷积层、激活函数层、第四卷积层和激活函数层。
[0021]
作为优选方案,所述双分支cnn-lstm电网虚假数据注入检测模型的损失函数,计算公式如下:
[0022][0023]
其中,y为标签值;p为电网当前时刻遭受虚假数据注入攻击的概率,n是一个训练批次所包含的样本数目。
[0024]
作为优选方案,所述双分支cnn-lstm电网虚假数据注入检测模型的训练参数,具体包括:
[0025]
采用adam优化算法,设置学习率为0.001,批处理大小n设置为128,训练轮数为30。
[0026]
第二方面,一种基于双分支cnn-lstm电网虚假数据注入检测装置,包括:
[0027]
样本预处理模块:用于对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集。
[0028]
集成训练模块:用于构建双分支cnn-lstm电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练。
[0029]
攻击检测模块:用于将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。
[0030]
第三方面,一种计算机可读存储介质及处理器,所述计算机可读存储介质用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行第一方面中任意一项所述的基于双分支cnn-lstm电网虚假数据注入检测方法。
[0031]
有益效果:本发明提供的基于双分支cnn-lstm的电网虚假数据注入检测方法及装
置,本发明构建双分支cnn-lstm电网虚假数据检测模型,所述分支1的卷积神经网络对电网数据进行局部特征提取,获取电网数据的空间特征,分支2的卷积神经网络对电网数据进行全局特征提取,lstm网络用来提取电网数据时间维度特征,使得网络最终能够提取到电网数据的时空特征,综合两方面特征进行最终虚假数据识别。
[0032]
本发明克服了因单一网络所提取特征过于片面的问题,也避免了检测过程中的特征丢失问题,加强了模型识别虚假数据的性能,为电网的安全稳定运行提供保障。
附图说明
[0033]
图1为本发明一种基于双分支cnn-lstm电网虚假数据注入检测方法的流程图。
[0034]
图2为本发明的双分支cnn-lstm的虚假数据检测模型架构图。
[0035]
图3为本发明中分支1卷积神经网络的结构示意图。
[0036]
图4为本发明中分支2卷积神经网络的结构示意图。
[0037]
图5为本发明一种基于双分支cnn-lstm电网虚假数据注入检测装置结构示意图。
具体实施方式
[0038]
下面结合本发明实例中的附图,对本发明实例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0039]
下面结合具体实施例对本发明作更进一步的说明。
[0040]
实施例一:
[0041]
本实施例介绍一种基于双分支cnn-lstm电网虚假数据注入检测方法,如图1所示,包括如下步骤:
[0042]
步骤一、对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集。
[0043]
进一步的,步骤一,具体包括:
[0044]
将电网数据样本标注标签,正常数据样本标签设置为1,虚假数据样本标签设置为0。
[0045]
将智能电网正常数据样本与虚假数据样本进行归一化处理,得到归一化后的数据。
[0046]
减小数据集的取值范围,归一化处理方法采用最大最小归一化,计算公式为:
[0047][0048]
其中:x表示数据集原始数据,y表示处理之后得到的数据点,min表示数据集中该数据点的最小值,max表示数据集中该数据点的最大值。
[0049]
将归一化处理后的数据按照80%、20%的比例划分为训练集和测试集。
[0050]
步骤二、构建双分支cnn-lstm电网虚假数据注入检测模型,如图2所示,使用所划分的训练集对所述检测模型进行训练。
[0051]
进一步的,所述双分支cnn-lstm电网虚假数据注入检测模型,具体包括:分支1卷
积神经网络与分支2卷积神经网络,所述分支1卷积神经网络与分支2卷积神经网络的输出端均与特征融合层的输入端相连接,特征融合层依次与lstm网络、mlp网络、softmax函数相连接。
[0052]
如图3所示,所述分支1卷积神经网络,包括依次连接的第一卷积层、激活函数层、第一最大池化层、激活函数层和第二最大池化层。
[0053]
如图4所示,所述分支2卷积神经网络,包括依次连接的第三卷积层、激活函数层、第四卷积层和激活函数层。
[0054]
两个分支卷积神经网络的卷积层,计算公式如下所示:
[0055][0056]
其中,hi为输入特征向量,为卷积操作,wi为卷积核的权重,bi为偏置项,f为relu激活函数。
[0057]
卷积层提取训练集的特征形成特征图后传递给池化层,池化层用来减少输入卷积层的空间维度,降低网络复杂度,分支1卷积神经网络的池化计算公式为:
[0058][0059]
其中,down(
·
)表示下一个池化函数,表示权重,为偏置项。
[0060]
分支1卷积神经网络提取的电网数据样本的空间特征和分支2卷积神经网络提取的电网数据样本的原始特征,通过特征融合层进行拼接融合后送入lstm神经网络。
[0061]
所述lstm(long short-term memory)神经网络由多层lstm顺序堆叠形成,用来提取电网数据时间维度特征,本发明lstm采用三门控输出的方式。
[0062]
由全连接层堆叠构成的mlp(多层感知器)网络进行进一步的特征压缩与提取,增强模型对电网数据特征的敏感度。
[0063]
本发明将检测模型输出的诊断结果与真实标签之间二值的交叉熵作为cnn-lstm检测模型训练的损失函数,公式如下所示:
[0064][0065]
其中,y为标签值;p为电网当前时刻遭受虚假数据注入攻击的概率,n是一个训练批次所包含的样本数目。
[0066]
检测模型采用adam优化算法,设置学习率为0.001,批处理大小n设置为128,训练轮数为30。通过优化算法进行反向优化参数,最终使得损失函数收敛到最小,达到网络训练目的。
[0067]
步骤三、将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。
[0068]
进一步的,由所述检测模型最后一层的softmax函数的输出来判断是否为智能电网虚假数据,如果p》0.5,则判定为电网正常数据,否则,判定为电网虚假数据。
[0069]
softmax函数的计算公式为:
[0070]
[0071]
采用准确率(accuracy)、精确率(precision)、召回率(recall)来完成对检测结果的评价,计算公式如下所示:
[0072][0073][0074][0075]
其中,tp(被判定为电网虚假数据,事实上也为电网虚假数据),tn(被判定为电网正常数据,事实上也为电网正常数据),fp(被判定为电网虚假数据,事实上为电网正常数据),fn(被判定为电网正常数据,事实上为电网虚假数据)。
[0076]
实施例二:
[0077]
为验证本发明的有效性,分别构建了与本发明中结构相同的cnn1神经网络模型,cnn2神经网络模型,cnn1-lstm模型,cnn2-lstm模型作为对比模型,采用相同的电网数据集进行训练和测试,各模型的检测结果如表1所示:
[0078]
表1各模型的检测结果
[0079][0080]
从对比结果可以看出,本发明具有很好的电网虚假数据注入检测能力,对电网虚假数据的检测准确率达到99.39%,能够为电网的安全稳定运行提供保障。
[0081]
实施例三:
[0082]
如图5所示,本实施例介绍一种基于双分支cnn-lstm电网虚假数据注入检测装置,包括:
[0083]
样本预处理模块:用于对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集。
[0084]
集成训练模块:用于构建双分支cnn-lstm电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练。
[0085]
攻击检测模块:用于将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。
[0086]
本实施例的装置可以通过软件或硬件或软件硬件相结合的方式来实现实施例一所属的方法。
[0087]
实施例四:
[0088]
本实施例介绍一种计算机可读存储介质及处理器,所述计算机可读存储介质用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的基于双分支cnn-lstm电网虚假数据注入检测方法。
[0089]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0090]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0091]
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
[0092]
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

技术特征:
1.一种基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:包括如下步骤:对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集;构建双分支cnn-lstm电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练;将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。2.根据权利要求1所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集,具体包括:将电网数据样本标注标签,正常数据样本标签设置为1,虚假数据样本标签设置为0;将智能电网正常数据样本与虚假数据样本进行归一化处理,得到归一化后的数据;将归一化处理后的数据按照一定比例划分为训练集和测试集。3.根据权利要求2所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述归一化处理,计算公式为:其中:x表示数据集原始数据,y表示处理之后得到的数据点,min表示数据集中该数据点的最小值,max表示数据集中该数据点的最大值。4.根据权利要求1所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述双分支cnn-lstm电网虚假数据注入检测模型,具体包括:分支1卷积神经网络与分支2卷积神经网络,所述分支1卷积神经网络与分支2卷积神经网络的输出端均与特征融合层的输入端相连接,特征融合层依次与lstm网络、mlp网络、softmax函数相连接。5.根据权利要求4所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述分支1卷积神经网络,包括依次连接的第一卷积层、激活函数层、第一最大池化层、激活函数层和第二最大池化层。6.根据权利要求1所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述分支2卷积神经网络,包括依次连接的第三卷积层、激活函数层、第四卷积层和激活函数层。7.根据权利要求1所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述双分支cnn-lstm电网虚假数据注入检测模型的损失函数,计算公式如下:其中,y为标签值;p为电网当前时刻遭受虚假数据注入攻击的概率,n是一个训练批次所包含的样本数目。8.根据权利要求1所述的基于双分支cnn-lstm的电网虚假数据注入检测方法,其特征在于:所述双分支cnn-lstm电网虚假数据注入检测模型的训练参数,具体包括:采用adam优化算法,设置学习率为0.001,批处理大小n设置为128,训练轮数为30。
9.一种基于双分支cnn-lstm电网虚假数据注入检测装置,其特征在于:具体包括:样本预处理模块:用于对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集;集成训练模块:用于构建双分支cnn-lstm电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练;攻击检测模块:用于将测试集输入训练好的双分支cnn-lstm电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。10.一种计算机可读存储介质及处理器,其特征在于:所述计算机可读存储介质用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-8中任意一项所述的基于双分支cnn-lstm电网虚假数据注入检测方法。

技术总结
本发明公开了一种基于双分支CNN-LSTM的电网虚假数据注入检测方法及装置,对包含智能电网正常数据样本与虚假数据样本的数据集进行预处理,并将预处理后的数据集划分为训练集与测试集;构建双分支CNN-LSTM电网虚假数据注入检测模型,使用所划分的训练集对所述检测模型进行训练;将测试集输入训练好的双分支CNN-LSTM电网虚假数据注入检测模型,判断智能电网是否发生虚假数据注入攻击。本发明克服了因单一网络所提取特征过于片面的问题,也避免了检测过程中的特征丢失问题,加强了模型识别虚假数据的性能,为电网的安全稳定运行提供保障。为电网的安全稳定运行提供保障。为电网的安全稳定运行提供保障。


技术研发人员:岳东 李波 窦春霞 李厚俊
受保护的技术使用者:南京邮电大学
技术研发日:2023.07.05
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐