一种网络入侵异常检测方法
【专利摘要】对于入侵检测模型构建问题,本发明提出一种新的监督非线性特征提取和正则化随机权重神经网络(RRWNN)的网络入侵异常检测方法。核偏最小二乘(KPLS)算法用于处理输入特征的共线性和复杂非线性映射。这些提取的潜在特征输入RRWNN算法用于构建具有较高学习速度和较好泛化性能的入侵检测模型。采用全局优化策略选择基于KPLS?RRWNN的入侵检测模型的建模参数。基于KDD99数据的仿真表明了方法的有效性。
【专利说明】
-种网络入侵异常检测方法
技术领域
[0001] 本发明设及网络安全技术,具体设及一种网络入侵异常检测方法。
【背景技术】
[0002] 随着网络的无线化、移动化,W及工业4.0的逐步深入和推广,信息安全形势日趋 严峻,关乎到国家安全的关键基础设施的安全防护更需要高度重视。网络入侵检测是指通 过收集操作系统、系统程序、应用程序、网络包等信息,发现系统中违背安全策略或危及系 统安全的行为。现有的网络入侵异常检测技术包括统计分析、模式预测、神经网络、遗传算 法、序列匹配与学习、免疫系统、基于规范、数据挖掘、完整性检查和贝叶斯技术等。
[0003] 在此背景下,研究具有高检测准确性和低训练时间的入侵检测技术对于入侵检测 系统(IDS)是非常重要的。实施上,入侵检测的主要目标是进行网络正常行为和异常行为的 识别;其可W看作为分类问题。因此,在很多研究中均采用不同的机器学习算法用W构建入 侵检测模型(例如如下文献"Tsai,C.F.,Hsu, Y.F.,Lin, C.Y.,Lin, W.Y. : Intrusion detection by machine learning:areview,Expert Syst.Appl.36(2009)11994-12000.", "Weller-Fahy,D.J.,Borghetti,B.J.,Sodemann.A,A:A Survey of distance and similarity measures used within network intrusion anomaly detection. IEEE Communication Surveys&Tutor ial s ,2014,44 (1):66-83."从及"Gian luigi.F., Pietro.S.,:Ensemble b曰sed Coll曰bor曰tive 曰nd Distributed Intrusion Detection Systems : A Survey . Journal of Network and Computer Applications ,2016,66:1- 16.")。
[0004] 通常,具有良好预测性能的网络入侵检测模型应该是一个有效的分类器。因此,首 先面对的问题是维数约简。两种方法,特征选择和特征提取,可W使用:前者只是选择与分 类目标相关的部分主要的特征,但那些丢弃的特征可能导致分类器模型泛化性能的下降; 相反,后者采用线性或非线性的方式确定一个低维空间替代原始空间。最常用的特征提取 方法是主成分分析(PCA),可W采用线性子空间有效近似原始数据。但是,PCA未考虑输入和 输出变量间的相关性(参见文献"Tang,J.,Yu,W.,Chai,T.,Liu,Z.,&Zhou,X.(2015) .Selective ensemble modeling load parameters of ball mill based on multi? scale frequency spectral features and sphere criterion.Mechanical Systemsfe Signal化〇〇6331〇容,66,485-504..,'),导致提取的潜在特征化¥3)与输出变量间的相关性 车交!理(参见文南犬('Tang,J.,Chai,Τ.,Zhao,L.,Yu,W.,Yue,H. :Soft sensor for parameters of mill load based on multi-spectral segments pis sub-models and on-line adaptive weighted fusion algorithm.Neurocomputing,78(l),38-47(2012).,,)。有监督 的特征提取方法,如偏最小二乘(PLS)算法能够提取与输入输出数据同时相关的LVs。但是, 现实世界的系统多数都是非线性的。核方法已经成为一种简单、出色的提取非线性潜在特 征的方法。通过采用核化S(KPLS)方法(参见文献"Tang,J.,Chai,T.,Liu,Z.,化,W.: Selective ensemble modeling based on nonlinear frequency spectral feature extraction for predicting load parameter in ball mi 1Is. Chinese Journal of Chemical Engineering,23(12) ,2020-2028(2015) ·,'),输入特征的维数可W被有效约简。 但是,如何选择核参数和潜在特征数量还是一个开放问题。
[0005]常用的用^构建网络入侵检测模型的方法是人工神经网络(A顺)和支持向量机 (SVM)(例如,文献"Wang,G.,Hao,J.X.,Ma,J.,Huang,L.H.:A new approach to intrusion detection usingartificial neural networks and fuzzy clustering,Expert Syst.Appl .37,6225-6232(2010) ·,'和文献"趾an,L.,Awad,M. flliuraisingham,B:A new intrusion detection system usingsupport vector machines and hierarchical clustering, Int.J.Ve 巧 Data Bases 16,507-521(2007).,')D尽管逆传播神经网络(BP 顺) 已经在不同的应用背景中广泛应用,但其始终面临着局部最小、不可控的收敛速度和过拟 合等众多问题。对于SVM,必须^较长的学习时间解决二次规划(QP)问题;尽管有学者提出 在线SVM(参见文献,B ·,Sheng,ν· S.,Wang,Ζ·,Ho,D.,0sman,S ·,Li,S · : Incremental learning forv-support vector regression.Neural Networks the Official Journal of 化e International Neural Network Society,67,140-150(2015)·,'和文献^j,B·, Sheng,V.S.,Tay,K.Y.,民omano,W.,Li,S.: Incremental support vector learning for ordinal regression.IEEE Transactions on Neural Networks&Learning Systems,26 (7),1403-1416(2015).,'),但是仅能够获得次优解。文献(Schmidt,W.F.,Kraaijveld, Μ.A.,Duin,民.P.W.:Feed Forward Neural Networks With 民andom Weights,In:Pattern 民ecognition,1992.Vol.II. Conference B:Pattern Recognition Methodology and Systems ,Proceedings .,11th lAP民 International Conference onSOAug 1992-03Sep 1992,pp. 1-4.)提出了一种基于随机权重的单隐层前馈网络,其隐含层节点的权重和偏置 是在均匀分布的[-1,1]之间进行随机选择。但是,它不能保证构建的随机权重神经网络 (RWNN)模型具有普遍近似能力(在概率1意义下),这主要是由于其随机给定输入权重和偏 置白勺方式(参见文南犬('Cao,F.L,Wang,D.H,Zhu,H. :An iterative learning algorithm for feedforward neural networks with random weights. Information Sciencesl(9),546- 557(2016)/')。随机向量函数链接网络克服梯度学习算法的缺点(参见文献 ('Pao,Y.H.,Takefuji,Y.:Functional-link net computing:theory, system architecture, and functionalities . Computer 25(5) ,76-79(1992).,'臥及文南犬 ('Igelnik,B.,Pao,Υ.Η. : Stochastic choice of basis functions in adaptive function approximation 过nd the function过1一1ink net.IEEE Tr过ns过ctions on Neural Networks 6(6),1320-1329( 1995).,')。无直接链接情况的RV化的普遍近似能力的 理论证据表明,随机设定的输入权重和偏置的范围依靠于建模数据。显然,RWf^N最吸引人的 优点在于其快速的学习能力。较小的训练误差和权重范数意味着前馈网络的更好的泛化性 會b(参见文南犬('Bartlett,P.L. :The sample complexity of pattern classification with neural networks:the size of the weights is more important than the size of 化e network,IE邸 Trans. Inform.Theory 44(2) ,525-536(1998)·,'),这导致最近研究 中提出的正则化RW丽(RRW丽)(参见文献"Cao,F.L.,Tan,Y.P.,Cai,Μ·Μ· :Sparse algorithms of random weight networks and applications ,Expert Syst.Appl.41, 2457-2462(2014).")。显然,需要为不同的建模数据选择不同的正则化参数。因此,RRWf^N有 Ξ个建模参数,即隐含层节点、输入权重和偏置的范围,W及正则化参数,均取决于建模数 据。
[0006] 显然,很有必要基于全局优化的视角选择潜在特征和构建入侵检测模型。
【发明内容】
[0007] 有鉴于此,本发明提出一种网络入侵异常检测方法,W提高模型训练速度,便于网 络入侵异常检测模型的快速更新W适应动态网络的频繁变化。
[0008] 本发明的网络入侵异常检测方法包括:
[0009] S100、基于当前核参数将训练样本中的输入向量通过核映射方法映射到高维特征 空间获取对应的高维核矩阵,并基于核偏最小二乘方法化化S)提取所述高维核矩阵的全部 潜在特征;
[0010] S200、基于当前输入数据的累计方差百分比阔值从全部潜在特征中选取期望的潜 在特征;
[0011] S300、W期望的潜在特征为输入,W训练样本的输出向量为输出,根据当前随机参 数的取值范围、当前隐含层节点数量和当前正则化因子,基于随机权重神经网络方法训练 获取当前入侵检测模型,所述入侵检测模型包括当前随机隐含层输入权重和当前输入偏置 W及当前隐含层节点数量,所述随机参数的取值范围用于限定所述随机隐含层输入权重和 输入偏置的范围;
[0012] S400、判断根据当前的核参数、累计方差百分比阔值、随机参数取值范围、隐含层 节点数量和正则化因子获得的检测模型的识别率是否最大,如果否,执行步骤S500,如果 是,执行步骤S600;
[0013] S500、调整当前的核参数、累计方差百分比阔值、随机参数取值范围、隐含层节点 数量和正则化因子,执行步骤S100;
[0014] S600、将当前核参数W及期望的潜在特征提取方式和当前入侵检测模型记录为选 定的核参数、选定的期望潜在特征提取方式和选定的入侵检测模型;
[0015] S700、检测获取网络特征测试样本;
[0016] S800、基于选定的核参数、选定的期望潜在特征提取方式提取测试样本的期望的 潜在特征;
[0017] S900、根据所述测试样本的期望的潜在特征和选定的入侵检测模型计算获取网络 入侵类别。
[0018] 优选地,S100包括基于如下公式获取高维核矩阵:
[0019]
[0020] 其中,K=〇(xi)T〇(xm),l,m=l,2, . . .,k,〇(xi)是向量XI基于当前核参数的高维 映射,I是k维的单位矩阵;Ik是值为1长度为k的向量;换也,k是训练样本中输入样本的 数量。
[0021] 优选地,S100还包括:
[0022] 步骤S110、令i = 1,反I =度,Yi = Y,其中,y- !.v,也是训练样本的输出矩阵;
[0023] 步骤S120、随机获取Yi中一列赋值给Ui;
[0024]步骤S130、根据如下公式计算低维得分矩阵的得分向量ti和m的初始值:
[002引
冲,C功用于计算的中间量;
[0026]步骤S140、根据如下公式迭代计算低维得分矩阵的得分向量ti和m的值:
[0027] t产ti/1 I ti I I,c产ci/1 I ciI I,ui=YiCi;其中,户表示进行赋值,I I ti I I 为ti的范 数,I |ci| I为Cl的范数
[002引步骤S150、在ti收敛时,转向步骤S160,否则,转向步骤S140;
[0029] 步骤S160、根据如下公式计算输入和输出矩阵的残差:
[0030]
[0031] 步骤S170、令i = i+1,如果i,则转向步骤S180;否则转到步骤S120;其中,h为预 定的核特征的数量;
[0032] 步骤S180、根据如下公式计算获取潜在特征向量矩阵Zaii:
[0033]
[0034] 其中,T=[ti,t2, . . .,th],U=[山,U2, . . . ,Uh]。
[0035] 优选地,步骤S200包括选取对应的与输出数据的协方差矩阵特征值最大的h/个潜 在特征向量作为期望的潜在特征向量,其中,l·/满足:
[0036]
[0037] 其中,斗.是输入矩阵的潜在特征向量战&记,与对应的输出向量之间的协方差矩阵 的特征值,CPVlimit为当前输入数据的累计方差百分比阔值。
[0038] 优选地,所述步骤S300包括:
[0039] 步骤310、在范围[-α,α]内随机选择和,iNN = 1,2,…丄其中,α为当前随机参 数取值范围,*,? e心^为第iNN个随机输入权重,\。€i^为第iNN个输入偏置,L是当前的隐含层 节点数量;
[0040] 步骤S320、根据如下公式计算隐含层的数据矩阵Η:
[0041]
[0042] 其中,zieRh'是第1个训练样本对应的期望的潜在特征向量,L是当前的隐含层节 点数量,g()为预定的激活函数;
[0043] 步骤S330、根据如下公式计算输出权重参:
[0044] /) = W;'-// W./; 7-/' r,庚中,λ为当前正则化因子。
[0045] 优选地,步骤S500包括W网格寻优方法或启发式优化方法调整当前的核参数、累 计方差百分比阔值、随机参数取值范围、隐含层节点数量和正则化因子。
[0046] 优选地,步骤S800包括:
[0047] 步骤S810、基于如下公式获取高维核矩阵:
[004引
[0049] 其中,Kt= φ ((χ*63*)ι)Τφ (Xm),1,m=l,2, . . .,kt,φ ((xtest)i)是测试样本(xtest)i 基于当前核参数的高维映射,I是kt维的单位矩阵;Ik是值为1长度为k的向量;= 谊, kt是测试样本的数量;
[0050] 步骤S820、根据如下公式计算获取潜在特征向量矩阵(ZtBst)aii:
[0化1 ]
[0052]步骤S830、根据选定的期望潜在特征提取方式从潜在特征向量矩阵提取测试样本 的期望的潜在特征。
[0化3]优选地,步骤900包括根据如下公式计算获取网络入侵类别
[0056] 其中,ztestieRh'是第1个测试样本对应的期望的潜在特征向量,L是选定的隐含层 节点数量,为所述选定的入侵检测模型的随机输入权重,6,W为所述选定的入侵检测模 型的输入偏置,g〇为预定的激活函数。
[0057] 对于入侵检测模型构建问题,本发明提出一种新的监督非线性特征提取和正则化 随机权重神经网络(RRWNN)建模,用于入侵检测系统。核偏最小二乘化PLS)算法用于处理输 入特征的共线性和复杂非线性映射。运些提取的潜在特征输入RRWr^N算法用于构建具有较 高学习速度和较好泛化性能的入侵检测模型。采用全局优化策略选择基于KPLS-RRW順的入 侵检测模型的建模参数。基于KDD99数据的仿真表明了方法的有效性。
【附图说明】
[0058] 通过W下参照附图对本发明实施例的描述,本发明的上述W及其它目的、特征和 优点将更为清楚,在附图中:
[0059] 图1是本发明实施例的网络入侵异常检测方法的流程图;
[0060] 图2是本发明实施例的网络入侵异常检测方法的数据流图;
[0061] 图3是本发明实施例基于不同核参数进行特征提取的方差百分比示意图;
[0062] 图4是本发明实施例的方法不同建模参数与预测精度间的关系的示意图;
[0063] 图5是本发明实施例的方法基于不同维数约简方法运行20次的预测精度示意图。
【具体实施方式】
[0064] W下基于实施例对本发明进行描述,但是本发明并不仅仅限于运些实施例。在下 文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有 运些细节部分的描述也可W完全理解本发明。为了避免混淆本发明的实质,公知的方法、过 程、流程、元件和电路并没有详细叙述。
[0065] 此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且 附图不一定是按比例绘制的。
[0066] 除非上下文明确要求,否则整个说明书和权利要求书中的"包括"、"包含"等类似 词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是"包括但不限于"的含 义。
[0067] 在本发明的描述中,需要理解的是,术语"第一"、"第二"等仅用于描述目的,而不 能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,"多个"的含义 是两个或两个W上。
[0068] 图1是本发明实施例的网络入侵异常检测方法的流程图。图2是本发明实施例的网 络入侵异常检测方法的数据流图。如图1和图2所示,所述方法包括:
[0069] S100、基于当前核参数将训练样本中的输入向量通过核映射方法映射到高维特征 空间获取对应的高维核矩阵,并基于核偏最小二乘方法化化S)提取所述高维核矩阵的全部 潜在特征;
[0070] S200、基于当前输入数据的累计方差百分比阔值从全部潜在特征中选取期望的潜 在特征;
[0071] S300、W期望的潜在特征为输入,W训练样本的输出向量为输出,根据当前隐含层 输入权重和输入偏置(也即,随机参数)取值范围、当前隐含层节点数量和当前正则化因子, 基于随机权重神经网络方法训练获取当前入侵检测模型,所述入侵检测模型包括当前随机 输入权重和当前输入偏置W及当前隐含层节点数量
[0072] S400、判断根据当前的核参数、累计方差百分比阔值、随机参数取值范围、隐含层 节点数量和正则化因子获得的检测模型的识别率是否最大,如果否,执行步骤S500,如果 是,执行步骤S600;
[0073] S500、调整当前的核参数、累计方差百分比阔值、随机参数取值范围、隐含层节点 数量和正则化因子,执行步骤S100;
[0074] S600、将当前核参数W及期望的潜在特征提取方式和当前入侵检测模型记录为选 定的核参数、选定的期望潜在特征提取方式和选定的入侵检测模型;
[0075] S700、检测获取网络特征测试样本;
[0076] S800、基于选定的核参数、选定的期望潜在特征提取方式提取测试样本的期望的 潜在特征;
[0077] S900、根据所述测试样本的期望的潜在特征和选定的入侵检测模型计算获取网络 入侵类别。
[0078] 其中,在步骤S100和步骤S200,需要进行特征提取。特征提取是指线性/非线性方 式确定适当的低维数据替代原始的高维数据。本发明实施例通过应用核方法(也称核技巧, kernel trick)将网络检测数据映射到高维空间,然后再应用核偏最小二乘法进行降维,从 而可W对于非线性的网络检测数据进行有效的特征提取。PLS算法的目标是最大化输入数 据X =成搶和输出数据¥二执指间的协方差,其中k为训练样本数量。
[0079] 具体地,在步骤S100,首先基于如下公式获取高维核矩阵:
[0080]
[0081 ] 其中,1(=巫佔)了巫抽),1,111=1,2,...山为啡介矩阵,巫佔)是向量义1基于当前核 参数的高维映射,I是k维的单位矩阵;Ik是值为1长度为k的向量;k是训练样本中输入样本 的数量。
[0082] 然后,基于KPLS算法获取高维核矩阵的全部潜在特征向量。
[0083] 具体地,步骤S100利用KPLS进行全部潜在特征向量提取的流程如表1所示:
[0084] 表化化S算法
[0085]
[0086]
[0087] 步骤S100包括:
[008引步骤S110、令i = l,i^i二反,Υι = Υ,其中,Y是训练样本的输出矩阵;
[0089] 步骤S120、随机获取Yi中一列赋值给Ui;
[0090] 步骤S130、根据如下公式计算低维得分矩阵的得分向量ti和m的初始值:
[00川 二K沾,€,=??,化=Yi Ci;其中,C功用于计算的中间量;
[0092] 步骤S140、根据如下公式迭代计算低维得分矩阵的得分向量ti和m的值:
[0093] ti 户 ti/||ti| I,ci 户 Ci/I |ci| I,ui=Yi Ci;其中,户表示进行赋值,I Itill 为 ti 的范 数,I I Cl II为Cl的范数
[0094] 步骤S150、在ti收敛时,转向步骤S160,否则,转向步骤S140;
[00M]步骤S160、根据如下公式计算输入和输出矩阵的残差:
[0096]
[0097] 步骤S170、令i = i+1,如果i,则转向步骤S180;否则转到步骤S120;其中,h为预 定的核向量的数量;
[0098] 步骤S180、根据如下公式计算获取潜在特征向量矩阵Zaii:
[0099]
[0100] 其中,T=[ti,t2, . . .,th],U=[山,U2, . . . ,Uh]。
[0101] 由此,原始输入矩阵X的维数缩减到h维。
[0102] 通常,实际期望的化V数量化/)远远小于原始的全部化V数量化)。因此,可W通过 将潜在特征向量化LV)中贡献较大的一部分选取出来作为期望的特征向量,从而进一步减 少特征维度。
[0103] 具体地,通过输入数据的累计百分比方差(CPV)确定h/。在步骤S200,选取对应的 与输出数据的协方差矩阵特征值最大的h/个潜在特征向量作为期望的潜在特征向量,其 中,满足:
[0104]
[01化]其中,^是输入矩阵的潜在特征向量K侣与对应的输出向量之间的协方差矩阵 的特征值,CPVlimit为当前输入数据的累计方差百分比阔值。
[0106] 更具体地,可W针对每个潜在特征向量计算对应的特征值,并进行排序,排序后通 过捜索算法获取符合上述条件的l·/值。
[0107] 因此,选择适当的核参数Pker和CPV的阔值CPVlimit对获得期望的潜在特征非常必 要。
[0108] 在步骤S300,根据提取的期望的潜在特征,本发明实施例W期望的潜在特征为输 入,W训练样本的输出向量为输出,根据当前随机参数取值范围〇、当前隐含层节点数量L和 当前正则化因子λ基于随机权重神经网络方法(RWNN)训练获取当前入侵检测模型。
[0109] 随机权重神经网络(RWNN)可W采用下式表示:
[0110]
[01川其中,β=化,β2,...,扣]erL是输出层权重;L是隐含层节点数量;zeRh'是输入特 征向量;巧W e 和bi e R是在一定范围[-α,α ]内取值的输入权重和输入偏置。对于给定的训 练样本,令的<? 6^?&'和6;? 6? ^均匀分布在设定范围内随机选择,可^得到如下的线性等式:
[0112] 地=γ,其中
[0113] 在很多情况下,Η不是列满秩,甚至是病态的。因此,可W通过下式估计输出权重:
[0114]
[0115] 通过求解最小二乘问题,其解可W通过解析方式获得,也即:
[0116]
[0117] 其中,Η+是矩阵Η的Moore-Penrose广义逆。当H?非奇异时,则有:Η+=化邮-1扔
[0118] 但是,最小二乘问题通常都是病态的。正则化模型通常用于找到合适的解。因此, 正则化RWNN(RRWNN)的学习问题可W用下式表示:
[0122] 其中,λ>〇,用于调整训练误差和惩罚过拟合之间的均衡。因此,学习模型的泛化 能力和稳定性得到进一步的提高。上式的解可W表示为:
[0123]
[0124] 基于此,可W通过确定Η和正则化因子λ确定输出权重,从而获取模型。由于Η由随 机隐含层输入权重"^^及输入偏置\,确定。因此,需要确定输入权重Ww w及输入偏置%Μ 和正则化因子λ则可确定对应的入侵检测模型。
[0125]具体地,本发明实施例通过不断调整上述参数并评估不同入侵检测模型的预测效 果确定最优的入侵检测模型。
[01%] 其中,步骤S300的流程如表2所示:
[0127]表2:
[012 引
[0129] 步骤300包括:
[0130] 步骤S310、在范围[-α,α]内随机选择《^<和6,^,1鼎=1,2^''丄其中,〇为当前随机 参数取值范围,为第iNN个随机隐含层输入权重,A胃为第iNN个输入偏置,L是当前的隐含 层节点数量;
[0131] 步骤S320、根据如下公式计算隐含层的数据矩阵H:
[0132]
[0133] 其中,zieRh'是第1个训练样本对应的期望的潜在特征向量,L是当前的隐含层节 点数量,g()为预定的激活函数;
[0134] 步骤S330、根据如下公式计算输出权重β ;;
[0135] Ρ = (ηΤΗ + 1Ι)-也嗦,其中,λ为当前正则化因子。
[0136] 在步骤S400,对于通过RRWNN获取的入侵检测模型进行评价,如果达到最优则转入 后续流程,否则,进行调整进行特征提取的参数W及进行模型建立参数W获取新的入侵检 测模型。
[0137] 具体地,通过入侵检测模型的识别率来判断入侵检测模型是否最优。
[013引基于优化选择的建模参数集合{CPVlimit,Pker,a,L,A},最大化入侵识别模型识别准 确率的过程可W表述为如下优化问题:
[0139]
[0140]
[0141 ] 其中,施所|(.吟-兴)= 0)^=1 I表不正确识别的样本数量;(Pker)limit,aiimit和Llimit是 Pker,a和L的上限。
[0142] 上述优化问题可W优选通过网格寻优算法或启发式优化算法予W解决。
[0143] 由此,在步骤S500,可W通过如上所述的策略调整当前的核参数、累计方差百分比 阔值、随机参数取值范围、隐含层节点数量和正则化因子,并返回S100开始新一轮迭代。
[0144] 由此,通过多次迭代,可W获取到优化的入侵检测模型。
[0145] 在获取到入侵检测模型后,既可W基于特征提取参数和入侵检测模型来进行网络 入侵异常检测。
[0146] 具体地,在步骤S700,检测获取网络特征测试样本,已获得一组输入向量。
[0147] 在步骤800,基于选定的特征提取参数进行特征提取。
[0148] 具体地,步骤S800包括:
[0149] 步骤S810、基于如下公式获取高维核矩阵:
[0150]
[0151] Kt=巫((xtest)i)T巫(义。),1,111=1,2,...,4*,巫((义*63*)1)是测试样本(义*63*)1基于 当前核参数的高维映射,I是kt维的单位矩阵;Ik是值为1长度为k的向量;kt是测试样本的数 量;步骤S820、根据如下公式计算获取潜在特征向量矩阵(ZtBst)aii:
[0152]
[0153] 由于参数U、TW及核矩阵t之前已经由训练样本确定,因此,可W直接进行计算。
[0154] 步骤S830、根据选定的期望潜在特征提取方式从潜在特征向量矩阵提取测试样本 的期望的潜在特征。步骤S830基于步骤S200确定的期望的潜在特征数量h'来提取特征。
[0155] 最后,在步骤S900,基于对测试样本提取获得的期望的潜在特征,W及之前获得的 优化的入侵检测模型,可W计算模型输出,也即入侵异常的类别。
[0156] 步骤900包括根据如下公式计算获取网络入侵类别:
[0159] 其中,ztBstieRh'是第1个测试样本对应的期望的潜在特征向量,L是选定的隐含层 节点数量,为所述选定的入侵检测模型的随机输入权重,为所述选定的入侵检测模 型的输入偏置,gO为预定的激活函数。上述参数为模型参数,在模型建立时获得确定。
[0160] 基于本发明实施例的网络入侵异常检测方法,可W基于测试数据进行仿真验证。
[0161] 美国国防部高级规划署为了进行网络入侵异常检测评估,在MIT林肯实验室建立 了模拟美国空军局域网的网络环境仿真各种用户类型、各种不同的网络流量和攻击手段, 从而获得了原始的网络连接记录数据集。哥伦比亚大学的和北卡罗莱纳州立大学的学者采 用数据挖掘等技术对W上数据集进行特征分析和数据预处理后形成著名的KDD99数据集, 已经成为基于计算智能的网络入侵异常检测领域测试平台。下文中基于KDD99数据集进行 仿真验证。
[0162] KDD99数据集中的每个连接用41个特征来描述,其中34个为连续变量,7个为符号 变量。首先进行数据预处理,需要将文本型数据转化为数值型数据,W "协议类型"、"目标主 机的网络服务类型"和"连接正常或错误的状态"Ξ个负符号变量为例,转换成的编号如表1 所示。
[0163] 表1
[0164]
[0165] 邸D99数据集的是输出异常类别包含拒绝服务攻击(Dos)、扫描与探测(Probe)、未 经授权远程访问(R化)和对本地超级用户的非法访问(R2R)四大类共39种攻击类型,其中训 练集中出现22种,其它的17种只在测试集中出现,进而该数据集可有效检验分类器模型的 泛化能力。输出类别的处理如表2所示。
[0166] 表2
[0167]
[0169] 训练数据采用"kddcup.data_10_pe;rcent.gz",测试数据采用"corrected.gz"。本 文中分别从训练数据和测试数据中随机抽取0.5%和1%的作为训练和测试数据,其样本数 量分别为2470和3110。由于训练数据和测试数据的不同,首先需要去除训练数据中的值为0 的列,同时对测试数据做类似处理,处理后的输入变量的维数为39维。
[0170] 图3是本发明实施例基于不同核参数进行特征提取的方差百分比示意图。在KPLS 算法中采用径向基函数(RBF)进行潜在特征提取。图3示出了基于不同核参数(WPker = 0.1, 1,10和100为例)提取的前10个潜在特征的方差百分比(PV)的变化。图3表明:需要少数的几 个非线性化Vs就可W表征原始输入特征大部分变化;并且,采用不同核参数时,不同KLVs的 贡献(表征的方差百分比(PV))是不同的。因此,采用不同CPVlimit时,构建入侵检测模型所用 潜在特征也是不同的。通常,取CPViimit大于85%,基于Z-block的CPV进行KLVs的选择。可见, 通过结合入侵检测模型的预测精度选择Pker和CPVlimit是非常必要的。
[0171] 图4是本发明实施例的方法不同建模参数与预测精度间的关系的示意图。依据先 验知识,将5个建模参数的初值选择为:Pker = 1,CPViimit = 90,α = 1,L = 200和λ = 〇. 2。基于测 试样本预测精度评估模型性能,如下所示:
[0172]
[0173] 在采用网格寻优方法选择建模参数时,通过每次改变一个参数来观察参数变化对 模型预测精度的影响。考虑到训练和测试样本的随机选择过程,W及RRWN饰莫型初始化的随 机过程,模型重复运行20次。不同建模参数和预测性能的最大值、平均值和最小值间的关系 如图4所示。在实验中,本文最终选择的建模参数为:Pker = 50,CPVlimit = 0.8,α = 1,L = 200和 入= 0.2。采用运些建模参数,建模模型重复运行20次的统计结果为:KLVs的平均数量为3,远 小于原始输入特征的数量;预测精度的最小值、最大值和平均值分别为0.89804,0.9170和 0.9090,具有较好的预测稳定性和稳定性。
[0174] 图5是本发明实施例的方法基于不同维数约简方法运行20次的预测精度示意图。 监督的线性潜在特征提取(基于化S)方法、非监督线性特征提取(基于PCA)方法。运些方法 重复运行20次的预测精度和统计结果如图5所示。相对于基于PCA的方法,基于化S/KPLS的 方法具有较高的预测精度(平均精度)和较好的预测稳定性(最大和最小预测精度之差),其 主要的原因是基于PCA的方法属于非监督特征提取方法。也就是说,运些提取的特征与输出 数据间的相关性较弱。基于PLS的方法在训练样本上具有更高的预测精度,但其平均预测精 度低于基于KPLS的方法,即基于化S的方法存在一定程度的过拟合。上述结果表明了网络入 侵特征和行为类别间的复杂非线性映射关系和本文所提方法的有效性。
[0175] 对于入侵检测模型构建问题,本发明提出一种新的监督非线性特征提取和正则化 随机权重神经网络(RRWNN)建模,用于入侵检测系统。核偏最小二乘化PLS)算法用于处理输 入特征的共线性和复杂非线性映射。运些提取的潜在特征输入RRWr^N算法用于构建具有较 高学习速度和较好泛化性能的入侵检测模型。采用全局优化策略选择基于KPLS-RRW順的入 侵检测模型的建模参数。基于KDD99数据的仿真表明了方法的有效性。
[0176] 应理解,本发明可W设及用于执行本申请中所述操作中的一项或多项操作的设 备。所述设备可W为所需的目的而专口设计和制造,或者也可W包括通用计算机中的已知 设备,所述通用计算机有存储在其内的程序选择性地激活或重构。运样的计算机程序可W 被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别禪联到总线 的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、 光盘、CD-ROM、和磁光盘)、随即存储器(RAM )、只读存储器(ROM )、电可编程ROM、电可擦ROM 化PROM)、电可擦除可编程ROM化EPROM)、闪存、磁性卡片或光线卡片。可读介质包括用于W 由设备(例如,计算机)可读的形式存储或传输信息的任何机构。例如,可读介质包括随即存 储器(RAM)、只读存储器(ROM)、磁盘存储介质、光学存储介质、闪存装置、W电的、光的、声的 或其他的形式传播的信号(例如载波、红外信号、数字信号)等。
[0177] 本技术领域技术人员可W理解,可W用计算机程序指令来实现运些结构图和/或 框图和/或流图中的每个框W及运些结构图和/或框图和/或流图中的框的组合。可W将运 些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来 生成机器,从而通过计算机或其他可编程数据处理方法的处理器来执行的指令创建了用于 实现结构图和/或框图和/或流图的框或多个框中指定的方法。
[0178] 本技术领域技术人员可W理解,本发明中已经讨论过的各种操作、方法、流程中的 步骤、措施、方案可W被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各 种操作、方法、流程中的其他步骤、措施、方案也可W被交替、更改、重排、分解、组合或删除。 进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案 也可W被交替、更改、重排、分解、组合或删除。
[0179] W上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员 而言,本发明可W有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同 替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种网络入侵异常检测方法,包括: S100、基于当前核参数将训练样本中的输入向量通过核映射方法映射到高维特征空间 获取对应的高维核矩阵,并基于核偏最小二乘方法(KPLS)提取所述高维核矩阵的全部潜在 特征; S200、基于当前输入数据的累计方差百分比阈值从全部潜在特征中选取期望的潜在特 征; S300、以期望的潜在特征为输入,以训练样本的输出向量为输出,根据当前随机参数的 取值范围、当前隐含层节点数量和当前正则化因子,基于随机权重神经网络方法训练获取 当前入侵检测模型,所述入侵检测模型包括当前随机隐含层输入权重和当前输入偏置以及 当前隐含层节点数量,所述随机参数的取值范围用于限定所述随机隐含层输入权重和输入 偏置的范围; S400、判断根据当前的核参数、累计方差百分比阈值、随机参数取值范围、隐含层节点 数量和正则化因子获得的入侵检测模型的识别率是否最大,如果否,执行步骤S500,如果 是,执彳丁步骤S600; S500、调整当前的核参数、累计方差百分比阈值、随机参数取值范围、隐含层节点数量 和正则化因子,执行步骤S100; S600、将当前核参数以及期望的潜在特征提取方式和当前入侵检测模型记录为选定的 核参数、选定的期望潜在特征提取方式和选定的入侵检测模型; S700、检测获取网络特征测试样本; S800、基于选定的核参数、选定的期望潜在特征提取方式提取测试样本的期望的潜在 特征; S900、根据所述测试样本的期望的潜在特征和选定的入侵检测模型计算获取网络入侵 类别。2. 根据权利要求1所述的方法,其特征在于,S100包括基于如下公式获取高维核矩阵:其中,Κ= Φ (Χ1)ΤΦ (Xm),1,m=l,2, . . .,k,Φ (XI)是向量XI基于当前核参数的高维映 射,I是k维的单位矩阵;lk是值为1长度为k的向量;是训练样本中输入样本的数 量。3. 根据权利要求2所述的方法,其特征在于,S100还包括: 步骤si ?ο、令i = 1,k, = κ a=γ,其中,κ=尔么是训练样本的输出矩阵; 步骤S120、随机获取Yi中一列赋值给m; 步骤S130、根据如下公式计算低维得分矩阵的得分向量tjPm的初始值: t, = β;'ιι;,c;二Y/t,,Ui = YiCi;其中,Ci为用于计算的中间量; 步骤S140、根据如下公式迭代计算低维得分矩阵的得分向量tjPm的值: ti-ti/1 | ti| |,ci-ci/1 |ci| |,m=YiCi;其中,-表示进行赋值,| | ti| |为ti的范数,| Cil I为Ci的范数 步骤S150、在ti收敛时,转向步骤S160,否则,转向步骤S140; 步骤S160、根据如下公式计算输入和输出矩阵的残差: Kfrl = (I-t,C)K,(I-tt:), ^ - -t^Y, 步骤S170、令i = i+1,如果i多h,则转向步骤S180;否则转到步骤S120;其中,h为预定的 核特征的数量; 步骤S180、根据如下公式计算获取潜在特征向量矩阵Zall: =κυ{τ?κ??Λ = {ζχ,.,.ζ},\Ιγ 其中,Τ = [tl,t2, · · ·,th],U= [Ul ,U2,...,Uh]〇4. 根据权利要求3所述的方法,其特征在于,步骤S200包括选取对应的与输出数据的协 方差矩阵特征值最大的Μ个潜在特征向量作为期望的潜在特征向量,其中,h'满足:其中,為、是输入矩阵的潜在特征向量輅、}^与对应的输出向量之间的协方差矩阵的特 征值,CPVlimit为当前输入数据的累计方差百分比阈值。5. 根据权利要求3所述的方法,其特征在于,所述步骤S300包括: 步骤S310、在范围[_α,α]内随机选择1U和气N,iNN=l,2,….L其中,α为当前随机参数 取值范围,e,为第iNN个随机输入权重,为第iNN个输入偏置,L是当前的隐含层 节点数量; 步骤S320、根据如下公式计算隐含层的数据矩阵H:其中,Z1e#是第1个训练样本对应的期望的潜在特征向量,g〇为预定的激活函数; 步骤S330、根据如下公式计算输出权重p ; /} = (//'//以/) '/rr,其中,λ为当前正则化因子。6. 根据权利要求1所述的方法,其特征在于,步骤S500包括以网格寻优方法或启发式优 化方法调整当前的核参数、累计方差百分比阈值随机参数取值范围、隐含层节点数量和正 则化因子。7. 根据权利要求4所述的方法,其特征在于,步骤S800包括: 步骤S810、基于如下公式获取高维核矩阵:其中,心=〇((产,1)4(^),1,111=1,2,...,1^,〇((产,1)是测试样本(产") 1基于 当前核参数的高维映射,I是kt维的单位矩阵;lk是值为1长度为k的向量;kt是测试样本的数 量; 步骤S820、根据如下公式计算获取潜在特征向量矩阵(Ztest)all:步骤S830、根据选定的期望潜在特征提取方式从潜在特征向量矩阵提取测试样本的期 望的潜在特征。8.根据权利要求5所述的方法,其特征在于,步骤900包括根据如下公式计算获取网络 入侵类别其中,是第1个测试样本对应的期望的潜在特征向量,L是选定的隐含层节点 数量,《^为所述选定的入侵检测模型的随机输入权重为所述选定的入侵检测模型的输 入偏置,g〇为预定的激活函数。
【文档编号】H04L29/06GK106060008SQ201610306040
【公开日】2016年10月26日
【申请日】2016年5月10日
【发明人】汤健, 孙春来, 张健, 贾美英, 李 东
【申请人】中国人民解放军61599部队计算所, 南京信息工程大学