基于改进CSA优化SVM的网络入侵检测方法及装置
未命名
09-03
阅读:91
评论:0

基于改进csa优化svm的网络入侵检测方法及装置
技术领域
1.本发明属于网络安全技术领域,具体涉及一种基于改进的乌鸦搜索方法优化支持向量机的网络入侵检测方法及装置。
背景技术:
2.随着互联网时代的到来,不仅给人们的生活带来了便利,同时网络中的恶意攻击对人们的信息安全造成了严重威胁。网络入侵检测作为一种安全防御机制,通过检测和响应网络中的各种攻击来提高网络空间的安全性来免受各种漏洞和威胁。面对越来越复杂的网络环境,传统入侵检测技术已经不能有效防范海量的网络攻击行为,导致了低准确率和高误报率的检测结果。为保障网络环境安全,提高入侵检测技术的分类准确率和降低误报率而进行的入侵检测技术研究依旧是当前的研究热点。
3.目前,对乌鸦搜索算法(crow search algorithm,csa)的研究较少,该算法虽然有设置参数少、鲁棒性强、简单易用等优点,但其也有着群智能优化算法共有的缺点,如寻优精度低、局部极值逃逸能力弱、收敛速度慢等,国内外研究人员广泛尝试对csa进行改进。文献[冯爱武,王勇,付小朋.采用多模式飞行的乌鸦搜索算法[j].计算机应用研究,2022,39(06):1710-1717]提出将乌鸦种群分为强觅食能力组和弱觅食能力组两组不同的族群,不同组别采取不同的飞行策略以增强乌鸦个体的搜索能力,从而提高csa的全局搜索能力,但是依然存在初始种群随机的问题。文献[李焰华,刘升,赵齐辉.基于莱维飞行的乌鸦搜索算法[j].智能计算机与应用,2018,8(03):21-25+32]提出使用莱维飞行改进csa(levy crow search algorithm,lcsa),在其位置更新阶段将随机搜索改为莱维飞行,降低了csa搜索的盲目性,并将lcsa用于3个复杂工程的设计优化问题上,测试结果表明,该算法在求解复杂约束优化问题上有所优势,但其并未解决csa的易陷入局部最优的问题。文献[khalilpourazari s,pasandideh s h r.sine
–
cosine crow search algorithm:theory and applications[j].neural computing and applications,2019,32(12):1-18]提出一种csa与正余弦算法混合的优化改进算法(sine
–
cosine crow search algorithm,sccsa),sccsa的探索和开发能力得到显著提高,但并未对收敛速度进行改进。
[0004]
入侵检测这一概念在被提出后,大量研究人员投身于入侵检测方法的研究,入侵检测的内容得到了不断的补充,推动了网络安全技术的进一步发展。文献[饶鲜,董春曦,杨绍全.应用支持向量机实现计算机入侵检测[j].西安电子科技大学学报,2003,(03):353-356+373]提出将支持向量机(support vector machine,svm)用于入侵检测来检测异常入侵,取得了较为理想的结果。
[0005]
入侵检测数据集作为典型的不平衡数据,在少数类上的分类效果十分不如人意。文献[唐玺博,张立民,钟兆根.基于adasyn与改进残差网络的入侵流量检测识别[j].系统工程与电子技术,2022,44(12):3850-3862]提出用自适应合成采样(adaptive synthetic,adasyn)算法对nsl_kdd的少数类样本过采样,扩充少数类数量以解决入侵检测数据集的类别不平衡问题,改进残差网络模型得到了良好的分类效果,但adasyn算法生成少数样本时
没有考虑少数类样本之间特征信息的问题,使得生成的训练集存在缺陷。文献[li y,xu w s,li w,et al.research on hybrid intrusion detection method based on the adasyn and id3 algorithms[j].mathematical biosciences and engineering,2022,19(2):2030-2042.]提出使用adasyn算法对入侵检测数据集的训练集进行过采样,再利用基于id3的决策树模型分类,得到了较高的分类准确率和较低的误报率,但adasyn算法生成少数样本时没有考虑少数类样本之间特征信息的问题。
技术实现要素:
[0006]
针对现有技术中存在的问题,本发明提供了一种基于改进csa优化svm的网络入侵检测方法及装置,具有更好的收敛性和寻优性能,提高了入侵检测数据集的分类准确率并降低误报率。
[0007]
为实现上述目的,本发明提供如下技术方案:
[0008]
第一方面,本发明提出了一种基于改进csa优化svm的网络入侵检测方法,建立icsa_svm模型用于进行入侵检测数据集分类,包括以下步骤:
[0009]
对入侵检测数据集进行预处理,得到预处理后的训练集和测试集;
[0010]
对预处理后的训练集和测试集进行数据降维处理;
[0011]
在乌鸦搜索算法中引入拉丁超立方体、动态感知概率、莱维飞行以及熵权法中的权重值得到改进的乌鸦搜索算法,基于改进的乌鸦搜索算法对乌鸦位置更新公式的参数进行优化;
[0012]
采用降维处理后的训练集和基于改进的乌鸦搜索算法对乌鸦位置优化后的参数来训练svm模型,优化svm模型中参数,构造出icsa_svm模型;
[0013]
将icsa_svm模型用于数据降维处理后的训练集,寻得的svm模型的最优参数组合,生成训练后的icsa_svm入侵检测模型;
[0014]
使用训练后的icsa_svm入侵检测模型对数据降维处理后的测试集进行分类,得到分类结果。
[0015]
结合第一方面,进一步地,还包括对预处理后的训练集进行数据平衡处理后再进行训练集数据降维处理。
[0016]
结合第一方面,进一步地,对预处理后的训练集进行数据平衡处理包括以下步骤:
[0017]
步骤a1:对预处理后的训练集进行随机欠采样处理,得到训练集随机欠采样之后的多数类样本数量;
[0018]
步骤a2:对随机欠采样处理后的训练集进行kadasyn过采样处理,得到少数类样本总数量。
[0019]
结合第一方面,进一步地,得到改进的乌鸦搜索算法的包括以下步骤:
[0020]
步骤b1:采用拉丁超立方体生成乌鸦初始种群;
[0021]
步骤b2:将感知概率改为动态值;
[0022]
步骤b3:使用熵权法对乌鸦个体的权重值进行计算;
[0023]
步骤b4:使用莱维飞行代替随机搜索并对乌鸦个体分量赋予不同的权重值;
[0024]
步骤b5:自适应动态感知概率、熵权法中的权重值以及莱维飞行得到乌鸦新位置更新公式,即icsa模型。
[0025]
结合第一方面,进一步地,在d维搜索空间中,种群数为n的乌鸦种群,采用拉丁超立方体生成乌鸦初始种群的具体步骤为:
[0026]
步骤b11:将乌鸦种群数n作为抽样规模;
[0027]
步骤b12:将每只乌鸦的位置变量的搜索空间划分为n个等区间;
[0028]
步骤b13:产生n
×
d的矩阵,该矩阵的每列都是[1,2,
…
,n]的随机排列;
[0029]
步骤b14:矩阵的每行仅对应一个小超立方体,接着在小超立方体内产生一个样本,即对应乌鸦种群中的乌鸦个体。
[0030]
结合第一方面,进一步地,所述步骤b5中icsa模型为:
[0031][0032][0033]
其中,是第t次迭代时第u只乌鸦的位置,t表示当前迭代次数,t=1,2,
…
t
max
;t
max
是最大迭代次数;levy(κ)表示莱维飞行;ru,r
δ
∈[0,1]是均匀分布的随机值;是第t次迭代时第u只乌鸦的飞行长度;hu是第u只乌鸦的指标权重;是第t次迭代时第δ只乌鸦的记忆位置;是第t次迭代时第δ只乌鸦的感知概率;a是缩放因子,a=0.01;κ是常数,κ=1.5;v和u均服从正态分布,v服从标准正态分布,u服从均值为0,方差为σ2的正态分布。
[0034]
结合第一方面,进一步地,所述训练svm模型的具体步骤为:
[0035]
对于e个输入样本可以描述为{xq,yq},其中q表示q个输入样本,q=1,2,
…
,e,yq∈{-1,1},xq代表输入特征,yq代表输出类别,svm的目的是找到最优的分类超平面,将不同的类别分隔于距最优超平面最远的两边,最优超平面的公式表述为w
·
x+b=0,其中w是权重向量,b是偏置;svm的超平面约束公式如下:
[0036][0037][0038]
其中,φ(xq)表示映射;是分类间隔,其取最小值得到最优超平面;
[0039]
svm中的数据为非线性时,在svm中加入松弛因子ξ和惩罚因子c以对分类出错的样本惩罚,则最优化问题转为如下公式:
[0040][0041]
将上式转为拉格朗日乘数法表示,公式如下:
[0042][0043]
其中,和βq≥0均是xq的拉格朗日乘子,将上式中的各变量均求导为零,并由对偶理论将求导后的公式转为求解凸二次规划的问题,公式如下:
[0044][0045]
svm的非线性将低维求解映射到高维空间时,需引入核函数,公式如下:
[0046][0047]
之后可得svm的分类表达式,公式如下:
[0048][0049][0050]
其中,sign是分类符号,表示个输入样本,个输入样本,表示输入特征,d表示svm模型中核参数。
[0051]
结合第一方面,进一步地,构造出所述icsa_svm模型的具体步骤为:
[0052]
步骤c1:icsa初始化参数的设置,包括参数设置和种群初始化,参数设置包括乌鸦种群数n、最大迭代次数t
max
以及飞行长度fl。
[0053]
种群初始化:利用拉丁超立方体初始化乌鸦初始种群,需寻优参数是svm模型中的核参数d和惩罚因子c,故是2维搜索空间,(d,c)是乌鸦初始位置,公式如下:
[0054][0055]
其中,表示表示经过t次迭代后第只乌鸦的位置,表示第只乌鸦,
[0056]
步骤c2:计算乌鸦初始种群的适应度值,得到乌鸦的记忆位置,并使用乌鸦记忆位置来训练svm模型,乌鸦的记忆位置和准确率的公式如下;
[0057][0058][0059]
其中,表示经过t次迭代后第ψ只乌鸦的记忆位置,ψ表示第ψ只乌鸦,ψ=1,2,
……
,n,且accuracy表示本发明入侵检测的准确率。
[0060]
步骤c3:根据icsa模型,生成乌鸦的新位置;并确定是否可行,若新位置位于搜索
空间内,则乌鸦飞向新位置,否则乌鸦停留在原位置;
[0061]
再次计算乌鸦新位置的适应度值,若乌鸦新位置的适应度值优于其最优记忆位置,则更新乌鸦记忆位置,否则,不更新,其记忆位置的公式如下:
[0062]
根据适应度值更新乌鸦的记忆位置,其更新公式如下:
[0063][0064]
其中,f(
·
)是适应度函数;
[0065]
步骤c4:若达到设定的t
max
,则输出乌鸦的当前最优记忆位置作为全局最优记忆位置,得到的全局最优记忆位置即为svm模型的最优参数组合(d,c),否则转向执行步骤c3。
[0066]
第二方面,本发明提出了一种入侵检测装置,包括:
[0067]
预处理模块,用于对入侵检测数据集进行数值化处理,得到样本数据映射后的当前维度对应特征,进而得到预处理后的训练集和测试集;
[0068]
平衡处理模块,用于对预处理后的训练集进行随机欠采样和改进的自适应合成算法的过采样处理,得到相对平衡的训练数据集;
[0069]
降维处理模块,用于对预处理后的测试集进行数据降维处理和对平衡处理后的训练集进行数据降维处理;
[0070]
训练模块,用于将降维处理后的训练集输入至预先构件并给予改进的乌鸦搜索算法优化过的支持向量机模型进行训练,获得优化并训练后的支持向量机模型;
[0071]
测试模块,用于将降维处理后的测试集输入优化并训练后的支持向量机模型进行测试,得到分类检测结果。
[0072]
第三方面,本发明提出了一种电子设备,包括处理器和存储介质;所述存储介质用于存储指令;所述处理器用于根据所述存储指令进行操作以执行根据上述入侵检测方法的步骤。
[0073]
第四方面,本发明提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述入侵检测方法的步骤。
[0074]
与现有技术相比,本发明提供了一种基于改进的乌鸦搜索方法优化支持向量机的网络入侵检测方法及装置,具备以下有益效果:
[0075]
(1)本发明的入侵检测方法及装置为一种改进的乌鸦搜索算法(improved crow search algorithm,icsa)优化svm参数的网络模型来完成分类,使用改进的自适应合成采样算法(k-means adaptive synthetic,kadasyn)对小样本过采样处理使数据平衡;在csa中引入拉丁超立方体、动态感知概率、莱维飞行和熵权法中的权重值得到icsa;利用icsa优化svm参数,得到icsa_svm模型,即得到合理的核参数和惩罚因子来完成分类识别。icsa具有更好的收敛性和寻优性能,icsa_svm模型提高了入侵检测数据集的分类准确率并降低误报率。
[0076]
(2)本发明的入侵检测方法及装置通过优化支持向量机(svm)来提高入侵检测数据集的分类准确率和降低误报率,虽然比通过优化相关向量机(rvm)的准确率上低了一点(大约低一两个百分点),但本发明的计算速度更快(大约能够快30%左右),降低了计算复杂度,训练时间大大减少。
附图说明
[0077]
图1为本发明中改进的乌鸦搜索算法icsa的流程图;
[0078]
图2为本发明实施例2的icsa_svm入侵检测模型流程图;
[0079]
图3为本发明实施例1的kadasyn_icsa_svm入侵检测模型流程图。
具体实施方式
[0080]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0081]
实施例1
[0082]
如图1和图3所示,本发明的入侵检测方法包括以下步骤:
[0083]
步骤1:对入侵检测数据集进行数据预处理;
[0084]
本发明以公开数据集nsl_kdd作为实验数据,nsl_kdd数据集共有42维特征,其中tcp基本特征包含1~9维共9维数据特征,流量特征包含10~22维共13维数据特征,基于时间的流量特征包含23~31维共9维数据特征,基于主机的流量特征包含31~41维共10维数据特征,第42是分类标签。该数据集分为normal(正常流量)、dos(拒绝服务)、probe(探测攻击)、r2l(远程入侵)和u2r(获取权限)五类型,其各类型的数据分布如表1所示。
[0085]
对nsl_kdd数据集进行数值化处理:对nsl_kdd数据集中的4维字符型数据特征转为整数,即protocol_type、service、flag和分类标签,即protocol_type的不同特征分别转为整数0~2,service的不同特征转为0~69的整数,flag的不同特征为0~10的整数,分类标签的不同特征转为0~4;将得到的41维数据特征映射到[0,1]的范围,公式如下:
[0086][0087]
其中,x
s,max
是最大值;x
s,min
最小值;xs'表示样本数据映射后的当前维度对应的特征;xs表示是样本数据的当前维度特征。
[0088]
表1
[0089][0090]
步骤2:对预处理后的训练集进行数据平衡处理;
[0091]
训练集映射后对数据进行随机欠采样(random under-sampling,rus)和改进的自适应合成算法(k-means adaptive synthetic,kadasyn)的过采样处理,减少多数类(如normal和dos)的同时增加小样本(如r2l和u2r)的样本数,以达到平衡数据的目的。
[0092]
步骤2.1:对映射后的训练集进行随机欠采样处理,随机欠采样(rus)的具体步骤如下:
[0093]
步骤2.1.1:计算类别的不平衡程度,公式如下:
[0094][0095]
其中,b表示类别不平衡度;s
min
是训练集中少数类样本的数量;s
max
是训练集中多数类样本的数量。
[0096]
步骤2.1.2:随机欠采样得到入侵检测数据集nsl_kdd训练集欠采样之后的多数类样本数量,随机欠采样率的计算公式如下:
[0097][0098]
式中,b1表示随机欠采样后的类别不平衡度。
[0099]
步骤2.2:对随机欠采样处理后的训练集进行kadasyn过采样处理,kadasyn过采样处理(即kadasyn算法生成新样本)的步骤如下:
[0100]
步骤2.2.1:使用k-means聚类算法(k均值聚类算法)对随机欠采样处理后的的多数类样本进行聚类处理,主要步骤如下:
[0101]
步骤2.2.1.1:将训练集划分为k个簇f={f1,f2,
…
,fk}并随机选择k个样本作为初始聚类中心μ={μ1,μ2,
…
,μk};
[0102]
步骤2.2.1.2:计算少数类样本到初始聚类中心的欧氏距离,根据欧式距离的值,将样本划分到距离最近的聚类中心所对应的簇中,欧式距离的计算公式如下:
[0103][0104]
其中,h(x,μi)表示样本数据x到聚类中心μi的欧氏距离,x是样本数据;μi是第i个聚类中心,i=1,2,
…
,k,k表示训练集划分的簇的总数量;xj是样本x的第j个特征维度,j=1,2,
…
,q,q表示特征维度数量,取值范围为1~41;μ
i,j
是μi的第j个特征维度。
[0105]
步骤2.2.1.3:根据每个样本划分的簇,更新聚类中心,公式如下:
[0106][0107]
式中,fi表示第i个簇。
[0108]
步骤2.2.1.4:重复步骤2.2.1.2和步骤2.2.1.3,直到聚类中心的位置不再改变,得到最终的簇划分f={f1,f2,
…
,fk}和聚类中心μ={μ1,μ2,
…
,μk}。
[0109]
步骤2.2.2:通过公式(3)计算随机欠采样后的类别不平衡度b1;
[0110]
步骤2.2.3:如果步骤2.2.2得到的类别不平衡度b1小于预设的最大类别不平衡度,则进行以下处理:
[0111]
步骤2.2.3.1:根据类别不平衡度计算样本f需要合成的样本数量,公式如下:
[0112]
g=(s
max-s
min
)
×
θ
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0113]
其中,g表示合成的样本总量;s
max
表示训练集中多数类样本数量;s
min
表示训练集中少数类样本数量;θ∈(0,1]是指定合成数据生成后所需的平衡状况。
[0114]
步骤2.2.3.2:计算比率ρo并进行归一化公式如下:
[0115][0116][0117]
其中,δ是少数类别样本中由欧氏距离计算的k个近邻中属于多数类样本的数量;ρo比率;k表示k个近邻中属于多数类样本的数量;δo表示当前样本由欧氏距离计算的近邻中属于多数类样本的数量;表示归一化后的比率。
[0118]
步骤2.2.3.3:计算每个少数类样本要生成的样本数量,公式如下:
[0119][0120]
式中,go表示每个少数类样本要生成的样本数量。
[0121]
步骤2.2.3.4:在k-means聚类后的少数类样本的k个邻近样本中随机选择一个少数类样本μ
zo
,在其与聚类中心之间的连线上进行随机插值,生成新的少数类样本,公式如下:
[0122]
so=μo+(μ
zo-μo)
×
λ
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0123]
式中,so表示生成的新少数类样本;μ
zo
表示在k-means聚类后的少数类样本的k个邻近样本中随机选择一个少数类样本;λ表示λ∈[0,1]的随机数。
[0124]
步骤2.2.3.5:重复步骤2.2.3.4生成少数类样本,直到达到需要的少数类样本总数量,本发明中r2l需合成33253个样本,u2r需合成33670个样本。
[0125]
经随机欠采样和kadasyn混合算法处理后的新nsl_kdd训练集和原测试集的分布如表2所示。
[0126]
表2
[0127][0128]
步骤3:数据降维处理;
[0129]
使用主成分分析法(principal component analysis,pca)对经过kadsyn数据平
衡处理后的训练集和数据预处理后测试集的41维数据特征进行降维处理,由于第22维特征之后的方差贡献率几乎为0,因此本发明选择保留前22维特征成分,所选特征的总方差贡献率高达99.7%,达到了降低特征维度且保证分类性能的目的。
[0130]
步骤4:改进的乌鸦搜索算法;
[0131]
步骤4.1:使用拉丁超立方体乌鸦种群初始化。拉丁超立方体的基本思想是等概率分层随机抽样,在d维搜索空间中,种群数为n的乌鸦种群,使用拉丁超立方体生成初始种群的具体步骤如下:
[0132]
步骤4.1.1:乌鸦种群数n作为抽样规模;
[0133]
步骤4.1.2:将每只乌鸦的位置变量的搜索空间划分为n个等区间;
[0134]
步骤4.1.3:产生n
×
d的矩阵,该矩阵的每列都是[1,2,
…
,n]的随机排列;
[0135]
步骤4.1.4:矩阵的每行仅对应一个小超立方体,接着在小超立方体内产生一个样本,即对应乌鸦种群中的乌鸦个体。
[0136]
步骤4.2:感知概率改为动态值,其公式如下:
[0137][0138]
其中,ap是感知概率;ap
max
和ap
min
分别是ap的最大值和最小值;t是此时的迭代次数;t
max
是最大迭代次数。本发明设置的ap取值范围为[0.01,0.4]。
[0139]
步骤4.3:熵权法中权重值的计算。假设有n个样本j个指标(n、j皆为过渡量,当本发明包括数据平衡处理的步骤时,n表示数据平衡后的样本数量;当本发明不包括数据平衡处理的步骤时,n表示数据平衡前的样本数量;j表示特征维度),则第i个样本的第j项指标z
i,j
的指标权重的计算步骤如下:
[0140]
步骤4.3.1:计算第i项指标的信息熵ej,公式如下:
[0141][0142][0143]
其中,p
i,j
是第i个样本的第j项指标占该指标的比重,i=1,2,3,......,n,j=1,2,3,......,j。
[0144]
步骤4.3.2:计算信息效用值,计算公式如下:
[0145]
zj=1-ejꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)
[0146]
式中,zj表示信息效用值。
[0147]
步骤4.3.3:计算指标权重,计算公式如下:
[0148][0149]
式中,hj表示指标z
i,j
的指标权重。
[0150]
步骤4.4:乌鸦位置更新策略。使用莱维飞行代替随机搜索并对乌鸦个体分量赋予不同的权重值,其位置更新公式如下:
[0151][0152][0153]
其中,是第t次迭代时第u只乌鸦的位置,u=1,2,
……
,n,t表示当前迭代次数,t=1,2,
…
t
max
;t
max
是最大迭代次数;levy(κ)表示莱维飞行;ru,r
δ
∈[0,1]是均匀分布的随机值;是第t次迭代时第u只乌鸦的飞行长度;hu第u只乌鸦的指标权重;是第t次迭代时第δ只乌鸦的记忆位置;是第t次迭代时第δ只乌鸦的感知概率,δ=1,2,
……
,n,且u≠δ(u为作为被追者的乌鸦,δ为作为追踪者的乌鸦);a是缩放因子,a=0.01;κ是常数,κ=1.5;v和u均服从正态分布,v服从标准正态分布,u服从均值为0,方差为σ2的正态分布,σ的公式如下:
[0154][0155]
其中,γ(ω)=(ω-1)!,ω为中间计算变量,γ(1+κ)表示为常数。
[0156]
步骤5:训练svm模型;
[0157]
对于e个输入样本可以描述为{xq,yq},其中q表示q个输入样本,q=1,2,
…
,e,yq∈{-1,1},xq代表输入特征,yq代表输出类别,svm的目的是找到最优的分类超平面,将不同的类别分隔于距最优超平面最远的两边,最优超平面的公式表述为w
·
x+b=0,其中w是权重向量,b是偏置。svm的超平面约束公式如下:
[0158][0159][0160]
其中,φ(xq)表示映射;是分类间隔,其取最小值得到最优超平面。
[0161]
svm中的数据为非线性时,在svm中加入松弛因子ξ和惩罚因子c以对分类出错的样本惩罚,则最优化问题转为如下公式:
[0162][0163]
将公式(21)转为拉格朗日乘数法表示,公式如下:
[0164][0165]
其中,和βq≥0均是xq的拉格朗日乘子,将公式(22)中的各变量均求导为零,并由对偶理论将求导后的公式转为求解凸二次规划的问题,公式如下:
[0166][0167]
svm的非线性将低维求解映射到高维空间时,需引入核函数,公式如下:
[0168][0169]
之后可得svm的分类表达式,公式如下:
[0170][0171][0172]
其中,sign是分类符号,表示个输入样本,分别代表各自空间维度的输入样本;表示输入特征,d表示svm模型中核参数。
[0173]
本发明选用svm作为分类模型,虽然对比相关向量机(relevance vector machine,rvm)在分类准确率上有所下降,但svm是一种高效的算法,它可以处理高维数据,并且在处理大型数据集时速度较快,其只使用了一部分样本来训练模型,而不是使用全部数据,这降低了计算复杂度,训练时间大大减少,而rvm由于求矩阵的逆的运算,常常需要更多的训练时间,在大型数据集上的训练速度非常慢。
[0174]
svm中的核参数d以及惩罚因子c的选取是制约其分类性能的关键因素,需要对(d,c)的参数做出合理选择。
[0175]
步骤6:构造icsa_svm模型;
[0176]
步骤6.1:icsa初始化参数的设置,包括参数设置和种群初始化,参数设置包括乌鸦种群数n、最大迭代次数t
max
以及飞行长度fl。
[0177]
种群初始化,利用拉丁超立方体初始化乌鸦初始种群,需寻优参数是svm模型中的核参数d和惩罚因子c,故是2维搜索空间,(d,c)是乌鸦初始位置,公式如下:
[0178][0179]
其中,表示表示经过t次迭代后第只乌鸦的位置,表示第只乌鸦,
[0180]
步骤6.2:计算乌鸦初始种群的适应度值,得到乌鸦的记忆位置,并使用乌鸦记忆位置来训练svm模型,本发明以准确率为适应度函数,乌鸦的记忆位置和准确率的公式如下;
score 92.04%以及最低的误报率1.48%,所以icsa_rvm模型的整体性能优于其他模型。
[0200]
表4
[0201][0202]
实施例2
[0203]
实施例2与实施例1的不同之处在于:实施例2的入侵检测方面不包括步骤2,即没有对预处理后的训练集进行数据平衡处理的步骤,其入侵检测方法的流程图如图2所示,只是未经平衡处理的数据,经过分类模型(icsa_svm)分类时对少数类样本的识别率低,导致模型的最终分类效果没有实施例1中经过数据平衡处理的效果好,但还是比现有入侵检测方法中的分类准确率是有明显提高的。
[0204]
实施例3
[0205]
本发明提出了一种入侵检测装置,包括:
[0206]
预处理模块,用于对入侵检测数据集进行数值化处理,得到样本数据映射后的当前维度对应特征,进而得到预处理后的训练集和测试集;
[0207]
平衡处理模块,用于对预处理后的训练集进行随机欠采样和改进的自适应合成算法的过采样处理,得到相对平衡的训练数据集;
[0208]
降维处理模块,用于对预处理后的测试集进行数据降维处理和对平衡处理后的训练集进行数据降维处理;
[0209]
训练模块,用于将降维处理后的训练集输入至预先构件并给予改进的乌鸦搜索算法优化过的支持向量机模型进行训练,获得优化并训练后的支持向量机模型;
[0210]
测试模块,用于将降维处理后的测试集输入优化并训练后的支持向量机模型进行测试,得到分类检测结果。
[0211]
实施例4
[0212]
本发明提出了一种电子设备,包括处理器和存储介质;所述存储介质用于存储指令;所述处理器用于根据所述存储指令进行操作以执行根据上述入侵检测方法的步骤。
[0213]
实施例5
[0214]
本发明提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述入侵检测方法的步骤。
[0215]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0216]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换
和变型,本发明的范围由所附权利要求及其等同物限定。
技术特征:
1.基于改进csa优化svm的网络入侵检测方法,其特征在于,建立icsa_svm模型用于进行入侵检测数据集分类,包括以下步骤:对入侵检测数据集进行预处理,得到预处理后的训练集和测试集;对预处理后的训练集和测试集进行数据降维处理;在乌鸦搜索算法中引入拉丁超立方体、动态感知概率、莱维飞行以及熵权法中的权重值得到改进的乌鸦搜索算法,基于改进的乌鸦搜索算法对乌鸦位置更新公式的参数进行优化;采用降维处理后的训练集和基于改进的乌鸦搜索算法对乌鸦位置优化后的参数来训练svm模型,优化svm模型中的参数,构造出icsa_svm模型;将icsa_svm模型用于数据降维处理后的训练集,寻得的svm模型的最优参数组合,生成训练后的icsa_svm入侵检测模型;使用训练后的icsa_svm入侵检测模型对数据降维处理后的测试集进行分类,得到分类结果。2.根据权利要求1所述的基于改进csa优化svm的网络入侵检测方法,其特征在于:还包括对预处理后的训练集进行数据平衡处理后再进行训练集数据降维处理。3.根据权利要求2所述的基于改进csa优化svm的网络入侵检测方法,其特征在于,对预处理后的训练集进行数据平衡处理包括以下步骤:步骤a1:对预处理后的训练集进行随机欠采样处理,得到训练集随机欠采样之后的多数类样本数量;步骤a2:对随机欠采样处理后的训练集进行kadasyn过采样处理,得到少数类样本总数量。4.根据权利要求1所述的基于改进csa优化svm的网络入侵检测方法,其特征在于,得到改进的乌鸦搜索算法的包括以下步骤:步骤b1:采用拉丁超立方体生成乌鸦初始种群;步骤b2:将感知概率改为动态值;步骤b3:使用熵权法对乌鸦个体的权重值进行计算;步骤b4:使用莱维飞行代替随机搜索并对乌鸦个体分量赋予不同的权重值;步骤b5:自适应动态感知概率、熵权法中的权重值以及莱维飞行得到乌鸦新位置更新公式,即icsa模型。5.根据权利要求4所述的基于改进csa优化svm的网络入侵检测方法,其特征在于,在d维搜索空间中,种群数为n的乌鸦种群,采用拉丁超立方体生成乌鸦初始种群的具体步骤为:步骤b11:将乌鸦种群数n作为抽样规模;步骤b12:将每只乌鸦的位置变量的搜索空间划分为n个等区间;步骤b13:产生n
×
d的矩阵,该矩阵的每列都是[1,2,
…
,n]的随机排列;步骤b14:矩阵的每行仅对应一个小超立方体,接着在小超立方体内产生一个样本,即对应乌鸦种群中的乌鸦个体。6.根据权利要求4所述的基于改进csa优化svm的网络入侵检测方法,其特征在于:所述步骤b5中icsa模型为:
其中,是第t次迭代时第u只乌鸦的位置,t表示当前迭代次数,t=1,2,
…
t
max
;t
max
是最大迭代次数;levy(κ)表示莱维飞行;r
u
,r
δ
∈[0,1]是均匀分布的随机值;是第t次迭代时第u只乌鸦的飞行长度;h
u
是第u只乌鸦的指标权重;是第t次迭代时第δ只乌鸦的记忆位置;是第t次迭代时第δ只乌鸦的感知概率;a是缩放因子,a=0.01;κ是常数,κ=1.5;v和u均服从正态分布,v服从标准正态分布,u服从均值为0,方差为σ2的正态分布。7.根据权利要求1所述的基于改进csa优化svm的网络入侵检测方法,其特征在于,所述训练svm模型的具体步骤为:对于e个输入样本可以描述为{x
q
,y
q
},其中q表示q个输入样本,q=1,2,
…
,e,y
q
∈{-1,1},x
q
代表输入特征,y
q
代表输出类别,svm的目的是找到最优的分类超平面,将不同的类别分隔于距最优超平面最远的两边,最优超平面的公式表述为w
·
x+b=0,其中w是权重向量,b是偏置;svm的超平面约束公式如下:b是偏置;svm的超平面约束公式如下:其中,φ(x
q
)表示映射;是分类间隔,其取最小值得到最优超平面;svm中的数据为非线性时,在svm中加入松弛因子ξ和惩罚因子c以对分类出错的样本惩罚,则最优化问题转为如下公式:将上式转为拉格朗日乘数法表示,公式如下:其中,和β
q
≥0均是x
q
的拉格朗日乘子,将上式中的各变量均求导为零,并由对偶理论将求导后的公式转为求解凸二次规划的问题,公式如下:
svm的非线性将低维求解映射到高维空间时,需引入核函数,公式如下:kenerl(x
q
,x
θ
)=φ(x
q
)
t
φ(x
θ
)之后可得svm的分类表达式,公式如下:之后可得svm的分类表达式,公式如下:其中,sign是分类符号,θ表示θ个输入样本,θ=1,2,
…
,e,q≠θ;x
θ
表示输入特征,d表示svm模型中核参数。8.根据权利要求1所述的基于改进csa优化svm的网络入侵检测方法,其特征在于,构造出所述icsa_svm模型的具体步骤为:步骤c1:icsa初始化参数的设置,包括参数设置和种群初始化,参数设置包括乌鸦种群数n、最大迭代次数t
max
以及飞行长度fl。种群初始化:利用拉丁超立方体初始化乌鸦初始种群,需寻优参数是svm模型中的核参数d和惩罚因子c,故是2维搜索空间,(d,c)是乌鸦初始位置,公式如下:其中,表示经过t次迭代后第只乌鸦的位置,表示第只乌鸦,步骤c2:计算乌鸦初始种群的适应度值,得到乌鸦的记忆位置,并使用乌鸦记忆位置来训练svm模型,乌鸦的记忆位置和准确率的公式如下;训练svm模型,乌鸦的记忆位置和准确率的公式如下;其中,表示经过t次迭代后第ψ只乌鸦的记忆位置,ψ表示第ψ只乌鸦,ψ=1,2,
……
,n,且accuracy表示本发明入侵检测的准确率。步骤c3:根据icsa模型,生成乌鸦的新位置;并确定是否可行,若新位置位于搜索空间内,则乌鸦飞向新位置,否则乌鸦停留在原位置;再次计算乌鸦新位置的适应度值,若乌鸦新位置的适应度值优于其最优记忆位置,则更新乌鸦记忆位置,否则,不更新,其记忆位置的公式如下:根据适应度值更新乌鸦的记忆位置,其更新公式如下:
其中,f(
·
)是适应度函数;步骤c4:若达到设定的t
max
,则输出乌鸦的当前最优记忆位置作为全局最优记忆位置,得到的全局最优记忆位置即为svm模型的最优参数组合(d,c),否则转向执行步骤c3。9.一种入侵检测装置,其特征在于,包括:预处理模块,用于对入侵检测数据集进行数值化处理,得到样本数据映射后的当前维度对应特征,进而得到预处理后的训练集和测试集;平衡处理模块,用于对预处理后的训练集进行随机欠采样和改进的自适应合成算法的过采样处理,得到相对平衡的训练数据集;降维处理模块,用于对预处理后的测试集进行数据降维处理和对平衡处理后的训练集进行数据降维处理;训练模块,用于将降维处理后的训练集输入至预先构件并给予改进的乌鸦搜索算法优化过的支持向量机模型进行训练,获得优化并训练后的支持向量机模型;测试模块,用于将降维处理后的测试集输入优化并训练后的支持向量机模型进行测试,得到分类检测结果。10.一种电子设备,其特征在于:包括处理器和存储介质;所述存储介质用于存储指令;所述处理器用于根据所述存储指令进行操作以执行根据权利要求1至8任一项所述入侵检测方法的步骤。
技术总结
本发明涉及网络安全技术领域,公开了一种基于改进CSA优化SVM的网络入侵检测方法及装置,使用改进的自适应合成采样算法对小样本过采样处理使数据平衡;在CSA中引入拉丁超立方体、动态感知概率、莱维飞行和熵权法中的权重值得到ICSA;利用ICSA优化SVM参数,得到ICSA_SVM模型,即得到合理的核参数和惩罚因子来完成分类识别。本发明的有益效果为具有更好的收敛性和寻优性能,提高了入侵检测数据集的分类准确率并降低误报率。准确率并降低误报率。准确率并降低误报率。
技术研发人员:陈晓 宋文辉
受保护的技术使用者:南京信息工程大学
技术研发日:2023.06.19
技术公布日:2023/8/31
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/