结合数据平衡和深度卷积神经网络的入侵检测方法

连盛 ,  江刚武 ,  杨宇 ,  麻顺顺

信息工程大学学报 ›› 2025, Vol. 26 ›› Issue (05) : 554 -560.

PDF (1764KB)
信息工程大学学报 ›› 2025, Vol. 26 ›› Issue (05) : 554 -560. DOI: 10.3969/j.issn.1671-0673.2025.05.008
网络空间安全

结合数据平衡和深度卷积神经网络的入侵检测方法

作者信息 +

Intrusion Detection Method Combining Data Balancing and Deep Convolutional Neural Networks

Author information +
文章历史 +
PDF (1806K)

摘要

针对传统入侵检测方法在处理高维流量数据时存在的数据不平衡、特征提取效率低以及训练不易收敛等问题,提出基于深度卷积神经网络结合数据平衡的入侵检测方法。首先,将网络流量数据集CICIDS-2018转化成数值为整数类型的灰度图像;其次,输入至条件生成对抗网路,利用训练的生成器生成少数类的攻击数据,补充到原始数据中以平衡数据集;最后,运用深度卷积神经网络提高入侵检测的性能。实验结果表明,该方法在多分类任务中的准确率为96.58%,优于传统的检测方法,其中两类样本最少的攻击流量数据Botnet和SQL的分类准确率较平衡前分别提升5.83%和32.18%。

Abstract

In response to the problems of traditional intrusion detection methods for high-dimensional traffic data, such as data imbalance, low feature extraction efficiency, and difficulty in convergence during training, an intrusion detection method based on deep convolutional neural networks combined with data balancing is proposed. Firstly, the CICIDS-2018 network traffic dataset is transformed into grayscale images with integer values, which are then input into a conditional generative adversarial network. Secondly, the trained generator is used to produce attack data for the minority class, which is added to the original dataset to balance it. Finally, the performance of intrusion detection is enhanced by using deep convolutional neural network. Experimental results show that the accuracy rate in multi-classification task of this method is 96.58%, which is superior to that of traditional detection methods, with the classification accuracy rates for the two least frequent attack traffic data Botnet and SQL increased by 5.83% and 32.18%, respectively, compared to those before balancing.

Graphical abstract

关键词

网络入侵检测 / 数据集平衡 / 生成对抗网络 / 卷积神经网络

Key words

network intrusion detection / dataset balancing / generative adversarial network / convolutional neural network

引用本文

引用格式 ▾
连盛,江刚武,杨宇,麻顺顺. 结合数据平衡和深度卷积神经网络的入侵检测方法[J]. 信息工程大学学报, 2025, 26(05): 554-560 DOI:10.3969/j.issn.1671-0673.2025.05.008

登录浏览全文

4963

注册一个新账户 忘记密码

高维流量数据在当今互联网环境中广泛存在,主要指在多个维度上描述网站日志、点击流和用户行为等数据,而维度主要包括用户点击行为、访问时长、页面浏览量、用户地理位置、设备信息等。随着数据规模的不断扩大和复杂度的增加,针对高维流量数据的入侵检测已成为网络安全领域的重要研究内容。传统的入侵检测算法在面对高维流量数据时,往往由于数据量的庞大和复杂性而表现出较低的检测效率和准确性。而基于深度学习的入侵检测系统,能够实现更加高效、准确、抗干扰的入侵检测,适应不断变化的网络威胁,降低人工特征提取的工作量,并在其他领域具有广泛的应用潜力。
文献[1]提出基于机器学习的生成高度可靠和预处理的入侵检测系统,对原始数据进行预处理,有效降低数据的不平衡性,提高检测准确性。文献[2]提出利用各种处理不平衡数据集的技术,构建一个有效的入侵检测系统。该系统二分类具有高达99.99%的准确率,可以精确地判断出是否为异常攻击。该系统采用多种方法,包括叠加机器学习分类器、投票、随机森林、变分自编码器和深度神经网络等。文献[3]提出一种基于罕见异样样本数据的新型深度神经网络入侵检测方法。实验结果表明,该方法在两个真实典型数据集上的二分类检测准确率分别为99.06%和99.16%,F-measure分别为99.15%和98.22%,能够有效识别不平衡数据集中的异常行为,并提升海量高维流量中异常行为的检测精度。文献[4]提出一种基于端口互动模式量化模型的入侵检测模型,对端口互动模式进行量化分析,建立量化模型,有效地识别出异常行为模式,实现对网络流量实时监控和预警。
虽然上述文献提出的深度学习方法,针对其旨在解决的不同网络入侵检测问题展现出各自的优势,但针对部分异常攻击数据相对正常数据极少的问题,存在一定的局限性。为了应对上述问题,首先,将不平衡数据集转化成灰度图像;其次,输入到条件生成对抗网络中进行训练,减小损失波动,训练快速收敛,生成噪声更少的少数类攻击样本数据,并补充到原始训练集使其各类数量达到平衡;最后,通过优化后的深度卷积神经网络(Deep Convolutional Neural Network, DCNN)提取图像数据空间特征,进行分类训练,从而提升检测精度和性能。

