基于 CNN 与 WRGRU 的网络入侵检测模型

访客 379 0
本文来源:

摘 要:

针对当前的入侵检测方法普遍存在准确率与泛化性较低的问题,提出了一种基于卷积神经网络(Convolutional Neural Network,CNN)和权重缩减门控循环单元(Weight Reduction Gated Recurrent Unit,WRGRU)的网络入侵检测模型(CNN-WRGRU)。该模型首先利用 CNN 进行入侵检测数据集的特征提取,其次利用 WRGRU 来学习数据特征之间的依赖关系,保留了特征之间的长期相关性,有效地防止了过拟合现象的出现,提高了模型的识别准确率及泛化性。在实验中,将 CNN-WRGRU 与传统方法在公开数据集上进行了检测性能比较,结果证明 CNNWRGRU 模型具有更好的识别效果,有效地提高了入侵检测的识别精度。

内容目录:

1 相关理论基础

1.1 卷积神经网络

1.2 GRU 神经网络

2 权重缩减 GRU 神经网络

3 基于 CNN 与 WGRU 的网络入侵检测模型

4 仿真实验

4.1 实验数据

4.2 性能评估

4.3 实验对比分析

5 结 语

随着互联网通信技术的进步,每天都会产生大量的来自医疗保健、交通、社交媒体和生产制造等行业的数据。这些海量的数据具备被定义为大数据的 4 个特征:海量性、多样性、高速性和准确性。由于大数据的范围极大地提高了可利用的攻击点,因此很难在大数据环境中进行入侵检测。Denning等人 于 1986 年首次引入了入侵检测系统,建立了一个入侵检测模型,以识别网络系统中的异常行为。由于大数据结构的不断发展和变化,以及网络数据系统速率的提高,入侵检测系统(Intrusion Detection System,IDS)仍然是一个重要的研究主题。

许多用于 IDS 的传统机器学习方法由于体系结构较浅,不适合在大数据环境中处理入侵检测,如支持向量机、神经网络、隐马尔可夫模型和模糊逻辑等,它们很难识别未知的攻击,不能实时提供解决方案,也不能处理普遍存在于大数据中的噪声。因此,需要更加强大、有效的机器学习(Machine Learning,ML)技术来进行实时的入侵检测。

近年来,不断涌现出利用深度学习技术在各种应用程序中处理大数据的案例,这些深度学习技 术 包 括 深 度 信 念 网 络(Deep Belief Networks,DBN)、 卷 积 神 经 网 络(Convolutional Neural Networks,CNN)、 长 短 期 记 忆(Long-Short Term Memory,LSTM)网络、门控循环单元神经(Gated Recurrent Unit,GRU) 网 络。DBN 主要用于模式分析,而且它们的训练速度比其他深度学习技术更快 。CNN 主要用于图像处理应用程序,它们比DBN 具有更好的鉴别能力。LSTM 网络是一种循环神经网络(Recurrent Neural Network,RNN),它可以比其他类型的 RNN 更好地学习提取特征之间的依赖关系 。LSTM 的另一种变体是权重丢弃长短 期 记 忆(Weight Decrement Long-term and Shortterm Memory,WDLSTM) 网 络。WDLSTM 是 在LSTM 中的隐含层权值矩阵上使用连接权重丢弃技术(DropConnect),以保持提取特征之间的长期依赖性,并防止循环连接的过拟合 。

然而,迄今为止,还没有哪种方法能有效地使用上述深度学习算法在大数据环境中进行入侵检测。Vinaykumar 等人提出了一个深度神经网络模型,以检测和分类 IDS 中不可预见的和不可预测的网络攻击。Faker 等人 使用深度神经网络、随机森林和梯度增强树 3 个分类器对二进制模式和多类模式的攻击进行分类。在文献 [12] 中,作者提出了一个两阶段的深度学习模型以有效地检测网络入侵。为了在大数据环境中提高入侵检测的性能,本文提出了一种基于 CNN 和 WRGRU 网络的混合深度学习模型。本文的主要贡献如下:(1)基于 CNN 可权重共享和可快速进行数据处理的特点,进行网络数据流量中的特征提取;(2)使用 GRU 神经网络来保留提取特征之间的长期依赖关系,避免了梯度消失问题;(3)基于 WDLSTM 模型,在 GRU 中的隐含层单元权重权值矩阵上使用 DropConnect 技术,避免过拟合问题。

在实验中,本文使用公共的 UNSW-NB15 数据集对 CNN-WRGRU 模型进行评估。

1相关理论基础

1.1 卷积神经网络

卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,人工神经元可以响应周围单元,可以进行大型图像处理,同时它可以应用在文本分类中 。CNN 是在深度学习领域中取得最大成功的算法之一。CNN 包括 1 维、2 维 和 3 维神经网络,序列类的数据处理是 1 维的 CNN主要应用,2 维 CNN 经常用于对于文本的识别,3维神经网络主要应用在处理医学图像以及一些视频数据。

如 图 1 所 示,CNN 的整体结构是由输入层(Import Layer)、卷积层(Convolution Layer)、池化层(Pooling Layer)、全连接层(Fully Connected Layer) 与 输 出 层(Output Layer)按顺序连接构成的,其中,卷积层和池化层可以在隐藏层出现多次。

基于 CNN 与 WRGRU 的网络入侵检测模型-第1张图片-网盾网络安全培训

图 1 CNN 结构

图 1 的 CNN 结构与原始的 LeNet 类似,将输入的图像根据对应的类别进行分类,输出层中所有概率的总和应为 1。卷积层内部包含多个卷积核,卷积核的各个元素对应有一个权重系数和偏差量。卷积层内每个神经元都与前一层位置接近的神经元相连。卷积层的功能是将输入数据进行处理,得到相关特征,在工作时会有规律地扫过输入特征,在前一层位置接近的区域内对输入特征进行矩阵元素乘法求和并叠加偏差量。

池化层的作用是将经过卷积层处理后的特征进行选择并进行信息过滤,再通过池化层预设的池化函数将单个点替换为相邻区域的特征统计量。

CNN 中的全连接层等价于传统前馈神经网络的隐含层,全连接层位于神经网络中的最后位置,信号只会传递给其他全连接层。全连接层的作用是将经过卷积层与池化层后的特征进行非线性组合得到输出,将输出结果传递给输出层。

1.2 GRU 神经网络

LSTM 中引入了 3 个门来控制网络,输出门控制输入值,遗忘门控制记忆值,输出门控制输出值,而在 LSTM 的变体 GRU 中只需要更新门和重置门。由于 LSTM 具有 3 个功能各不相同的门,所以它的参数相对来说会比较多,在训练时会比较困难。为解决这个问题,本文采用 GRU 的神经网络,正如上文所述它只有两个门,在解决 RNN 神经网络长距离依赖问题上也能够达到和 LSTM 一样的效果,训练易于实现。GRU 神经网络的更新门可以看作将LSTM 的输入门和遗忘门二者合一的结果,更新控制的是控制的前一时刻带入的程度;重置门是控制前一时刻状态代入候选集中的程度。GRU 的结构 [14]如图 2 所示。

基于 CNN 与 WRGRU 的网络入侵检测模型-第2张图片-网盾网络安全培训

图2 GRU 结构

图 2 中 σ 为 sigmoid 激活函数,tanh 为另一个激活函数,基于 CNN 与 WRGRU 的网络入侵检测模型-第3张图片-网盾网络安全培训为序列输出的当前状态,基于 CNN 与 WRGRU 的网络入侵检测模型-第4张图片-网盾网络安全培训为序列输入数据。相关公式为:

基于 CNN 与 WRGRU 的网络入侵检测模型-第5张图片-网盾网络安全培训

式中:基于 CNN 与 WRGRU 的网络入侵检测模型-第6张图片-网盾网络安全培训为重置门输出;基于 CNN 与 WRGRU 的网络入侵检测模型-第7张图片-网盾网络安全培训为候选状态输出;基于 CNN 与 WRGRU 的网络入侵检测模型-第8张图片-网盾网络安全培训为更新门输出;基于 CNN 与 WRGRU 的网络入侵检测模型-第9张图片-网盾网络安全培训为更新门与隐含单元之间的连接权重;基于 CNN 与 WRGRU 的网络入侵检测模型-第10张图片-网盾网络安全培训为序列上一时刻的输出状态;基于 CNN 与 WRGRU 的网络入侵检测模型-第11张图片-网盾网络安全培训为重置门与隐含单元之间的连接权重;* 代表两个矩阵相乘。

2权重缩减 GRU 神经网络

权重缩减 GRU 神 经 网 络(Weight reduction gated recurrent unit,WRGRU)是 GRU 神经网络的一个变形,其主要使用 DropConnect 技术将动态稀疏性引入到神经网络的连接权重上,使得每次迭代时神经网络的权重参数规模得以缩减。DropConnect技术与神经元丢弃技术(Dropout)的不同之处在于,在每次迭代中神经元间每个连接权重被丢弃的概率为 p。在 WRGRU 中,为了避免过拟合现象的出现,隐含层单元间的权重参数被随机地丢弃,WRGRU神经网络的输出 yt 可以被写为:

