基于改进灰狼优化算法的入侵检测特征选择方法

文档序号:31128060发布日期:2022-08-13 04:23阅读:145来源:国知局
基于改进灰狼优化算法的入侵检测特征选择方法

1.本发明涉及灰狼优化算法和用于分类识别的knn等相关技术,属于入侵检测系统中寻求最优特征子集的方法。


背景技术:

2.在网络安全风险日益增加的时代中,安全防护手段也越来越多。其中,入侵检测技术因为可以有效检测已知和未知攻击,同时具有识别和预警的能力,成为业界公认的最安全、最常用的防护措施之一。尽管入侵检测系统根据分类标准不同而有各式各样的分类,但大多存在检测效率低下等问题。随着网络流量数据量呈指数增长,网络攻击者的入侵频率和复杂程度也在不断提高,导致在高维度网络流量难以精准检测出攻击或异常,时间成本也伴随数据量的增加呈指数增长。对网络流量数据分析后发现,网络流量存在的数据特征虽多,但冗余无效的特征也不在少数,剔除冗余特征,对高维网络流量实现降维,可以有效减少时间成本,增加准确率。
3.特征选择是使高维流量数据降维的最好办法,从特征中选择最有代表性的、最有价值的特征子集,进而实现降维。特征选择算法的类别可以看作三类,过滤式,包裹式,嵌入式。过滤式是先进行特征选择,再训练分类器,在选择特征子集的过程中,不涉及任何算法;而包裹式则是在选择特征子集时,增加各种智能算法,从由所有特征组成的解空间中,找到最优的一组特征子集,包裹式算法也是目前研究最广泛的特征选择算法;嵌入式则是将二者混合,把特征选择的过程当作训练分类器的一个环节。
4.灰狼作为自然界顶级的掠食者,喜欢群居而且具有严格的社会等级制度,因此,在灰狼群体中,能够明确区分最强、等级最高的领导狼。灰狼优化算法则模仿灰狼的群居狩猎行为模式,加以改进,包围猎物,也就是最优适应度,每一只狼代表一种特征子集方案。这种算法具有较强的收敛性,同时因涉及参数少,具有易实现的优点,但也存在易陷入局部最优的问题。基于灰狼优化算法的特征选择是包裹式特征选择类型,在解空间搜索最优特征子集时,利用灰狼优化算法,以几组特征子集为基点,在附近展开搜索,最终得到最优特征子集,实现高维流量数据的降维,减少成本,提高入侵检测准确率,实现网络防御效率的快速提升。


技术实现要素:

