[发明专利]基于深度自编码神经网络模型的网络安全态势评估方法有效
申请号: | 202010915110.6 | 申请日: | 2020-09-03 |
公开(公告)号: | CN112039903B | 公开(公告)日: | 2022-03-08 |
发明(设计)人: | 杨宏宇;曾仁韵;谢丽霞 | 申请(专利权)人: | 中国民航大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;G06N3/04 |
代理公司: | 天津才智专利商标代理有限公司 12108 | 代理人: | 庞学欣 |
地址: | 300300 天*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 深度 编码 神经网络 模型 网络安全 态势 评估 方法 | ||
1.一种基于深度自编码神经网络模型的网络安全态势评估方法,其特征在于:所述的基于深度自编码神经网络模型的网络安全态势评估方法包括按顺序进行的下列步骤:
1)构建深度自编码神经网络模型的S1阶段:构建由深度自动编码器和深度神经网络构成的深度自编码神经网络模型;
2)获取网络流量数据的S2阶段:选择网络安全领域相对权威的NSL-KDD入侵数据集作为评估的数据集;NSL-KDD入侵数据集包括训练数据集KDDTrain+和测试数据集KDDTest+,训练数据集KDDTrain+和测试数据集KDDTest+中均包括正常流量数据和四种攻击流量数据共五种类型的流量数据;
3)数据预处理的S3阶段:对上述训练数据集KDDTrain+和测试数据集KDDTest+中的部分流量数据进行特征数值化和数值归一化处理,其中,特征数值化采用独热编码技术,将流量数据中的非数值数据转化为只用0和1表示的数据,分别获得特征数值化处理后训练数据集Xtrain和特征数值化处理后测试数据集Xtest;对特征数值化处理后训练数据集Xtrain和特征数值化处理后测试数据集Xtest中最小值与最大值之间存在显著差异的流量数据进行数值归一化处理,将其统一到同一区间,获得归一化训练数据集X(train)和归一化测试数据集X(test);
4)数据重采样的S4阶段:为了消除归一化训练数据集X(train)中数据分布不均匀带来的负面影响,采用欠、过采样加权算法对上述归一化训练数据集X(train)进行数据重采样处理,使得归一化训练数据集X(train)中每种类型流量的数据量相接近,获得重采样训练数据集X(train’);
5)深度自编码神经网络模型训练的S5阶段:使用不同的参数和不同的优化器,将上述重采样训练数据集X(train’)分多次输入到步骤1)构建的深度自编码神经网络模型中,对该模型进行训练;其中DAE使用的激活函数是‘sigmoid’,优化器选择‘RMSprop’;DNN使用的激活函数是‘relu’,当进行二分类时,使用的激活函数是‘sigmoid’;进行多分类时,使用的激活函数是‘softmax’;优化器选择‘Adam’,损失函数使用交叉熵函数;
6)深度自编码神经网络模型测试的S6阶段:将上述步骤3)获得的归一化测试数据集X(test)输入到步骤5)中已经训练好的深度自编码神经网络模型中,获得流量数据的二分类结果和多分类结果;
7)网络安全态势量化评估的S7阶段:将步骤6)获得的流量数据的二分类结果记为攻击概率p,并基于通用漏洞评分系统制定的类别影响分数评定量表计算出每种类型流量的影响分数impacti,ti表示每种类型流量出现的次数;然后根据攻击概率p、每种类型流量的影响分数impacti和每种类型流量出现的次数ti计算出网络安全态势值T,最后根据网络安全态势值T确定出网络安全态势严重程度的等级;
在步骤4)中,所述的采用欠、过采样加权算法对上述归一化训练数据集X(train)进行数据重采样处理,获得重采样训练数据集X(train’)的方法如下:
4.1)计算归一化训练数据集X(train)中每种类型流量的权重wi:将每种类型流量的实际数据量与理想数据量之间的差值作为权重;设归一化训练数据集中包含n种类型的流量,每种类型的流量都有xi个数据,则该类型流量的权重wi用下式表示:
4.2)结合上述流量的权重wi进行数据欠采样处理:对于数据量大于平均值的流量数据,需要进行数据欠采样处理,使处理后的数据量接近平均值;使用Python中sklearn库的“train_test_split”方法将归一化训练数据集X(train)中类型i的原始流量数据集Si_data分为训练流量数据集Si_train和剩余流量数据集Si_left;将其中的训练流量数据集Si_train用于构建重采样训练数据集X(train’),训练流量数据集Si_train=xi×wi;而将剩余流量数据集Si_left用于接下来的过采样处理;
4.3)进行数据过采样处理:对于数据量小于平均值的流量数据,需要进行数据过采样处理,采用过采样算法SMOTE对这样的流量数据进行数据过采样处理,其核心是在现有少量数据的基础上生成新的同类型数据,方法如下:
4.3.1)合并其他类型数据:设需要进行过采样处理的流量数据的类型为type_o,其原始流量数据量为size_o,数据集为data_o;如果其他类型i(i∈{n-type_o})的流量数据量大于平均值,使用步骤4.2)中获得的类型i的剩余流量数据集Si_left;否则,使用类型i的原始流量数据集Si_data;然后对类型i的剩余流量数据集Si_left或类型i的原始流量数据集Si_data中除了类型type_o外的其他类型的流量数据进行合并,得到合并数据集并用other_types_data表示;
4.3.2)统一类型标签:因为过采样算法SMOTE是根据类型的标签进行操作,而且是针对二分类的数据,所以需要将合并数据集other_types_data的标签更改为同一类型,记为othe_type,以便于操作;
4.3.3)确定数据量大小:为了平衡数据集,需要对数据量少的流量数据进行扩展,设扩展后的流量数据量大小为size_o',其中size_o'=size_o*wo,wo为类型type_o的流量数据的权重;此时,将步骤4.3.1)获得的合并数据集other_types_data的流量数据量设为size_o';
4.3.4)数据过采样:将合并数据集other_types_data和需要进行过采样处理的类型type_o的数据集data_o合并成一个完整数据集data_all,其只包含两种类型的流量数据:类型type_o和类型othe_type;然后使用Python中imblearn库的SMOTE方法,利用完整数据集data_all和其中每种类型的标签生成所需的流量数据O_train;
4.3.5)重复步骤4.3.1)—4.3.4),直到数据量少于平均值的那种类型的流量数据全部完成过采样处理;
4.4)在对上述归一化训练数据集X(train)进行重采样处理之后,将欠采样、过采样之后的数据合并成重采样数据集X(train’)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国民航大学,未经中国民航大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010915110.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于推拉门的密封结构
- 下一篇:一种分子束外延用砷棒的制作方法