1 相关原理

传统的入侵检测方法主要以机器学习算法为基础。机器学习算法能够分析网络流量数据,识别潜在入侵行为,及时发现并应对网络威胁。常见的机器学习算法包括:支持向量机、决策树、随机森林、神经网络等。而最近发展快速的深度学习方法,则利用多层神经网络通过数据进行学习和训练,可以处理大规模数据,提取数据中的深度特征,实现自主学习,从而实现入侵检测。本文所提方法的基础是生成对抗网络和卷积神经网络。

1.1 生成对抗网络

2014年,Goodfellow提出生成对抗网络(Generative Adversarial Network, GAN)的概念[5]。GAN是一种深度学习模型,可通过训练对抗的生成器和判别器网络,实现动态博弈,其中生成器和判别器不断竞争、相互促进,最终达到一个纳什平衡点,即生成器的假数据足够接近真实数据,以至于判别器无法准确区分真假数据,输出概率接近0.5。

1)基本结构。将训练集x输入到判别器D中,如果D输出0,表明x为假数据,输出1则为真数据;训练生成器G,将随机噪声z输入G中,生成新数据x'x'再输入到D中进行分类,返回更新G

2)损失函数。GAN的损失函数为交叉熵损失,如式(1)所示:    Gmin    DmaxVD,G=Ex~pdataxlnDx+                                                                Ez~pzzln1-DGz             (1)

式中:V表示交叉熵;D表示判别器;G表示生成器;x表示真实数据;z表示与真实数据结构相同的随机生成数据;Gz表示在生成器中基于z生成的假数据;Dx表示判别器在真实数据x上判断出的结果;DGz表示判别器在假数据Gz上判断出的结果;DxDGz都表示样本为真(即标签为1)的概率;Ex~pdataxlnDx表示所有x都是真实数据时lnDx的期望;Ez~pzzln1-DGz表示所有数据都是生成数据时ln1-DGz的期望;    DmaxVD,G表示固定G参数不变,优化D参数,最大化损失VD,G    GminVD,G表示固定D参数不变,优化G参数,最小化损失VD,G

1.2 卷积神经网络

卷积神经网络(Convolutional Neural Network, CNN)是一种特殊类型的前馈神经网络,主要应用于图像识别、图像分类、物体检测等计算机视觉领域。CNN前向运算过程包括:输入、卷积层、激活函数、池化层、全连接层和输出。

2 入侵检测模型

结合数据平衡和深度卷积神经网络的模型以GAN和深度卷积神经网络(Deep CNN, DCNN)为基础,主要分为数据预处理、数据平衡、检测分类3个步骤,模型结构如图1所示。

2.1 数据预处理

由于原始实验数据包含有非数值型数据,以及无关的特征,所以需要对数据进行预处理[6]。数据预处理主要包括数据清洗、数值归一化、数据图像化,具体过程如下。

1)数据清洗。首先将数据分为特征和标签两部分。特征的前3列分别为“端口”、“协议”、“时间戳”,调用drop方法删除这3列,其余列对于非数值型数据先转化为空值Nan,再填充为0。

2)数值归一化。采取最大最小值归一化[7],将所有数据缩小到[0,1]之间。归一化消除特征之间的量纲和数量级差异,使得模型对特征具有更均衡的敏感性,提高模型的泛化能力,如式(2)所示:

x*=x-xminxmax-xmin

式中:xmin表示集合中的最小值;xmax表示集合中的最大值;x表示要归一化的数值;x*表示归一化后的值。这些数据转化为灰度图像还需要乘以255并且整数化,以对应灰度像素值。

3)数据图像化。数据归一化处理后,特征还是较多,若输入传统入侵检测算法,参数多,训练效率低,函数收敛慢。可将数值复杂的表格数据转化为灰度图像[8],有利于神经网络提取特征,生成更加相似的数据。

