一种基于SRU网络异常流量的检测方法及系统
文献发布时间:2023-06-19 11:29:13
技术领域
本发明涉及流量分析和深度学习技术,具体涉及一种基于SRU网络异常流量的检测方法及系统。
背景技术
随着移动互联网、物联网在各领域的深入应用与快速发展,信息承载形式和工具更加丰富,互联网应用更加深入到人们生活的方方面面。随着信息化程度的深入,人们的安全意识也不断提高,信息与网络安全越来越受到广泛关注。处于各种不良动机所产生的异常流量,影响着各类应用的正常运行,用户面临着更多的新安全问题,更进一步甚至影响人们的日常工作。传统预防性网络安全技术有防火墙、病毒查杀[1]等,但对于一些新的入侵形式较难判断。随着应用场景越来越丰富,异常流量变得比以往更加复杂,传统预防技术只能在一定程度上有效。传统异常流量检测方多为静态方式[1],在复杂动态的网络中较难校测异常和新的攻击类型,且传统方法特征提取不高、检测效率不高。文献[2]中提出了基于RNN变种LTSM的异常检测模型,但其训练速度仍存在限制,文献[3]中提出了基于GRU的异常检测机制,并证明比LSTM更适合作为RNN的记忆单元,并证明它是LSTM的有效简化和改进,但同样模型训练时间花费较高。SRU在网络结构上进行了优化,主要由遗忘门、重置门和记忆单元三部分组成。其计算方法为:
其中g(.)为激活函数。
RNN网络比较适合时间序列问题,但其结构限制了模型的训练速度,并且与CNN相比较,RNN也不能进行并行化处理。SRU网络结构的提出就是为了解决这个问题,SRU(simplerecurrent units)将大部分运算放到进行并行处理,只将有小量运算的步骤进行串行。LSTM和GRU等,都使用神经门(neural gate)控制信息流,缓解梯度消失(或爆炸)的问题。相比较,SRU中增加了在循环层之间增加了highway连接;在将RNN正则化时,SRU在标准的dropout外,增加了变分dropout,变分dropout在时间步长t与dropout使用相同的mask。
[1] 鲍捷, 牛颉, 张勇,等. 物联网异常流量检测算法研究[J]. 信息技术与网络安全, 2019(2).
[2] 王伟. 基于深度学习的网络流量分类及异常检测方法研究[D]. 2018.
[3] 唐睿,李祺. 基于深度学习的网络流量异常检测[EB/OL]. 北京:中国科技论文在线 [2020-03-30]. http://www.paper.edu.cn/releasepaper/content/202003-317.。
发明内容
本发明的目的在于提供一种基于SRU网络异常流量的检测方法及系统,解决现有的现有基于深度学习的异常流量检测算法训练速度慢的问题。
为实现上述目的,本发明的技术方案是:一种基于SRU网络异常流量的检测方法,包括:
数据采集:根据实际应用场景采集数据网络流量数据;
数据预处理:将采集的数据网络流量数据进行预处理;
SRU网络模型构建与训练:基于预处理数据,构建SRU网络模型,训练网络,提取并分析特征,对训练数据集进模型训练;
异常检测:SRU网络模型调用,异常检测输出。
在本发明一实施例中,所述数据预处理包括:将预处理数据整理成数据集;属性转换,将各类非数值型数据进行数值编码;属性归一化处理,将数据采用最小最大规范化方法归一化至[0,1]区间;优化不平衡数据。
在本发明一实施例中,所述SRU网络模型,包括:使用OHE独热编码对流量数据进行转换;对特征向量进行降维处理;使用SRU网络进行特征学习;训练进行异常检测的softmax分类器。
在本发明一实施例中,所述SRU网络模型调用,异常检测输出具体实现为:通过调用训练构建的分类器输出分类决策结果,判断流量是否异常。
本发明还提供了一种基于SRU网络异常流量的检测系统,包括:
数据采集模块,用于根据实际应用场景采集数据网络流量数据;
数据预处理模块,将采集的数据网络流量数据进行预处理;
SRU网络模型构建与训练模块,基于预处理数据,构建SRU网络模型,训练网络,提取并分析特征,对训练数据集进模型训练;
异常检测模块,调用SRU网络模型,输出流量异常检测结果。
在本发明一实施例中,所述数据预处理模块包括:将预处理数据整理成数据集;属性转换,将各类非数值型数据进行数值编码;属性归一化处理,将数据采用最小最大规范化方法归一化至[0,1]区间;优化不平衡数据。
在本发明一实施例中,所述SRU网络模型构建与训练模块实现:使用OHE独热编码对流量数据进行转换;对特征向量进行降维处理;使用SRU网络进行特征学习;训练进行异常检测的分类器。
在本发明一实施例中,所述异常检测模块具体实现为:通过调用训练构建的softmax分类器输出分类决策结果,判断流量是否异常。
相较于现有技术,本发明具有以下有益效果:本发明解决现有的现有基于深度学习的异常流量检测算法训练速度慢的问题,通过深度学习SRU网络,达到如下目的:
在数据预处理方面,我们对数据进行规范化,并对占比较小的数据进行不平衡处理;
在深度学习模型构建方面,我们选择了SRU网络,SRU中增加了在循环层之间增加了highway连接;在将RNN正则化时,SRU在标准的dropout外,增加了变分dropout,变分dropout在时间步长t与dropout使用相同的mask,其模型训练性能有较大提升,相对于传统方法,特征识别率较高;
在模型实现中使用了分层级联SRU网络结构对具有时序特征的流量数据进行特征学习,并构造softmax分类器实现流量异常分类检测。
附图说明
图1为本发明基于SRU的流量异常检测系统框架。
图2为SRU两层网络结构。
图3为分类器构建。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
本发明提供了一种基于SRU网络异常流量的检测方法,包括:
数据采集:根据实际应用场景采集数据网络流量数据;
数据预处理:将采集的数据网络流量数据进行预处理;
SRU网络模型构建与训练:基于预处理数据,构建SRU网络模型,训练网络,提取并分析特征,对训练数据集进模型训练;
异常检测:SRU网络模型调用,异常检测输出。
所述数据预处理包括:将预处理数据整理成数据集;属性转换,将各类非数值型数据进行数值编码;属性归一化处理,将数据采用最小最大规范化方法归一化至[0,1]区间;优化不平衡数据。
所述SRU网络模型,包括:使用OHE独热编码对流量数据进行转换;对特征向量进行降维处理;使用SRU网络进行特征学习;训练进行异常检测的softmax分类器。
所述SRU网络模型调用,异常检测输出具体实现为:通过调用训练构建的分类器输出分类决策结果,判断流量是否异常。
本发明还提供了一种基于SRU网络异常流量的检测系统,包括:
数据采集模块,用于根据实际应用场景采集数据网络流量数据;
数据预处理模块,将采集的数据网络流量数据进行预处理;
SRU网络模型构建与训练模块,基于预处理数据,构建SRU网络模型,训练网络,提取并分析特征,对训练数据集进模型训练;
异常检测模块,调用SRU网络模型,输出流量异常检测结果。
所述数据预处理模块包括:将预处理数据整理成数据集;属性转换,将各类非数值型数据进行数值编码;属性归一化处理,将数据采用最小最大规范化方法归一化至[0,1]区间;优化不平衡数据。
所述SRU网络模型构建与训练模块实现:使用OHE独热编码对流量数据进行转换;对特征向量进行降维处理;使用SRU网络进行特征学习;训练进行异常检测的softmax分类器。
所述异常检测模块具体实现为:通过调用训练构建的分类器输出分类决策结果,判断流量是否异常。
以下为本发明的具体实现过程。
由图1可知本发明SRU网络模型由数据采集,数据预处理,数据划分、模型训练和异常检测构成。数据采集是流量数据的基本来源并整理形成数据集。数据预处理主要完成数据的属性转换,属性的归一化处理主要使用最小最大规范化方法、统一数据量纲减少计算量和由于单位差异带来的影响。在模型构建之初需将数据进行划分,划分为训练数据集合测试数据集。构建SRU深度学习模型,将训练集用户模型训练学习,进行特征学习,具体包括使用OHE独热编码对流量数据进行转换,对特征向量进行降维处理,模型训练学习。模型训练之后,使用测试数据集进行异常检测,并对模型的性能进行评估测试。
基于SRU的两层网络结构如图2所示,将处理后的同类型的时序流量数据特征最为输入进行池化,学习流量包之间的依赖特征,第二层把最后一个包的第一层输出作为输入,并将第二层SRU的输出作为特征。
构建softmax分类器过程如图3所示。将图2中得到的特征进行聚合,并在SRU单元后接一个全连接层和softmax层,进行分类,将分类器的结果作为流量检测的结果。
当上述模型的性能符合预期要求时,将模型用于实际应用场景。
具体流程如下:
(1)原始数据采集,数据集流入系统,形成数据集;
(2)将非数值型数据转换为数值型;
(3)将各属性值按照最小最大化方法规范化到[0,1]区间;
(4)对数据集进行标签化;
(5)将数据集划分为训练集和测试集;
(6)使用工具构建级联两层SRU深度学习网络;
(7)对SRU网络进行学习训练,进行特征学习;
(8)在训练基础上构建softmax分类器模型;
(9)将测试集用于分类器模型上,进行模型性能评估;
(10)模型实际应用。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
- 一种基于SRU网络异常流量的检测方法及系统
- 一种基于时间序列挖掘的网络异常流量自动检测方法