基于深度学习的电力大数据融合与异常检测方法

2018-05-03 06:13刘冬兰常英贤
计算机应用与软件 2018年4期
关键词:异构日志画像

刘冬兰 马 雷 刘 新 李 冬 常英贤

1(国网山东省电力公司电力科学研究院 山东 济南 250003) 2(国网山东省电力公司 山东 济南 250001)

0 引 言

在大数据的众多特征中,数据真实性是大数据应用的核心,因为数据记录了真实世界所发生的事情。例如,各类网络设备记录了对网络的访问行为,通过对网络设备日志进行分析,可以分析出网络中存在的攻击,从而采取应对措施。

电力是国家的重要基础设施,是维持人们正常生活的必需品,电网安全关系着国计民生。 电网安全事件中最重要的有美国和乌克兰的大规模停电事件,二者都造成了巨大的经济损失和社会影响[2]。 随着智能化、数字化、信息化电网的全面建设,电网数据量爆炸式增长,电力行业步入大数据时代。 同时,电网的发展也越来越多的与信息网络交融在一起,使得电网面临着内外多种安全威胁[3]。 以Hadoop、Spark等为主的开源大数据平台快速发展,为电网大数据的研究提供了重要的技术支撑。

在对电网大数据的研究中,国内的主要工作有: 文献[4]阐述了智能电网大数据的特征,分析了智能电网大数据分析所使用的通用框架; 文献[5]分析了大数据、云计算、智能电网三者之间的关系,并从电力大数据的集成管理技术、数据分析技术、 数据处理技术、数据展现技术4个方面深入探讨了符合电力企业发展需求的大数据关键技术; 文献[6]对电网大数据进行挖掘,采用包含Bootstrap重采样、划分聚类和层次聚类三种方法的集成聚类算法, 分析配用电中的电力负荷曲线; 文献[7]应用Hadoop作为大数据分析处理的平台,提出了一种基于信息准确率的离散化方案,研究了电网大数据中的属性实体识别。 国外关于电网大数据的主要研究工作可以参考文献[8-10]综述。 其中文献[8]对2011年(含)以前的关于智能电网的研究过程作了详细的综述; 文献[9]对智能电网中面临的网络安全威胁进行了综述,并分析了应对这些威胁所面临的挑战;随着大数据时代的到来,文献[10]从数据驱动的角度出发,对智能电网中的安全威胁作了进一步的阐述。

本文依托Hadoop[11]和Spark[12]大数据处理平台,以及运行在Spark平台上的Deeplearning4j[13]深度学习框架,基于电力大数据中的异构数据源,研究了电网中安全威胁的异常检测。为了对异构数据源中的数据进行融合,采用了深度玻尔兹曼机结构;为了对数据建立画像并进行异常的检测,采用了循环神经网络结构。

1 本文方法

1.1 问题描述

电网中存在着多种异构数据。按照数据的来源进行区分有防火墙日志、入侵检测系统日志以及业务系统产生的日志等;按照日志的类型进行区分有流量类日志、配置管理类日志以及安全攻击类日志等。这些日志都是为特定的需求而设计的,它们记录了不同的网络信息,用户行为和系统操作。因而,这些数据之间是异构的。

当电网受到高级的持续性威胁时,由于攻击具有潜伏性和持续性,很难对单独的日志进行分析来发现。然而,攻击者的所有攻击痕迹都记录在了各种各样的日志中,如果对异构的日志信息进行融合,采用尽可能多的数据,那么可以尽早地发现电网中存在的安全威胁,从而采取应对措施。

本文对电网中具有不同格式的异构数据进行融合,采用深度受限玻尔兹曼机将数据统一嵌入到一个向量空间。然后对嵌入式向量空间的数据建立正常行为的画像,当新的数据偏离画像达到一定的阈值时视为异常。

1.2 基于受限玻尔兹曼机的异构数据融合

在电力系统中,不同的日志可能包含相同的字段,如时间、主机等;也可能包含日志系统特有的字段,例如入侵检测系统中的可能攻击类型,业务系统独有的用户操作行为等。这些日志包含不同的字段,并且不同日志系统中的单条日志大小也不相等,因此用相同的字段来描述所有的日志是不适合的。为了用统一的格式来描述所有类型的日志,采用深度受限玻尔兹曼机将不同类型的日志统一嵌入到一个向量空间。

首先,将任意一条日志转化为二进制向量。对于一条含有n个字段的日志x(x1,x2,…,xn),它的第i(1≤i≤n)个字段为xi,采用xi的二进制表示,并且将x的所有二进制字段拼接成一个二进制值。例如,当n=2,x=(7,15),并且x的两个字段都采用8位二进制表示时,那么转化之后的二进制为x′=0000011100001111,x′的长度为len(x)=16。