以CICIDS-2018数据集为例,在删除端口号、时间戳以及全为0的特征后,特征变为76维,落在(8×8,9×9]的区间,故将维度1×76的数据转化成为9×9的矩阵,最后的5个缺失值取0进行补全。补0只是为了方便流量数据图像化为9×9的矩阵,同时可以使原有特征提取和模型训练速度不受影响。由于灰度值在[0,255]内,令9×9矩阵的每个元素乘以255,将元素值扩大到[0,255],对应灰度值,元素值越接近0,显示图像越接近黑色,元素值越接近255,显示图像越接近白色。图像化前(第1行)、图像化后(第2行)的数据如图2所示。每列为同一类,从左至右依次为Infiltration(渗透)、Botnet(僵尸网络)、DDoS(分布式拒绝服务攻击),可以看出同一类数据转化的图像有极大的相似性。

2.2 数据平衡

将处理后的图像数据输入到生成对抗网络中进行训练,通过训练好的生成器G对少量异常攻击数据进行扩展生成,并补充到原始数据集当中。

由于一般的GAN模型只能训练同种类型的数据,即生成器只能生成输入的数据,不能在输入IDS数据集后生成对应标签的数据。所以,采用条件生成对抗网络[9](Conditional-GAN, CGAN),其模型结构和一般GAN相同,但是在前向传播的输入中加入标签张量,使得输入的数据具有其自身类别。这里输入的标签需要进行One-Hot独热编码,例如共有4类,第2个类别编码为[0,0,1,0],同时输入的维度相应增加4。在训练过程中,也相较一般GAN增加标签的损失计算。CGAN在训练完成后,生成器可以输入(噪声,标签)生成标签对应的网络流量数据。

生成器和判别器都是4层全连接层,前3层都应用ReLU非线性激活函数,最后1层有所区别,生成器是tanh函数,判别器是Sigmoid函数,使分类结果变成不同的概率。模型使用Adam作为参数优化器,学习率为0.000 2,批量大小为100,输入噪声维度为100。

2.3 检测分类

将平衡后的训练集经过层数改进后的深度卷积神经网络[10](Advanced-DCNN)进行分类输出,与其他入侵检测方法进行比较,评价模型的性能。

Advanced-DCNN是基于CNN的模型,该模型旨在处理输入的灰度图像数据并进行分类[11]。其模型结构如图3所示。

Advanced-DCNN首先接收多维输入数据,随后依次经过多个卷积层和池化层,逐步提取输入数据中的空间层次特征,并减少数据维度。卷积层后紧跟非线性激活函数ReLU,增强模型的学习能力;而池化层则有效降低计算复杂度,同时保留关键信息。经过一系列特征提取操作后,模型利用扁平化层将多维特征图转换为一维向量,再由全连接层进一步处理这些特征,最终通过输出层产生分类预测结果。具体来说,输出层使用Softmax激活函数,提供7个分类类别的概率分布,从而完成对输入数据的分类任务。

3 实验及结果分析

结合数据平衡和深度卷积神经网络的入侵检测模型在进行入侵检测时,有3个比较关键的部分,即数据图像化、数据平衡、检测分类。所以,实验从这3个方面进行对比。

3.1 CICIDS-2018数据集

CICIDS-2018(Canadian Institute for Cybersec-urity Intrusion Detection Systems Evaluation Dataset 2018)是一个广泛应用于网络安全领域的公开数据集,旨在帮助研究人员和工业界专家开发和评估入侵检测系统。正常类别(Benign)以及异常攻击(其他)标签类型统计如表1所示。

3.2 数据平衡

在原始CICIDS-2018数据集中,各类数据处于极其不平衡的状态。其中,正常类别(Benign)占比66.88%,其他异常攻击类占比均不超过20%,最少的两类DDoS和SQL攻击占比甚至不足2%。类别之间最大相差三十多倍,这样的数据在训练时使得模型过度关注多数类,忽略了少数类。而入侵检测更加重要的是异常攻击类的检测,即使整体精度很高,但却牺牲了少数类的检测精度,不符合算法的初衷。

为使模型训练更加合理,需要平衡数据集,增强少数类的比例。通过输入训练数据集到CGAN中训练,在损失收敛后,利用训练好的生成器Generater生成少数类的攻击流量,补充到训练集中,使得各个类的占比达到均衡。平衡前后的类别分布对比如图4所示。

3.3 图像化前后CGAN性能对比

图像化前,生成器和判别器的损失在训练后期还是波动较大,收敛能力差,如图5所示。图像化后,生成器和判别器的损失收敛快,波动较为稳定,如图6所示。

