一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于自动编码器的无监督未知攻击检测方法及系统

2022-12-20 20:32:48 来源:中国专利 TAG:


1.本发明属于网络攻击检测领域,特别涉及一种基于自动编码器的无监督未知攻击检测方法及系统。


背景技术:

2.随着计算机技术的不断发展和普及,网络攻击形式层出不穷,为了提高网络安全,需要对网络攻击进行检测。传统的网络攻击检测方法主要是构建入侵检测模型,利用入侵检测模型检测网络是否存在攻击。然而在建立入侵检测模型时,数据集的特征往往对分类器的结果具有至关重要的作用,一旦数据集的特征维度过高或者含有较多噪声特征,则分类器的效率往往会比较低,并且计算时间消耗较长;此外,目前存在较多带类别标签的开源数据集,基于这些开源数据集建立的有监督的入侵检测分类器在检测未知攻击方面往往检测率比较低,且在泛化能力方面不太适用于真实网络环境下的攻击检测。


技术实现要素:

3.本发明提供一种基于自动编码器的无监督未知攻击检测方法及系统。
4.为达到上述目的,本发明采用如下技术方案:
5.本发明其中一个技术方案提供一种基于自动编码器的无监督未知攻击检测方法,所述对数据集进行特征简约处理,获得新的数据集包括:
6.分析数据集中某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值;
7.依照相关性值从大到小的顺序对特征进行排序;
8.从最后一维开始删除特征,利用随机森林算法对数据集进行训练,并获得acc1值,再从剩余维数特征中去掉最后一维,利用随机森林算法对数据集进行训练,获得一个acc2值;
9.将acc1与acc2进行比较,若acc1<acc2,则继续进行上述步骤,依次计算,直到进行到第i次计算,满足acc
i-1
>acci,则停止;
10.经过i次计算,删掉后i-1个特征,保留剩下特征并输出,获得新的数据集。
11.结合第一个技术方案,在第一个技术方案的第一种可能的实现方式中,所述将新的数据集输入到无监督分类器进行训练获得检测模型包括:
12.从新的数据集中选定两个正常数据样本集,分成样本集s和验证集s


13.将正常样本x={x1,x2,

,xn}输入到自动编码器进行编码和解码,获得结果y={y1,y2,

,yn};
14.计算x与y的差异值ε,并对自动编码器进行训练,在确保ε最小情况下自动编码器各个参数达到最优,获得检测模型;
15.利用验证集s

对检测模型进行验证,并获取阈值ε

,检测模型训练完毕。
16.结合第一个技术方案,进一步改进的技术方案中,所述差异值ε表示为:
[0017][0018]
本发明第二个技术方案提供一种基于自动编码器的无监督未知攻击检测系统,所述系统包括:
[0019]
数据处理模块,所述数据处理模块被配置为对数据集进行特征简约处理,获得新的数据集;
[0020]
检测模型获取模块,所述检测模型获取模块被配置为将新的数据集输入到无监督分类器进行训练获得检测模型;
[0021]
检测模块,所述检测模块被配置为利用检测模型对待检测数据集进行检测。
[0022]
结合第二个技术方案,进一步改进的技术方案中,所述数据处理模块包括:
[0023]
相关性值计算子模块,所述相关性值计算子模块被配置为分析数据集中某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值;
[0024]
排序子模块,所述排序子模块被配置为依照相关性值从大到小的顺序对特征进行排序;
[0025]
acc值计算子模块,所述acc值计算子模块被配置为从最后一维开始删除特征,利用随机森林算法对数据集进行训练,并获得acc1值,再从剩余维数特征中去掉最后一维,利用随机森林算法对数据集进行训练,获得一个acc2值;
[0026]
比较子模块,所述比较子模块被配置为将acc1与acc2进行比较,若acc1<acc2,则继续向acc值计算子模块发送指令,依次计算,直到进行到第i次计算,满足acc
i-1
>acci,则停止;
[0027]
获取子模块,所述获取子模块被配置为经过i次计算,删掉后i-1个特征,保留剩下特征并输出,获得新的数据集。
[0028]
结合第二个技术方案,进一步改进的技术方案中,所述检测模型获取模块包括:
[0029]
样本选定子模块,所述样本选定子模块被配置为从新的数据集中选定两个正常数据样本集,分成样本集s和验证集s


[0030]
编码子模块,所述编码子模块被配置为将正常样本x={x1,x2,

,xn}输入到自动编码器进行编码和解码,获得结果y={y1,y2,

,yn};
[0031]
训练子模块,所述训练子模块被配置为计算x与y的差异值ε,并对自动编码器进行训练,在确保ε最小情况下自动编码器各个参数达到最优,获得检测模型;
[0032]
验证子模块,所述验证子模块被配置为利用验证集s

