公开/公告号CN112765148A
专利类型发明专利
公开/公告日2021-05-07
原文格式PDF
申请/专利权人 南京信息工程大学;
申请/专利号CN202110143858.3
申请日2021-02-02
分类号G06F16/215(20190101);G06F16/28(20190101);G06N3/08(20060101);G06N3/04(20060101);
代理机构32238 南京汇盛专利商标事务所(普通合伙);
代理人张立荣;乔炜
地址 210044 江苏省南京市江北新区宁六路219号
入库时间 2023-06-19 10:54:12
技术领域
本发明涉及一种基于改进SVM多分类的网络入侵检测方法,属于网络入侵检测技术领域。
背景技术
随着网络技术的发展和新型网络的应用,面对日益复杂的网络环境和网络攻击方式,传统的网络安全技术已难以满足目前人们对于网络安全和信息安全的需求,因此,网络入侵检测成为当前研究的一个热点。
近年来,机器学习应用于网络入侵检测领域的研究已经受到越来越多的关注。与传统入侵检测方法不同的是,它是通过对入侵检测问题重新剖解分析,将其转变为对模式识别和分类问题的研究,采用机器学习算法构建分类器,对网络中的正常行为和异常行为进行分类,有效地提高了检测率、降低了误报率。而支持向量机(SVM)是机器学习中较为常见的用于问题分类的方法,但其存在的问题是对于二元问题有着良好的分类效果,对于多元问题采取的策略也是将多元转换为多组二元问题来解决的,类似于二叉树的策略。这种做法简单易理解,但对于更为复杂的多元问题,且每类问题的关联性相似度较强的,则不易被有效检测出来。
发明内容
本发明为了解决现有技术中存在的问题,提供一种提高了多元分类的效率,简化了多元分类的拓扑结构,节省了计算资源的基于改进SVM多分类的网络入侵检测方法。
为了达到上述目的,本发明提出的技术方案为:一种基于改进SVM多分类的网络入侵检测方法,包括如下步骤:
步骤一、获取数据并对数据进行预处理;
步骤二、将预处理后的数据分为正常和攻击的二元数据类型,所述攻击数据包括若干分类类型,将数据经过SVM输出二元分类结果,若分类结果为正常类型,则直接输出;若分类结果为攻击类型,则将分类数据代入BP神经网络;
步骤三、构建三层BP神经网络,BP神经网络的输入层节点数a、隐含层节点数h、输出节点数c,其中,h=2a+1;将分类数据输入BP神经网络得到输出结果。
对上述技术方案的进一步设计为:数据的预处理包括数据清洗、数据标准化和归一化处理。
数据标准化采用Z-score方法对数值型特征进行标准化处理:
其中,r为标准化前的数值,z为标准化后的值,μ为数据平均值,s为标准差。
数据归一化是按下述规则将数据映射到区间[0,1],
其中,x为归一化后的值,zmax为标准化后的最大值,zmin为标准化后的最小值。
所述BP神经网络隐含层神经元之间设置有权重系数,分类数据输入BP神经网络后将权重系数与输入数据相乘得到预测值,将预测值f(xi)与对应的真实值f(xi)’按下式求得预测误差,
e
其中,e
设置最小误差,若预测误差小于等于预设的最小误差值,则输出结果;若大于预设的最小误差值,则将这个误差值通过隐含层神经元向后传播,并调整权重系数,然后重复将分类数据输入BP神经网络求得预测误差的操作,直至预测误差小于等于预设的最小误差,输出最后的结果。
本发明的有益效果为:
(1)简化了原有SVM分类器在面对多分类问题时,拓扑结构复杂的问题,减少了计算资源。(2)相比于直接应用BP神经网络将多分类问题直接分离出来,本发明的优势在于SVM分类输出的一种结果,可以在最终的结果中实现快速输出,同时快速输出的结果在整个网络入侵检测过程中属于较为重要的一个环节,省略了大量冗余的计算过程,可以实现计算资源的整合与优化。
附图说明
图1是SVM多元分类的二叉树结构图;
图2是本发明改进的SVM多元分类的树型拓扑结构图;
图3是三层BP神经网络拓扑结构图;
图4是本发明的流程图。
具体实施方式
下面结合附图以及具体实施例对本发明进行详细说明。
实施例
本实施例的一种基于改进SVM多分类的网络入侵检测方法,流程图如图4所示,该方法包括以下步骤:
(1)数据的获取和预处理;
(11)数据的获取主要是通过网站用户的数据库得到的原始数据,数据的预处理包括数据清洗和数据标准化、归一化处理。在本实施例中主要是获取的古代数学网页的数据库信息,其记录了用户的登录和浏览等记录。
(12)数据清洗是在得到原始数据之后,对数据进行重新审查和校验,目的在于删除重复信息、纠正存在的错误,并保证数据一致性。将错误、缺失和冗余的数据剔除,得到一份具有一致性的数据。
(13)将原始数据经清洗后,为了消除指标间量纲的影响并且保证数据输入的稳定性,要对数据进行标准化和归一化处理。标准化采用Z-score方法对数值型特征进行标准化处理,通过计算公式(1):
其中,r为标准化前的数值,z为标准化后的值,μ为数据平均值,s为标准差。
将标准化的数据根据一定的规则,映射到区间[0,1],通过计算公式(2):
其中,x为归一化后的值,z
表1所示为本实施例中数据标识类型及其含义说明
表1
(2)将数据分为正常(normal)和攻击(attack),两种数据类型,将二元分类经过SVM输出得出最终的分类结果。
(21)首先确定输入集合X={x
(22)svm在求解最优分类结果的过程为:构建线性判别函数,
g(x)=ω
简化为:
g(x)=ω
其中,g(x)表示输出值,x
其中,||ω||表示二范数,其定义为:
(23)由于不能保证所有样本均线性可分,因此在目标函数中增加惩罚项来间接增大目标函数值。通过计算公式(6):
其中,ξ
(24)引入径向基函数核(RBF),经SVM二分类后得出分类结果。若分类结果为normal类型,则直接输出,若分类结果为attack类型,则将分类数据代入BP神经网络中,作进一步分类说明。
(3)如图3是三层BP神经网络的拓扑结构,建立三层BP神经网络的具体步骤如下:
(31)确定输入层节点数a、隐含层节点数h、输出节点数c,其中a,c由具体的系统决定,h=2a+1。在本实施例中输入节点数a为4,输出节点数c为4,则隐含层节点数h为9。
(32)由输入数据通过隐含层神经元向前传播,每一个神经元之间附有初始权重,在经过一个神经元后,则将权重系数与输入数据相乘得到一个预测值f(x
e
其中,e
(33)若预测误差小于等于预设的最小误差值,则将结果此刻输出,若大于预设的最小误差值,则将这个误差值通过隐含层神经元向后传播,并不断调整其权重。然后再次重复步骤(32)的操作,直至完成预测误差小于等预设的最小误差值,输出最后的结果。在本实施例中设置的最小误差值为10
(4)完成整个网络入侵检测过程,分析网络入侵的结果,并通过完善网页的设计和完善网页的监管机制,实现更安全的网络环境。
图1所示为直接按照以往SVM面对多元分类问题,构建的二叉树模型。首先按数据标记类型0~4进行第一层SVM分类,分为0和1~4,其中还包括1和0,2~4、2和0~1,3~4、3和0~2,4,以及4和0~3这几种分类方式,图1所示仅为其中一种分类方式,以下几层SVM的分类同样只列举了其中一种方式进行排布。共构成4层的二叉树SVM分类模型。虽然这种分类方式简单易懂,但面对本实施例中5种方式的网络入侵检测,则会带来更多的计算量。
图2所示是本发明实施例方法对多元分类问题改进的树形拓扑结构图,其中共分为了2层树形拓扑结构,与图1对比之后,发现本发明的方法极大的简化了拓扑结构在第一层的SVM分类器中,若检测出来的结果为normal型,则可以将其结果直接输出,并不需要再次等到其他分类器的结果完成呈现出来。这极大的节约计算资源。
本发明的技术方案不局限于上述各实施例,凡采用等同替换方式得到的技术方案均落在本发明要求保护的范围内。
机译: 通过重构构成句子的单词的语义类别而获得的词汇语义模式,将一种文档分类为多个文档的文档多分类设备和文档多分类方法
机译: 基于SVM-SOM组合的SVM-SOM DDoS检测系统及方法
机译: 基于SVM-SOM组合的SVM-SOM DDoS检测系统及方法