图像化前,GAN接收到的输入是归一化后的多行数据,且都为浮点型数据,导致判别器更容易判别生成的是假数据,且生成器的梯度计算更加困难,导致生成的数据容易出现噪声,生成不稳定,显示在损失变化上就是出现数值波动幅度较大。图像化后,多行数据变为多个灰度图像,更方便进行特征提取,且数据先经过[0,255]的整数化,再经过标准化,去掉了一些不必要的噪声数据,使得GAN训练损失可以最后达到平稳收敛。

原始图像(第1行)和训练后生成器生成的图像(第2行)对比如图7所示。每一列为同一类数据,可以看到生成的新图像和原始图像具有较大的相似度。

为验证生成样本与原始数据的多维分布一致性,对二者76维特征的全局相关性结构进行定量分析。首先,从生成器输出中抽取10 000个样本,与相同数量的原始真实样本分别计算76×76维Pearson相关系数矩阵;其次,将两个矩阵展平为长度为5 776(76²)的向量,并通过余弦相似度衡量其全局相关性模式的匹配程度。实验显示,生成数据与原始数据相关系数矩阵的余弦相似度达到0.918,表示分布相似度较好。

3.4 数据平衡前后Advanced-DCNN分类精度对比

使用二分类评估混淆矩阵(Confusion Matrix)作为统计工具用于评估模型性能[12]。它能直观地展示分类模型的预测结果和实际类别之间的差异。混淆矩阵包含3个元素:准确率(Accuracy)、召回率(Recall)和误报率(False Positive Rate, FPR),采用图8中的性能指标衡量实验结果的鲁棒性。

准确率即正确预测的样本数占总样本数的比例,如式(3)所示:

RAccuracy=NTP+NTNNTP+NFP+NTN+NFN

召回率即正确预测为正类的样本数占总的正类样本数的比例,如式(4)所示:

RRecall=NTPNTP+NFN

误报率即错误预测为正类的样本数占实际为负类的样本数的比例,如式(5)所示:

RFPR=NFPNFP+NTN

数据平衡前后不同标签类别的分类准确率对比如图9所示。数据集在经过平衡后,Advanced-DCNN的分类准确率从95.82%升至96.58%。在数据不平衡的情况下,损失函数可能更多地受到数量较多类别的影响,导致模型训练不稳定[13]。平衡数据后,损失函数可以更公平地反映各个类别的分类效果,有助于模型更好地进行学习和调整。数据平衡可以减少模型训练过程中的偏差,使得模型不会倾向于某一类别的数据。在原始数据集中,如果某些类别样本数量远多于其他类别,模型可能会倾向于拟合这些数量较多的类别,导致对数量较少类别的识别能力下降。数据平衡之后,模型对于少数类的预测分类精度有所上升,例如Botnet从79.70%升至85.53%,SQL从39.66%升至71.84%。

3.5 Advanced-DCNN和传统机器学习方法对比

传统机器学习方法[14]主要包括如下。逻辑回归(Logistic Regression, LR)是一种用于二分类问题的统计模型,适用于特征向量和目标变量有一定线性相关性的情况。决策树(Decision Tree, DT)是一种基于树结构的分类和回归模型,可以应用于分类和回归任务,是一种非常灵活的机器学习算法。多层感知机(Multilayer Perceptron, MLP)是一种前馈算法,适用于分类和回归问题。相较于LR等线性模型,MLP能捕捉特征向量和目标变量之间的非线性关系。线性判别分析(Linear Discriminant Analysis, LDA)是一种经典的监督学习算法,适用于降维和分类任务。LDA在处理高维数据时效果显著,尤其是当类别分布线性可分时。

Advanced-DCNN与传统机器学习方法对比如表2所示。Advanced-DCNN在入侵检测多分类任务中准确率最高,误报率最低。LDA由于不能很好处理大量特征和非线性的关系,准确率最低,只有90.25%,误报率也最高。对于检测延迟这一指标,Advanced-DCNN由于模型复杂度较高,表现稍劣于LR、DT和LDA。

3.6 Advanced-DCNN和现有深度学习方法对比

在数据平衡策略上,Advanced-DCNN和深度信念网络广义均衡学习系统(Deep Belief Network Broad Equalization Learning System, DBELS)[15]、深度神经网络(Deep Neural Networks, DNN)、入侵检测系统的多目标进化卷积神经网络(Multi-Objective Evolutionary Convolutional Neural Network For Intrusion Detection System, MECNN)等现有深度学习方法的对比如表3所示。