对检测模型进行验证,并获取阈值ε

,检测模型训练完毕。
[0033]
结合第二个技术方案,进一步改进的技术方案中,所述差异值ε表示为:
[0034][0035]
本发明提供的基于自动编码器的无监督未知攻击检测方法及系统,首先利用相关性分析方法与随机森林相结合的方法对数据集的特征进行约简,降低特征维度;其次考虑在真实的网络环境中,网络流量数据存在很少的类别标签或者不存在类别标签,进一步利用无监督学习构建未知攻击检测模型,可以精准的将未知攻击检测出来。
附图说明
[0036]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0037]
图1是本发明其中一个实施例提供的一种基于自动编码器的无监督未知攻击检测方法的流程示意图;
[0038]
图2是本发明提供的对数据集进行特征简约处理,获得新的数据集的流程图;
[0039]
图3是本发明提供的将新的数据集输入到无监督分类器进行训练获得检测模型的流程图;
[0040]
图4是本发明另一个实施例提供的一种基于自动编码器的无监督未知攻击检测系统的结构示意图。
具体实施方式
[0041]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0042]
本发明其中一实施例提供一种基于自动编码器的无监督未知攻击检测方法,如图1所示,所述方法包括:
[0043]
s1、对数据集进行特征简约处理,获得新的数据集;
[0044]
如图2所示,所述对数据集进行特征简约处理,获得新的数据集包括:
[0045]
s11、分析数据集中某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值;
[0046]
本技术利用信息相关性分析方法获取数据集内某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值。
[0047]
s12、依照相关性值从大到小的顺序对特征进行排序;
[0048]
排在最前边的特征与类别标签的相关性最大,排在最后边的特征与类别标签的相关性最小。
[0049]
s13、从最后一维开始删除特征,利用随机森林算法对数据集进行训练,并获得acc1值,再从剩余维数特征中去掉最后一维,利用随机森林算法对数据集进行训练,获得一个acc2值;
[0050]
比如按照相关性排序之后的原始特征是41维,则去掉最后一维特征,利用随机森林算法对具有前40维特征的数据集进行训练,获得acc1值;再从40维特征中去掉最后一维,利用随机森林算法对具有前39维特征的数据集进行训练,获得acc2值。
[0051]
s14、将acc1与acc2进行比较,若acc1<acc2,则继续进行s13,依次计算,直到进行到第i次计算,满足acc
i-1
>acci,则停止;
[0052]
s15、经过i次计算,删掉后i-1个特征,保留剩下特征并输出,获得新的数据集。
[0053]
最后,经过i次计算,删掉后i-1个特征,保留前42-i个特征并输出。
[0054]
s2、将新的数据集输入到无监督分类器进行训练获得检测模型。
[0055]
无监督未知攻击检测:数据集经过特征约简之后,具有42-i维,将该维度的数据集作为训练集。
[0056]
本发明提出的检测模型是基于自动编码器提出来的,自动编码器是神经网络的一种,内部为隐含层,包括编码器和解码器两部分。
[0057]
如图3所述,将新的数据集输入到无监督分类器进行训练获得检测模型包括如下步骤:
[0058]
s21、从新的数据集中选定两个正常数据样本集,分成样本集s和验证集s


[0059]
其中,两个正常数据样本集不需要类别标签。样本集s用于训练,验证集s

用于验证,两个样本集不重复。
[0060]
s22、将正常样本x={x1,x2,

,xn}输入到自动编码器进行编码和解码,获得结果y={y1,y2,

,yn};xn表示第n个样本,yn表示第n个样本结果,n表示样本个数,n=1、2、3......;
[0061]
其中,正常样本x={x1,x2,

,xn}为特征简约出来后的样本,n为样本个数。
[0062]
s23、计算x与y的差异值ε,并对自动编码器进行训练,在确保ε最小情况下自动编码器各个参数达到最优,获得检测模型;
[0063]
本发明利用二者距离平方和并开根号,具体表示为其中j表示第j个样本。
[0064]
s24、利用验证集s

对检测模型进行验证,并获取阈值ε

,检测模型训练完毕。
[0065]
其中,记录99%的样本集对应的差异值的大小并取平均,做为阈值ε


[0066]
s3、利用检测模型对待检测数据集进行检测。
[0067]
对于新输入的数据集(不带类别标签)来说,如果是正常数据集输入该检测模型,则差异值小于ε

,极少数情况会等于ε

;如果是攻击数据集输入该检测模型,则差异值大于ε

