一种面向能源互联网的入侵检测系统及其方法
技术领域
本发明涉及能源互联网技术领域,尤其涉及一种面向能源互联网的入侵检测系统及其方法。
背景技术
能源互联网是物联网的一个新兴领域,如图1所示,它被定义为一个由各种智能能源基础设施组成的网络化系统,包括控制中心、分布式可再生能源系统、分散的能源存储以及能源消费(如工业、商业、住宅等)。能源互联网的目标是协调现有的分布式能源系统,从而优化所有这些能源系统的发电、传输和消耗的能源效率。
能源互联网有很多发展前景,也正面临越来越多的网络安全挑战。因为能源互联网集成了一系列异构且有漏洞的通信网络,使它们成为攻击者的理想目标。此外,广泛使用的智能设备(如智能电表、相位测量装置等)通常部署在通常没有适当安全保护的领域,为恶意拦截创造了大量机会。此外,在传统能源基础设施中存在固有漏洞,如监视控制和数据采集系统的敏感信息,可能很容易暴露于外部世界。不幸的是,现有的能源系统往往没有配备先进的安全保护解决方案。因此,强大的网络攻击者很容易绕过现有的安全防御,这对入侵检测系统提出了更高的要求。
入侵检测是网络安全的核心要素,入侵检测的主要目的是识别网络和计算机中的入侵异常行为,基于网络的入侵检测有很多实现的方法,随着人工智能技术的发展,基于深度学习的入侵检测技术得到了发展。近年来,相关工作基于卷积神经网络、循环神经网络、支持向量机等等的入侵检测模型存在着收敛速度慢,准确率不高的缺陷,这都成为了基于深度学习的入侵检测技术提升性能的瓶颈。因此,本专利提出了一种特征选择方法进行数据降维,并提出了一个新的深度学习模型进行入侵检测。
入侵检测系统是信息安全综合防御系统的重要组成部分。网络入侵检测系统位于第二安全防线,通过分析在网络中若干关键点采集的流量数据来发现是否有网络入侵的行为或迹象,识别出正在发生的入侵企图或已经发生的入侵活动。随着数十年入侵检测系统的发展和进阶,传统的网络入侵检测方法利用已知类型的攻击样本以离线的方式训练入侵检测模型,虽然对已知攻击类型具有较高的检测率,但是不能识别网络上新出现的攻击类型,这样的入侵检测系统存在着建立系统的速度慢、模型更新代价高等不足,面对规模日益扩大的网络和层出不穷的攻击,缺乏自适应性和扩展性,难以检测出网络上新出现的攻击类型,举例来说:
基于先验知识的入侵检测系统分析主要侧重于入侵行为和系统状态的分析,一个大问题是它不能检测出利用系统漏洞或符合协议规范的潜在攻击操作;
基于统计的入侵检测通常采用分析和统计相关的方法来分析入侵检测,虽然他们不需要任何关于攻击的先验知识,但是他们需要时间来找到准确的统计分布;
基于传统机器学习的入侵检测系统,无法处理高维度的数据,当数据量很大时,存在收敛速度慢,复杂度高等问题。
发明内容
本发明的目的就在于为了解决上述问题而提供一种面向能源互联网的入侵检测系统及其方法。
为了实现上述目的,本公开提供一种面向能源互联网的入侵检测系统,包括:
特征选择模块,从原始数据集中移除对入侵检测模型无贡献或低贡献的特征形成约简数据集;
数据预处理模块,对约简数据集进行进一步的数据预处理,处理成深度学习模型能够接收和处理的数据集;
入侵检测模块,利用数据预处理模块所得数据集对深度学习模型进行训练、调优及测试后,使用深度学习模型进行入侵流量检测。
可选地,特征选择模块移除的特征包括缺失率较高的特征、具有单一值的特征、相关性较高的特征、重要性评分低的特征。
可选地,数据预处理模块对约简数据集进行数据归一化处理,生成特征向量,然后对数据集中每个类别的标签进行独热编码,之后将数据集划分为训练集、验证集和测试集。
本公开还提供一种面向能源互联网的入侵检测方法,上述的一种面向能源互联网的入侵检测系统,包括:
从原始数据集中移除对入侵检测模型无贡献或低贡献的特征形成约简数据集;
对约简数据集进行进一步的数据预处理,处理成深度学习模型能够接收和处理的数据集;
利用数据预处理模块所得数据集对深度学习模型进行训练、调优及测试后,使用深度学习模型进行入侵流量检测。
可选地,基于LightGBM的移除特征选择方法包括:删除值缺失率比指定阈值大的特征。
可选地,基于LightGBM的移除特征选择方法包括:删除有唯一值的特征。
可选地,基于LightGBM的移除特征选择方法包括:使用皮尔森相关系数计算每个两个特征的相关系数,并用相关阈值识别强相关的特征对,并从每个特征对中删除一个特征;
可选地,基于LightGBM的移除特征选择方法包括:计算所有特征的重要性得分,并按照其特征递减排序重要性分数,删除重要性得分低的特征。
可选地,深度学习模型为REAL模型。
可选地,REAL模型包括ResNet模块、ALSTM模块、MLP模块和Softmax层,ResNet模块和ALSTM模块以不同的方式处理特征向量,ResNet模块和ALSTM模块的输出结果串联起来馈入MLP模块,Softmax层输出最终分类结果。
本发明的有益效果在于:
1、本发明涉及的深度神经网络,该神经网络通过结合残差神经网络、长短期记忆网络和注意力机制,可以实现对能源互联网中网络流量事件时间模式的有效提取和学习;
2、本发明涉及的基于LightGBM的特征选择方法,使得在保证模型准确率的基础上最大化降维,可以提高模型的收敛效率,减少模型的计算复杂度,提高模型的检测性能。LightGBM主要思想包括梯度单边采样和独立特征合并,梯度单边采样可以在避免改变数据特征分布的情况下使得信息增益最大化。对于特征绑定,在有大量稀疏特性的数据集上,存在排他的特性,通过使用经典的NP-hard图着色问题来绑定这些特性,删除不必要的特征。基于LightGBM的特征选择算法计算出特征的重要性排名,进一步有效的减小特征维度;
3、本发明涉及的面向能源互联网的入侵检测系统,经过在真实的能源互联网的数据集上的测试,数值结果显示,本发明公开的入侵检测系统在对能源互联网中的各种网络威胁的检测上都非常有效,并且优于大多数现有的入侵检测系统方案。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是能源互联网的架构图;
图2是本发明所述的入侵检测系统的框架图;
图3是本发明所述的入侵检测方法的流程图;
图4是本发明所述的REAL模型的框架图;
图5是特征的相关性矩阵图;
图6是归一化特征重要性分数柱形图;
图7是REAL性能随特征数量的变化折线图;
图8是不同检测模型的性能对比图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
本发明为了解决能源互联网环境下的网络入侵检测问题,提出了一种有效的基于残差网络(Residual Network,ResNet)、长短时记忆网络(Long Short-Term Memory,LSTM)、注意力机制(Attention Mechanism)的入侵检测系统,用以解决入侵检测中的各种类型的网络攻击。首先,我们使用了基于轻量级梯度提升机(Light Gradient BoostingMachine,LightGBM)进行数据集的特征选择;利用结合了ResNet和带有注意力机制的LSTM的全新神经网络REAL来提取网络流量的时间序列,基于这个有机结合的深度神经网络,通过提出的真实学习模式来识别能源互联网中的异常攻击行为,并在真实数据集上进行验证。本发明的性能优于现有的大多数入侵检测系统。
本发明涉及的一种面向能源互联网的入侵检测系统及其方法,如图2所示。
能源互联网以及绝大多数其他物联网的网络流量数据通常是不平衡并且异构的。因此,有必要在将这些网络流量数据提供给入侵检测模型进行网络威胁检测之前移除不必要的特征。我们设计了一种基于LightGBM的特征选择算法,它可以有效地确定义组特征,这些特征可以加速入侵检测的训练和检测阶段,并且可以优化检测的准确性。
特征选择模块,从原始数据集中移除对入侵检测模型无贡献或低贡献的特征形成约简数据集。特征选择模块移除的特征包括缺失率较高的特征、具有单一值的特征、相关性较高的特征、重要性评分低的特征。
基于LightGBM的移除特征选择方法包括:
删除值缺失率比指定阈值大的特征;
删除有唯一值的特征;
使用皮尔森相关系数计算每个两个特征的相关系数,并用相关阈值识别强相关的特征对,并从每个特征对中删除一个特征;
计算所有特征的重要性得分,并按照其特征递减排序重要性分数,删除重要性得分低的特征。
根据约简数据集,删除能源互联网流量数据的不必要的列。数据预处理模块对约简数据集进行进一步的数据预处理,处理成深度学习模型能够接收和处理的数据集。数据预处理模块对约简数据集进行数据归一化处理,生成特征向量。具体地,用θ∈Rk表示一个流量数据向量,长度为k。为了更好地适应REAL模型,我们使用L2范数对数据进行归一化,而不会破坏原始数据之间的线性关系。归一化后的流量数据向量x∈Rk(也称为特征向量)由下式给出:
然后,对给定数据集中每个类别的标签进行量化以进行标签的独热编码。之后,将数据集划分为训练数据集,验证数据集和测试数据集。
入侵检测模块利用数据预处理模块所得数据集对深度学习模型进行训练、调优及测试后,使用深度学习模型进行入侵流量检测。
深度学习模型为REAL模型。REAL模型包括ResNet模块、ALSTM(带有注意力机制的LSTM)模块、MLP(多层感知器)模块和Softmax层。
ResNet模块:ResNet模块包含三个残差块(ResBlock)和一个全局平均池(GAP)层。残差块由具有快速连接的三个卷积块组成,每个卷积块包括时间卷积层,批标准化(BN)层和ReLU激活函数。
ALSTM模块:ALSTM模块由两个LSTM层和一个注意机制(用于关注重要信息)组成。
MLP模块:MLP模块包含一个全连接层和一个随机失活层,用于防止模型过度拟合。
Softmax层:利用softmax层将MLP模块的非标准化输出映射到预测类上的概率分布。
如图4所示,给定网络流量特征向量x作为输入,ResNet模块和ALSTM模块以不同的方式处理x,ALSTM模块将特征向量视为具有单个时间步长的多元时间序列,而ResNet模块将特征向量视为具有多个时间步长的单变量时间序列。具体而言,在ALSTM模块之前,要实现一个维度混洗层,该层将特征向量的时间维度转置,如下式所示:
然后,ALSTM模块以如下方式处理
其中LSTMi,i∈{1,2},表示ithLSTM层,Attention表示注意机制,
对于ResNet模块,每个残差块通过以下方式处理x,以第一个残差块为例:
h1=ConvBlock1(x)
h2=ConvBlock2(h1)
h3=ConvBlock3(h2)
y′=ReLU(h′)
其中ConvBlocki,i∈{1,2,3}代表第一个残差块中的ith卷积块,h1,h2,h3∈Rk是隐藏向量,h′是短路连接和逐个元素相加之后的隐藏状态。之后,将y′传递到后续残差块。然后,这些残差块的输出被传送到GAP层,以减少参数的数量,其结果是μ。
ResNet模块的输出结果为μ,ALSTM模块的输出结果为ν,将μ和ν串联起来,然后馈入MLP模块,其描述如下:
c=Concate(μ,ν)
h″=FC(c)
τ=Dropout(h″),
其中Concate表示串联操作,c是串联的结果,FC和Dropout分别表示完全连接层和随机失活层,而h″和τ分别表示全连接层和随机失活层的输出。
最后,softmax层通过以下方式输出最终的分类结果:
y=Softmax(τ),
其中Softmax代表softmax层,而y是网络流量数据的最终分类结果。
为了使用REAL进行入侵检测,需要首先训练REAL模型。为了获得适当的超参数,我们需要预训练模型以调整超参数。然后使用这些超参数对模型进行正式训练。训练后,需要对模型进行微调以获得更好的性能。最后,性能最佳的模型可以用于入侵检测,即输入网络流量的特征向量并输出检测结果。
实施例
1、表现评估
REAL模型使用Keras API在Intel Xeon E5-2618L v3 CPU NVIDIA GeForce RTX2080TI GPU(64GB RAM)工作站上实现的。不仅开展了REAL检测模型的实验,还对比了一些广泛使用的检测模型的性能,例如支持向量机(SVM),线性回归(LR),MLP,LSTM和卷积神经网络(CNN)等等。在一组初步实验后确定了我们的REAL模型中使用的超参数,如表1所示。
表1模型训练超参数
在数值结果分析中,考虑了四个指标来评估IDS的性能,即准确性,精度,召回率和F1值。这里宏平均值用于全面评估IDS的全局性能。每组实验重复十次,宏平均结果在此处显示。
天然气管道系统是能源互联网中最重要的能源系统之一。我们使用真实的天然气管道数据集来评估IDS性能。
2、数据集描述
在此数据集中,分别收集了正常操作下的一类网络流量数据和七类各种网络攻击下的流量数据,见表2。此数据集中的每个样本都包含26个特征(网络流量数据的每个维度都定义为一个特征)和1个标签。在我们的实验中,每个类别的数据集被随机分为三部分,即80%作为训练集,10%作为验证集和10%作为测试集。
表2数据集描述
3、特征选择实验
在天然气管道数据集中共有26个特性。我们使用所设计的特征选择方法来选择网络攻击检测最重要的特征。我们选取的参数如下:
·特征缺失值比率的阈值Rth为0.60;
·特征相关系数的阈值设置为Hth为0.99。
首先,我们没有发现缺失率大于0.60的特征,在这一步没有删除任何特征。接下来,在气体管道数据集中删除8个具有唯一值的特性。它们是:crc_rate,cycletime,rate,comm_write_fun,deadband,reset,command_length,gain。现在的特征的相关矩阵如图4所示,可以看出,许多特征具有很强的相关性。对于相关性强的特征对,我们只保留其中的一个。因此,我们删除了四个特性,即response_memory,response_memory_count,resp_write_fun,and resp_length.。最后,我们使用LightGBM分类器对剩下的特征根据重要性进行排名。各特征的重要性得分如图6所示。基于这些重要性评分,我们探索了REAL所需的最优特征数量。
图7和表3显示了REAL的性能如何随着特性的数量而变化(前k个特征)。从图7中可以看出,随着特征的数量从1到12,所有的评价指标都在稳步上升,最重要的是,在使用前12个特征时,所有指标都达到了一个峰值,准确率达到99.10%。然而,如果使用了超过12个特性,性能会略有下降,这意味着前12个特性之后的特性不再对IDS性能有任何影响。在后续的探索中,此后的所有实验都使用前12个特征进行。
表3 REAL模型在不同数量的特征下的表现
4、IDS模型性能对比
在这一部分中,我们评估了基于REAL的IDS在各种网络攻击下的性能,并将结果与其他IDS模型(包括SVM,LR,MLP,CNN和LSTM)进行了比较。
图8和表4显示了所有考虑的IDS模型的准确性、精确度、召回率和F1值的结果。可以很容易地看出,对于每个考虑的指标,所提出的基于REAL的IDS比所有其他IDS模型均有更佳的性能。
表4与其他检测模型的性能对比
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。