Advanced-DCNN和现有方法性能对比如表4所示,其中“—”表示无法获得。在CICIDS-2018数据集上的多分类任务中,Advanced-DCNN的准确率高于DBELS和DNN,略低于MECNN,但召回率远高于MECNN,综合表现优于其他模型。

4 结束语

将高维网络流量数据转化为单通道的灰度图像,可以提高特征提取的效率,增强对于异常数据的特征描述。利用CGAN生成带标签的少数类数据以平衡训练数据集,增加少数类数据量的同时提高Advanced-DCNN模型分类的泛化能力,明显提高少数攻击类的分类精度。

在今后的工作中,将针对以下4个方面开展更深入的研究:1)学习更多的平衡数据集的方法,加入到研究当中;2)改进CGAN内部的神经网络结构,探索时空特征联合建模机制,例如结合LSTM网络捕获流量序列的时序模式,或构建多通道生成模型以保留协议类型、端口交互等上下文信息,从而增强对多阶段攻击的深层关联分析能力;3)设计异构特征融合的检测架构,在保留灰度图像空间特征提取优势的基础上,引入原始流量中的时序标记、协议状态等结构化信息作为辅助特征,通过注意力机制实现特征的自适应融合;4)在实际动态流量场景中,引入在线增量学习机制,通过设计选择性记忆回放策略,使模型能持续学习新攻击模式而不遗忘已有知识。

参考文献

[1]

AKHTAR M ALIQADRI S M OSIDDIQUI M Aet al. Robust genetic machine learning ensemble model for intrusion detection in network traffic[J]. Scientific Reports2023,13:No.17227.

[2]

ABDULHAMMED RFAEZIPOUR MABUZNEID Aet al. Deep and machine learning approaches for anomaly-based intrusion detection of imbalanced network traffic[J]. IEEE Sensors Letters20193(1):No.7101404.

[3]

蹇诗婕,卢志刚,杜丹,.网络入侵检测技术综述[J].信息安全学报20205(4):96-122.

[4]

郭三田,柳毅.一种类平衡和CNN结合的网络入侵检测方法[J].计算机应用与软件202340(7):326-332.

[5]

GOODFELLOW IPOUGET-ABADIE JMIRZA Met al. Generative adversarial networks[J]. Communications of the ACM202063(11):139-144.

[6]

陈鹏,郭云飞,张建朋,.一种面向未知攻击检测的深度神经网络预处理方法[J].信息工程大学学报202122(2):200-207.

[7]

张海军,陈映辉.类图像处理面向大数据XSS入侵智能检测研究[J].计算机应用与软件202037(2):288-294.

[8]

王雪妍,温蜜,李晋国,.一种卷积神经网络结合特征融合的网络入侵检测方法[J].计算机应用与软件202441(8):359-366.

[9]

MIRZA MOSINDERO S. Conditional generative adversarial nets[DB/OL]. (2024-11-06)[2025-01-17].

[10]

SHARMA H SSARKAR ASINGH M M. An efficient deep learning-based solution for network intrusion detection in wireless sensor network[J]. International Journal of System Assurance Engineering and Management202314(6):2423-2446.

[11]

陈仲磊,伊鹏,陈祥,.融合注意力与卷积的系统调用异常检测[J].信息工程大学学报202324(4):475-483.

[12]

李道全,杨乾乾,鲁晓夫.基于决策树的SDN网络入侵分类检测模型[J].计算机工程与设计202243(8):2146-2152.

[13]

魏波,胡财富,任芮彬.面向不平衡数据的二阶段网络入侵检测新方法[J].系统工程与电子技术202547(6):2065-2075.

[14]

邓淼磊,阚雨培,孙川川,.基于深度学习的网络入侵检测系统综述[J].计算机应用202545(2):453-466.

[15]

DENG M LSUN C CKAN Y Pet al. Network intrusion detection based on deep belief network broad equalization learning system[J]. Electronics202413(15):No.3014.

[16]

JOSE JJOSE D V. Deep learning algorithms for intrusion detection systems in Internet of Things using CIC-IDS 2017 dataset[J]. International Journal of Electrical and Computer Engineering202313(1):No.1134.

[17]

CHEN YLIN Q ZWEI W Het al. Intrusion detection using multi-objective evolutionary convolutional neural network for Internet of Things in Fog computing[J]. Knowledge-Based Systems2022,244:No.108505.

AI Summary AI Mindmap
PDF (1764KB)

78

访问

0

被引

详细

导航
相关文章

AI思维导图

/