[发明专利]一种用机器学习技术对网络攻击行为进行分类检测的方法在审

专利信息
申请号: 201810202552.9 申请日: 2018-03-13
公开(公告)号: CN108540451A 公开(公告)日: 2018-09-14
发明(设计)人: 吕坤;郑宇坤 申请(专利权)人: 北京理工大学
主分类号: H04L29/06 分类号: H04L29/06;G06K9/62
代理公司: 北京理工正阳知识产权代理事务所(普通合伙) 11639 代理人: 毛燕
地址: 100081 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种用机器学习技术对网络攻击行为进行分类检测的方法,属于信息安全技术领域。具体为:①采集网络数据并进行预处理,得到训练数据。②构建并训练多级分类器。③用训练好的多级分类器对测试数据进行分类检测。本发明提出的方法与已有技术相比较,优点是:①通过对采集数据的预处理方法能够缩减数据规模,同时去除部分无关数据,提高了整体效率。②利用多级分类器和集成学习的思想,解决了单一分类器拟合精度不高的问题,大大提高了系统的检测精度。③基于改进的随机森林算法的数据分块方法的设计能够将不同类型的攻击行为检测实现为并行算法,提高系统的总体的检测速度。
搜索关键词: 多级分类器 分类检测 预处理 机器学习技术 网络攻击行为 攻击行为检测 信息安全技术 并行算法 采集数据 测试数据 单一分类 集成学习 数据分块 数据规模 随机森林 网络数据 训练数据 整体效率 检测 构建 拟合 去除 算法 采集 改进
【主权项】:
1.一种用机器学习技术对网络攻击行为进行分类检测的方法,其特征在于:其具体操作为:步骤一、采集网络数据并进行预处理,得到训练数据;所述训练数据分为正常数据和攻击数据;所述攻击数据按照不同攻击类型又分为多种类别,攻击类型的数量用符号N表示;N为正整数;每种类型训练数据的数量均不少于3000条;所述得到训练数据具体操作为:步骤1.1:从网络系统中采集网络数据;所述网络数据包括网络内容相关特征、网络流量相关特征和网路连接相关特征;步骤1.2:对所述网络数据进行预处理,具体为:步骤1.2.1:对所述网络数据进行数据清洗,去除特征项有缺失的数据以及特征项取值为非正常取值范围内的数据;步骤1.2.2:对清洗后的网络数据进行标准化处理;具体为:对字符类型的数据进行数值化映射或者进行二元化的数值变换;经过标准化处理后的网络数据表示为特征向量形式;步骤1.2.3:通过公式(1)对标准化处理后的网络数据进行归一化处理,使网络数据的每个特征项的取值在[0,1]范围内;其中,new_v表示网络数据中任意一特征项V标准化之后的取值,new_v∈[0,1];v表示网络数据中特征项V的原始值;max表示全部网络数据中特征项V的原始值中的最大值;min表示全部网络数据中特征项V的原始值中的最小值;步骤1.3:使用基于距离的局部离群因子LOF算法,计算经过预处理的网络数据的局部离群因子;具体为:步骤1.4:根据局部离群因子LOFk(p),判断点p是否为离群点;用符号ε表示离群点的阈值,ε为人为设定值,ε的取值范围为(1,2];当LOFk(p)>ε时,将点p标记为异常点,则点p对应的特征向量为异常数据,对异常数据做删除处理;否则,执行步骤1.5的操作;经过步骤1.4的操作,将剔除异常数据后得到的数据作为基础训练数据;步骤1.5:如果基本训练数据的维度m>Q,则执行步骤1.6的操作;否则,将基础训练数据作为训练数据;其中,Q为人为设定值,Q≥40;步骤1.6:采用特征选择算法对基础训练数据进行降维处理,使基础训练数据的维度降到T,T为人为设定值,T≤40;步骤1.7:分析并确认特征选择算法的有效性;具体操作为:步骤1.7.1:选定一个用于对基础训练数据进行分类的机器学习模型;所述机器学习模型为二值分类模型,用于将基础训练数据划分为正常数据或者攻击数据;所述机器学习模型包括逻辑回归模型、决策树和感知器;步骤1.7.2:将步骤1.4得到的基础训练数据作为所述机器学习模型的输入,得到分类结果,然后计算基础训练数据的分类准确率,用符号L1表示;步骤1.7.3:将步骤1.6得到的降维后的基础训练数据作为所述机器学习模型的输入,得到分类结果,并计算降维后的基础训练数据的分类准确度,用符号L2表示;步骤1.7.3:用符号δ表示评估结果的阈值,δ∈(0.9,1);如果则调大T值,然后重复步骤1.6至步骤1.7的操作;否则,结束本步骤的操作,将降维处理后的基础训练数据作为训练数据;步骤二、构建并训练多级分类器,具体操作步骤为:步骤2.1:对随机森林算法的投票表决规则进行改进,构建改进随机森林分类器;具体为:步骤2.1.1:构造n棵决策树,n为人为设定值,n>500;步骤2.1.2:用符号θ表示分类阈值,θ为人为设定值,θ∈(0,1);步骤2.1.3:用符号y表示网络数据的某一种类型,y∈Y,Y为网络数据的类型集合;步骤2.1.4:通过公式(4)得到一条训练数据的分类结果;其中,x表示一条训练数据,f(x)表示训练数据x属于类型y的分类函数取值;xi表示第i棵决策树的输入,xi为训练数据x的抽样;fi(xi)表示通过随机抽样构建的第i棵决策树的分类函数的取值;如果f(x)值为1,则将训练数据x的初始类型标注为类别y;步骤2.1.5:将步骤一得到的训练数据作为改进随机森林分类器的输入,经过分类操作,完成对训练数据的初始类型标注;由于攻击类型数量为N,加上正常数据类型,一共有(N+1)种类型;步骤2.2:使用迭代方法构建基于自适应增强AdaBoost思想的支持向量机SVM的集成分类器;迭代过程中各训练数据和集成分类器的权重计算方法具体为:步骤2.2.1:对于m条训练数据,用符号w1,w2,w3…wm分别表示1至第m个训练数据的权重,并设置w1,w2,w3…wm的初始值均为用符号t表示当前迭代次数,设置当前迭代次数的初始值t=0;步骤2.2.2:构建第t个以高斯函数为核函数的支持向量机SVM的基分类器,用符号gt表示,该分类器的分类函数如公式(5)所示;以训练数据集作为基分类器gt的输入,得到训练结果;其中,g(x)表示基分类器gt的分类函数取值;sgn(·)表示符号函数;a为一条训练数据;为支持向量;b为偏置值,b的初始值为人为设定值,其取值范围为[0,0.5];K(xr,xs)为高斯核函数;步骤2.2.3:选择平方损失函数作为基分类器gt的损失函数;计算基分类器gt的损失函数的值,设置基分类器gt的损失函数的阈值为为人为设定值,步骤2.2.4:如果基分类器gt损失函数的值小于阈值则得到所述多级分类器,所述多级分类器的分类函数如公式(6);然后,通过公式(7)计算基分类器gt的模型权重,用符号dt表示;结束操作;如果基分类器gt损失函数的值不小于阈值则执行步骤2.2.5的操作;其中,g表示多级分类器的分类函数的值;T为总迭代次数;其中,a表示第a条训练数据;wt(a)表示第a条训练数据在第t次迭代中的权重取值;gt(a)表示基分类器gt对训练数据a的训练结果;yt(a)表示训练数据a的真实结果;步骤2.2.5:使用公式(8)调整训练数据的权重w1,w2,w3…wm,并对各训练数据的权重进行标准化处理,保证所有训练数据的权重和为1;然后使迭代次数自增1,返回到步骤2.2.2,执行步骤2.2.2的操作;其中,wt+1(a)表示训练数据a第(t+1)次迭代中的权重取值;β为调整系数,当训练数据a的训练结果和真实结果相同时,β=1,当训练数据a的训练结果和真实结果不同时,β=‑1;步骤2.3:训练基于自适应增强AdaBoost思想的支持向量机SVM;将步骤2.1得到的每种类型的训练数据分别输入到一个基于自适应增强AdaBoost思想的支持向量机SVM的输入;经过训练,得到(N+1)个训练好的基于自适应增强AdaBoost思想的支持向量机SVM;经过步骤二的操作,得到一个训练好的多级分类器;步骤三、用训练好的多级分类器对测试数据进行分类检测;在步骤二操作的基础上,将测试数据输入到多级分类器,得到最终分类结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201810202552.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top