。不管是已知攻击还是未知攻击,本发明提供的方法都可以准确的检测出来,并且对于输入检测模型的数据没有类标签要求,更适用于真实的网络环境中。
[0068]
本发明提供的基于自动编码器的无监督未知攻击检测方法,首先利用相关性分析方法与随机森林相结合的方法对数据集的特征进行约简,降低特征维度;其次考虑在真实的网络环境中,网络流量数据存在很少的类别标签或者不存在类别标签,进一步利用无监督学习构建未知攻击检测模型,可以精准的将未知攻击检测出来。
[0069]
本发明另一实施例提供一种基于自动编码器的无监督未知攻击检测系统,如图4所示,所述系统包括:
[0070]
数据处理模块10,所述数据处理模块被配置为对数据集进行特征简约处理,获得新的数据集;
[0071]
进一步改进的方案中,所述数据处理模块包括:
[0072]
相关性值计算子模块101,所述相关性值计算子模块被配置为分析数据集中某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值;
[0073]
本技术利用信息相关性分析方法获取数据集内某个样本的每个特征与所述样本对应类别标签之间的相关性,并得到相关性的值。
[0074]
排序子模块102,所述排序子模块被配置为依照相关性值从大到小的顺序对特征进行排序;
[0075]
排在最前边的特征与类别标签的相关性最大,排在最后边的特征与类别标签的相关性最小。
[0076]
acc值计算子模块103,所述acc值计算子模块被配置为从最后一维开始删除特征,利用随机森林算法对数据集进行训练,并获得acc1值,再从剩余维数特征中去掉最后一维,利用随机森林算法对数据集进行训练,获得一个acc2值;
[0077]
比如按照相关性排序之后的原始特征是41维,则去掉最后一维特征,利用随机森林算法对具有前40维特征的数据集进行训练,获得acc1值;再从40维特征中去掉最后一维,利用随机森林算法对具有前39维特征的数据集进行训练,获得acc2值。
[0078]
比较子模块104,所述比较子模块被配置为将acc1与acc2进行比较,若acc1<acc2,则继续向acc值计算子模块发送指令,依次计算,直到进行到第i次计算,满足acc
i-1
>acci,则停止;
[0079]
获取子模块105,所述获取子模块被配置为经过i次计算,删掉后i-1个特征,保留剩下特征并输出,获得新的数据集。
[0080]
最后,经过i次计算,删掉后i-1个特征,保留前42-i个特征并输出。
[0081]
检测模型获取模块20,所述检测模型获取模块被配置为将新的数据集输入到无监督分类器进行训练获得检测模型。
[0082]
无监督未知攻击检测:数据集经过特征约简之后,具有42-i维,将该维度的数据集作为训练集。
[0083]
本发明提出的检测模型是基于自动编码器提出来的,自动编码器是神经网络的一种,内部为隐含层,包括编码器和解码器两部分。
[0084]
其中,所述检测模型获取模块包括:
[0085]
样本选定子模块201,所述样本选定子模块被配置为从新的数据集中选定两个正常数据样本集,分成样本集s和验证集s


[0086]
其中,两个正常数据样本集不需要类别标签。样本集s用于训练,验证集s

用于验证,两个样本集不重复。
[0087]
编码子模块202,所述编码子模块被配置为将正常样本x={x1,x2,

,xn}输入到自动编码器进行编码和解码,获得结果y={y1,y2,

,yn};
[0088]
其中,正常样本x={x1,x2,

,xn}为特征简约出来后的样本,n为样本个数。
[0089]
训练子模块203,所述训练子模块被配置为计算x与y的差异值ε,并对自动编码器进行训练,在确保ε最小情况下自动编码器各个参数达到最优,获得检测模型;
[0090]
本发明利用二者距离平方和并开根号,具体表示为其中j表示第j个样本。
[0091]
验证子模块204,所述验证子模块被配置为利用验证集s

对检测模型进行验证,并获取阈值ε

,检测模型训练完毕。
[0092]
其中,记录99%的样本集对应的差异值的大小并取平均,做为阈值ε


[0093]
检测模块30,所述检测模块被配置为利用检测模型对待检测数据集进行检测。
[0094]
对于新输入的数据集(不带类别标签)来说,如果是正常数据集输入该检测模型,则差异值小于ε

,极少数情况会等于ε

;如果是攻击数据集输入该检测模型,则差异值大于ε

。不管是已知攻击还是未知攻击,本发明提供的系统都可以准确的检测出来,并且对于输入检测模型的数据没有类标签要求,更适用于真实的网络环境中。
[0095]
本发明提供的基于自动编码器的无监督未知攻击检测系统,首先利用相关性分析方法与随机森林相结合的方法对数据集的特征进行约简,降低特征维度;其次考虑在真实的网络环境中,网络流量数据存在很少的类别标签或者不存在类别标签,进一步利用无监督学习构建未知攻击检测模型,可以精准的将未知攻击检测出来。
[0096]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
[0097]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0098]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献