基于 CNN 与 WRGRU 的网络入侵检测模型-第12张图片-网盾网络安全培训

式中:M 为编码连接信息的二进制矩阵;U 为神经网络的权重参数矩阵。在训练阶段的每次迭代过程中,通过更改 M 中的元素可以实现对于神经网络不同连接权重的丢弃。

3基于 CNN 与 WGRU 的网络入侵检测模型

使用混合深度学习模型进行数据流量的入侵分类, 并 将 CNN 与 WRGRU 相 结 合, 构 建 了 CNNWRGRU 模型。模型架构如图 3 所示。与其他基于神经网络的入侵检测模型相比,该混合模型由于结合了 CNN 和 WRGRU 的优势,因此可以更有效地进行入侵检测。CNN-WRGRU 模型包含两个 1 维卷积层,1 个 1 维的最大池化层,1 个 1 维的 WRGRU层和 1 个全连接层。ReLU 函数为两个卷积层中的激活函数,其表达式为:

基于 CNN 与 WRGRU 的网络入侵检测模型-第13张图片-网盾网络安全培训

基于 CNN 与 WRGRU 的网络入侵检测模型-第14张图片-网盾网络安全培训

图 3 CNN-WRGRU 模型结构

在 CNN-WRGRU 模型中,两个 1 维的卷积层在进行特征提取后,提取的特征被传输至最大池化层,最大池化层的输出又会被传递到 1 维 WRGRU层中进行提取的特征之间的依赖关系的提取,最后1 维 WRGRU 层的输出被传递到全连接层。全连接层的激活函数为 softmax,利用该函数进行入侵类别概率分布的计算公式为:

基于 CNN 与 WRGRU 的网络入侵检测模型-第15张图片-网盾网络安全培训

式中:基于 CNN 与 WRGRU 的网络入侵检测模型-第16张图片-网盾网络安全培训基于 CNN 与 WRGRU 的网络入侵检测模型-第17张图片-网盾网络安全培训分别为类别 i 和 j 在经过模型计算后的数值;基于 CNN 与 WRGRU 的网络入侵检测模型-第18张图片-网盾网络安全培训为类别 i 的判别概率。CNN-WRGRU 模型中的重要参数包括 CNN中 滤 波 器 的 数 量、 训 练 次 数、 学 习 速 率, 以 及WRGRU 中隐含层单元的数量、连接权重丢失率drop-connect 的大小、批处理大小,所有这些参数在训练阶段通过试错得到。

4仿真实验

4.1 实验数据

UNSW-NB15 是澳大利亚的新南威尔士大学于2015 年发布的用于网络入侵检测研究的开放数据集 [15]。UNSW-NB15 中包括 9 种攻击类型和 1 种正常类型,各种类型所占比例如表 1 所示。UNSWNB15 数据集由 3 个名义特征、2 个二进制特征和37 个数值特征组成,UNSW-NB15 是按照时间顺序进行排序记录的,能够充分代表数据之间的时序相关性。在实验中,本文将 UNSW-NB15 数据集中的70% 用于训练,30% 用于测试。表 2 说明了训练集和测试集的分布。

表 1 各种类型数据所占比例

基于 CNN 与 WRGRU 的网络入侵检测模型-第19张图片-网盾网络安全培训

4.2 性能评估

为了评估 CNN-WRGRU 模 型 的 性 能, 利 用python 进行仿真实验分析,采用准确率(Accuracy)、精度(Precision),召回率(Recall)和 F1 值作为评估指标。这些指标的计算方法如下:

基于 CNN 与 WRGRU 的网络入侵检测模型-第20张图片-网盾网络安全培训

式中:TP 为正样本且分类正确的实例数量;TN 为负样本且分类器识别正确实例的数量;FP 为负样本且分类识别结果错误的实例数量;FN 为正样本且分类识别结果错误的实例数量。

表 2 训练集和测试集的分布

基于 CNN 与 WRGRU 的网络入侵检测模型-第21张图片-网盾网络安全培训

4.3 实验对比分析

本文实验在 CPU 为 i7 4510U,运行内存为8 GB,操作系统为 64 位 Windows 10 的笔记本电脑上进行。为了获得 CNN-WRGRU 模型超参数的最佳设置,本文在模型训练过程中为相关超参数选择了初始值,然后对其进行动态调整,通过反复试验获得最佳结果。最终,当模型取得最佳检测效果时,训练次数为 50,学习率为 0.005,drop-connect 的大小为 0.1,第一层和第二层的卷积滤波器的数量分别为 32 和 64,最大池化长度为 2。 

