【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能

方法:本文采用两种方法,

(1)采用ANN和RNN作为特征选择方法;

(2)使用RNN信息增益(IG)、粒比 (GR) 和相关属性 (CA) 作为特征选择方法;

数据集为NSL-KDD 数据集。结果表明RNN优于ANN优于其他机器学习分类器。

作者为纳西玛等人,发表于2020年10月,收录于ACM网站。

原文网址:深入学习入侵检测方法|第一届智能系统与模式识别国际会议纪要 (acm.org)

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第1张图片

 首先应该看的:

本文的重点是对特征提取的方法。第一种方法使用IG方法提取重要的和去掉不必要的特征,将41个特征提取出14个,应用于ANN和RNN;第二种使用IG、GR和CA方法提取出29个特征,应用于RNN。ANN和RNN的网络架构都阐述清楚。最后得出比较好的结论。

目录

摘要

第一节:相关工作

第二节:方法

 2.1 数据集

 2.2 数据集预处理

 2.3 特征选择

 2.4 网络架构

 第四节:结论


摘要

本文提出两种方法实现DL方法检测网络入侵的体系结构。第一种是以信息增益(IG)特征选择方法的人工神经网络(ANN)和递归神经网络(RNN);第二种是以信息增益(IG)、晶粒比(GR)和相关属性(CA)为特征选择方法的RNN。 这两种方法使用NSL-KDD数据集。

结果表明,RNN优于ANN,ANN优于其它机器学习分类器。

第一节:相关工作

(1)Shisrut等人使用NSL-KDD数据集比较经典ML方法与集成无监督特征学习和深度神经网络的性能,建立了一个深度神经网络(DNN)的模型。该网络具有基于主成分分析(PCA)的15个特征;

(2)一种基于SVM和信息增益(IG)的移动云计算(MCC)入侵检测系统。使用SVM分类器,将网络数据识别为标准和攻击模式,IG用于选择合适和去除不必要的特征,采用NSL-KDD和KDDCup-99数据集进行试验;

(3)Meftah等人使用UNSW-NB15数据集实现基于两阶段异常的网络入侵检测方法。首先,使用递归特征消除和随机森林等策略选择最佳特征,然后使用Logistic回归、梯度Boost机器和支持向量机来执行二进制分类,以检测来自正常流量的入侵流量;

第二节:方法

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第2张图片

 2.1 数据集

(1)NSL-KDD数据集包含41个特征加上一个类特征

(2)有三种类型的特征集:单个TCP连接的基本特征、域知识建议的连接中的内容特征和使用两秒时间窗口计算的流量特征;

(3)训练集包含22种攻击类型,测试集包含另外的17种攻击类型;

下表为攻击类型:

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第3张图片

 2.2 数据集预处理

NSL-KDD数据集包含数字属性和标称属性。 由于ANN和RNN的输入性质,协议类型、服务和标志属性等名义属性需要转换为数字属性。另外,标记为数字类型的类属性应该标记为二进制类型。

 2.3 特征选择

41个属性中有的没有用,使用IG方法从41个特征中选取14个。同时,使用IG,RG和相关属性评价CA消除了12个特征,也就是29个特征。新的简化数据集通过的训练和测试。

 2.4 网络架构

隐藏层数和神经元选择有如下规则:

(1)零隐藏层,只能够表示线性可分函数;

(2)一个隐藏层可以估计任何涉及从一个有限空间到另一个有限空间的永久映射的函数;

(3)两个隐藏层用逻辑激活函数描述任意的决策边界,并且能够以任意精度逼近每个平滑映射。

 有很多规则定义隐藏层中神经元数量:

(1)使用输入层大小的三分之二(或70%到90%)作为隐藏层神经元。 如果不够,可以增加输出层神经元的数量。输入层的神经元数目应是隐藏层神经元数目的两倍以上;

(2)隐层神经元的大小小于输入层大小,大于输出层大小;

X指输入,n指的是第一种方法输入数为14,第二种为29:

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第4张图片

 (1)人工神经网络ANN:使用两个隐藏层,第一个隐藏层包含输入层90%的神经元,因此在第一 种方法和第二种方法中,它分别等于12个神经元和26个神经元第二隐层还包含第一隐层的90%神经元,在第一方法和第二方法中分别等于10和23个神经元。输入层和隐藏层使用ReLU激活函数,输出层使用sigmoid函数。使用二元交叉熵损失函数。

(2)递归神经网络RNN:跟ANN结构一样,加上128个隐藏层单元。输入和输出层同上。

 第三节:实验结果

(1)第一种方法的训练集精度度量

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第5张图片

         第一种方法测试集:

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第6张图片

 (2)第二种方法:

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第7张图片

 (3)深度学习方法的分类精度:

【网络流量识别】【深度学习】【二】RNN和ANN—深度学习入侵检测方法:ANN和RNN在NSL-KDD上的新性能_第8张图片

 第四节:结论

本文在NSL-KDD数据集上实现了基于ANN和RNN的入侵检测系统。对数据集五类攻击类别进行训练和测试,使用Adam算法进行学习。数据集分别使用第一种特征选择方法和第二种特征简化方法。结果证明优化了别人的方法。

你可能感兴趣的:(网络安全,网络安全,深度学习,rnn,ann)