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

一种基于膨胀卷积和门控循环单元组合的网络入侵检测方法与流程

2022-02-22 01:52:10 来源:中国专利 TAG:


1.本方法涉及人脸识别技术领域,具体设计一种基于膨胀卷积和门控循环单元组合的网络入侵检测方法。


背景技术:

2.计算机技术在飞速的发展,它已经渗透到人们的工作和日常生活中,给我们带来了极大的便利。但同时网络攻击变得越来越频繁,网络安全已成为我们必须面对的挑战。而入侵检测技术是分类问题,我们需要做的事情是建立入侵检测模型,使其能够有效的对各种网络攻击进行分类识别,以便及时的采取安全防范措施。入侵检测技术陆续出现,其中机器学习技术已经被广泛的应用在网络安全领域。而传统的机器学习算法大部分都是浅层次的学习,它们主要集中在对低维的数据进行特征选择和特征提取上,因此它们无法有效地进行解决入侵数据分类问题,或者检测效率不高。这些攻击的数量远小于正常流量,这使得入侵检测模型难以捕获分类特征,从而导致机器学习算法无法有效地对攻击类型进行检测。另一方面,当数据量变大,特征选择过程需要时间长,决策函数将偏向多数样本,而低频攻击样本被忽略为噪声点,所以很难检测低频攻击,会导致许多分类问题的准确性下降。最后,机器学习算法没有考虑样本数据之间的时间关系,不能够对样本数据进行充分的学习。


技术实现要素:

3.本发明的目的是为了克服上述的技术缺点和不足,提供了一种基于膨胀卷积和门控循环单元组合的网络入侵检测方法。
4.本发明技术方案:
5.基于膨胀卷积和门控循环单元组合的网络入侵检测方法,该方法包括以下步骤:
6.第1步、数据预处理。对国家标准数据集10%kddcup99和nsl-kdd进行预处理,先将数据进行数值化和标准化处理再将标准化后的数据转化为矩阵;
7.第2步、使用膨胀卷积(dilated convolution,简称dc)来增大感受野,对数据样本进行充分的学习,以此来提高模型对特征获取的准确度;
8.第3步、使用门控循环单元神经网络(gated recurrent unit neural network,简称grunn)用来获取数据之间的时间关系的特征,以此来检测未知的攻击;
9.第4步、使用随机梯度下降优化算法(stochastic gradient descent optimization algorithm,简称sgdoa)协助模型训练,并使用动量法来增加随机梯度下降优化算法更新的稳定性;
10.第5步、将处理好的10%kddcup99数据集和nsl-kdd数据集输入构建好的模型中进行测试与验证,并输出最终结果。
11.步骤1中对数据进行预处理,10%kddcup99数据集和nsl-kdd数据集是非数值化的,想要获得更准确的测试结果,需对数据集进行数值化处理、标准化处理。具体步骤如下:
12.第1.1步、数据数值化处理。由于模型的输入是数字矩阵,因此使用one-hot编码方
法将数据集中具有符号特征的数据映射到数字特征向量;
13.第1.2步、标准化处理。为了便于算术处理和消除尺寸,采用归一化处理方法在[0,1]区间内均匀且线性地映射每个特征的值范围。为避免小的数值属性消失并减少计算迭代次数,用方程式将给出的线性函数将数值数据归一化为[0,1],该方程式为:
[0014]
其中max为样本数据的最大值,min为样本数据的最小值,x为标准化后的数据。
[0015]
步骤2所述的使用膨胀卷积(dilated convolution,简称dc)来增大感受野,对数据样本进行充分的学习,以此来提高模型对特征获取的准确度。具体步骤如下:
[0016]
第2.1步、设计膨胀卷积模型,该发明设计的膨胀卷积模型具有三个膨胀卷积层,每个卷积层的膨胀率分别为2、4、8;
[0017]
第2.2步、在每个卷积层之后,都有一个relu激活层,用于为模型添加非线性特征,。在每个卷积层之后都没使用max-pooling层,因为max pooling层会降低特征图的分辨率而且会丢失很多影响分类性能的信息。
[0018]
步骤3所述的使用门控循环单元神经网络(gated recurrent unit neural network,简称grunn)用来获取数据之间的时间关系的特征,以此来检测未知的攻击。其具体实现步骤如下:
[0019]
第3.1步、重置门:r
t
=σ(wrx
t
w
rht-1
br);
[0020]
第3.2步、更新门:z
t
=σ(wzx
t
w
zht-1
bz);
[0021]
第3.3步、候选隐藏状态:
[0022]
第3.4步、隐藏状态:
[0023]
步骤4中所述使用随机梯度下降优化算法(stochastic gradient descent optimization algorithm,简称sgdoa)协助模型训练,并使用动量法来增加随机梯度下降优化算法更新的稳定性。具体由以下步骤组成:
[0024]
第4.1步、计算每个样本的损失函数j(xi);
[0025]
第4.2步、计算目标函数的损失函数,通常为各个样本损失函数的平均值:其中j(xi)为第xi个样本的目标函数;
[0026]
第4.3步、计算目标函数在x出的梯度:
[0027]
步骤5中,将处理好的10%kddcup99数据集和nsl-kdd数据集输入构建好的模型中进行测试与验证,并输出最终结果。
[0028]
本发明的优点和有益效果
[0029]
本发明使用膨胀卷积来增大对信息的感受野,并从中提取高级特征,使用gru模型保留提取的特征之间的长期依赖关系,利用其神经网络的深层结构对数据特征进行充分学习。与经典的机器学习分类器相比,我们使用的模型性能显著提高。对著名的10%kddcup99和nsl-kdd数据集进行的实验表明,该方法具有领先的性能。
附图说明
[0030]
图1是本发明网络入侵检测实施总体流程;
[0031]
图2是10%kddcup99数据集预处理流程图;
[0032]
图3是nsl-kdd数据集预处理流程图。
具体实施方式
[0033]
下面结合附图和实施例对本发明进行详细的描述。
[0034]
一种基于膨胀卷积和门控循环单元组合的网络入侵检测方法,对10%kddcup99数据集和nsl-kdd数据集进行预处理,再把处理后的验证集数据和测试数据输入到本发明提出的模型中进行训练与测试,从而得到最终的分类结果;如图1展现了本发明网络入侵检测实施的总体流程,具体实施方案包括以下内容及步骤:
[0035]
第1步、对数据集进行预处理。对数据集中的字符型特征属性进行数字化和标准化,得到一个标准化的数据集,然后将每个数据转换为二维矩阵,使其符合膨胀卷积模型的输入格式,kddcup99数据集和nsl-kdd数据集预处理流程图如图2图3所示;
[0036]
在kdd cup99和nsl-kdd两个数据集中,每个入侵记录都具有42维特征,标签主要包含普通数据和4种攻击数据(dos,probe,u2r,r2l)。kdd cup99数据集中样本类别分布如表1.1所示,nsl-kdd数据集中样本类别分布如表1.2所示;
[0037]
表1.1 kdd cup99数据集样本类别分类
[0038]
attack categorytraintestnormal9727860593dos391458229853probe41074166u2r52228r2l112616189
[0039]
表1.2 nsl-kdd数据集样本类别分类
[0040]
attack categorytraintestnormal9727860593probe41074166dos391458229853u2r52228r2l112616189
[0041]
第1.1步、对数据集进行数值化处理。由于模型的输入是数字矩阵,因此使用one-hot编码方法将数据集中具有符号特征的数据映射到数字特征向量。此处理主要关注数据集中的三个类别:protocol_type,service和flag。并且分别进行了独热编码。并且将数据集分为五类,分别设置五个标签,如表1.3所示;
[0042]
表1.3 分类标签设置
[0043]
类型标签normal1dos2u2r3
probe4r2l5
[0044]
每条10%kddcup99数据的符号类型数据,都有相应的数值类型数据进行数值化替换,对于协议类型(protocal_type)数据,共有3种:icmp,tcp,udp。分别赋值:1-icmp,2-tcp,3-udp。其它协议类型赋值4-others;
[0045]
对于目标主机网络服务(service)数据,共有70种,如下所示:aol,auth,bgp,courier,csnet_ns,ctf,daytime,discard,domain,domain_u,echo,eco_i,ecr_i,efs,exec,fimger,ftp,ftp_data,gopher,harvest,hostnames,http,http_2784,http_443,http_8001,imap4,irc,iso_tsap,klogin,kshell,ldap,link,login,mtp,name,netbios_dgm,netbios_ns,netbios_ssn,netstat,nnsp,nntp,ntp_u,other,pm_dump,pop_2,pop_3,printer,private,red_i,remote_job,rje,shell,smtp,sql_net,ssh,sunrpc,supdup,systat,telnet,tftp_u,tim_i,time,urh_i,urp_i,uucp,uucp_path,vmnet,whois,x11,z39_50;
[0046]
对于其中的19种数据,分别赋值:domain-u 1,ecr_i 2,eco-i 3,finger 4,ftp-data 5,ftp 6,http 7,hostnames 8,imap4 9,login 10,mtp 11,netstat 12,other 13,private 14,smtp 15,systat 16,telnet 17,time 18,uucp 19。对于其它的51种数据,统一赋值:others 20;
[0047]
对于连接状态(flag)数据,共有11种,如下所示:oth,rej,rsto,rstos0,rstr,s0,s1,s2,s3,sf,sh;
[0048]
对于其中的7种数据分别进行赋值:1-rej,2-rsto,3-rstr,4-s0,5-s3,6-sf,7-sh。其余4种数据统一赋值:8-others;
[0049]
第1.2步、标准化处理,并将标准化数据转换为矩阵。在数据集中,连续要素数据的值范围明显不同。最大值的范围变化很大。为了便于算术处理和消除尺寸,采用归一化处理方法在[0,1]区间内均匀且线性地映射每个特征的值范围。为避免小的数值属性消失并减少计算迭代次数,将数值数据归一化为[0,1]。读取数据的每个网络记录都将进行尺寸转换以符合灰度图像的格式。为了输入到膨胀卷积神经网络中,将使用reshape函数网络数据重塑为矩阵。
[0050]
第2步、使用膨胀卷积(dilated convolution,简称dc)来增大感受野,对数据样本进行充分的学习,以此来提高模型对特征获取的准确度,具体步骤如下:
[0051]
第2.1步、设计膨胀卷积模型,该发明为了模型可以从原始数据中提取尽可能多的特征。设计的膨胀卷积模型具有三个膨胀卷积层,每个卷积层的膨胀率分别为2、4、8;
[0052]
第2.2步、在每个卷积层之后,都有一个relu激活层,用于为模型添加非线性特征。本发明应用多级膨胀卷积神经网络通过捕获数据之间的局部相关性和长期依赖性。卷积神经网络是三级膨胀卷积神经网络,它能够以指数形式扩展接受域级别而不增加参数数量。因此,膨胀卷积捕获长期依赖性成为可能。使用具有不同膨胀率的多级膨胀卷积,而没有使用相同的膨胀率,这样做避免了由膨胀可能导致的重要局部相关性缺失,并且输入都参与计算。
[0053]
第3步、使用门控循环单元神经网络(gated recurrent unit neural network,简称grunn)用来获取数据之间的时间关系的特征,以此来检测未知的攻击;
[0054]
第3.1步、重置门:r
t
=σ(wrx
t
w
rht-1
br);
[0055]
第3.2步、更新门:z
t
=σ(wzx
t
w
zht-1
bz),更新门可以控制隐藏状态应该如何被包含当前时间步信息的候选隐藏状态所更新;
[0056]
第3.3步、候选隐藏状态:如果重置门近似为0,上一个隐藏状态将会被丢弃,因此,重置门可以丢弃与预测未来无关的历史信息;
[0057]
第3.4步、隐藏状态:
[0058]
第4步、使用随机梯度下降优化算法(stochastic gradient descent optimization algorithm,简称sgdoa)协助模型训练,并使用动量法来增加随机梯度下降优化算法更新的稳定性;
[0059]
第4.1步、计算每个样本的损失函数j(xi);
[0060]
第4.2步、计算目标函数的损失函数,通常为各个样本损失函数的平均值:其中j(xi)为第xi个样本的目标函数;
[0061]
第4.3步、计算目标函数在x出的梯度:
[0062]
步骤5中,将处理好的10%kddcup99数据集和nsl-kdd数据集输入构建好的模型中进行测试与验证,并输出最终结果。
[0063]
本发明所提供的方法应用于10%kddcup99数据集和nsl-kdd数据集的测试结果如表5.1和表5.2所示。
[0064]
表5.1 kdd cup99数据集中不同类型的分类结果
[0065]
类别precision(%)recall(%)f1-measure(%)normal99.8899.8699.86dos99.3799.2299.29probe99.0498.8998.96u2r67.4358.7962.81r2l81.2462.8179.76
[0066]
表5.2 nsl-kdd数据集中不同类型的分类结果
[0067]
类别precision(%)recall(%)f1-measure(%)normal99.8499.7999.81dos99.4399.3599.39probe97.9897.5597.76u2r57.8355.2156.49r2l52.1154.3753.19
[0068]
我们将本发明所提供的方法的用于10%kddcup99数据的入侵检测准确率与支持向量机(svm)、堆叠式非对称深度自动编码器(s-nade)和具有变体功能集的多级混合分类器(mhcvf)三种方法进行对比,实验结果如表5.3所示;再将本发明所提供的方法的用于nsl-kdd数据数据的入侵检测准确率与谱聚类和深度神经网络(scdnn)、少数族裔综合过采样技术 聚类中心和最近邻居(cann smote)和深度神经网络(dnn)三种方法进行对比,实验
结果如表5.4所示所示。
[0069]
实验结果表明,本发明的两个数据集入侵检测准确率都优于其他三种入侵检测方法。
[0070]
表5.3 kdd cup99数据集上不同分类算法的分类结果
[0071]
algorithmaccuracy(%)recall(%)svm94.2292.99s-ndae97.8597.85mhcvf98.0495.57our model99.7899.33
[0072]
表5.4 nsl-kdd数据集上不同分类算法的分类结果
[0073]
algorithmaccuracy(%)recall(%)scdnn92.0392.23cann smote98.9999.56dnn99.2099.27our model99.5399.25
[0074]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、同等替换、改进等,均应包含在本发明的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献