图 4 给出了训练中模型的准确率和损失,其中测试集被用于进行模型验证。从中可以看出,CNN-WRGRU 模型在训练中能够稳定收敛,很好地抑制了模型的过度拟合。

基于 CNN 与 WRGRU 的网络入侵检测模型-第22张图片-网盾网络安全培训

图 4 模型在训练阶段的准确率及损失

表 3 模型在二元分类任务下的混淆矩阵

基于 CNN 与 WRGRU 的网络入侵检测模型-第23张图片-网盾网络安全培训

表 3 和表 4 分别为模型 CNN-WRGRU 在 UNSW-NB15 测试集上执行二元分类任务得到的正常和异常样本的混淆矩阵,执行多元分类任务得到的所有分类的混淆矩阵。从表 3 中可以看出,该模型在执行二元分类任务时对测试集中的 649 336 个样本进行了正确分类;表 4 中可以看出,该模型在执行多元分类任务时对 657 612 个样本进行了正确分类。

表 4 模型在执行多元分类下的混淆矩阵

基于 CNN 与 WRGRU 的网络入侵检测模型-第24张图片-网盾网络安全培训

表 5 和表 6 分别给出了模型 CNN-WRGRU 在执行二元分类任务和多元分类任务时的性能指标值。

表 5 模型在二元分类任务下的性能指标

基于 CNN 与 WRGRU 的网络入侵检测模型-第25张图片-网盾网络安全培训

表 6 模型在二元分类任务下的性能指标

基于 CNN 与 WRGRU 的网络入侵检测模型-第26张图片-网盾网络安全培训

如表 5 和表 6 所示,模型 CNN-WRGRU 在二元分类和多元分类下的总体准确率分别为 97.17%和 98.58%。对于指标 F1-score,模型在 generic、reconnaissance、shellcode 和 exploit 4种类别数据上的结果分别为 0.99、0.83、0.80 和 0.72;对于稀有的类别数据(Shellcode、Backdoors、Analysis),由于数据规模不足,模型 CNN-WRGRU 的检测效果较差。总体而言,随着不同类别的数据分布存在不平衡现象,但是 CNN-WRGRU 模型仍取得了非常好的检测结果。表7 给出了CNN-WRGRU 模型与TSDL、KDDwinne、CSVAC、CPSO-SVM、Dendron[19]模型在 UNSW-NB15 数据集上分别执行二元分类时的准确率结果。由表 7 中的对比结果可以看出,CNN-WRGRU 模型由于能够从大量训练数据中提取到更为准确的特征表示,相较于其他模型在进行入侵检测时更为有效。

表 7 CNN-WRGRU 模型与其他模型的入侵检测准确率

基于 CNN 与 WRGRU 的网络入侵检测模型-第27张图片-网盾网络安全培训

表 8 给出了 CNN-WRGRU 模型与其他 5 种模型在UNSW-NB15数据集上每条数据的平均执行时间。

如表 8 所示,CNN-WRGRU 模型的平均执行时间非常低(略低于 TSDL 模型),非常适合实时的入侵检测。这主要是因为该模型能够在离线模式下定期训练最新的网络流量特征,并且能够检测入侵攻击在线模式。

表 8 每条数据的平均检测执行时间

基于 CNN 与 WRGRU 的网络入侵检测模型-第28张图片-网盾网络安全培训

5 结 语

本文将 CNN 与权重缩减 GRU 神经网络结合起来,提出了一种基于 CNN 与 WRGRU 的网络入侵检测模型(CNN-WRGRU)。该模型利用 CNN 进行入侵检测数据集的特征提取,然后利用 WRGRU来学习数据特征之间的依赖关系。WRGRU 由于在训练过程中使用 dropout 技术随机地忽略了一些神经元,使得模型可以有效避免过拟合问题的出现。在实验时,本文利用 TSDL、KDDwinner、CSVAC、CPSO-SVM、Dendron、CNN-WRGRU 等模型在UNSW-NB15 数据集上进行对比仿真实验,结果表明:CNN-WRGRU 模型具有最好的识别精度。

CNN-WRGRU 模型在 UNSW-NB15 上虽具有较好的识别效果,但是在实际应用中还有若干问题有待解决,如入侵检测的实时性,以及在具有更大规模的数据集上的有效性,这些问题都有待进一步研究。

引用本文:王运兵 , 姬少培 , 查成超 . 基于 CNN 与 WRGRU 的网络入侵检测模型 [J]. 通信技术 ,2022,55(4):486-492.

标签: 机器学习 卷积 神经网络模型 深度学习 卷积神经网络 网络模型 分类数据 python神经网络

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~