然后,采用深度受限玻尔兹曼机[14]将经过扩展的具有统一长度的日志向量x′映射到长度为m(m

图1 深度受限玻尔兹曼机嵌入式向量映射图

下面对图1所示的深度受限玻尔兹曼机嵌入式向量映射过程进行详细的描述。图1中字母的上标只是为了便于区分,不是变量的幂函数。

此处,输入层x(x1,x2,…,xn)为扩展后的n维日志二进制向量,其中的每个维度值xi(1≤i≤n)是0或者1;输出层y(y1,y2,…,ym)为映射后的嵌入式二进制向量,其中的每个维度值yi(1≤i≤m)也是0或者1。

(1)

式中:配分函数Z(θ)的计算公式为:

(2)

受限玻尔兹曼机的能量函数E(x,y1;θ)为:

E(x,y1;θ)=-bx-cTy1-xTWy1

(3)

先验参数为θ=(b,c,W)。

在联合分布函数P(x,y1;θ)中,当x已知,那么经过推到可得y1的条件概率分布:

(4)

如上所述,根据输入向量x,可以计算出第一个隐藏层的向量值y1;以第一个隐藏层的向量值y1为输入向量,可以计算出第二个隐藏层的向量值y2;重复上述过程,直到计算出第k个隐藏层的向量值yk,并且令输出值向量y=yk。

1.3 数据画像及异常检测

在应用多层受限玻尔兹曼机对不同类型的日志数据进行嵌入式向量映射的过程中,实现了异构数据的融合。下面对嵌入式向量空间进行学习,得到日志数据的画像,从而对未来数据进行异常的检测。

对嵌入式向量空间中的向量按照原始数据的时间戳将嵌入式向量进行排序,得到一个嵌入式向量的时间序列。针对该时间序列,采用循环神经网络[15]进行建模。图2是应用循环神经网络结构对数据建立画像并进行异常检测的结构图。

图2 循环神经网络结构图

下面对图2所示的建立画像和异常检测过程进行详细的阐述。给定嵌入式向量时间序列y=[y1,y2,…],下标表示嵌入式向量的时间顺序,输入向量yi与上一次的隐藏层向量li-1联合得到当前的隐藏层向量li,其计算公式如下:

li=f(uyi+Wli-1)

(5)

网络的输出层采用线性结构,计算公式如下:

zi=vli

(6)

式中:f(·)为激活函数,本文采用Logistic回归函数,即:

f(x)=(1+exp(-x))-1

(7)

式中:向量u,v和矩阵W为网络中要学习的参数。

当输入向量为y1时,令隐藏层向量l0为随机生成的向量。经过计算后得到的最终隐藏层向量就是数据的画像。例如,当数据序列包含n个嵌入式向量时,最终得到的ln就是数据的画像。根据得到的画像,应用输出层的线性模型便可以对数据的异常情况进行判别。

2 实验结果与分析

为了验证本文提出的基于深度学习的大数据融合与异常检测方法,本文以某电力公司的日志数据为例,对提出算法的性能进行测试与对比。实验包含的日志有防火墙日志、入侵检测系统日志、业务系统操作日志和数据库访问日志。

在日志预处理过程中,将所有的日志记录进行扩展,统一将日志长度扩展到最大的日志长度,扩展时在首位补0。日志记录长度进行扩展后,将其保存在Hadoop的文件系统中。对于Hadoop文件系统中的扩展日志,应用Spark平台对数据进行分析以生成嵌入式向量。我们在Spark平台上应用深度学习框架Deeplearning4j实现深度波尔兹曼机网络。

为了对提出的数据画像及异常检测算法进行评价,将本文提出的异常检测算法与支持向量机、逻辑回归、朴素贝叶斯、决策树、k-means、高斯混合和主成分分析算法进行对比。在算法的实现过程中,应用Deeplearning4j对嵌入式向量数据进行分析,得到数据的画像,其他对比算法则采用Spark自带的算法。实验对比了不同算法的异常检测效果,评价指标有互信息量、准确率、误报率和漏报率。

当使用多种方法进行异常检测时,为了评价不同算法的效果,本文定义了如下的互信息量评价指标。有k个异常检测算法,每个算法都得到一个预测结果,令结果集合为S=[R1,R2,…,Rk](当R1=(1,2),R2=(2,3)时,S=[1,2,2,3])。这里借用集成学习的思想,多种算法集成在一起能更好地反映预测的结果。本文用Ri与S-Ri(去掉第i个结果)的互信息量来评价Ri的评价结果。给定R与S,其互信息量的计算公式为:

(8)

图3为多个异常检测算法的互信息量对比结果。从实验结果可以看出,本文提出的算法具有最大的互信息量,其次是主成分分析,再次是支持向量机。主成分分析是一种数据压缩方法,通过去除数据中的噪声来建立画像。本文提出的多层波尔兹曼机本质上是通过多层的网络进行数据压缩,可以表达更复杂的结构,因而异常检测效果比主成分分析方法好。支持向量机的重点和难点在于核函数的构建,而Spark中支持向量机的核函数是线性的,因而异常检测效果不是很好。

图3 互信息量对比图

接下来,通过实验对比了多个异常检测算法的准确率、误报率和漏报率,它们的计算公式如下:

准确率、误报率和漏报率的实验对比结果见图4-图6。从这3幅图中可以看到,本文提出的算法不仅具有很高的准确率,而且具有很低的误报率和漏报率。在准确率对比图中,除了本文提出的算法之外,高斯混合方法和主成分分析方法也具有较高的准确率。因为这两种方法都是无监督学习,而无监督学习不需要预先对异常进行定义。误报率和漏报率是信息安全领域常用的异常检测评价指标,本文提出的方法具有较低的误报率和漏报率,因而适用于电力大数据的异常检测。

图4 准确率对比图

图5 误报率对比图

图6 漏报率对比图

3 结 语

随着电网与信息网络的逐渐融合,信息网络给电网带来便利的同时也引入了更多的安全威胁。本文利用电网中的异构数据源数据,研究了电网中异常事件的检测。采用深度受限玻尔兹曼机将不同格式的异构数据映射到统一的嵌入式向量空间,实现了异构数据的融合;采用循环神经网络对得到的嵌入式向量数据建立画像,实现了数据中异常事件的检测。最后通过实验验证了本文提出的方法的有效性。

[1] 孟小峰,慈祥.大数据管理:概念,技术与挑战[J].计算机研究与发展,2016,50(1):146-169.

[2] 郭庆来,辛蜀骏,王剑辉,等.由乌克兰停电事件看信息能源系统综合安全评估[J].电力系统自动化,2016,40(5):145-147.

[3] 朱晓燕,方泉.美国电力行业信息安全运作机制和策略分

析[J].中国电力,2015,48(5):81-88.

[4] 孙鸿飞,弓丽栋,张海涛,等.智能电网大数据分析框架及其应用演进研究[J].现代电力,2016,33(6):64-73.

[5] 彭小圣,邓迪元,程时杰,等.面向智能电网应用的电力大数据关键技术[J].中国电机工程学报,2015,35(3):503-511.

[6] 张斌,庄池杰,胡军,等.结合降维技术的电力负荷曲线集成聚类算法[J].中国电机工程学报,2015,35(15):3741-3749.

[7] 齐俊,曲朝阳,娄建楼,等.一种基于Hadoop的电力大数据属性实体识别算法[J].电力系统保护与控制,2016,44(24):52-57.

[8] Fang X,Misra S,Xue G,et al.Smart grid—The new and improved power grid:A survey[J].IEEE communications surveys & tutorials,2012,14(4):944-980.

[9] Wang W,Lu Z.Cyber security in the Smart Grid:Survey and challenges[J].Computer Networks,2013,57(5):1344-1371.

[10] Tan S,De D,Song W Z,et al.Survey of Security Advances in Smart Grid:A Data Driven Approach[J].IEEE Communications Surveys & Tutorials,2017,19(1):397-422.

[11] Shvachko K,Kuang H,Radia S,et al.The hadoop distributed file system[C]//Mass storage systems and technologies (MSST),2010 IEEE 26th symposium on.IEEE,2010:1-10.

[12] Zaharia M,Chowdhury M,Das T,et al.Resilient distributed datasets:A fault-tolerant abstraction for in-memory cluster computing[C]//Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation.USENIX Association,2012:2.

[13] Team D J D.Deeplearning4j:Open-source distributed deep learning for the JVM[Z].Apache Software Foundation License,2.

[14] Fiore U,Palmieri F,Castiglione A,et al.Network anomaly detection with the restricted Boltzmann machine[J].Neurocomputing,2013,122:13-23.

[15] Sutskever I,Vinyals O,Le Q V.Sequence to sequence learning with neural networks[C]//Advances in neural information processing systems,2014:3104-3112.

猜你喜欢
异构日志画像
ETC拓展应用场景下的多源异构交易系统
威猛的画像
试论同课异构之“同”与“异”
一名老党员的工作日志
画像
扶贫日志
多源异构数据整合系统在医疗大数据中的研究
吴健:多元异构的数字敦煌
雅皮的心情日志
雅皮的心情日志