左娟娟,陈宇民,朱红杰,彭文英,黄桂雪
(云南电网有限责任公司保山供电局,云南保山 678000)
在特高压直流输电线路发展中,随着输电能力的日益增加,一旦发生故障,将会危及接收系统的频谱稳定性。同时,受到新能源大量开发影响,电力系统网络结构变得十分复杂。伴随电力系统的快速发展,其运行情况也越来越复杂,各种设备的数量也越来越多。因此,提高入侵检测效率具有十分重要的意义。对电力系统网络入侵检测能够使网络被攻击之前,对内部、外部和错误操作进行实时防御,并对其进行有效地拦截和防御。当前,采用了一种基于深度学习的方法,由于该方法的网络结构较为复杂,能够在原数据集上进行多次转换,全部高维特征都能被提取出来,由此形成分层的特征。这种结构由多个受限玻尔兹曼堆叠组成,在某些条件下,受限玻尔兹曼机器能够通过隐蔽节点来拟合数据分布,使其满足节点随意分布的要求。然而,随着需要隐蔽节点数量的持续增加,在进行深度学习时容易产生过度拟合[1];使用基于随机森林的网络入侵检测方法,可以有效降低各个特征区域的噪声,同时也可以消除相关性,使得攻击更加快速和简单[2]。然而,这种方法在随机选择参数时,会使训练效果不佳,从而导致训练的结果不理想。为此,在基于深度置信网络技术支持下,对电力系统网络入侵情况进行检测。
电力系统与网络连接,导致电网设备噪声恶意访问、篡改私密信息的情况大量增加。面对这一现象,结合深度置信网络提出了入侵检测方法[3]。然后,采用深度置信网络分析了电力系统的频谱,将其看成是一个输入-输出的数学模型。
可以将输入采样数据组描述为:
式中,i表示选取特征值的类别总数;j表示输入样本的数量[4]。输出采样集对应于每个行为一个输出采样的输入采样,可以描述如下:
式中,y表示输出样本对应的元素数量。
根据输入和输出的数据,构建入侵检测模型,如图1 所示。
图1 电力系统网络入侵检测模型
由图1 可知,该模型是由数据信息采集模块、入侵分析引擎和用户界面与预警模块组成的[5]。其中数据信息采集模块是利用网络抓包技术对电力系统中的IP 包进行采集,然后按协议层次对IP 包进行分析,从而获得整个电网的IP 数据[6];入侵分析引擎是由电网数据分析引擎、调用分析引擎和用户行为分析引擎组成的,其中电网数据分析引擎主要目的是监测电网是否受到了攻击。调用分析引擎负责监测电网中调用序列是否发生异常,及时判断可疑入侵行为[7];用户行为分析引擎负责检测来自外部的攻击行为。
深度置信网络处理模块主要是对预处理模块中的数据进行无监督学习,以及对高维数据的处理和提取[8]。在训练模式中,深度置信网络主要包括两个步骤:
第一步:在每个层次上,对每个层次的深度置信度进行训练,保证了在将特征矢量映射到各个特征空间的同时,尽可能地保留全部特征信息[9]。
第二步:利用深度置信度网络的特征矢量作为输入矢量,对有监督的实体分类进行训练。由于每个层次的特征向量都需要进行一次训练,所以应确保其权值与层次的特征矢量相匹配,达到全局最优的目的。
深度置信网络求解示意图如图2 所示。
图2 深度置信网络求解示意图
由图2 可知,利用深度置信网络求解就是为了保证自身权值对特征向量映射为最优,即训练结果为最优[10-12]。
设在模型中存在l个隐层结构,xi个入侵检测样本,k个隐层单元,深度置信网络训练步骤如下所示:
步骤1:初始化数据;
步骤2:训练第一层结构,获取数据训练结果、权值和偏置值[13];
步骤3:利用步骤2 中获取的数据作为第二层结构的输入值,训练第二层的结构;
步骤4:训练1~l层深度置信网络[14];
步骤5:使用反向传播法调整各个层次的权值和偏置值;
步骤6:将第l层的全部特征及第l-1 层的部分特征整合,并将整合后的结果传输到下一步;
步骤7:整合特征数据成为深度置信网络的训练数据,从而完成模型训练。
深度置信网络求解模式支持下,设计入侵检测过程,如下所示。
步骤1:为构造受限玻尔兹曼机,必须将稀疏正项引入受限玻尔兹曼机似然函数。受限玻尔兹曼机本质上是一种随机神经网络,其神经元和可见层中神经元之间没有关联,但在隐藏层中却有神经元节点[15]。当可见层神经元的节点已被确定时,所有的隐藏节点都是有条件的。在已知隐藏节点情况下,保证每层的节点都具有相对独立性。
受限玻尔兹曼机结构示意图如图3 所示。
图3 受限玻尔兹曼机结构示意图
图3 中所示的受限玻尔兹曼机由四个可视层和两个隐藏层组成。
步骤2:利用深度置信度网络对玻尔兹曼机进行训练,得到了稀疏约束下的数据集稀疏分布结果[16];
步骤3:判断受限玻尔兹曼机的训练次数是否达到训练阈值,如果达到,则进入下一步,否则,转到步骤1;
步骤4:将经过训练的连续受限玻尔兹曼机叠加,并在其上加入一种逆向传输神经网络,从而形成一个经过优化的连续受限玻尔兹曼机器,用于分类;
步骤5:利用反向传播算法对受限玻尔兹曼机的连续有限元模型进行了反向微调,得到了一个经过训练的受限玻尔兹曼机模型。
假设该模型由n个可见神经元节点和m个隐藏神经元节点组成,可视层和隐藏层通过联合协作实现功能,相应公式为:
式中,αi、λi分别表示可视层的状态值和节点偏置;βj、δj表示分别表示隐藏层的状态值、节点偏置;wij表示层的连接权值。
每个层的神经元节点之间存在能量,当确定各个参数后,通过上述公式能够推导出两层的联合概率分布,公式为:
式中,C为归一化因子。
基于此,构建能量模型,如下所示:
结合式(5)快速学习测试集,能够获取每个测试集下的全部测试数据,即可获取全部入侵种类。
电力系统网络的自动化设备或断路器有可能被黑客入侵,一旦入侵,网络就会处于十分危险的状况。基于该情况,构建入侵检测目标函数,如下所示:
式中,D(t)、G(t)、P′(t)分别表示网络设备在电力系统中重要比例、网络设备使用年限对网络危险影响程度、网络设备平均故障率。
上述公式就是电力系统网络入侵的判断目标函数,结合深度置信网络的最优求解步骤实现电力系统网络入侵检测。
电力系统网络入侵频率反映了电力系统网络设备输出功率与负荷之间关系,在网络受到攻击时,如果系统不及时采取保护措施,就会导致系统工作不稳定。在该实验情况下,实验数据的特征集如表1所示。
表1 实验数据特征集
训练表1 中的数据特征集,分析电力系统受到入侵后对输出频率的影响,结果如图4 所示。
图4 电力系统受到入侵后输出频率分析
由图4 可知,电力系统在4~6 s 时间内受到入侵影响,输出频率下降,随后骤然上升,容易出现电力系统网络设备负载不均衡现象。
以上述的八个实验数据集为研究对象,计算入侵数据正确识别率,公式为:
式中,Nt表示正确识别入侵检测数据量;Ms表示输入的入侵数据测试总量。该公式计算结果越大,说明检测精准度越高。
当电力系统网络受到黑客入侵后,分别使用基于深度学习方法、基于随机森林方法和基于深度置信网络的检测方法,对比分析系统输出频率,对比结果如图5 所示。
图5 不同方法输出频率对比分析
由图5 可知,使用基于深度学习的入侵检测方法、基于随机森林的网络入侵检测方法输出频率波动情况与图4 所示波形不一致,且出现很多峰值;使用基于深度置信网络的入侵检测方法输出频率波动情况与图4 所示波形一致,且波形平滑。
为了进一步验证用基于深度置信网络的入侵检测方法研究合理性,需再次将这三种方法的入侵数据正确识别率进行对比分析,对比结果如表2 所示。
表2 三种方法入侵数据识别结果对比分析
由表2 可知,使用基于深度学习的入侵检测方法、基于随机森林的网络入侵检测方法分别与实际数据存在最大为275 类、490 类的误差;使用基于深度置信网络的入侵检测方法与实际数据存在最大为10 类的误差。
通过上述分析结果可知,使用所研究方法能够获取精准检测结果。
结合深度置信网络,文中提出了一种入侵检测方法,该方法面对电力系统在各个领域不断得到广泛应用的情况下,构建电力系统网络入侵检测模型,在深度置信网络下经过快速学习获取每条测试数据的入侵类别。该方法通过反复实验,证明了这种检测方法能够在全局最优的情况下,有效地检测出入侵类别。