5.本发明是为了在入侵检测过程中,减少因数据特征数量多、存在冗余特征等因素导致最终入侵检测结果精度低、速度慢的问题。传统的入侵检测依靠现有的技术进行流量数据等的检测,对繁杂的数据特征,利用灰狼优化算法进行特征子集的选择,但目前该算法存在陷入局部最优的问题,影响最佳特征子集的选择和最终的准确率。本发明提出了一种结合柯西变异和levy飞行的灰狼优化算法的入侵检测特征选择技术,利用柯西变异和levy飞行对狼群进行扰动,跳出局部最优,提高全局搜索的能力,进而得到最佳特征子集,提高入侵检测的准确率。
6.本发明的目的是这样实现的,具体步骤如下:
7.步骤1:从kdd cup 99数据集中获取80%作为训练集,20%作为测试集。入侵检测分类技术选择knn技术,k为5。k表示k个最近的邻居,每个样本都可以用它最接近的k个邻近值来代表。
8.步骤2:设置改进灰狼算法的参数。狼群数目n为30,最大迭代次数t为50,初始化种群,以向量x表示当前灰狼的位置,维数为所选数据集的特征数目41,初始化生成第一代灰狼种群。
9.步骤3:将所有灰狼种群位置转化为二进制,以0.5为界,每一维中,超过0.5则设为1,表示选择该维代表的特征;否则设为0,表示不选择该维代表的特征。
10.步骤4:将得到的二进制灰狼种群向量组,将对应的特征选择方案代入knn训练集中,以此选择相应特征数据。
11.步骤5:对步骤4中获取的特征数据进行训练,得到准确率其中,tp表示正确检测的数目,fp为错误检测的数目,错误率error=1-accuracy。
12.步骤6:计算此特征子集的适应度其中,a和b表示权重,a通常为0.99,b通常为0.01,m表示此特征子集中的特征数量,n表示所有特征子集。以该公式的计算作为适应度值,是因为在进行特征选择的过程中,需要考虑准确率和特征子集长度两方面因素。
13.步骤7:对步骤6中计算出的各个特征子集方案的适应度值后,进行排序,最小的三个值设为三匹领导狼α,β,γ。在这三匹狼中,用α表示头狼,也就是适应度最好的狼,在该过程中属于当前最好特征子集;β狼是适应度第二好的狼,服从于头狼,属于当前次好的特征子集;γ狼是第三好的狼,服从于α,β狼,属于当前第三好的特征子集。
14.步骤8:生成一个[0,1)的随机数,以确定α,β,γ狼的扰动策略。以0.5为界,随机数在[0,0.5]范围内执行步骤8.1,否则,执行步骤8.2。
[0015]
步骤8.1:依次对α,β,γ进行柯西变异扰动,得到新的位置步骤8.1:依次对α,β,γ进行柯西变异扰动,得到新的位置
[0016]
步骤8.2:依次对α,β,γ进行柯西变异扰动,得到新的位置步骤8.2:依次对α,β,γ进行柯西变异扰动,得到新的位置其中和w表示一个服从标准的正态分布的随机数,其中γ(x)=(x-1)!。
[0017]
步骤8.3:根据步骤8.1或8.2得到的结果计算相应适应度值,保存更新前三匹狼的位置和适应度值。
[0018]
步骤9:灰狼包围猎物的模型为x(t+1)=x
p
(t)-a
°
d,其中x
p
(t)表示当前代猎物的位置向量,猎物指的是前三匹狼所在位置,a是收敛因子,c是摆动因子,d表示狼与狼之间的距离,a=2α
°r1-α,c=2r2,d=c
°
x
p
(t)-x(t),
°
表示哈达玛积,在整个迭代过程中α由2非线
性降到0,r1和r2是[0,1]中的随机向量。
[0019]
步骤10:在每次迭代过程中,保留目前种群中的最好三匹灰狼,计算候选狼的位置。使用以下公式得到下一代灰狼种群位置。d
α
=|c1°
x
α
(t)-x(t)|、d
β
=|c2°
x
β
(t)-x(t)|、d
γ
=|c3°
x
γ
(t)-x(t)|、x1=x
α-a1°dα
、x2=x
β-a2°dβ
、x3=x
γ-a3°dβ
、其中x
α
、x
β
和x
γ
分别表示当前种群最好的三匹狼,d
α
、d
β
和d
γ
分别表示当前候选灰狼与最优三条狼之间的距离。
[0020]
步骤11:对所有灰狼进行柯西变异扰动,
[0021]
步骤12:重复步骤3至步骤12,直至达到最大迭代次数。
[0022]
步骤13:在knn测试时,利用得到的最佳特征子集提取测试集数据,进行检测分析。
[0023]
与现有的技术相比,本发明的有益效果是:
[0024]
在灰狼种群初始化时,使用logistic混沌映射,提高初始灰狼种群的质量,提高算法挖掘能力;在灰狼种群更新时进行扰动,一定程度上弥补了陷入局部最优的缺点,提升全局搜索能力;最终训练出特征数较少的最佳特征子集,带入测试集后,得到的检测准确率更高。
附图说明
[0025]
图1为本发明的方法流程示意图;
具体实施方式
[0026]
下面结合附图与具体实施方式对本发明作进一步详细描述。
[0027]
图1为本发明所述的一种基于柯西变异的灰狼优化算法的入侵检测特征选择方法流程示意图。该方法的具体实施步骤包括:
[0028]
1.从kdd cup 99中随机抽取数据,其中80%作为训练集,20%作为测试集。
[0029]
2.设置灰狼优化算法所用的所有参数,利用logisitic混沌映射初始化灰狼种群。
[0030]
3.将得到的初始灰狼种群对应的特征选择方案带入knn模型中,对训练集进行特征提取并训练,得到具体的准确率和错误率error=1-accuracy,结合特征子集包含的特征数,通过计算每一种方案的适应度值,并进行排序,得到最好的前3匹狼作为α,β,γ狼。
[0031]
4.对这3匹狼进行levy飞行或柯西变异或柯西变异扰动,计算其扰动后的适应度值,进行比较,保存最好的结果。
[0032]
5.利用扰动后的α,β,γ狼,更新所有灰狼的位置,
[0033]
6.对当前灰狼种群进行柯西变异扰动,得到下一代灰狼种群。
[0034]
7.对该种群进行适应度值的计算,并更新前3匹狼位置。
[0035]
8.判断是否达到最大迭代次数,若未达到要求,则返回至第4步,按顺序进行每一
步,如此循环直至达到最大迭代次数后跳出循环,完成最佳特征子集的搜索。
[0036]
9.根据上述得到的最佳特征子集,将kdd cup99测试集中的数据进行特征提取,并利用knn进行检测,得到测试准确率。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1