CN111262858A - 基于sa_soa_bp神经网络的网络安全态势预测方法 - Google Patents

基于sa_soa_bp神经网络的网络安全态势预测方法 Download PDF

Info

Publication number
CN111262858A
CN111262858A CN202010046841.1A CN202010046841A CN111262858A CN 111262858 A CN111262858 A CN 111262858A CN 202010046841 A CN202010046841 A CN 202010046841A CN 111262858 A CN111262858 A CN 111262858A
Authority
CN
China
Prior art keywords
individual
neural network
value
search
network
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.)
Granted
Application number
CN202010046841.1A
Other languages
English (en)
Other versions
CN111262858B (zh
Inventor
张然
刘敏
梁文静
张启坤
尹毅峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou University of Light Industry
Original Assignee
Zhengzhou University of Light Industry
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou University of Light Industry filed Critical Zhengzhou University of Light Industry
Priority to CN202010046841.1A priority Critical patent/CN111262858B/zh
Publication of CN111262858A publication Critical patent/CN111262858A/zh
Application granted granted Critical
Publication of CN111262858B publication Critical patent/CN111262858B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提出了一种基于SA_SOA_BP神经网络的网络安全态势预测方法,其步骤如下:采集网络安全数据信息为实验数据进行预处理;根据实验数据中的输入数量和输出数量利用试凑法确定BP神经网络的网络结构;将模拟退火算法引入人群搜索算法中得到改进的人群搜索算法;初始化模拟退火算法,采用改进的人群搜索算法找到最优个体,并通过适应度函数计算个体的适应度值,对BP神经网络的连接权值和阈值进行优化;将测试样本代入BP神经网络中得到网络安全态势的预测值。本发明将模拟退火算法引入人群搜索算法,克服了人群搜索算法易陷入局部最优和收敛缓慢的问题,并利用改进的人群搜索算法在速度及全局搜索上的优势对BP神经网络进行优化改进。

Description

基于SA_SOA_BP神经网络的网络安全态势预测方法
技术领域
本发明涉及网络信息安全,具体属于网络安全态势感知的技术领域,尤其涉及一种基于SA_SOA_BP神经网络的网络安全态势预测方法。
背景技术
随着大数据、人工智能和互联网的高速发展及应用,网络结构的复杂化、数据的多元化以及网络协议的多样化,使得多层面、多形式的网络安全风险随之加剧。网络攻击行为日渐向着分布化、规模化、复杂化等趋势发展,传统的入侵检测系统、防火墙等网络安全防御手段已经不能满足现在高速、智能、多源的网络安全需求,需要更加先进、优化的技术手段和方式方法去防范网络安全事件的发生。1999年,Bass首次提出了网络安全态势感知(network security situation awareness,NSSA)的概念。安全态势感知最早运用在航空和军事领域,用来快速决策和处理复杂的航空和军事事件,后来被研究者广泛地运用到网络安全领域。研究者们发现态势感知不仅可以进行网络安全态势评估,也可以用来进行网络安全态势预测,使原来的被动防御变为主动防御,可以很大程度的解决网络安全的防御问题,因此成为了当下的一个热点研究方向。
目前,网络安全态势预测的研究已经非常广泛,国外对这方面的研究相对比较早。文献[S.Mathew,C.Shah,S.Upadhyaya.An alert fusion framework for situationawareness of coordinated multistage attacks[C].//Proc of the 3rd IEEEInternational Workshop on Information Assurance,Los Alamitos,CA:IEEE,2005:95-104]提出了一种基于实时入侵警报流的动态计算“场景可信度”的方法,为实时检测、预测和推理多目标攻击提供了一种有用的机制。文献[S.J.Yang,S.Byers,J.Holsopple,etal.Intrusion activity projection for cyber situational awareness[C].//Proc ofthe IEEE International Conference on Intelligence and Security Informatics,NJ:IEEE,2008:167-172]提出了一种基于网络的虚拟地形和马尔可夫模型的入侵活动预测方法。文献[D.S.Fava,S.R.Byers,S.J.Yang.Projecting Cyberattacks ThroughVariable-Length Markov Models[J].IEEE Transactions on Information Forensicsand Security,2008,3(3):359-369]提出了一种基于变长马尔可夫的预测模型,通过捕获攻击轨迹的顺序属性,实现对攻击的预测。文献[C.Fachkha,E.Bou-Harb,M.Debbabi.Towards a Forecasting Model for Distributed Denial of ServiceActivities[C].//Proc of the 12th IEEE International Symposium on NetworkComputing and Applications,Cambridge,MA:IEEE,2013:110-117]提出了一种基于时间序列波动分析和预测的方法,实现对分布式拒绝服务(DDoS)活动进行预测。文献[G.Chen,D.Shen,C.Kwan,et al.Game Theoretic Approach to Threat Prediction andSituation Awareness[C].//Proc of the 9th International Conference onInformation Fusion,Florence:IEEE,2006:1-8]提出了一种基于先验知识和随机马尔可夫博弈论的数据融合框架,用于非对称威胁的检测和预测。近些年国内在网络安全态势预测方面也做了大量的研究,很多研究者们尝试将人工智能的方法引入态势评估领域来提高态势感知和预测的准确性。文献[刘付民,王静咏,张治斌.组合核函数相关向量机的网络安全态势预测[J].计算机应用研究,2016,33(08):2417-2419+2424]提出了一种多项式和高斯核函数构建的组合函数相关向量机的网络安全态势预测模型,解决了单一核函数的局限性,提高了预测的精准性和有效性,但是缺少相关的理论证明推导支撑。文献[韦勇,连一峰,冯登国.基于信息融合的网络安全态势评估模型[J].计算机研究与发展,2009,46(03):353-362]提出了一种利用改进的D-S证据理论进行信息融合的网络安全态势评估模型,此模型对多源信息进行融合,并运用时间序列分析法进行态势分析,克服了传统单一数据源造成的预测结果的不准确的问题,但是还需要更加全面的评估指标和量化评估方法。文献[刘玉岭,冯登国,连一峰,等.基于时空维度分析的网络安全态势预测方法[J].计算机研究与发展,2014,51(08):1681-1694]提出了一种基于时空维度分析的网络安全态势预测方法,解决了未来安全态势要素值的新变化以及周围节点安全态势要素对态势预测的影响,但此方法受提取的态势要素值的影响较大,另外用到了脆弱性预测算法,它的随机性较大,对预测的准确性有影响。文献[黄同庆,庄毅.一种实时网络安全态势预测方法[J].小型微型计算机系统,2014,35(02):303-306]提出了一种基于隐Markov模型的实时网络安全态势预测模型,可以有效的提高预测的实时性,但是HMM模型存在参数估计的效率性问题。文献[甘文道,周城,宋波.基于RAN-RBF神经网络的网络安全态势预测模型[J].计算机科学,2016,43(S2):388-392]提出了一种基于资源分配网络径向基函数神经网络的网络安全态势预测模型,将资源分配网络算法用到样本聚类中,并采用改进的粒子群算法优化RBF的中心、宽度和权值,提高了预测的精准度。文献[陈维鹏,敖志刚,郭杰,等.基于改进的BP神经网络的网络空间态势感知系统安全评估[J].计算机科学,2018,45(S2):335-337+341]提出了一种使用模拟退火算法和变步长学习策略优化BP神经网络的评估模型,克服了传统BP神经网络反馈误差慢和易陷入局部极值的局限性。文献[J.Wu,L.Yin and Y.Guo.CyberAttacks Prediction Model Based on Bayesian Network[C].//Proc of the 18th IEEEInternational Conference on Parallel and Distributed Systems,Singapore:IEEE,2012:730-731]提出了一种基于贝叶斯网络的网络攻击预测模型,该模型考虑了主要环境因素,提高了预测的准确性,下一步需要开发更有效的实时安全评估方法。文献[L.Jibao,W.Huiqiang Z.Liang.Study of Network Security Situation Awareness Model Basedon Simple Additive Weight and Grey Theory[C].//Proc of the InternationalConference on Computational Intelligence and Security,Guangzhou:IEEE,2006:1545-1548]提出了一种基于简单加权和灰色理论的网络安全态势感知模型,该预测该模型可以有效评估当前网络安全状况,并以96%以上的精度预测未来状况,但是需要在10G以太网中测试该模型,以进一步验证其可行性和合理性并进行改进。文献[Z.Lin,G.Chen,W.Guoet al.PSO-BPNN-Based Prediction of Network Security Situation[C].//Proc ofthe 3rd International Conference on Innovative Computing Information andControl,Dalian,Liaoning:IEEE,2008:37-37]提出了一种基于PSO-BPNN的网络安全态势预测方法,可以克服传统BP网络中预测应用的不足,有效提高了态势预测的准确性。文献[P.Xiao,M.Xian and H.Wang.Network security situation prediction method basedon MEA-BP[C].//Proc of the 3rd International Conference on ComputationalIntelligence&Communication Technology,Ghaziabad:IEEE,2017:1-5]提出了一种基于MEA-BP的网络安全态势预测方法,该预测模型使用MEA算法优化BP神经网络的权值和阈值,提高了预测的准确性,但是还需要继续的改进优化算法。文献[S.Zhang,Y.ShenG.Zhang.Network Security Situation Prediction Model Based on Multi-SwarmChaotic Particle Optimization and Optimized Grey Neural Network[C].//Proc ofthe 9th IEEE International Conference on Software Engineering and ServiceScience(ICSESS),Beijing:IEEE,2018:426-429]提出了一种基于多群混沌粒子优化灰色神经网络的网络安全态势预测模型,有此方法具有较高的精度和良好的预测效果,可以有效增强网络安全防御的主动性,减少网络攻击造成的损失,具有良好的实用性,但是需要与更多的预测模型进行对比。这些预测模型和方法是近几年研究中比较常用的,这些改进的方法相比传统方法在一定程度上提高了评估预测的效果,但是这些方法面对收集到的海量数据,在准确性和效率上还不理想,无法适应动态多变的网络安全需求。
人群搜索算法(SOA)是一种智能搜索算法,应用较为广泛。我们先在研究中采用SOA优化BP神经网络并应用于网络安全态势预测,从一定程度上提高了预测的精准度,但SOA存在搜索后期易陷入局部最优即“早熟”现象和收敛缓慢的问题。因此,本申请采用模拟退火算法(SA)优化人群搜索算法(SOA)来克服这种现象。
发明内容
针对现有网络安全态势预测方法面对海量数据,在准确性和效率上不理想,无法适应动态多变的网络安全需求的技术问题,本发明提出一种基于SA_SOA_BP神经网络的网络安全态势预测方法,将模拟退火算法(SA)引入人群搜索算法(SOA)并与BP神经网络相结合,提高了网络安全态势预测的准确性和预测的收敛速度。
为了达到上述目的,本发明的技术方案是这样实现的:一种基于SA_SOA_BP神经网络的网络安全态势预测方法,其步骤如下:
步骤一:采集网络安全数据信息为实验数据,对实验数据进行预处理并分成训练数据集和测试数据集;
步骤二:根据实验数据中的输入数量和输出数量利用试凑法确定BP神经网络的网络结构,并利用训练数据集中的训练样本初始化BP神经网络的连接权值和阈值;
步骤三:将模拟退火算法引入人群搜索算法中得到改进的人群搜索算法,初始化改进的人群搜索算法中的种群个体、种群规模、最大迭代次数、空间维数、最小最大隶属度、权重的最小值与最大值;
步骤四:初始化模拟退火算法的初始温度、降温速率、突跳概率;
步骤五:采用改进的人群搜索算法找到最优个体,以训练数据集经过训练产生的预测值和真实值之间的误差的绝对值之和为适应度函数,通过适应度函数计算个体的适应度值,找出全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值,将得到的最优个体对BP神经网络的连接权值和阈值进行优化;
步骤六:根据步骤五得到的BP神经网络优化后的连接权值和阈值,将测试数据集中测试样本代入BP神经网络中进行建模,得到网络安全态势的预测值。
所述步骤一中的实验数据为《网络安全信息与动态周报》所发布的网络安全数据,对实验数据进行了预处理操作,将数据归一化为[-1,1],即:
Figure BDA0002369725350000041
其中,y表示归一化后的值,x表示样本数据,xmin表示样本数据中的最小值,xmax表示样本数据中的最大值;
所述步骤二中以预处理后的实验数据中的感染病毒的主机数量、被篡改的网站总数、被植入后门网站总数、境内网站的仿冒页面数量和新增信息安全漏洞数量为BP神经网络的输入,以态势值为BP神经网络的输出,确定隐含层节点个数:
l<n-1 (2)
Figure BDA0002369725350000042
l=log2n (4)
其中,n为输入层的节点数;l为隐含层的节点数;m为输出层节点数;a为0~10之间的常数;根据试凑法确定隐含层节点数l,确定BP神经网络的网络结构。
所述步骤四中模拟退火算法的初始温度确定为:
Figure BDA0002369725350000043
其中,fitnesszbest表示全局最佳适应度值,α为初始接受概率;
降温速率为:Tt+1=γTt,t≥0,0≤γ≤1 (6)
其中,γ为降温的速率,t为迭代次数;Tt+1和Tt分别表示第t+1和t次迭代的降温速率;
当退火温度确定时,当前最佳适应度值以突跳概率代替以前个体最佳适应度值和全局最佳适应度值,则突跳概率的确定为:
Figure BDA0002369725350000051
df=fitness(i)-fitnesszbest (8)
上式中,fitness(i)为当前个体i的适应度值,fitnesszbest为全局最佳适应度值,df表示当前个体的适应度值与全局最佳适应度值的差值;T表示退火温度;Pi表示个体i被选择的突跳概率;如果差值df<0,则以概率1接受新解;否则以概率exp(-df/T)接受新解。
所述步骤五中改进的人群搜索算法的实现方法为:
步骤S5.1:确定改进的人群搜索算法的搜索方向和搜索步长,根据计算得到的搜索步长和搜索方向进行位置更新,更新个体最优和群体最优以及它们的适应度值;
步骤S5.2:在全局最优适应度值的邻域内选择一个搜寻者,计算当前个体的适应度值与全局最佳适应度值,如果当前新个体适应度值小于以前个体最佳适应度值,则将当前个体位置赋值给当前个体最优的最值,再将当前个体适应度值赋值给个体最佳适应度值;
步骤S5.3:模拟退火算法的降温处理:根据降温速率控制温度;
步骤S5.4:判断是否满足循环的终止条件,即是否超过最大迭代次数和种群规模。如果没有,继续迭代寻优,跳转至步骤5.1。
所述步骤S5.1中确定搜索步长的方法为:
对个体最优适应度值进行降序排列,并给每个个体赋予索引号作为模糊推理的输入,使用高斯线性隶属函数来表示搜索步长的模糊变量的输出,高斯线性隶属函数将第i个个体最佳适应度值线性的映射到最小隶属度和最大隶属度之间,映射公式如下:
Figure BDA0002369725350000052
uij=ui+(1-ui)*rand j=1,2,3,...D (10)
上式中,ui表示第i个个体对应的隶属度;INdexfitnessgbest(i)为第i个个体最佳适应度值的索引号;sizepop为种群规模;Umax和Umin分别表示最大隶属度和最小隶属度;uij表示在j维探索空间中第i个个体所对应的隶属度;D表示探索空间维度;
确定搜索步长:
Figure BDA0002369725350000053
其中,aij表示为第i个个体在j维搜索空间的搜索步长,δij为高斯隶属函数的参数,参数δij为:
δij=H(t)*|zbest-5*rands(1,10)| (12)
Figure BDA0002369725350000061
其中,zbest表示为全局最佳;rands(1,10)表示为[1,10]之间的随机实数;H(t)表示第t次迭代的权重函数值,H(t)受最大迭代次数和当前迭代次数的影响,maxgen表示最大迭代次数。
所述步骤S5.1中搜索方向的确定方法为:
依据个体最佳和全体最佳与当前个体相比较确定搜索方向是利己方向、利他方向还是预动方向:
Figure BDA0002369725350000062
Figure BDA0002369725350000063
Figure BDA0002369725350000064
其中,
Figure BDA0002369725350000065
为利己方向,
Figure BDA0002369725350000066
为利他方向,
Figure BDA0002369725350000067
为预动方向;
Figure BDA0002369725350000068
Figure BDA0002369725350000069
分别为
Figure BDA00023697253500000610
中的最佳位置;
Figure BDA00023697253500000611
为搜寻第i个个体的最佳位置,
Figure BDA00023697253500000612
为第i个个体所在种群的历史最佳位置;
以利己方向、利他方向和预动方向的随机加权几何平均数为标准确定搜索方向,计算公式如下:
Figure BDA00023697253500000613
Figure BDA00023697253500000614
其中,W为惯性权值,
Figure BDA00023697253500000615
Figure BDA00023697253500000616
均为[0,1]内均匀分布的常数;sign()表示符号函数,搜索方向
Figure BDA00023697253500000617
取值为{-1,0,1},
Figure BDA00023697253500000618
表示个体i沿着j维搜索空间的正方向前进;
Figure BDA00023697253500000619
表示个体i沿着j维搜索空间的负方向前进,
Figure BDA00023697253500000620
表示表示个体i在第j维坐标下保持静止;t为当前迭代次数,Wmax为权重最大值,Wmin为权重最小值,maxgen表示最大迭代次数。
所述根据搜索步长和搜索方向进行位置更新的方法为:
计算得到个体探索的搜索方向和搜索步长后,对个体的位置进行更新,位置更新公式为:
Figure BDA0002369725350000071
其中,搜索方向
Figure BDA0002369725350000072
的取值为{-1,0,1},aij(t)表示j维搜索空间的搜索步长,Δxij(t)表示个体i第t次迭代的位置,Δxij(t+1)表示个体i第t+1次迭代的位置;
根据位置更新,找到这个个体,再将这个个体的位置信息代入适应度函数中,计算它的适应度值,再通过与原来个体的最优个体和群体的适应度值进行比较,将最小的那个赋值给新的个体最优和群体最优,完成个体最优和群体最优的更新。
所述步骤S5.2的实现方法为:计算当前个体的适应度值与全局最佳适应度值的差值:
df=fitness(i)-fitnesszbest;
其中,fitness(i)为当前个体i的适应度值,fitnesszbest为全局最佳适应度值;
如果差值df<0,则以概率1接受新的位置,否则以概率exp(-df/T)接受新的位置,然后更新个体最优位置gbest和群体最优位置zbest。
所述步骤六的实现方法为:
步骤S61:根据步骤五得到的连接权值和阈值,并将连接权值和阈值分别赋给BP神经网络,得到训练好的BP神经网络模型;
步骤S62:BP神经网络训练及预测:调用BP神经网络本身自带的训练函数利用测试样本训练BP神经网络模型,对BP神经网络模型进行仿真预测。
所述BP神经网络的连接权值和阈值随机初始化为[-0.5,0.5]区间的随机数;根据训练数据集中训练样本中的输入层节点数n、隐含层节点数l和输出层节点数m,初始化输入层和隐含层、隐含层和输出层神经元之间的连接权值ωsv和ωvk,初始化隐含层阈值av和输出层阈值bk,同时确定学习速率和神经元激励函数;
所述步骤五中对BP神经网络的连接权值和阈值进行优化的方法为:
根据输入向量X,输入层和隐含层间连接权值ωsv以及隐含层阈值av,计算隐含层输出值:
Figure BDA0002369725350000073
式中,l为隐含层节点数,xs表示第s个输入个体的输入值,av表示第v个隐含层节点的阈值;f为激励函数,本发明所选激励函数为:
Figure BDA0002369725350000081
根据隐含层的输出值H和权值ωtk、输出层阈值b,计算BP神经网络预测输出:
Figure BDA0002369725350000082
其中,bk表示第k个输出层节点数的阈值;
根据BP神经网络预测第k个输出层节点的预测输出Ok和期望输出Yk,计算网络预测误差:
ek=Yk-Ok k=1,2,...,m;
更新连接权值:根据误差ek更新网络连接权值ωsv和ωvk
Figure BDA0002369725350000083
更新阈值:根据误差ek更新网络节点阈值av和bk
Figure BDA0002369725350000084
bk=bk+ek k=1,2,...,m。
本发明的有益效果:为了弥补BP神经网络的局限性,本发明将人群搜索算法(SOA)应用到BP神经网络中,但是SOA算法在迭代寻优的过程中易陷入局部最优和出现收敛缓慢等问题,因此又将模拟退火算法(SA)引入到人群搜索算法(SOA)中,提高其全局搜索能力,并将经模拟退火算法优化的人群搜索算法(SA_SOA)与BP神经网络相结合进行网络安全态势预测,提高基于BP神经网络进行网络安全态势预测的效率和准确性。本发明将模拟退火算法引入人群搜索算法中并与BP神经网络相结合,解决了BP神经网络权值和阈值难以确定和SOA算法在搜索后期收敛速度缓慢并易陷入局部最优等问题,增强了人群搜索算法的全局寻优能力,加快了算法的收敛速度,提高了网络安全态势预测的准确性。对比实验结果表明,本发明比SOA优化BP神经网络、GA优化BP神经网络以及PSO算法优化BP神经网络的预测结果更为准确,具有较高的优越性和有效性;且准确性更好,稳定性更强,收敛速度更快。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程图。
图2为本发明样本数据归一化的示意图。
图3为本发明与SOA优化BP神经网络的网络态势预测值对比图。
图4为本发明与不同算法得到的态势预测值对照图。
图5为SOA优化算法中最优个体适应度值变化图。
图6为本发明中最优适应度值变化图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于SA_SOA_BP神经网络的网络安全态势预测方法,其步骤如下:
步骤一:采集网络安全数据信息为实验数据,对实验数据进行预处理并分成训练数据集和测试数据集。
本发明的实验以《网络安全信息与动态周报》2015年第一期至2017年第七期所发布的网络安全数据信息为实验数据,它主要以感染病毒的主机数量、被篡改的网站总数、被植入后门网站总数、境内网站的仿冒页面数量和新增信息安全漏洞数量为评价指标,从上述的五个方面能够比较全面的反应现代网络安全的状况,由此可以作为评价每周的网络安全基本态势的指标。为了实验方便,将五个安全等级转化为数字等级,如表1所示。
表1网络安全态势值转换表
Figure BDA0002369725350000091
根据神经网络的特性,训练样本数量过多,将会增加训练的时间,数量过少将会降低预测的准确度,所以本发明选择101条数据为训练样本,10条为测试样本。为了提高实验的准确度和收敛速度,首先对数据进行了预处理即归一化的操作。数据归一化的方法一般有两种,一种是归一化为[0,1],一种是归一化为[-1,1]。本发明用到了后一种方法即归一化为[-1,1],归一化公式如公式(1),归一化后的结果如图2所示。
Figure BDA0002369725350000092
其中,y表示归一化后的值,xi表示第i个样本数据,xmin表示样本数据中的最小值,xmax表示样本数据中的最大值。
BP神经网络预测前首先要训练网络,此时用训练数据集进行训练,通过训练使网络具有联想记忆和预测能力。训练数据集中的训练样本是用于计算最优适应度值,最优适应度值是以训练样本训练BP神经网络得到的预测值与真实值之间的误差绝对值和作为个体适应度值的。测试数据集中的测试样本是用于对已经具有预测能力的BP神经网络进行测试,产生预测值。
步骤二:根据实验数据中的输入数量和输出数量利用试凑法确定BP神经网络的网络结构,并利用训练数据集中的训练样本初始化BP神经网络的连接权值和阈值。
BP(Back Propagation)神经网络是1986年由Rumellhart和McCelland为首的科学小组提出。由于BP神经网络结构简单,可以调整的参数多,训练的算法多,鲁棒性和自我学习能力强,并且可操作性好,因此它是目前应用最广泛的神经网络预测模型之一。现在大多数的神经网络模型都是以BP神经网络结构为基础。BP神经网络主要是通过反向传播算法反复调整网络的权值和阈值,直到得到最优的权值和阈值,再经过不断地学习和训练,使输出数据与真实值尽量地一致,最后当输出的误差平方和小于指定的误差时,训练完成,保存最优连接权值和阈值。但是它的初始连接权值和阈值难以准确获得并且迭代次数多、运算速度低,不能保证收敛到全局极值点。针对BP神经网络的这些局限性,大多数的研究都是通过智能优化算法寻找最优权值和阈值来弥补BP神经网络的不足,比如采用粒子群算法(PSO)优化BP神经网络,采用遗传算法(GA)优化BP神经网络等。针对BP神经网络的这些局限性,大多数的研究都是通过智能优化算法寻找最优权值和阈值来弥补BP神经网络的不足,比如采用粒子群算法(PSO)优化BP神经网络(见文献[C.Li,X.Liu.An improved PSO-BP neuralnetwork and its application to earthquake prediction[C].Proceedings of theChinese Control and Decision Conference(CCDC),Yinchuan:IEEE,2016,3434-3438.]),采用遗传算法(GA)优化BP神经网络(见文献[S.Ding,C.Su.Application ofoptimizing BP neural networks algorithm based on Genetic Algorithm[C].Proceedings of the 29th Chinese Control Conference,Beijing:IEEE,2010,2425-2428])等。
由步骤一所知网络安全态势共有五大评价指标,最后要化为一个安全等级,所以此实验有五个输入参数,一个输出参数,再根据公式(2)~(4)确定隐含层节点个数。
l<n-1 (2)
Figure BDA0002369725350000101
l=log2n (4)
其中,n为输入层的节点数;l为隐含层的节点数;m为输出层节点数;a为0~10之间的常数。根据试凑法确定本发明实验的隐含层节点数为8,最终确定本实验的网络结构为5-8-1。
以《网络安全信息与动态周报》所发布的网络安全数据信息,感染病毒的主机数量、被篡改的网站总数、被植入后门网站总数、境内网站的仿冒页面数量和新增信息安全漏洞数量为输入,以态势值为输出,再根据试凑法确定隐含层数量,以此确定BP神经网络的网络结构。
BP神经网络的权值和阈值一般通过随机初始化为[-0.5,0.5]区间的随机数。根据系统输入输出序列(X,Y)确定网络结构的输入层节点数n、隐含层节点数l、输出层节点数m。然后初始化输入层、隐含层和输出层神经元之间的连接权值ωsv和ωvk,初始化隐含层阈值a和输出层阈值b,同时确定学习速率和神经元激励函数。初始化是根据训练样本数据中的个体x的输入层节点数、隐含层节点数和输出层节点数确定的。
隐含层输出计算。根据输入向量X,输入层和隐含层间连接权值ωsv以及隐含层阈值av,计算隐含层输出值Hv
Figure BDA0002369725350000111
式中,l为隐含层节点数,xs表示第s个输入个体的输入值,av表示第v个隐含层节点的阈值;f为激励函数,本发明所选激励函数为:
Figure BDA0002369725350000112
计算输出层的输出:根据隐含层的输出值H和权值ωvk、输出层阈值b,计算BP神经网络预测输出:
Figure BDA0002369725350000113
其中,bk为第k个输出层节点数的阈值。
步骤三:将模拟退火算法引入人群搜索算法中得到改进的人群搜索算法,初始化改进的人群搜索算法中的种群个体、种群规模、最大迭代次数、空间维数、最小最大隶属度、权重的最小值与最大值。
具体实例中,一般是直接赋值一个数值。种群规模:sizepop=30,最大迭代次数:maxgen=100;空间维度:V=57;最大隶属度:Umax=0.9500;最小隶属度Umin=0.0111;最大权重值:Wmax=0.9;最小权重值:Wmin=0.1。
步骤四:初始化模拟退火算法的初始温度、降温速率、突跳概率。
模拟退火算法(Simulated Annealing,简称SA)最早是由Metropolis在1953年提出,并由Kirkpatrick等成功引入组合优化领域。SA算法主要是模拟高温金属降温的热力学过程,通过加温、等温和冷却这三个过程,将系统的能量看成优化问题的目标函数,其能量随着温度的降低也随之下降,当温度缓缓降温并趋于零时,此时既是能量最低状态也是得到相对全局最优解的时刻。SA算法具有较强的鲁棒性、隐含并行性、广泛的适应性,以及全局搜索能力,它主要利用Metropolis算法并适当控制温度的下降过程,以一定的概率接受了劣质解,跳出陷入局部极值的陷阱,提高了算法的全局收敛性。
人群搜索算法(SOA)具有收敛速度快和精度高等优点,但同时也易陷入局部最优,即出现“早熟”现象,原因是人群搜索算法(SOA)在搜索后期,当搜索步长趋于零时,仍不能搜索到全局最优解。为了解决这一问题,本发明将模拟退火算法(SA)引入到人群搜索算法(SOA)中,SA算法在搜索寻优过程中会以一定的概率接受劣质解,即SA算法既能接受优解又能接受恶解,从此避免了SOA算法陷入局部最优。将模拟退火算法引入人群搜索算法中,解决人群搜索算法在搜索后期易陷入局部最优和收敛缓慢的问题。
1)初始化温度
在模拟退火算法中,初始化温度的确定很关键,它将会直接影响算法的初始性能,若确定不好,最终可能导致无用的搜索和增加搜索时间。初始温度确定如下:
Figure BDA0002369725350000121
上式中,fitnesszbest表示全局最佳适应度值。首先通过人群搜索算法寻找到最优个体,再通过适应度函数计算该个体的适应度值,将当前个体的适应度值与原来全局最佳适应度值进行比较,全局最佳适应度值在开始会赋予初始值。α为初始接受概率,一般取值为[0.2,0.5]。初始化温度:T=-fitnesszbest/log(0.2)。
2)退火速率的控制
Tk+1=γTk,k≥0,0≤γ≤1 (6)
上式中,γ为降温的速率,k为迭代次数。Tk+1和Tk分别表示第k+1和k次迭代的退火速率。
3)突跳概率的确定
当退火温度确定时,当前最佳适应度值就以突跳概率代替以前个体最佳适应度值和全局最佳适应度值,则突跳概率的确定公式如下:
Figure BDA0002369725350000131
df=fitness(i)-fitnesszbest (8)
上式中,fitness(i)为当前个体i的适应度值,fitnesszbest为全局最佳适应度值,df表示当前个体的适应度值与全局最佳适应度值的差值;T表示退火温度;Pi表示每个个体被选择的概率。如果差值df<0,则以概率1接受新解;否则以概率exp(-df/T)接受新解。从上式可以看出,在一定程度上模拟退火算法可以帮助人群搜索算法避免陷入局部最优值,最后得到最优解。根据种群规模sizepop,初始化突跳概率:Tfit=zeros(sizepop,1)。
步骤五:采用改进的人群搜索算法计算个体的适应度值,找出全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值,以训练数据集经过训练产生的预测值和真实值之间的误差的绝对值之和为适应度函数对BP神经网络的连接权值和阈值进行优化。
本发明最重要的是适应度函数的设计,在此实验里是以用训练数据训练BP神经网络得到的预测值与真实值之间的误差绝对值和作为个体适应度值。
适应度函数是一个函数,其中涉及了一个误差计算公式。根据网络预测第k个输出层节点数的输出Ok和期望输出Yk,计算网络预测误差ek
ek=Yk-Ok k=1,2,...,m。
首先通过随机初始化得到初始的全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值,再通过改进的人群搜索算法找到的个体,计算它的全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值,再与原来的进行比较,进行更新它们的值。
初始化种群个体:pop(i,:)=5*rands(1,numsum);
在计算全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值时都会用到pop(i,:)函数,numsum为编码长度,rands(1,numsum)表示一行numsum列的(0,1)之间的随机数,再扩大5倍,赋值给pop(i,:)。
步骤六:根据步骤五优化后的BP神经网络的连接权值和阈值,将测试数据集中测试样本代入BP神经网络中进行建模,得到网络安全态势的预测值。
步骤S6.1:确定改进的人群搜索算法的搜索方向、搜索步长以及高斯函数的参数δij,根据计算得到的搜索步长和方向进行位置更新,更新个体最优和群体最优以及它们的适应度值。
确定搜索策略即搜索方向的确定,根据公式(17)计算可得;确定高斯函数的参数δij,根据公式(12)~(13)计算可得;确定搜索步长的大小,根据公式(11)计算可得;根据计算得到的步长和方向按公式(19)更新位置,更新个体最优和群体最优以及它们的适应度值。
人群搜索算法(Seeker Optimization Algorithm,简称SOA)是一种较新的启发式随机搜索算法。它是对人的随机搜索行为进行分析,依靠人类的社会经验,同时结合进化的思想,以搜索最优位置为核心,通过利己、利他、预动和不确定这四种搜索策略行为对其进行建模,确定人群搜索的方向和步长,然后不断地更新位置,获得最优解。SOA算法的优点在于它简单、概念明确、清晰、易于理解、收敛速度快、收敛精度高。其计算步骤主要包括:
(1)搜索步长的确定
在确定步长时,需要对个体最优适应度值进行降序排列,并给每个个体赋予索引号作为模糊推理的输入,本发明是使用高斯线性隶属函数来表示搜索步长的模糊变量的输出,高斯线性隶属函数可以很好的将第i个个体最佳适应度值线性的映射到最小和最大隶属度之间,映射公式如下:
Figure BDA0002369725350000141
uij=ui+(1-ui)*rand j=1,2,3,...D (10)
上式中,ui表示第i个个体对应的隶属度;Indexfitnessgbest(i)为第i个个体最佳适应度值的索引号;sizepop=30为种群规模;Umax=0.95和Umin=0.0111分别表示最大和最小函数隶属度;uij表示为在j维探索空间中第i个个体所对应的隶属度;D表示探索空间维度。根据公式(9)和(10)得到最佳适应度值个体对应的隶属度,再根据公式(11)确定步长:
Figure BDA0002369725350000142
上式中,aij表示为第i个个体在j维搜索空间的搜索步长,δij为高斯隶属函数的参数,其值由下列公式确定:
δij=H(t)*|zbest-5*rands(1,10)| (12)
Figure BDA0002369725350000143
其中,zbest表示为全局最佳;rands(1,10)表示为[1,10]之间的随机实数;H(t)表示第t次迭代的权重函数值,在迭代的过程中是不断的变化,它受最大迭代次数和当前迭代次数的影响,其中,maxgen=100。如果当前新个体适应度值<全局最佳适应度值,全局最佳zbest,全局最佳zbest是通过pop(i:)函数得到,此函数就是初始化种群的一个函数。pop(i,:)=5*rands(1,numsum)。
(2)搜索方向的确定
在确定搜索方向时,依据个体最佳和全体最佳与当前个体相比较确定搜索方向是利己、利他还是预动方向。
Figure BDA0002369725350000151
Figure BDA0002369725350000152
Figure BDA0002369725350000153
式中,
Figure BDA0002369725350000154
为利己方向、
Figure BDA0002369725350000155
为利他方向,
Figure BDA0002369725350000156
为预动方向;
Figure BDA0002369725350000157
Figure BDA0002369725350000158
分别为
Figure BDA0002369725350000159
中的最佳位置;
Figure BDA00023697253500001510
为第i个搜寻个体的最佳位置,
Figure BDA00023697253500001511
为第i个搜寻个体所在种群的历史最佳位置;sign()为符号函数;
Figure BDA00023697253500001512
为已知区间[0,1]内均匀随机选择的实数。
本发明是以三个方向的随机加权几何平均数为标准确定搜索方向,计算公式如下:
Figure BDA00023697253500001513
Figure BDA00023697253500001514
在上式中,W为惯性权值,
Figure BDA00023697253500001515
Figure BDA00023697253500001516
均为[0,1]内均匀分布的常数。
Figure BDA00023697253500001517
和sign()表示符号函数,所以搜索方向
Figure BDA00023697253500001518
取值为{-1,0,1},
Figure BDA00023697253500001519
表示个体i沿着j维坐标的正方向前进;
Figure BDA00023697253500001520
表示个体i沿着j维坐标的负方向前进,
Figure BDA00023697253500001521
表示表示个体i在第j维坐标下保持静止。t为当前迭代次数,取值范围为[2,maxgen]之间的整数,Wmax=0.9为权重最大值,Wmin=0.1为权重最小值。
(3)位置更新
计算得到个体探索的方向和步长之后,要对个体的位置进行更新。位置更新公式如下:
Figure BDA00023697253500001522
其中,搜索方向
Figure BDA00023697253500001523
的取值为{-1,0,1}。aij(t)表示j维搜索空间的搜索步长。Δxij(t)表示个体i第t次迭代的位置。Δxij(t+1)表示个体i第t+1次迭代的位置。
位置更新就是更新pop(i,:)的值的。新的位置等于旧的位置加上方向乘以步长,更新位置:pop(i,:)=pop(i,:)+Di(i,:).*Buchang(i,:),其中,Di(i,:)表示搜索方向,Buchang(i,:)表示搜索步长。
根据位置更新,找到这个个体,再将这个个体的位置信息代入适应度函数fitness(i)=fun(pop(i,:),inputnum,hiddennum,outputnum,net,inputn,outputn)中,计算它的适应度值,再通过与原来个体的最优的个体和群体的适应度值进行比较,将最小的那个赋值给新的个体最优和群体最优,完成个体最优和群体最优的更新。
步骤S6.2:根据Metropolis准则,在全局最优适应度值的邻域内选择一个搜寻者,按公式(8)计算当前个体的适应度值与全局最佳适应度值的差值df。如果差值df<0,则以概率1接受新的位置,否则以概率exp(-df/T)接受新的位置,然后更新个体最优位置gbest和群体最优位置zbest。
Metropolis准则就是公式(8),如果当前新个体适应度值小于以前个体最佳适应度值,则将当前个体位置赋值给当前个体最优的最值,再将当前个体适应度值赋值给个体最佳适应度值。
步骤S6.3:模拟退火算法的降温处理:根据公式(6)降温速率控制温度。
步骤S6.4:判断是否满足循环的终止条件,即是否超过最大迭代次数和种群规模。如果没有,继续迭代寻优,跳转至步骤S6.1;否则进入步骤S6.5。
测试样本就是要代入经过测试样本训练好的BP神经网络进行预测的,得到预测值的。traingdm函数是BP神经网络中的训练函数,BP神经网络本身自带的函数。误差就是预测值减去真实值,更新权值和阈值是根据预测误差更新的。
权值更新:根据误差ek更新网络连接权值ωsv和ωvk
Figure BDA0002369725350000161
更新阈值:根据误差ek更新网络节点阈值aj和bk
Figure BDA0002369725350000162
bk=bk+ek k=1,2,...,m
验证本发明应用SA_SOA算法优化BP神经网络进行预测的精准性和优越性,采用了均方误差(MSE)、平均相对误差(MAPE)和均方根误差(RMSE)三个性能指标来衡量真实值与预测值之间的差异。
均方误差指标:
Figure BDA0002369725350000171
平均相对误差指标:
Figure BDA0002369725350000172
均方根误差指标:
Figure BDA0002369725350000173
上式中,xt
Figure BDA0002369725350000174
分别表示真实值和预测值,t表示测试样本序号,n=10表示共有十个测试样本数据。
采用SOA算法直接优化BP神经网络进行态势预测,在本发明中采用SA_SOA算法优化BP神经网络进行安全态势预测,图3给出了两种算法实验结果的对比。从图3可以看出,本发明SA_SOA算法优化BP神经网络得到的预测值相比SOA优化BP神经网络得到的预测值更接近真实值,与真实值之间的误差更小,并且从整体上来看本发明相对更稳定,曲线波动更小。
图4给出了基于粒子群算法(PSO)、遗传算法(GA)、SOA和本发明SA_SOA算法优化BP神经网络进行预测的实验结果对比图,展示了各个优化算法的预测值与真实值之间的差异以及它们的态势预测趋势变化情况。从图4可以看到,相比其它智能优化算法,本发明基于SA_SOA算法优化BP神经网络进行网络安全态势预测得到的预测值最接近真实值,其准确性更高、稳定性更好。
表2给出了PSO、GA、SOA及本发明SA_SOA优化BP神经网络进行网络安全态势预测得到的十个测试值以及与真实值之间的绝对误差。从表2可以微观地说明基于模拟退火算法改进的SOA_BP算法的误差更小、准确性更高。
表2预测数据分析表
Figure BDA0002369725350000175
Figure BDA0002369725350000181
表3分别计算了PSO、GA、SOA、本发明SA_SOA优化BP神经网络进行网络安全态势预测得到的预测值与真实值之间的均方误差、平均相对误差和均方根误差。从表3可以宏观地看出本发明得到的预测值与真实值之间的均方误差、平均相对误差和均方根误差三个衡量指标都是最小,这进一步表明了本发明具有更高的精准性和有效性。
表3精准度对照表
Figure BDA0002369725350000182
算法收敛性分析:图5和图6分别给出了SOA优化BP神经网络算法和本发明SA_SOA优化BP神经网络算法在迭代寻优过程中最优个体适应度值的变化趋势。由于在实验中是以训练数据预测误差绝对值和作为个体适应度值,个体适应度值越小,说明该个体越优。因此个体最优适应度变化情况既可以反应算法的收敛情况,又可以反应训练数据集的训练过程。
从图5和图6中的最优个体适应度值的变化趋势可以看出SA_SOA优化BP神经网络进行预测的效果要比SOA优化BP神经网络的预测效果更好。特别是在搜索后期,SA_SOA优化BP神经网络进行网络安全态势预测的收敛速度相对较快,当在第80次迭代时,SA_SOA算法基本趋于最优解,而SOA算法在将近第100次迭代时才趋于最优解。可见,不管是在预测的精度方面,还是在收敛速度方面,SA_SOA优化BP神经网络进行网络安全态势预测有着相对较高的收敛精度和速度。
本发明利用人群搜索算法特有的利己、利他、预动和不确定推理四大行为特征确定搜索策略,找到最佳适应度个体,获取最优权值和阈值,然后再对BP神经网络的随机初始阈值和权值进行赋值,经过神经网络训练后得到预测值。针对人群搜索算法在搜索后期易陷入局部最优和收敛缓慢等问题,又将模拟退火算法引入人群搜索算法,根据Metropolis准则以一定的概率接受恶解,避免了算法陷入局部最优的陷阱,提高了该算法的全局搜索能力。与其它基于改进BP神经网络的预测算法进行对比的实验表明,本发明准确性更好,稳定性更强,收敛速度更快。
本发明一方面证明人群搜索算法优化BP神经网络在网络安全态势预测领域的可行性和有效性,另一方面提高了网络安全态势预测的准确性和收敛性。本发明使用人群搜索算法去优化BP神经网络的权值和阈值,提高了BP神经网络的性能,并将其应用到网络安全态势预测领域,同时为了克服SOA算法存在搜索后期易陷入局部最优即“早熟”现象及收敛缓慢的问题和提高预测的精准度和收敛速度,又将模拟退火算法引入人群搜索算法中,较好地克服了人群搜索算法的局限性,并进一步提高了网络安全态势预测的准确性和收敛速度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,其步骤如下:
步骤一:采集网络安全数据信息为实验数据,对实验数据进行预处理并分成训练数据集和测试数据集;
步骤二:根据实验数据中的输入数量和输出数量利用试凑法确定BP神经网络的网络结构,并利用训练数据集中的训练样本初始化BP神经网络的连接权值和阈值;
步骤三:将模拟退火算法引入人群搜索算法中得到改进的人群搜索算法,初始化改进的人群搜索算法中的种群个体、种群规模、最大迭代次数、空间维数、最小最大隶属度、权重的最小值与最大值;
步骤四:初始化模拟退火算法的初始温度、降温速率、突跳概率;
步骤五:采用改进的人群搜索算法找到最优个体,以训练数据集经过训练产生的预测值和真实值之间的误差的绝对值之和为适应度函数,通过适应度函数计算个体的适应度值,找出全局最佳、个体最佳、个体最佳适应度值和全局最佳适应度值,将得到的最优个体对BP神经网络的连接权值和阈值进行优化;
步骤六:根据步骤五得到的BP神经网络优化后的连接权值和阈值,将测试数据集中测试样本代入BP神经网络中进行建模,得到网络安全态势的预测值。
2.根据权利要求1所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤一中的实验数据为《网络安全信息与动态周报》所发布的网络安全数据,对实验数据进行了预处理操作,将数据归一化为[-1,1],即:
Figure FDA0002369725340000011
其中,y表示归一化后的值,x表示样本数据,xmin表示样本数据中的最小值,xmax表示样本数据中的最大值;
所述步骤二中以预处理后的实验数据中的感染病毒的主机数量、被篡改的网站总数、被植入后门网站总数、境内网站的仿冒页面数量和新增信息安全漏洞数量为BP神经网络的输入,以态势值为BP神经网络的输出,确定隐含层节点个数:
l<n-1 (2)
Figure FDA0002369725340000012
l=log2n (4)
其中,n为输入层的节点数;l为隐含层的节点数;m为输出层节点数;a为0~10之间的常数;根据试凑法确定隐含层节点数l,确定BP神经网络的网络结构。
3.根据权利要求1或2所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤四中模拟退火算法的初始温度确定为:
Figure FDA0002369725340000021
其中,fitnesszbest表示全局最佳适应度值,α为初始接受概率;
降温速率为:Tt+1=γTt,t≥0,0≤γ≤1 (6)
其中,γ为降温的速率,t为迭代次数;Tt+1和Tt分别表示第t+1和t次迭代的降温速率;
当退火温度确定时,当前最佳适应度值以突跳概率代替以前个体最佳适应度值和全局最佳适应度值,则突跳概率的确定为:
Figure FDA0002369725340000022
df=fitness(i)-fitnesszbest (8)
上式中,fitness(i)为当前个体i的适应度值,fitnesszbest为全局最佳适应度值,df表示当前个体的适应度值与全局最佳适应度值的差值;T表示退火温度;Pi表示个体i被选择的突跳概率;如果差值df<0,则以概率1接受新解;否则以概率exp(-df/T)接受新解。
4.根据权利要求3所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤五中改进的人群搜索算法的实现方法为:
步骤S5.1:确定改进的人群搜索算法的搜索方向和搜索步长,根据计算得到的搜索步长和搜索方向进行位置更新,更新个体最优和群体最优以及它们的适应度值;
步骤S5.2:在全局最优适应度值的邻域内选择一个搜寻者,计算当前个体的适应度值与全局最佳适应度值,如果当前新个体适应度值小于以前个体最佳适应度值,则将当前个体位置赋值给当前个体最优的最值,再将当前个体适应度值赋值给个体最佳适应度值;
步骤S5.3:模拟退火算法的降温处理:根据降温速率控制温度;
步骤S5.4:判断是否满足循环的终止条件,即是否超过最大迭代次数和种群规模。如果没有,继续迭代寻优,跳转至步骤5.1。
5.根据权利要求4所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤S5.1中确定搜索步长的方法为:
对个体最优适应度值进行降序排列,并给每个个体赋予索引号作为模糊推理的输入,使用高斯线性隶属函数来表示搜索步长的模糊变量的输出,高斯线性隶属函数将第i个个体最佳适应度值线性的映射到最小隶属度和最大隶属度之间,映射公式如下:
Figure FDA0002369725340000023
uij=ui+(1-ui)*rand j=1,2,3,...D (10)
上式中,ui表示第i个个体对应的隶属度;Indexfitnessgbest(i)为第i个个体最佳适应度值的索引号;sizepop为种群规模;Umax和Umin分别表示最大隶属度和最小隶属度;uij表示在j维探索空间中第i个个体所对应的隶属度;D表示探索空间维度;
确定搜索步长:
Figure FDA0002369725340000031
其中,aij表示为第i个个体在j维搜索空间的搜索步长,δij为高斯隶属函数的参数,参数δij为:
δij=H(t)*|zbest-5*rands(1,10)| (12)
Figure FDA0002369725340000032
其中,zbest表示为全局最佳;rands(1,10)表示为[1,10]之间的随机实数;H(t)表示第t次迭代的权重函数值,H(t)受最大迭代次数和当前迭代次数的影响,maxgen表示最大迭代次数。
6.根据权利要求4或5所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤S5.1中搜索方向的确定方法为:
依据个体最佳和全体最佳与当前个体相比较确定搜索方向是利己方向、利他方向还是预动方向:
Figure FDA0002369725340000033
Figure FDA0002369725340000034
Figure FDA0002369725340000035
其中,
Figure FDA0002369725340000036
为利己方向,
Figure FDA0002369725340000037
为利他方向,
Figure FDA0002369725340000038
为预动方向;
Figure FDA0002369725340000039
Figure FDA00023697253400000310
分别为
Figure FDA00023697253400000311
中的最佳位置;
Figure FDA00023697253400000312
为搜寻第i个个体的最佳位置,
Figure FDA00023697253400000313
为第i个个体所在种群的历史最佳位置;
以利己方向、利他方向和预动方向的随机加权几何平均数为标准确定搜索方向,计算公式如下:
Figure FDA00023697253400000314
Figure FDA0002369725340000041
其中,W为惯性权值,
Figure FDA0002369725340000042
Figure FDA0002369725340000043
均为[0,1]内均匀分布的常数;sign()表示符号函数,搜索方向
Figure FDA0002369725340000044
取值为{-1,0,1},
Figure FDA0002369725340000045
表示个体i沿着j维搜索空间的正方向前进;
Figure FDA0002369725340000046
表示个体i沿着j维搜索空间的负方向前进,
Figure FDA0002369725340000047
表示表示个体i在第j维坐标下保持静止;t为当前迭代次数,Wmax为权重最大值,Wmin为权重最小值,maxgen表示最大迭代次数。
7.根据权利要求6所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述根据搜索步长和搜索方向进行位置更新的方法为:
计算得到个体探索的搜索方向和搜索步长后,对个体的位置进行更新,位置更新公式为:
Figure FDA0002369725340000048
其中,搜索方向
Figure FDA0002369725340000049
的取值为{-1,0,1},aij(t)表示j维搜索空间的搜索步长,Δxij(t)表示个体i第t次迭代的位置,Δxij(t+1)表示个体i第t+1次迭代的位置;
根据位置更新,找到这个个体,再将这个个体的位置信息代入适应度函数中,计算它的适应度值,再通过与原来个体的最优个体和群体的适应度值进行比较,将最小的那个赋值给新的个体最优和群体最优,完成个体最优和群体最优的更新。
8.根据权利要求4或7所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤S5.2的实现方法为:计算当前个体的适应度值与全局最佳适应度值的差值:
df=fitness(i)-fitnesszbest;
其中,fitness(i)为当前个体i的适应度值,fitnesszbest为全局最佳适应度值;
如果差值df<0,则以概率1接受新的位置,否则以概率exp(-df/T)接受新的位置,然后更新个体最优位置gbest和群体最优位置zbest。
9.根据权利要求8所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述步骤六的实现方法为:
步骤S61:根据步骤五得到的连接权值和阈值,并将连接权值和阈值分别赋给BP神经网络,得到训练好的BP神经网络模型;
步骤S62:BP神经网络训练及预测:调用BP神经网络本身自带的训练函数利用测试样本训练BP神经网络模型,对BP神经网络模型进行仿真预测。
10.根据权利要求1或9所述的基于SA_SOA_BP神经网络的网络安全态势预测方法,其特征在于,所述BP神经网络的连接权值和阈值随机初始化为[-0.5,0.5]区间的随机数;根据训练数据集中训练样本中的输入层节点数n、隐含层节点数l和输出层节点数m,初始化输入层和隐含层、隐含层和输出层神经元之间的连接权值ωsv和ωvk,初始化隐含层阈值av和输出层阈值bk,同时确定学习速率和神经元激励函数;
所述步骤五中对BP神经网络的连接权值和阈值进行优化的方法为:
根据输入向量X,输入层和隐含层间连接权值ωsv以及隐含层阈值av,计算隐含层输出值:
Figure FDA0002369725340000051
式中,l为隐含层节点数,xs表示第s个输入个体的输入值,av表示第v个隐含层节点的阈值;f为激励函数,本发明所选激励函数为:
Figure FDA0002369725340000052
根据隐含层的输出值H和权值ωtk、输出层阈值b,计算BP神经网络预测输出:
Figure FDA0002369725340000053
其中,bk表示第k个输出层节点数的阈值;
根据BP神经网络预测第k个输出层节点的预测输出Ok和期望输出Yk,计算网络预测误差:
ek=Yk-Ok k=1,2,...,m;
更新连接权值:根据误差ek更新网络连接权值ωsv和ωvk
Figure FDA0002369725340000054
更新阈值:根据误差ek更新网络节点阈值av和bk
Figure FDA0002369725340000055
bk=bk+ek k=1,2,...,m。
CN202010046841.1A 2020-01-16 2020-01-16 基于sa_soa_bp神经网络的网络安全态势预测方法 Active CN111262858B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010046841.1A CN111262858B (zh) 2020-01-16 2020-01-16 基于sa_soa_bp神经网络的网络安全态势预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010046841.1A CN111262858B (zh) 2020-01-16 2020-01-16 基于sa_soa_bp神经网络的网络安全态势预测方法

Publications (2)

Publication Number Publication Date
CN111262858A true CN111262858A (zh) 2020-06-09
CN111262858B CN111262858B (zh) 2020-12-25

Family

ID=70950672

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010046841.1A Active CN111262858B (zh) 2020-01-16 2020-01-16 基于sa_soa_bp神经网络的网络安全态势预测方法

Country Status (1)

Country Link
CN (1) CN111262858B (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111866028A (zh) * 2020-08-10 2020-10-30 武汉思普崚技术有限公司 一种攻击面可视化的方法及系统
CN111988306A (zh) * 2020-08-17 2020-11-24 北京邮电大学 基于变分贝叶斯的网内DDoS攻击流量检测方法和系统
CN112289392A (zh) * 2020-10-28 2021-01-29 广西贺州市桂东电子科技有限责任公司 一种铝电解电容器用阳极铝箔性能预测方法
CN112561136A (zh) * 2020-11-30 2021-03-26 郑州轻工业大学 一种基于模糊时间聚类的配电网动态无功优化方法
CN112668697A (zh) * 2020-12-25 2021-04-16 西安电子科技大学 一种无人机飞控控制参数的模糊测试方法及系统
CN112766343A (zh) * 2021-01-12 2021-05-07 郑州轻工业大学 一种基于改进woa-svm的网络安全态势评估方法
CN113359641A (zh) * 2021-06-25 2021-09-07 广西民族大学 一种化工动态优化方法、系统、存储介质、计算机、终端
CN113777000A (zh) * 2021-10-09 2021-12-10 山东科技大学 一种基于神经网络的粉尘浓度检测方法
CN113852607A (zh) * 2021-09-01 2021-12-28 中国铁道科学研究院集团有限公司 评估网络安全性能的方法及装置
CN113965358A (zh) * 2021-09-28 2022-01-21 石河子大学 综合能源系统网络安全检测方法及系统
CN114329456A (zh) * 2020-09-27 2022-04-12 中国移动通信集团河南有限公司 网页后门检测方法、装置及设备
CN114697200A (zh) * 2022-03-30 2022-07-01 合肥工业大学 一种5g配网分布式保护系统的保护装置配比优化方法
CN115270506A (zh) * 2022-08-16 2022-11-01 青岛理工大学 一种人群沿楼梯上行的通行时间预测方法及系统
CN115864525A (zh) * 2022-11-21 2023-03-28 深圳市鸿嘉利新能源有限公司 微网电流控制方法及微网电流控制系统
CN116155770A (zh) * 2023-04-24 2023-05-23 深圳市康索特软件有限公司 多源数据融合下的物联网安全态势评估方法、装置及设备
CN116822328A (zh) * 2023-05-11 2023-09-29 中南大学 一种矿山采空区地表沉陷预计参数的确定方法
CN117114144A (zh) * 2023-10-24 2023-11-24 青岛农业大学 基于人工智能的水稻耐盐碱性能预测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2012201529A1 (en) * 2011-03-15 2012-10-04 Accenture Global Services Limited MVT optimization of business process modeling and management
CN103581188A (zh) * 2013-11-05 2014-02-12 中国科学院计算技术研究所 一种网络安全态势预测方法及系统
CN105278332A (zh) * 2015-10-23 2016-01-27 盐城工业职业技术学院 一种基于soa的pmlsm进给系统pid参数优化方法
CN107222333A (zh) * 2017-05-11 2017-09-29 中国民航大学 一种基于bp神经网络的网络节点安全态势评估方法
CN109547431A (zh) * 2018-11-19 2019-03-29 国网河南省电力公司信息通信公司 一种基于cs和改进bp神经网络的网络安全态势评估方法
CN110380897A (zh) * 2019-07-04 2019-10-25 湖北央中巨石信息技术有限公司 基于改进bp神经网络的网络安全态势感知模型和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108400895B (zh) * 2018-03-19 2021-04-13 西北大学 一种基于遗传算法改进的bp神经网络安全态势评估算法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2012201529A1 (en) * 2011-03-15 2012-10-04 Accenture Global Services Limited MVT optimization of business process modeling and management
CN103581188A (zh) * 2013-11-05 2014-02-12 中国科学院计算技术研究所 一种网络安全态势预测方法及系统
CN105278332A (zh) * 2015-10-23 2016-01-27 盐城工业职业技术学院 一种基于soa的pmlsm进给系统pid参数优化方法
CN107222333A (zh) * 2017-05-11 2017-09-29 中国民航大学 一种基于bp神经网络的网络节点安全态势评估方法
CN109547431A (zh) * 2018-11-19 2019-03-29 国网河南省电力公司信息通信公司 一种基于cs和改进bp神经网络的网络安全态势评估方法
CN110380897A (zh) * 2019-07-04 2019-10-25 湖北央中巨石信息技术有限公司 基于改进bp神经网络的网络安全态势感知模型和方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周显春等: "基于BP神经网络的网络安全态势预测研究", 《现代电子技术》 *
张连强: "基于改进人群搜索算法的PID参数优化", 《计算机工程与设计》 *

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111866028A (zh) * 2020-08-10 2020-10-30 武汉思普崚技术有限公司 一种攻击面可视化的方法及系统
CN111866028B (zh) * 2020-08-10 2021-11-26 武汉思普崚技术有限公司 一种攻击面可视化的方法、系统及存储介质
CN111988306A (zh) * 2020-08-17 2020-11-24 北京邮电大学 基于变分贝叶斯的网内DDoS攻击流量检测方法和系统
CN111988306B (zh) * 2020-08-17 2021-08-24 北京邮电大学 基于变分贝叶斯的网内DDoS攻击流量检测方法和系统
CN114329456A (zh) * 2020-09-27 2022-04-12 中国移动通信集团河南有限公司 网页后门检测方法、装置及设备
CN112289392A (zh) * 2020-10-28 2021-01-29 广西贺州市桂东电子科技有限责任公司 一种铝电解电容器用阳极铝箔性能预测方法
CN112561136A (zh) * 2020-11-30 2021-03-26 郑州轻工业大学 一种基于模糊时间聚类的配电网动态无功优化方法
CN112668697A (zh) * 2020-12-25 2021-04-16 西安电子科技大学 一种无人机飞控控制参数的模糊测试方法及系统
CN112668697B (zh) * 2020-12-25 2024-04-09 西安电子科技大学 一种无人机飞控控制参数的模糊测试方法及系统
CN112766343B (zh) * 2021-01-12 2022-03-11 郑州轻工业大学 一种基于改进woa-svm的网络安全态势评估方法
CN112766343A (zh) * 2021-01-12 2021-05-07 郑州轻工业大学 一种基于改进woa-svm的网络安全态势评估方法
CN113359641A (zh) * 2021-06-25 2021-09-07 广西民族大学 一种化工动态优化方法、系统、存储介质、计算机、终端
CN113852607B (zh) * 2021-09-01 2023-06-13 中国铁道科学研究院集团有限公司 评估网络安全性能的方法及装置
CN113852607A (zh) * 2021-09-01 2021-12-28 中国铁道科学研究院集团有限公司 评估网络安全性能的方法及装置
CN113965358A (zh) * 2021-09-28 2022-01-21 石河子大学 综合能源系统网络安全检测方法及系统
CN113777000A (zh) * 2021-10-09 2021-12-10 山东科技大学 一种基于神经网络的粉尘浓度检测方法
CN113777000B (zh) * 2021-10-09 2024-04-12 山东科技大学 一种基于神经网络的粉尘浓度检测方法
CN114697200A (zh) * 2022-03-30 2022-07-01 合肥工业大学 一种5g配网分布式保护系统的保护装置配比优化方法
CN114697200B (zh) * 2022-03-30 2023-06-30 合肥工业大学 一种5g配网分布式保护系统的保护装置配比优化方法
CN115270506B (zh) * 2022-08-16 2024-02-23 青岛理工大学 一种人群沿楼梯上行的通行时间预测方法及系统
CN115270506A (zh) * 2022-08-16 2022-11-01 青岛理工大学 一种人群沿楼梯上行的通行时间预测方法及系统
CN115864525B (zh) * 2022-11-21 2023-10-03 深圳市鸿嘉利新能源有限公司 微网电流控制方法及微网电流控制系统
CN115864525A (zh) * 2022-11-21 2023-03-28 深圳市鸿嘉利新能源有限公司 微网电流控制方法及微网电流控制系统
CN116155770A (zh) * 2023-04-24 2023-05-23 深圳市康索特软件有限公司 多源数据融合下的物联网安全态势评估方法、装置及设备
CN116822328A (zh) * 2023-05-11 2023-09-29 中南大学 一种矿山采空区地表沉陷预计参数的确定方法
CN117114144A (zh) * 2023-10-24 2023-11-24 青岛农业大学 基于人工智能的水稻耐盐碱性能预测方法及系统
CN117114144B (zh) * 2023-10-24 2024-01-26 青岛农业大学 基于人工智能的水稻耐盐碱性能预测方法及系统

Also Published As

Publication number Publication date
CN111262858B (zh) 2020-12-25

Similar Documents

Publication Publication Date Title
CN111262858B (zh) 基于sa_soa_bp神经网络的网络安全态势预测方法
CN112581263A (zh) 一种基于灰狼算法优化广义回归神经网络的信用评估方法
CN111063194A (zh) 一种交通流预测方法
CN112766343B (zh) 一种基于改进woa-svm的网络安全态势评估方法
CN111416797B (zh) 改进天牛群算法优化正则化极限学习机的入侵检测方法
CN111260124A (zh) 一种基于注意力机制深度学习的混沌时间序列预测方法
CN111709511A (zh) 一种基于随机无迹Sigma点变异的哈里斯鹰优化算法
Zheng et al. Model compression based on differentiable network channel pruning
Zhang et al. Prediction algorithm for network security situation based on bp neural network optimized by sa-soa
CN104539601A (zh) 动态网络攻击过程可靠性分析方法及系统
Shi et al. Multi-objective neural architecture search via predictive network performance optimization
Wang et al. A novel intrusion detector based on deep learning hybrid methods
CN114863226A (zh) 一种网络物理系统入侵检测方法
Eesa et al. A dids based on the combination of cuttlefish algorithm and Decision Tree
CN114781692A (zh) 短期电力负荷预测方法、装置及电子设备
CN116244647A (zh) 一种无人机集群的运行状态估计方法
CN115766125A (zh) 一种基于lstm和生成对抗网络的网络流量预测方法
Chen et al. Ship track prediction based on DLGWO-SVR
CN116522747A (zh) 一种两阶段优化的挤压铸造工艺参数优化设计方法
Zhang et al. A network security situation prediction algorithm based on BP neural network optimized by SOA
Dong et al. Security situation prediction method for industrial control network based on adaptive Grey Verhulst model and GRU network
Jianlan et al. Implementation and improvement of simulated annealing algorithm in neural net
Lian Network traffic prediction model based on linear and nonlinear model combination
Wang A study on the stock market prediction based on genetic neural network
CN110766338A (zh) 一种基于人工智能和区块链技术eos.io的dpos分叉预测模型方法

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
GR01 Patent grant
GR01 Patent grant