CN114511131A - 一种基于机器学习算法的网络安全态势预测方法及系统 - Google Patents
一种基于机器学习算法的网络安全态势预测方法及系统 Download PDFInfo
- Publication number
- CN114511131A CN114511131A CN202111610807.3A CN202111610807A CN114511131A CN 114511131 A CN114511131 A CN 114511131A CN 202111610807 A CN202111610807 A CN 202111610807A CN 114511131 A CN114511131 A CN 114511131A
- Authority
- CN
- China
- Prior art keywords
- network security
- data set
- importance
- security situation
- feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 34
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000010801 machine learning Methods 0.000 title claims abstract description 17
- 238000007637 random forest analysis Methods 0.000 claims abstract description 51
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000012360 testing method Methods 0.000 claims abstract description 29
- 230000002068 genetic effect Effects 0.000 claims abstract description 17
- 230000001537 neural effect Effects 0.000 claims abstract description 11
- 238000003066 decision tree Methods 0.000 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 22
- 238000007781 pre-processing Methods 0.000 claims description 13
- 230000006403 short-term memory Effects 0.000 claims description 11
- 230000007787 long-term memory Effects 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000009395 breeding Methods 0.000 description 1
- 230000001488 breeding effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000009401 outcrossing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 231100000817 safety factor Toxicity 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Human Resources & Organizations (AREA)
- Evolutionary Biology (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Physiology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于机器学习算法的网络安全态势预测方法及系统。所述方法包括:基于随机森林对网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;计算筛选后数据集中每条网络流量样本的真实态势值;根据滑动窗口大小对态势值数据集进行划分,得到训练集和测试集样本;采用遗传算法对网络安全态势预测模型隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;采用训练集和测试集样本对网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型以进行网络安全态势预测。本发明方法构建了收敛速度更快且模型简易的网络安全态势预测模型,能够提高网络安全态势预测的速度、准确率和真实性。
Description
技术领域
本发明涉及网络安全态势感知技术领域,特别是涉及一种基于机器学习算法的网络安全态势预测方法及系统。
背景技术
近年来,网络空间蓬勃发展,信息和互联网及云计算、物联网、社交网络等新兴技术和服务广泛应用和不断涌现,数据种类日益增多,数据规模急剧增长,大数据时代悄然来临。根据国际数据公司(International Data Corporation,IDC)的监测数据显示,2013年全球大数据储量为4.3ZB(相当于47.24亿个1TB 容量的移动硬盘),2014年和2015年全球大数据储量分别为6.6ZB和8.6ZB。近几年全球大数据储量的增速每年都保持在40%,2016年甚至达到了87.21%的增长率。2016年和2017年全球大数据储量分别为18ZB和26ZB,2018年全球大数据储量达到33.0ZB,2019年全球大数据储量达到41ZB,截至2020 年全球大数据储量为50.5ZB,增长率达到23.17%。
随着大数据的广泛应用,中国国家的大数据资源面临着国内外各种安全因素的威胁。对于日益多样化、复杂化的网络安全攻击,传统的网络安全设施如反病毒软件、漏洞扫描、入侵检测系统(intrusion detection system,IDS)和防火墙等主动和被动防御工具构成的安全防护体系已经遭遇了瓶颈。能够及时地评估当前网络安全状况,并且能够以当前的安全威胁为基础,对接下来一段时间的网络安全态势进行预测,同时对网络安全进行定量分析,给用户提供全面、直观、有效的网络安全信息对保护大数据资源安全尤为关键,因此网络安全态势感知领域的研究具有迫切的需求以及重要的意义。目前,在网络安全态势预测中所用的机器学习模型如支持向量机(Support Vector Machines,SVM)、决策树模型(Decision Tree,DT)和深度学习中的反向传播神经网络(Back Propagation NeuralNetwork,BPNN)、极限学习机(Extreme Learning Machine,ELM)等模型存在收敛速度慢、预测准确率低、真实性欠佳、模型复杂等问题。
发明内容
本发明的目的是提供一种基于机器学习算法的网络安全态势预测方法及系统,以构建一种收敛速度更快且模型简易的网络安全态势预测模型,提高网络安全态势预测的速度、准确率和真实性。
为实现上述目的,本发明提供了如下方案:
一种基于机器学习算法的网络安全态势预测方法,包括:
获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;
基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;
计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;
根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;
基于长短期记忆网络构建网络安全态势预测模型;
采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;
采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;
采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
可选地,所述基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择,生成筛选后数据集,具体包括:
基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分;
根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集;
对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
可选地,所述基于基尼指数计算所述网络安全态势数据集中的每个特征的重要性评分,具体包括:
构建具有n颗决策树的随机森林模型;
可选地,所述基于袋外数据计算所述网络安全态势数据集中的每个特征的重要性评分,具体包括:
构建具有n颗决策树的随机森林模型;
可选地,所述计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集,具体包括:
采用公式计算所述筛选后数据集中每条网络流量样本的真实态势值SA(t);多条所述网络流量样本的真实态势值共同构成所述态势值数据集;其中Ti表示第i条攻击样本的攻击威胁因子;C表示时间段t内的攻击样本数量。
一种基于机器学习算法的网络安全态势预测系统,包括:
网络安全态势数据集获取模块,用于获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;
特征选择和预处理模块,用于基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;
真实态势值计算模块,用于计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;
数据集划分模块,用于根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;
网络安全态势预测模型构建模块,用于基于长短期记忆网络构建网络安全态势预测模型;
模型参数优化模块,用于采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;
模型训练测试模块,用于采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;
网络安全态势预测模块,用于采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
可选地,所述特征选择和预处理模块具体包括:
重要性评分计算子模块,用于基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分;
特征选择子模块,用于根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集;
预处理子模块,用于对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
可选地,所述重要性评分计算子模块具体包括:
随机森林模型构建单元,用于构建具有n颗决策树的随机森林模型;
可选地,所述重要性评分计算子模块具体包括:
随机森林模型构建单元,用于构建具有n颗决策树的随机森林模型;
重要性评分计算单元,用于基于所述随机森林模型,采用公式计算所述网络安全态势数据集中的特征Xj的重要性评分FISj;其中其中err1 OOB表示随机森林的袋外数据误差;表示对特征Xj加入噪声干扰后计算的袋外数据误差。
可选地,所述真实态势值计算模块具体包括:
真实态势值计算子模块,用于采用公式计算所述筛选后数据集中每条网络流量样本的真实态势值SA(t);多条所述网络流量样本的真实态势值共同构成所述态势值数据集;其中Ti表示第i条攻击样本的攻击威胁因子;C表示时间段t内的攻击样本数量。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供了一种基于机器学习算法的网络安全态势预测方法及系统,所述方法包括:获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;基于长短期记忆网络构建网络安全态势预测模型;采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;采用所述训练好的网络安全态势预测模型进行网络安全态势预测。本发明方法构建了一种收敛速度更快且模型简易的网络安全态势预测模型,能够提高网络安全态势预测的速度、准确率和真实性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于机器学习算法的网络安全态势预测方法的流程图;
图2为本发明基于长短期记忆网络构建网络安全态势预测模型的示意图;
图3为本发明采用遗传算法对网络安全态势预测模型的隐含层神经单元个数进行优化的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于机器学习算法的网络安全态势预测方法及系统,以构建一种收敛速度更快且模型简易的网络安全态势预测模型,提高网络安全态势预测的速度、准确率和真实性。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明一种基于机器学习算法的网络安全态势预测方法的流程图。当前时代的网络数据体量浩大、模态繁多、结构复杂。现有的网络安全态势预测技术有收敛速度慢、精确率低、真实性欠佳的缺陷。针对这些缺陷和不足,亟需建立一个能够高效、准确且代表真实网络安全态势状况的模型进行态势预测。因此,本发明提出将遗传算法(GeneticAlgorithm,GA)、随机森林(Random Forest,RF)等机器学习算法和长短期记忆网络(LongShort-Term Memory, LSTM)相结合的网络安全态势预测模型。首先,采用随机森林对数据中每个特征的重要性进行排序,对特征重要性排序之后,可以选取那些更具有代表意义的特征进行之后的预测,通过该步骤减少意义较小或无意义的特征,且减少数据量,提高预测模型的收敛速度和提高准确率的意义。第二步,对于LSTM 来说,其隐含层神经单元个数对模型的效果影响至关重要,很多研究者根据经验或者试凑法确定该参数,这使得模型的鲁棒性、准确率不够可靠,因此,本发明选取原理简单、复杂度低、收敛速度快、适合处理实值问题的GA算法来对LSTM网络的隐含层神经单元个数进行进行优化。最后,用得到的最优参数构建GA-LSTM网络安全态势预测,实现网络安全态势预测。
参见图1和以上发明构思,本发明一种基于机器学习算法的网络安全态势预测方法具体包括:
步骤101:获取网络安全态势数据集。
所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征,例如持续时间、攻击类型等样本特征。
步骤102:基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集。
网络安全态势数据集中数据量较大,样本特征数目较多,直接放入网络态势感知模型当中会影响模型预测的精度及速度。随机森林可以实现特征选择,其思想是通过判断每个特征在随机森林中每个决策树上的做了多大的贡献,即在每个决策树上的重要性,对其在每个决策树上的重要性相加取平均值,得到每个特征的最终重要性,最后比较每个特征的重要性大小进行排序,去除不重要的特征。常用的两种特征重要性计算方法方法为基于基尼指数和基于袋外数据(Out of Bag,OOB)。
所述步骤102基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择,生成筛选后数据集,具体包括:
步骤2.1:基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分。
(2.1.1)基于基尼指数
第m个节点的Gini指数的计算公式为:
其中,K表示有K个类别,pmk表示节点m中类别k的比例。
特征Xj在决策树中节点m的重要性为:
Ginil和Ginir分别表示分枝后两个新节点的Gini指数。
特征Xj在第i颗决策树的重要性为:
其中M表示第i颗决策树中的节点集合。
若随机森林中共有n颗决策树,则:
最后,对所有特征的重要性评分进行归一化处理,得到所有特征的重要性评分FISj:
对所有特征的重要性评分FISj进行降序排序,根据threshold值(阈值) 筛选出所要选择的特征集合。
(2.1.2)基于袋外数据(OOB)
基于袋外数据计算所述网络安全态势数据集中的每个特征的重要性评分步骤如下:
步骤a:对原始数据集进行自举重采样(bootstrap)方法随机抽取数据样本,形成袋内数据并用于随机森林模型当中,剩余数据形成袋外数据(OOB)。
步骤b:通过n颗决策树构建随机森林模型,利用袋外数据计算随机森林的袋外数据误差,用err1 OOB来表示。
步骤d:特征Xj(j=1,2,...,d)的重要性计算公式如下:
步骤e:重复上述步骤,计算得到每个特征Xj的重要性评分,按降序排序。
步骤f:根据threshold值筛选出所要选择的特征。
步骤2.2:根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集。
通过以上两种计算方法之一得到每个特征的最终重要性评分FISj,最后比较每个特征的重要性大小进行降序排序,去除不重要的特征,例如去除倒数预设数量个特征,或者去除小于预设阈值的特征,生成所述特征选择后数据集。
步骤2.3:对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
然后对重要特征构成的数据集(即所述特征选择后数据集),通过基本的 O-H编码、归一化等方式预处理后,得到新的数据集,即所述筛选后数据集。对用于训练的模型来说,新的数据集数据量更少、特征更有代表性,相比最初的数据集有训练效率高、收敛速度快、准确度高的优势。
步骤103:计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集。
本发明提出了一种网络安全态势值计算方法来计算步骤102得到的新数据集态势值,具体计算方法如下。
针对当前大多数数据集中并没有直接反应网络安全程度的真实态势值这一问题,本发明通过网络攻击影响对网络态势进行分析,确定基于网络攻击因子的态势评估指标包括:
1)攻击数量因子:攻击数量因子为一个时间段内的攻击样本数量,用C 表示。
2)攻击威胁因子:攻击威胁因子为不同攻击类型对网络安全威胁值,用Ti表示。
则网络中t时间段的态势值SA为:
其中SA(t)表示所述筛选后数据集中每条网络流量样本的真实态势值;多条所述网络流量样本的真实态势值共同构成所述态势值数据集。其中Ti表示第i条攻击样本的攻击威胁因子;C表示时间段t内的攻击样本数量。
步骤104:根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本。
根据所述步骤103计算得到真实态势值,根据滑动窗口思想和BiLSTM中输入层步数(time_step)参数异曲同工的特点,将用于预测的态势值数据集进行划分,,划分出训练集样本和测试集样本。划分后的数据集结构如表1所示。
表1用于预测的数据集结构
步骤105:基于长短期记忆网络构建网络安全态势预测模型。
图2为本发明基于长短期记忆网络构建网络安全态势预测模型的示意图。参见图2,本发明基于长短期记忆网络(Long Short-Term Memory,LSTM)构建网络安全态势预测模型,所述网络安全态势预测模型的隐含层由两个LSTM 层构成,两个LSTM层可以充分利用其学习能力来提升模型学习的效果。LSTM 层后的Dropout层起到避免模型过拟合,提升泛化能力的作用。最后一层为 Dense层,可以转换输出维度,进而得到预测结果。
对于LSTM来说,其隐含层神经单元个数对模型的效果影响至关重要,很多研究者根据经验或者试凑法确定该参数,这使得模型的鲁棒性、准确率不够可靠,因此,本发明选取原理简单、复杂度低、收敛速度快、适合处理实值问题的GA算法,通过接下来的步骤106对LSTM网络的隐含层神经单元个数进行进行优化。
步骤106:采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型。
遗传算法(Genetic Algorithm,GA)是根据进化论中“自然选择,适者生存”规则演变而出,每个个体通过交配繁衍出后代,后代在成长过程中经过自然法则的筛选而淘汰掉部分个体,而那些拥有优良性状的个体得以存活并且通过繁衍使得优秀遗传信息得以保留和扩散,是一种自适应、全局优化算法。
图3为本发明采用遗传算法对网络安全态势预测模型的隐含层神经单元个数进行优化的示意图。参见图3,利用遗传算法优化LSTM结构时,首先要对要优化的LSTM隐含层单元个数进行编码,即为个体,同时,确需要明确遗传算法的适应度函数,即LSTM网络损失函数,损失函数的选择可采用均方误差(Mean Square Error,MSE),具体计算如式(8):
接下来,根据适应度函数,计算种群所有个体的适应度,检查是否达到最大迭代次数,若没有,则选择一些较为优良的个体用来进行交叉、变异、遗传操作用来生成新一代更优良的个体;重复上述操作,直到达到最大迭代次数。将GA算法得到的最优个体作为LSTM模型的最优参数,得到具有最优参数的网络安全态势预测模型,即GA-LSTM模型。
步骤107:采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型。
将步骤106获得的最优参数赋给LSTM隐含层,将步骤104划分出的训练集样本和测试集样本放入到GA-LSTM模型当中进行学习,得到训练好的网络安全态势预测模型。
步骤108:采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
采用所述训练好的网络安全态势预测模型对未来一段时间的态势值进行预测,通过预测得到的态势值,可以使相关人员能够对网络安全态势进行更高层次的了解,为作出主动防护提供合理的依据。
为了验证本发明中所构建的GA-LSTM模型的预测能力,可以选取两个典型的回归评价指标对多个模型进行评价对比。两个典型的回归评价指标分别为平均百分比误差(Mean Absolute Percentage Error,MAPE)和拟合优度决定系数(the coefficient ofdetermination,R2)。
两个评价指标的计算公式如下:
经过选取两个典型的回归评价指标对多个模型进行评价对比,表明本发明构建的网络安全态势预测模型具有收敛速度更快、预测准确率更高且模型简易的特点。
本发明方法首先进行RF特征选择,通过RF可以有效的达到特征量减少的目的,进而使得训练、预测速度有显著提高。采用GA算法优化后得到的最优参数可以提高LSTM的预测准确率。因此,本发明所提出的网络安全态势预测方法与以往方法相比,具有显著提高训练速度和预测精度等优势。此外,本发明提出了一种网络安全态势值计算方法,能够计算直接反应网络安全程度的真实态势值,基于该真实态势值建立的网络安全态势预测模型能够代表真实网络安全态势状况,因此采用该网络安全态势预测模型进行网络安全态势预测,能够提高网络安全态势预测的真实性。
基于本发明提供的网络安全态势预测,本发明还提供一种基于机器学习算法的网络安全态势预测系统,所述系统包括:
网络安全态势数据集获取模块,用于获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;
特征选择和预处理模块,用于基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;
真实态势值计算模块,用于计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;
数据集划分模块,用于根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;
网络安全态势预测模型构建模块,用于基于长短期记忆网络构建网络安全态势预测模型;
模型参数优化模块,用于采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;
模型训练测试模块,用于采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;
网络安全态势预测模块,用于采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
其中,所述特征选择和预处理模块具体包括:
重要性评分计算子模块,用于基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分;
特征选择子模块,用于根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集;
预处理子模块,用于对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
所述重要性评分计算子模块具体包括:
随机森林模型构建单元,用于构建具有n颗决策树的随机森林模型;
所述重要性评分计算子模块还包括:
随机森林模型构建单元,用于构建具有n颗决策树的随机森林模型;
重要性评分计算单元,用于基于所述随机森林模型,采用公式计算所述网络安全态势数据集中的特征Xj的重要性评分FISj;其中其中err1 OOB表示随机森林的袋外数据误差;表示对特征Xj加入噪声干扰后计算的袋外数据误差。
所述真实态势值计算模块具体包括:
真实态势值计算子模块,用于采用公式计算所述筛选后数据集中每条网络流量样本的真实态势值SA(t);多条所述网络流量样本的真实态势值共同构成所述态势值数据集;其中Ti表示第i条攻击样本的攻击威胁因子;C表示时间段t内的攻击样本数量。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于机器学习算法的网络安全态势预测方法,其特征在于,包括:
获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;
基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;
计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;
根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;
基于长短期记忆网络构建网络安全态势预测模型;
采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;
采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;
采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
2.根据权利要求1所述的方法,其特征在于,所述基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择,生成筛选后数据集,具体包括:
基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分;
根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集;
对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
3.根据权利要求2所述的方法,其特征在于,所述基于基尼指数计算所述网络安全态势数据集中的每个特征的重要性评分,具体包括:
构建具有n颗决策树的随机森林模型;
6.一种基于机器学习算法的网络安全态势预测系统,其特征在于,包括:
网络安全态势数据集获取模块,用于获取网络安全态势数据集;所述网络安全态势数据集中包括多条网络流量样本,每条所述网络流量样本具有多个特征;
特征选择和预处理模块,用于基于随机森林对所述网络安全态势数据集中的样本特征进行特征选择和预处理,生成筛选后数据集;
真实态势值计算模块,用于计算所述筛选后数据集中每条网络流量样本的真实态势值,生成态势值数据集;
数据集划分模块,用于根据滑动窗口大小对所述态势值数据集进行划分,划分出训练集样本和测试集样本;
网络安全态势预测模型构建模块,用于基于长短期记忆网络构建网络安全态势预测模型;
模型参数优化模块,用于采用遗传算法对所述网络安全态势预测模型的隐含层神经单元个数进行优化,生成具有最优参数的网络安全态势预测模型;
模型训练测试模块,用于采用所述训练集样本和测试集样本对所述具有最优参数的网络安全态势预测模型进行训练和测试,生成训练好的网络安全态势预测模型;
网络安全态势预测模块,用于采用所述训练好的网络安全态势预测模型进行网络安全态势预测。
7.根据权利要求6所述的系统,其特征在于,所述特征选择和预处理模块具体包括:
重要性评分计算子模块,用于基于基尼指数或基于袋外数据,计算所述网络安全态势数据集中的每个特征的重要性评分;
特征选择子模块,用于根据所述每个特征的重要性评分的大小去除所述网络安全态势数据集中不重要的特征,生成所述特征选择后数据集;
预处理子模块,用于对所述特征选择后数据集进行预处理,生成所述筛选后数据集。
8.根据权利要求7所述的系统,其特征在于,所述重要性评分计算子模块具体包括:
随机森林模型构建单元,用于构建具有n颗决策树的随机森林模型;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111610807.3A CN114511131A (zh) | 2021-12-27 | 2021-12-27 | 一种基于机器学习算法的网络安全态势预测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111610807.3A CN114511131A (zh) | 2021-12-27 | 2021-12-27 | 一种基于机器学习算法的网络安全态势预测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114511131A true CN114511131A (zh) | 2022-05-17 |
Family
ID=81548521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111610807.3A Pending CN114511131A (zh) | 2021-12-27 | 2021-12-27 | 一种基于机器学习算法的网络安全态势预测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114511131A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242441A (zh) * | 2022-06-21 | 2022-10-25 | 浙江工业大学 | 一种基于特征选择和深度神经网络的网络入侵检测方法 |
CN115277159A (zh) * | 2022-07-22 | 2022-11-01 | 重庆邮电大学 | 一种基于改进随机森林的工业互联网安全态势评估方法 |
CN115378653A (zh) * | 2022-07-25 | 2022-11-22 | 中国电子科技集团公司第三十研究所 | 一种基于lstm和随机森林的网络安全态势感知与预测方法及系统 |
CN115567300A (zh) * | 2022-09-27 | 2023-01-03 | 中国人民解放军军事科学院战略评估咨询中心 | 一种用于网络安全分析的数据处理方法及装置 |
CN118504796A (zh) * | 2024-07-18 | 2024-08-16 | 清华大学 | 一种城市固废未来产生量的预测方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185735A (zh) * | 2011-04-26 | 2011-09-14 | 华北电力大学 | 一种网络安全态势预测方法 |
CN107786369A (zh) * | 2017-09-26 | 2018-03-09 | 广东电网有限责任公司电力调度控制中心 | 基于irt层次分析和lstm的电力通信网络安全态势感知和预测方法 |
CN108306894A (zh) * | 2018-03-19 | 2018-07-20 | 西安电子科技大学 | 一种基于攻击发生置信度的网络安全态势评估方法及系统 |
US20190080240A1 (en) * | 2017-09-08 | 2019-03-14 | SparkCognition, Inc. | Execution of a genetic algorithm with variable evolutionary weights of topological parameters for neural network generation and training |
CN109779604A (zh) * | 2018-12-17 | 2019-05-21 | 中国石油大学(北京) | 用于诊断井漏的建模方法及诊断井漏的方法 |
CN110636066A (zh) * | 2019-09-24 | 2019-12-31 | 中国民航大学 | 基于无监督生成推理的网络安全威胁态势评估方法 |
CN111191683A (zh) * | 2019-12-13 | 2020-05-22 | 南京邮电大学 | 基于随机森林和贝叶斯网络的网络安全态势评估方法 |
CN113065699A (zh) * | 2021-03-22 | 2021-07-02 | 国家电网有限公司 | 一种基于进化神经网络的电力信息网安全态势量化方法 |
CN113259325A (zh) * | 2021-04-21 | 2021-08-13 | 桂林电子科技大学 | 基于麻雀搜索算法优化Bi-LSTM的网络安全态势预测方法 |
-
2021
- 2021-12-27 CN CN202111610807.3A patent/CN114511131A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185735A (zh) * | 2011-04-26 | 2011-09-14 | 华北电力大学 | 一种网络安全态势预测方法 |
US20190080240A1 (en) * | 2017-09-08 | 2019-03-14 | SparkCognition, Inc. | Execution of a genetic algorithm with variable evolutionary weights of topological parameters for neural network generation and training |
CN107786369A (zh) * | 2017-09-26 | 2018-03-09 | 广东电网有限责任公司电力调度控制中心 | 基于irt层次分析和lstm的电力通信网络安全态势感知和预测方法 |
CN108306894A (zh) * | 2018-03-19 | 2018-07-20 | 西安电子科技大学 | 一种基于攻击发生置信度的网络安全态势评估方法及系统 |
CN109779604A (zh) * | 2018-12-17 | 2019-05-21 | 中国石油大学(北京) | 用于诊断井漏的建模方法及诊断井漏的方法 |
CN110636066A (zh) * | 2019-09-24 | 2019-12-31 | 中国民航大学 | 基于无监督生成推理的网络安全威胁态势评估方法 |
CN111191683A (zh) * | 2019-12-13 | 2020-05-22 | 南京邮电大学 | 基于随机森林和贝叶斯网络的网络安全态势评估方法 |
CN113065699A (zh) * | 2021-03-22 | 2021-07-02 | 国家电网有限公司 | 一种基于进化神经网络的电力信息网安全态势量化方法 |
CN113259325A (zh) * | 2021-04-21 | 2021-08-13 | 桂林电子科技大学 | 基于麻雀搜索算法优化Bi-LSTM的网络安全态势预测方法 |
Non-Patent Citations (1)
Title |
---|
CSDN_LZW: ""随机深林-特征重要性计算方式"", pages 1 - 2, Retrieved from the Internet <URL:https://blog.csdn.net/zjuPeco/article/details/77371645> * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242441A (zh) * | 2022-06-21 | 2022-10-25 | 浙江工业大学 | 一种基于特征选择和深度神经网络的网络入侵检测方法 |
CN115277159A (zh) * | 2022-07-22 | 2022-11-01 | 重庆邮电大学 | 一种基于改进随机森林的工业互联网安全态势评估方法 |
CN115277159B (zh) * | 2022-07-22 | 2023-05-23 | 重庆邮电大学 | 一种基于改进随机森林的工业互联网安全态势评估方法 |
CN115378653A (zh) * | 2022-07-25 | 2022-11-22 | 中国电子科技集团公司第三十研究所 | 一种基于lstm和随机森林的网络安全态势感知与预测方法及系统 |
CN115378653B (zh) * | 2022-07-25 | 2024-04-23 | 中国电子科技集团公司第三十研究所 | 一种基于lstm和随机森林的网络安全态势感知与预测方法及系统 |
CN115567300A (zh) * | 2022-09-27 | 2023-01-03 | 中国人民解放军军事科学院战略评估咨询中心 | 一种用于网络安全分析的数据处理方法及装置 |
CN118504796A (zh) * | 2024-07-18 | 2024-08-16 | 清华大学 | 一种城市固废未来产生量的预测方法及系统 |
CN118504796B (zh) * | 2024-07-18 | 2024-09-24 | 清华大学 | 一种城市固废未来产生量的预测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114511131A (zh) | 一种基于机器学习算法的网络安全态势预测方法及系统 | |
CN110460605B (zh) | 一种基于自动编码的异常网络流量检测方法 | |
Araújo et al. | Identifying important characteristics in the KDD99 intrusion detection dataset by feature selection using a hybrid approach | |
CN112887325B (zh) | 一种基于网络流量的电信网络诈骗犯罪欺诈识别方法 | |
CN112217787B (zh) | 一种基于ed-gan的仿冒域名训练数据生成方法及系统 | |
CN109657147B (zh) | 基于萤火虫和加权极限学习机的微博异常用户检测方法 | |
CN109857457B (zh) | 一种在双曲空间中学习源代码中的函数层次嵌入表示方法 | |
CN110781406A (zh) | 一种基于变分自动编码器的社交网络用户多属性推断方法 | |
CN112351033B (zh) | 工控网络中基于双种群遗传算法的深度学习入侵检测方法 | |
CN110166454A (zh) | 一种基于自适应遗传算法的混合特征选择入侵检测方法 | |
CN112738014A (zh) | 一种基于卷积时序网络的工控流量异常检测方法及系统 | |
CN116015967B (zh) | 基于改进鲸鱼算法优化delm的工业互联网入侵检测方法 | |
CN108446562B (zh) | 基于禁忌与人工蜂群双向优化支持向量机的入侵检测方法 | |
Ghalehgolabi et al. | Intrusion detection system using genetic algorithm and data mining techniques based on the reduction | |
CN114021738A (zh) | 一种基于分布式生成对抗模型的联邦学习方法 | |
CN115242441A (zh) | 一种基于特征选择和深度神经网络的网络入侵检测方法 | |
CN112910866B (zh) | 一种面向网络入侵检测的特征选择方法 | |
CN107480724A (zh) | 一种聚类中心的确定方法、确定系统及一种聚类方法 | |
CN114943866B (zh) | 基于进化神经网络结构搜索的图像分类方法 | |
CN114124456B (zh) | 综合能源系统安全检测方法、装置、电子设备及存储介质 | |
CN115906080A (zh) | 一种以太坊网络钓鱼检测方法、系统、电子设备及介质 | |
CN113672932A (zh) | 一种基于自适应熵值权重的电力物联网智能终端可信计算信任值获取方法 | |
CN114048796A (zh) | 一种改进型硬盘故障预测方法及装置 | |
Sendhoff et al. | Analysis of possible genome-dependence of mutation rates in genetic algorithms | |
CN115473672B (zh) | 一种基于在线交互式web动态防御的防漏洞探测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |