[发明专利]一种基于SA-iForest的网络入侵异常检测方法有效
申请号: | 201710603864.6 | 申请日: | 2017-07-21 |
公开(公告)号: | CN107426207B | 公开(公告)日: | 2019-09-27 |
发明(设计)人: | 徐东;王岩俊;孟宇龙;张子迎;姬少培;张朦朦;李贤;张玲玲;王磊;吕骏 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/24 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于SA‑iForest的网络入侵异常检测方法,属于网络安全领域。首先通过对训练集随机选择属性训练出多棵iTree,通过交叉验证计算出它们的异常检测精度,同时采用Q‑统计量计算出iTree之间的差异性,然后把精确度和差异性作为iTree挑选标准,根据iTree的差异性和精确度,利用模拟退火算法从初始森林中选出比较优秀的iTree来构建集成iForest,然后对测试集进行测试统计出其异常分值,完成对网络入侵异常检测。该方法不仅减小了iTree的集成规模而且利用模拟退火优化算法的快速收敛性来提高网络入侵异常检测效率,同时还提高了算法的泛化能力和预测性能。 | ||
搜索关键词: | 一种 基于 sa iforest 网络 入侵 异常 检测 方法 | ||
【主权项】:
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,…Xj…,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,重复步骤六‑步骤九;步骤六对当前解T1随机扰动产生一个新解T2;步骤七计算T2的增量df=F(T2)‑F(T1),其中F(T1)为树T1的适应度值;步骤八若df<0,则接受T2作为新的当前解,即T1=T2;否则按Metropolis规则,计算T2的接受概率p,即随机产生(0,1)区间上均匀分布的随机数rand,若p>rand,也接受T2作为新的当前解,即T1=T2,否则保留当前解T1;
其中,κ为玻耳兹曼常数,exp表示自然指数;步骤九如果满足设定的终止条件,则输出当前解T1为最优解,终止条件通常取为在连续若干个Metropolis链中新解T2都没有被接受时终止或者是设定结束温度;否则按衰减函数衰减温度t后返回步骤五;所述衰减函数为:
其中,ts为第θ步时的温度值,t0为初始温度;步骤十,重复步骤六‑步骤九,从初始森林T中选出l个具有较优适应值的iTree组合成iForest,l≤L;每棵iTree的适应度函数关系如下式:
其中,F(Tj)表示为树Tj的适应度值;W1,W2分别表示精确度和差异性对应的权重;步骤十一对待检测数据进行预测,计算待测数据d在每一棵iTree的路径长度h(d);由于iTree与二叉查找树的结构等价,所以包含数据d的叶节点的路径长度等于二叉查找树中失败查询的路径长度;二叉查找树中失败查询的路径长度:C(n)=2H(n‑1)‑(2(n‑1)/n)其中,H(i)=Ln(i)+γ,γ为欧拉常数;n为叶子节点数;C(n)为给定n时h(d)的平均值,使用它来标准化h(d);待检测数据d的异常分数S(d,n)如公式所示:
其中,E(h(d))为iTree集合中h(d)的平均值;当E(h(d))→C(n)时,S(d,n)→0.5,即当所有数据均返回的S(d,n)≈0.5时,那么全部样本中没有明显的异常值;当E(h(d))→0时,S(d,n)→1,即当数据返回的S(d,n)非常接近于1时,那么它们是异常值;当E(h(d))→n‑1时,S(d,n)→0,即当对象返回的S(d,n)远远小于0.5时,那么它们有很大的可能被评价为正常值;此时完成对网络入侵异常检测。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710603864.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种手持计算器
- 下一篇:一种便携式中日英翻译机