The invention discloses an anomaly detection method of SA based on iForest network, belonging to the field of network security. First, by randomly selecting multiple attribute tree iTree training on the training set, calculated by cross validation of abnormal detection precision, while using Q statistics to calculate the difference between iTree, and then the accuracy and diversity of iTree as selection criteria, according to the iTree difference and accuracy, using the simulated annealing algorithm from the initial forest choose good iTree to build an integrated iForest, then the test set to test the statistical anomaly score, the network intrusion detection. This method not only reduces the integration scale of iTree, but also improves the efficiency of network intrusion detection by using the fast convergence of simulated annealing algorithm, and improves the generalization ability and prediction performance of the algorithm.
【技术实现步骤摘要】
一种基于SA-iForest的网络入侵异常检测方法
本专利技术涉及网络安全领域,尤其是一种基于SA-iForest的网络入侵异常检测方法。
技术介绍
随着网络技术的飞速发展和网络规模的不断扩大,网络安全问题日趋严重。入侵检测作为维护网络安全的一项重要技术,俨然已成为信息安全领域一个重要的研究内容,获得了众多专家学者的广泛关注。入侵检测技术主要是通过分析相关的网络数据来判断系统中是否存在违背系统安全或安全策略的行为。IsolationForest算法的设计利用了异常数据的两个特征:极少且与众不同。即异常数据对象个数占数据集总体规模的比重较小,其次异常数据的属性值与正常的属性值相比存在明显差异。当在仅包含数值类型的训练集中,对数据对象进行递归地划分,直至每个数据对象都由一棵称为iTree的二叉树与其他对象区别开来。显然异常对象距离树的根节点较近,即路径长度较短,反映了仅需少量条件就可将异常对象与其他对象区别。与其他异常检测算法相比,IsolationForest没有利用距离或密度来检测异常,这消除了基于距离和密度方法的计算量。利用异常数据少且与众不同的特点,使得它们与正常数据快速分离,具有较低的线性时间复杂度。虽然IsolationForest算法在异常检测方面取得较好的效果,但仍存在一些不足之处:(1)IsolationForest算法对数据集进行异常检测的精确度与iTree的数目相关,而构建大规模iTree需要耗费大量内存,同时导致更大的计算。(2)由于iTree数量过多,iTree之间的差异将越来越不明显,其异常检测的精确度参差不齐,存在一些性能较差的i ...
【技术保护点】
一种基于SA‑iForest的网络入侵异常检测方法,其特征在于,包括如下步骤:步骤一构建第一颗iTree;网络入侵数据训练集DTrain={d1,d2,…,di,…,dn},其中di网表示为第i条网络入侵数据;络入侵数据属性集A={A1,A2,…,Ai,…,Am},其中Ai表示为第i个属性;从属性集A中随机地选择k(k≤m)个属性构成子属性集a={A1,A2,…,Ak},在a中随机选择一个属性Aj,然后对每个网络入侵数据,按照属性Aj的分裂值p进行划分;如果数据di的Aj属性的属性值di(Aj)<p,则放在左子树,反之则放在右子树;按此方式迭代地构造左、右子树,直至满足下列条件之一:(1)DTrain中只剩下一条数据或多条相同的数据;(2)树达到最大高度;步骤二重复步骤一再构建L‑1棵树组成初始森林T={T1,T2,…,TL},其中T表示L个iTree的集合,Ti表示第i棵iTree;步骤三用训练集DTrain对初始森林T进行训练,根据Q‑统计量法计算iTree之间的差异值,用交叉验证法计算每棵iTree的精度值ACC;
【技术特征摘要】
1.一种基于SA-iForest的网络入侵异常检测方法,其特征在于,包括如下步骤:步骤一构建第一颗iTree;网络入侵数据训练集DTrain={d1,d2,…,di,…,dn},其中di网表示为第i条网络入侵数据;络入侵数据属性集A={A1,A2,…,Ai,…,Am},其中Ai表示为第i个属性;从属性集A中随机地选择k(k≤m)个属性构成子属性集a={A1,A2,…,Ak},在a中随机选择一个属性Aj,然后对每个网络入侵数据,按照属性Aj的分裂值p进行划分;如果数据di的Aj属性的属性值di(Aj)<p,则放在左子树,反之则放在右子树;按此方式迭代地构造左、右子树,直至满足下列条件之一:(1)DTrain中只剩下一条数据或多条相同的数据;(2)树达到最大高度;步骤二重复步骤一再构建L-1棵树组成初始森林T={T1,T2,…,TL},其中T表示L个iTree的集合,Ti表示第i棵iTree;步骤三用训练集DTrain对初始森林T进行训练,根据Q-统计量法计算iTree之间的差异值,用交叉验证法计算每棵iTree的精度值ACC;ACC={X1,X2,…,XL}其中,Q表示L个iTree的差异矩阵;Qij表示为初始森林中树Ti与树Tj之间的差异值;Xj表示树Tj的精确值;如果任意两个iTree独立,那么这两个iTree的Q统计量的值为0;Q统计量的值在[-1,1]之间变化;Q统计量的值越大,表示两个iTree的差异度越小;极端情况,如果两个iTree的Q统计量的值为1,那么两个iTree差异度为0;步骤四初始化;取初始温度t0足够大,令温度t=t0,任取初始解T1;步骤五对当前温度t,重复步骤43-步骤46;步骤六对当前解T1随机扰动产生一个新解T2;步骤七计算T2的增量df=F(T2)-F(T1),其中F(T1)为树T1的适应度值;步骤八若df<0,则接受T2作为新的当前解,即T1=T2;否则按Metropolis规则,计算T2的接受概率p,即随机产...
【专利技术属性】
技术研发人员:徐东,王岩俊,孟宇龙,张子迎,姬少培,张朦朦,李贤,张玲玲,王磊,吕骏,
申请(专利权)人:哈尔滨工程大学,
类型:发明
国别省市:黑龙江,23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。