CN115314254B - 基于改进wgan-gp的半监督恶意流量检测方法 - Google Patents
基于改进wgan-gp的半监督恶意流量检测方法 Download PDFInfo
- Publication number
- CN115314254B CN115314254B CN202210801854.4A CN202210801854A CN115314254B CN 115314254 B CN115314254 B CN 115314254B CN 202210801854 A CN202210801854 A CN 202210801854A CN 115314254 B CN115314254 B CN 115314254B
- Authority
- CN
- China
- Prior art keywords
- wgan
- semi
- generator
- supervised
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于恶意流量检测技术领域,具体涉及一种基于改进的WGAN‑GP的半监督恶意流量检测方法。该方法根据建立的半监督恶意流量检测模型进行检测。首先,利用给定数据流中连续数据包的时间序列特性,为数据集中的每个数据流构建一个伪特征图(PFM)。其次,我们固定生成器,只在少量被标记的PFM上训练判别器,从而得到一个能够区分恶意流量和良性流量的判别器。最后,生成器和判别器在未标记的真实PFM上进行无监督地对抗训练,这使得判别器能够通过生成器生成的PFM提高自身的检测性能。通过实验表明,本发明在仅使用少量标记样本的情况下可以达到较高的检测准确率和较优的检测性能。
Description
技术领域
本发明属于恶意流量检测技术领域,具体涉及一种基于改进的 WGAN-GP的半监督恶意流量检测方法。
背景技术
随着网络中的攻击频率和规模逐年增加,网络也必然会受到各种安全威胁。自2013年以来,针对企业的恶意软件攻击数量已经上升了12%。此外,DDoS攻击、后门、蠕虫等攻击也一直存在于互联网中。
作为网络防御的一项重要工作,恶意流量检测技术的发展至关重要。在人工智能技术蓬勃发展的背景下,基于深度学习的恶意流量检测技术已成为当下的热门研究课题。深度学习技术应用于恶意流量检测,能够有效弥补传统方法的不足。例如,自动特征学习使传统检测方法获得比经典的机器学习模型更好的检测性能。但深度学习模型在训练时需要大量的标记样本,这严重阻碍了基于深度学习的恶意流量检测技术的发展。在实际应用中,专家标记数据的高成本和获得标记信息的难度使获得大量的标记数据成为挑战。例如,深度包检测(DPI) 工具经常被用来构建可靠的标签数据,但加密通信的流行使这种方法几乎不能再通过分析包负载信息来构建可靠的标签数据。
发明内容
针对现有基于深度学习的检测方法大多需要足够多的标记流量来训练分类器,而在实际应用中很难获得大量的标记流量,而标记数据不足导致神经网络训练不充分,导致检测准确率低的缺陷和问题,本发明提供一种仅用少量标记样本就可以达到较高检测准确率的基于改进WGAN-GP的半监督恶意流量检测方法。
本发明解决其技术问题所采用的方案是:一种改进的WGAN-GP 的半监督恶意流量检测方法,其是基于改进的WGAN-GP的半监督恶意流量检测模型进行恶意流量检测,包括以下步骤:
步骤一、构建模型:建立半监督恶意流量检测模型 SEMI-WGAN-GP,该检测模型包括生成器G和判别器D,其中生成器包括全连接层、重塑层和四个卷积层,其中全连接层用于接收随机噪声并通过重塑层重塑为四维输出;每个卷积层用于进行反卷积、批量归一化和LeakyRelu激活操作;所述判别器D包括四个卷积层、一个扁平层和一个密集层,每个卷积层包括卷积和LeakyRelu激活操作;判别器与生成器使用相同的填充和单位步长保持卷积层之间特征图的完整性;
步骤二、构建模型输入:将原始数据集的网络流量处理成图像数据作为模型的输入,并选出训练集和测试集;
步骤三、在监督阶段,固定生成器G,在少量的标记样本上训练判别器D,训练过程中判别器的损失函数为:
L(D)supervised=-Ex,y~Pdata(x,y)logPmodel(y|x,y<K+1)
式中:Pmodel(y|x)为分类网络为每个类别输出的概率;y表示类标签;
步骤四、在无监督阶段,训练生成器,计算生成器的损失,生成器的损失函数为:
在生成器生成的样本和未标记的样本上进一步训练判别器,计算判别器的无监督损失函数为:
L(D)unsupervised=-(Ex~Pdata(x)[log(1-Pmodel(y=K+1|x))] +Ex~Pdata(g)[logPmodel(y=K+1|x)]);
步骤五、恶意流量检测:使用充分训练的判别器对测试集进行流量检测并分类,得到正确分类的恶意流、正确分类的良性流、错误分类的恶意流和错误分类的良性流的数量。
上述的改进的WGAN-GP的半监督恶意流量检测方法,步骤二中通过数据包采样技术提取给定流中前m个数据包,聚合连续数据包的时间序列特征P,构建给定流的伪特征图PFM,执行前m个数据包采样得到PFMs,将PFMs的部分作为训练集,另一部分作为测试集;
P=[f1,f2,...fn]
PFM=[P1,P2,...Pi]T
式中f1,f2,....,fn表示特征;Pi表示给定流中第i个包的特征向量;
上述的改进的WGAN-GP的半监督恶意流量检测方法,对于原始数据集是由多个网络流组成的pacp文件,利用数据包的特性为每个流创建一个PFM,具体方法为:
(1)使用go-flows工具将数据集转换为单个数据流;
(2)结合脚本提取每个数据流的数据包特征,并过滤出由少于 20个数据包组成的数据流。
上述的改进的WGAN-GP的半监督恶意流量检测方法,若提取的特征值不是数值数据,则需要将其数值化。
上述的改进的WGAN-GP的半监督恶意流量检测方法,还包括将特征值归一化到[0,1]区间,
Zij=(yij-(yj)min)/((yj)max-(yj)min)
式中:Zij为PFM第i行第j列的归一化特征值;yij为PFM第i 行第j列的特征值;(yj)min为PFM第j列的最小特征值;(yj)max为PFM 第j列的最大特征值。
上述的改进的WGAN-GP的半监督恶意流量检测方法,对于非数值型的数据包方向特征,用0和1来表示,分别表示向前和向后。
上述的改进的WGAN-GP的半监督恶意流量检测方法,对于非数值型的类标签,通过独热编码将其数值化,具体是通过独热编码得到三个比特向量[1,0,0]、[0,1,0]和[0,0,1]来分别表示类标签:良性、恶意和假。
本发明的有益效果:本发明通过利用给定数据流中连续数据包的时间序列特性,为数据集中的每个数据流构建一个伪特征图(PFM),然后固定生成器,只在少量被标记的PFM上训练判别器,从而得到一个能够区分恶意流量和良性流量的判别器;最后,生成器和判别器在未标记的真实PFM上进行无监督地对抗训练,使判别器能够通过生成器生成的PFM提高自身的检测性能,该方法能够充分利用少量标注的样本,仅用少量标记样本就可以达到较高的检测准确率,提高分类精度。
附图说明
图1为基于SEMI-WAGN-GP的恶意流量检测模型的网络结构图。
图2为基于SEMI-WGAN-GP的恶意流量检测流程图。
图3为不同模型在UNSW-NB15训练集上的准确率。图中: SEMI-WGAN-GP1和SEMI-WGAN-GP2分别表示SEMI-WGAN-GP 在含有20%标记样本和50%标记样本的UNSW-NB15训练集上训练得到的模型;2DCNN和MLP是在所有样本都被标记的UNSW-NB15 训练集上训练得到的模型。
图4为不同模型在UNSW-NB15训练集上的准确率。图中: SEMI-DCGAN1和SEMI-DCGAN2分别表示SEMI-DCGAN在含有 20%标记样本和50%标记样本的UNSW-NB15训练集上训练得到的模型;SEMI-WGAN-GP1和SEMI-WGAN-GP2分别表示 SEMI-WGAN-GP在含有20%标记样本和50%标记样本的 UNSW-NB15训练集上训练得到的模型。
具体实施方式
最近,多层感知器(MLP)、卷积神经网络(CNN)、循环神经网络(RNN)已被应用于恶意流量检测。随着GAN的逐渐成熟和稳定,GAN也逐渐被应用于恶意流量检测。首先,研究人员利用GAN 学习正常样本的特征分布,然后在学习到的分布中找到最相似的样本,最后根据测试样本与发现样本的差值定义异常分值来区分测试样本的异常程度。
然而自GAN被提出以来,GAN一直存在训练困难和不稳定的问题。WassersteinGenerative Adversarial Network(WGAN)通过改进模型的目标函数,从理论上解决了GAN训练不稳定的问题。与GAN相比,WGAN判别器的最终目标不再是最大化真实分布和生成分布之间的JS散度,而是最大化它们之间的Wasserstein距离。WGAN生成器的最终目标是生成近似于真实分布的样本,使Wasserstein距离最小。
公式1概括了整个WGAN训练的概念,其中Pdata(g)和Pdata(x) 表示生成器生成的样本和真实样本。判别器(D)转换后的期望值不能无限大或无限小,因为损失函数会越来越大,永远不会收敛。因此,在每次更新模型后,在限制权重参数w小于固定常数c(w[-c,c])的条件下,通过公式2对Dw(x)进行1-Lipschitz连续限制,其中x1和x2 表示真实样本和生成样本。
L=Ex~Pdata(x)[Dw(x)]-Ex~Pdata(g)[Dw(x)] (1)
|Dw(x1)-Dw(x2)|<=|x1-x2| (2)
众所周知,WGAN使用权重剪裁对判别器施加1-Lischitz约束,会导致参数的极化。同时,不合理的阈值会导致梯度消失或爆炸,这使得训练困难和收敛缓慢的问题在实验过程中仍然存在。因此, WGAN-GP引入了一种梯度惩罚机制,即一种新的Lipschitz连续性限制方法,该机制通过创建一个放弃对D(x)求导而只对求导的损失函数使判别器的梯度不超过1,如公式3所示,其中x代表整个样本空间,代表真实样本和生成样本空间的中间值。
然而WGAN-GP虽然能够有效地提高梯度的稳定性和收速度,但这也使得判别器不再具备分类能力,无法适应半监督检测任务。因此本发明提供一种基于改进的WGAN-GP的半监督恶意流量检测方法。下面结合附图和实施例对本发明进一步说明。
实施例1:本实施例提供一种基于改进的WGAN-GP的半监督恶意流量检测方法,如图1所示,该方法主要包括以下内容。
一、建立半监督恶意流量检测模型SEMI-WGAN-GP,该检测模型的网络结构图如图2所示,包括生成器G和判别器D。
其中生成器的第一层是一个全连接层,它接收随机噪声并通过重塑层将其重塑为4维输出。在第一层之后,有四个卷积层,每个卷积层包括反卷积、批量归一化(BN)和激活一系列的操作。为了达到预期的大小,操作序列不断对输入进行上采样。在实施例中,预期大小20×6,并通过tanh函数在将值挤压在-1和1之间。生成器的结构和参数设置如表1所示。为了使模型梯度更大,收敛更快,使用BN 将带有偏差的分布归一化为标准分布,这有助于激活函数的输入值处于更敏感的区域。卷积层中使用了LeakyRelu激活操作,以避免梯度爆炸导致模型的过度权重更新。
表1 SEMI-WGAN-GP生成器的结构和参数设置
而判别器由4个卷积层、一个扁平层和一个密集层组成,其中每个卷积层包括卷积和LeakyRelu激活操作。为了实现我们的检测任务,全连接层使用softm ax激活函数来给出最终的概率分布。然而, WGAN-GP判别器的全连接层只输出最终的logits。判别器的结构和参数设置见表2。与生成器一样,我们也使用相同的填充和单位步长来保持几个卷积层之间特征图的完整性。
表2 SEMI-WGAN-GP判别器的结构与参数设置
二、构建模型的输入,在这个阶段,我们将网络流量处理成图像数据作为模型的输入。为了设计类似图像的样本,我们通过聚合连续数据包的时间序列特征,构建一个给定流量的伪特征图(PFM)。数据包的时间序列特征可以用特征向量P表示,描述为公式4,其中f1,f2,....,fn表示特征,如数据包方向、数据包间隔、数据包大小等。
P=[f1,f2,...fn] (4)
单个PFM可以表示为式5,其中Pi表示给定流中第i个包的特征向量。
PFM=[P1,P2,... Pi]T (5)
在本实施例中,不使用给定流的所有数据包来生成PFM,而是通过数据包采样技术提取一些数据包。采样有很多好处,比如不需要整个流的数据包,减少内存的使用,提高计算效率等。
由于前m个数据包对于判断一个数据流是恶意的还是良性的往往是最重要的,因此本实施例使用前m个数据包的采样技术,它只需要对给定数据流的前m个连续数据包进行采样。
通过对所有网络流执行前m个数据包的采样技术,我们可以产生一个m×6维的PFM数据集,其中单个PFM的列由数据包方向、数据包时间间隔、数据包大小、数据包的IP数据报的总长度、数据包的IP数据报的生存时间以及数据包的IP数据报的服务类型组成。选择上述特性是因为它们与网络连接速度无关。
三、监督阶段
在监督阶段,我们固定生成器(G),只训练判别器(D),因为我们的目标是使用少数标记的样本获得一个多任务分类器。
假设一个给定的数据集包含K个类别。在经典的监督训练中,一个传统的分类网络需要将输入的x分类为K个类型之一。分类网络为每个类别输出一个概率Pmodel(y|x),并使预测分布和观察到的标签之间的交叉熵最小。然而,我们的SEMI-WGAN-GP模型的思想是通过向真实数据集添加生成器生成的样本来提高判别器的检测能力,以增加类标签。
因此,我们的SEMI-WGAN-GP应该是一个能够识别K+1类的分类器,其中第K+1类是生成器生成的样本。Pmodel(y=K+1|x)可以代表输入数据是假的概率。在训练期间,目标函数通过最大化真实标记数据是K类之一的概率来训练判别器。训练过程中判别器的损失函数,如公式6所示,其中y表示类标签。
L(D)supervised=-Ex,y~Pdata(x,y)logPmodel(y|x,y<K+1) (6)
四、无监督阶段
在无监督阶段,损失包括两部分:生成器和判别器损失。为了使 WGAN-GP适应我们的检测任务,同时产生高质量的样本,本实施例引入了特征匹配的思想来构建WGAN-GP生成器的目标函数。
特征匹配是通过给生成器分配一个新的目标来解决GAN的不稳定问题。假设f(x)表示判别器的中间激活层,Pz(z)是生成器收到的噪声数据,G(z)是生成器生成的样本数据。因此,通过训练,我们的 SEMI-WGAN-GP生成器最终会生成Wasserstein距离最接近f(x)期望值的数据。在训练期间,生成器的损失函数可以表示为公式7,其中λ是超参数。
为了提高检测性能,判别器在训练过程中通过最大化真实未标记数据为真y<K+1和生成样本为假y=K+1的概率来充分学习真实样本和生成样本的特征分布。
判别器的无监督损失函数,如公式8所示。
在本实施例中,对于无监督学习,只需要确定真实的无标签样本和生成的数据是真的还是假的,而不需确定它们属于真实数据的哪一类。
五、恶意流量检测
使用经过充分训练的判别器对测试集进行恶意流量检测并实现分类。
试验例1:本试验例在公开的UNSW-NB15数据集上验证 SEMI-WGAN-GP模型。具体包括以下内容。
1、数据预处理
UNSW-NB15数据集包含良性流量和九种攻击类型的流量。由于本试验例的目的是检测流量是恶意的还是良性的,我们把数据集中九种类型的攻击流量都归为恶意。
此外,UNS-W-NB15的原始数据集是由多个网络流组成的pcap 文件。然而,我们需要利用数据包的特性为每个流创建一个PFM。因此,我们首先使用go-flows工具将数据集转换为单个数据流,然后结合脚本提取每个数据流的数据包特征,并过滤由少于20个数据包组成的数据流,因为它不足以进行采样。其次,如果提取的特征值不是数值数据,则使用标签编码和独热编码将其数值化。对于本文选择的6个特征分别为数据包方向、数据包时间间隔、数据包大小、数据包的IP数据报的总长度、数据包的IP数据报的生存时间以及数据包的IP数据报的服务类型,其中只有数据包的方向是非数值的。其余都是数值的。数据包的方向有两个属性,用0和1来表示,它们表示向前和向后。类标签也是非数值型的,我们可以通过独热编码得到三个比特向量[1,0,0]、[0,1,0]和[0,0,1]来分别表示类标签:良性、恶意和假。然后,我们执行前m个数据包采样得到PFMs。为了降低数值化后所有特征值的可变性,我们还通过以下公式将特征值归一化到 [0,1]区间。
Zij=(yij-(yj)min)/((yj)max-(yj)min)
其中Zij为PFM第i行第j列的归一化特征值,yij为PFM第i行第j列的特征值,(yj)min为PFM第j列的最小特征值,(yj)max为PFM 第j列的最大特征值。
最后,我们总共得到1,600,000个归一化的PFM,并将80%作为训练集,20%作为测试集。
2、评价
我们选择准确率、精确度、召回率、误报率和F1得分作为评价指标。计算公式如下,其中TP、TN、FP和FN表示正确分类的恶意流、正确分类的良性流、错误分类的恶意流和错误分类的良性流的数量。
Acc=(TP+TN)/(TP+TN+FP+FN)
Pre=TP/(TP+FP)
Rec=TP/(TP+FN)
FPR=FP/(FP+TN)
F1=(2×R×P)/(R+P)
为了进行比较,我们选择经典的MLP和2DCNN作为完全监督的基线模型来验证SEMI-WGAN-GP的有效性和可靠性。在本文中, 2DCNN和MLP是二元分类,所以最后一层使用了sigmoid激活函数。此外,2DCNN的网络结构和其他参数以及MLP的网络深度和衰减率都与SEMI-WGAN-GP判别器一致。
3、实施细节
在构建输入阶段,为了节省GPU的内存,同时确保它能准确地输入给定的数据流,我们根据数据流的平均长度将m设置为20。因此,输入的PFM的大小为20×6。
在监督阶段,我们使用优化器Adam来训练我们的模型,并设置优化器Adam的学习率(lr)为0.0001。批量大小(batchsize)被设置为256。
在无监督训练阶段,生成器接收随机噪声,而判别器接收生成器生成的样本和未标记的真实样本。我们把判别器的扁平层作为中间激活层f(x),并设定超参数λ=10;其他参数与监督训练阶段一致。
在测试阶段,生成器被禁用,以节省计算资源。我们将带标记的 PFM测试集输入判别器。判别器根据给定的概率分布对PFM测试集进行分类,并将分类结果与数据的真实标签进行比较评估。
4、结果
我们在一台装有NVIDIA GeForce RTX 2080Ti@11GB GPU和 Intel(R)Core(TM)i7-7700k CPU@4.20GHz CPU的计算机上完成了所有实验。在实验中,我们通过设置不同比例的标记样本,将 SEMI-WGAN-GP的性能指标与对比模型进行了比较。数据集中标记样本的比例被设定为20%、50%和100%。完成整个训练和测试大约需要一周的时间。将SEMI-WGAN-GP与2DCNN和MLP进行比较,我们得到的结果如图3、表3所示。图3中SEMI-WGAN-GP1和SEMI-WGAN-GP2分别表示SEMI-WGAN-GP在含有20%标记样本和50%标记样本的UNSW-NB15训练集上训练得到的模型;2DCNN 和MLP是在所有样本都被标记的UNSW-NB15训练集上训练得到的模型。
表3不同模型在UNSW-NB15测试集上的结果
从图3不难看出,在训练开始时,基线模型的准确率比我们的 SEMI-WGAN-GP高。随着训练轮次的增加,SEMI-WGAN-GP的准确率逐渐超过了基线模型。从表3中,我们可以看到,SEMI-WGAN- GP1在测试集上可以达到90.53%的准确率,超过完全监督的MLP(基线)和2DCNN(基线)的79.92%和84.94%。当标记的样本增加到训练集的一半时,SEMI-WGAN-GP2在测试集上的准确率提高到96.93%。此外,SEMI-WGAN-GP1和SEMI-WGAN-GP2有更高的F1得分和更低的误报率。上述结果表明,本发明方法在检测性能上优于完全监督的2DCNN和MLP,尽管只使用了少量的标记样本。
试验例2:本试验例在进行试验例1的同时,在公开的 UNSW-NB15数据集将本发明方法SEMI-WGAN-GP与 SEMI-DCGAN进行对比,结果见图4和表4。
表4不同模型在UNSW-NB15测试集上的结果
由图4和表4可知,本发明的SEMI-WGAN-GP1和 SEMI-WGAN-GP2的训练过程比SEMI-DCGAN1和SEMI-DCGAN2 更稳定。在测试集上,SEMI-DCGAN的准确率达到87.54% (SEMI-DCGAN1)和93.97%(SEMI-DCGAN2),分别低于 SEMI-WGAN-GP1和SEMI-W GAN-GP2。同时从表4中还可以看出, SEMI-WGAN-GP1和SEMI-GP2的F1得分分别高于SEMI-DCGAN1 和SEMI-DCGAN2。上述实验结果表明,生成样本的质量对提高分类器的性能也起着至关重要的作用。
另外,为了验证SEMI-WAGN-GP与SEMI-DCGAN生成的样本的差别,我们将真实样本与SEMI-WGAN-GP1和SEMI-DCGAN1生成的样本进行了比较,结果显示与SEMI-DCGAN相比,本发明方法 SEMI-WGAN-GP生成了更好的样本。
Claims (7)
1.一种改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:其是基于改进的WGAN-GP的半监督恶意流量检测模型进行恶意流量检测,包括以下步骤:
步骤一、构建模型:建立半监督恶意流量检测模型SEMI-WGAN-GP,该检测模型包括生成器G和判别器D,其中生成器包括全连接层、重塑层和四个卷积层,其中全连接层用于接收随机噪声并通过重塑层重塑为四维输出;每个卷积层用于进行反卷积、批量归一化和LeakyRelu激活操作;所述判别器D包括四个卷积层、一个扁平层和一个密集层,每个卷积层包括卷积和LeakyRelu激活操作;判别器与生成器使用相同的填充和单位步长保持卷积层之间特征图的完整性;
步骤二、构建模型输入:将原始数据集的网络流量处理成图像数据作为模型的输入,并选出训练集和测试集;
步骤三、在监督阶段,固定生成器G,在少量的标记样本上训练判别器D,训练过程中判别器的损失函数为:
L(D)supervised=-Ex,y~Pdata(x,y)log Pmodel(y|x,y<K+1)
式中:Pmodel(y|x)为分类网络为每个类别输出的概率;x表示样本;y表示类标签;K表示类别总数;
步骤四、在无监督阶段,训练生成器,计算生成器的损失,生成器的损失函数为:
式中:f(x)表示判别器的中间激活层,Pz(z)是生成器收到的噪声数据,G(z)是生成器生成的样本数据;λ是超参数;表示真实数据分布Pdata(x)和生成数据分布Pdata(g)各进行一次采样,然后在两点的连线上的一次随机采样,即惩罚项采样;/>表示惩罚项采样分布;/>表示对函数在各个正交方向上求导数以后再分别乘上各个方向上的单位向量,即梯度运算;
在生成器生成的样本和未标记的样本上进一步训练判别器,计算判别器的无监督损失函数为:
L(D)unsupervised=-(Ex~Pdata(x)[log(1-Pmodel(y=K+1|x))]+Ex~Pdata(g)[logPmodel(y=K+1|x)])
式中:Pdata(g)表示生成数据分布;
步骤五、恶意流量检测:使用充分训练的判别器对测试集进行流量检测并分类,得到正确分类的恶意流、正确分类的良性流、错误分类的恶意流和错误分类的良性流的数量。
2.根据权利要求1所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:步骤二中通过数据包采样技术提取给定流中前m个数据包,聚合连续数据包的时间序列特征P,构建给定流的伪特征图PFM,执行前m个数据包采样得到PFMs,将PFMs的部分作为训练集,另一部分作为测试集;
P=[f1,f2,...fn]
PFM=[P1,P2,...Pi]T
式中f1,f2,....,fn表示特征;Pi表示给定流中第i个包的特征向量。
3.根据权利要求2所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:对于原始数据集是由多个网络流组成的pacp文件,利用数据包的特性为每个流创建一个PFM,具体方法为:
(1)使用go-flows工具将数据集转换为单个数据流;
(2)结合脚本提取每个数据流的数据包特征,并过滤出由少于20个数据包组成的数据流。
4.根据权利要求3所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:若提取的特征值不是数值数据,则需要将其数值化。
5.根据权利要求4所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:还包括将特征值归一化到[0,1]区间,
Zij=(yij-(yj)min)/((yj)max-(yj)min)
其中Zij为PFM第i行第j列的归一化特征值;yij为PFM第i行第j列的特征值;(yj)min为PFM第j列的最小特征值;(yj)max为PFM第j列的最大特征值。
6.根据权利要求3所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:对于非数值型的数据包方向特征,用0和1来表示,分别表示向前和向后。
7.根据权利要求3所述的改进的WGAN-GP的半监督恶意流量检测方法,其特征在于:对于非数值型的类标签,通过独热编码将其数值化,具体是通过独热编码得到三个比特向量[1,0,0]、[0,1,0]和[0,0,1]来分别表示类标签:良性、恶意和假。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210801854.4A CN115314254B (zh) | 2022-07-07 | 2022-07-07 | 基于改进wgan-gp的半监督恶意流量检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210801854.4A CN115314254B (zh) | 2022-07-07 | 2022-07-07 | 基于改进wgan-gp的半监督恶意流量检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115314254A CN115314254A (zh) | 2022-11-08 |
CN115314254B true CN115314254B (zh) | 2023-06-23 |
Family
ID=83857732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210801854.4A Active CN115314254B (zh) | 2022-07-07 | 2022-07-07 | 基于改进wgan-gp的半监督恶意流量检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115314254B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110320162A (zh) * | 2019-05-20 | 2019-10-11 | 广东省智能制造研究所 | 一种基于生成对抗网络的半监督高光谱数据定量分析方法 |
CN111046900A (zh) * | 2019-10-25 | 2020-04-21 | 重庆邮电大学 | 基于局部流形正则化的半监督生成对抗网络图像分类方法 |
CN111476294A (zh) * | 2020-04-07 | 2020-07-31 | 南昌航空大学 | 一种基于生成对抗网络的零样本图像识别方法及系统 |
CN111914728A (zh) * | 2020-07-28 | 2020-11-10 | 河海大学 | 高光谱遥感影像半监督分类方法、装置及存储介质 |
CN112101473A (zh) * | 2020-09-22 | 2020-12-18 | 南京邮电大学 | 一种基于小样本学习的烟雾检测算法 |
CN113052080A (zh) * | 2021-03-26 | 2021-06-29 | 南京航空航天大学 | 一种基于无监督生成对抗网络的非法无人机检测方法 |
CN113705709A (zh) * | 2021-09-02 | 2021-11-26 | 新疆信息产业有限责任公司 | 一种改进的半监督图像分类方法、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10474929B2 (en) * | 2017-04-25 | 2019-11-12 | Nec Corporation | Cyclic generative adversarial network for unsupervised cross-domain image generation |
US10540578B2 (en) * | 2017-12-21 | 2020-01-21 | International Business Machines Corporation | Adapting a generative adversarial network to new data sources for image classification |
-
2022
- 2022-07-07 CN CN202210801854.4A patent/CN115314254B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110320162A (zh) * | 2019-05-20 | 2019-10-11 | 广东省智能制造研究所 | 一种基于生成对抗网络的半监督高光谱数据定量分析方法 |
CN111046900A (zh) * | 2019-10-25 | 2020-04-21 | 重庆邮电大学 | 基于局部流形正则化的半监督生成对抗网络图像分类方法 |
CN111476294A (zh) * | 2020-04-07 | 2020-07-31 | 南昌航空大学 | 一种基于生成对抗网络的零样本图像识别方法及系统 |
CN111914728A (zh) * | 2020-07-28 | 2020-11-10 | 河海大学 | 高光谱遥感影像半监督分类方法、装置及存储介质 |
CN112101473A (zh) * | 2020-09-22 | 2020-12-18 | 南京邮电大学 | 一种基于小样本学习的烟雾检测算法 |
CN113052080A (zh) * | 2021-03-26 | 2021-06-29 | 南京航空航天大学 | 一种基于无监督生成对抗网络的非法无人机检测方法 |
CN113705709A (zh) * | 2021-09-02 | 2021-11-26 | 新疆信息产业有限责任公司 | 一种改进的半监督图像分类方法、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Improved training of wasserstein gans;I. Gulrajani et al;《ACM》;全文 * |
生成对抗网络的研究进展综述;吴少乾;李西明;;计算机科学与探索(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115314254A (zh) | 2022-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110213222B (zh) | 基于机器学习的网络入侵检测方法 | |
CN112784881B (zh) | 网络异常流量检测方法、模型及系统 | |
CN111783442A (zh) | 入侵检测方法、设备和服务器、存储介质 | |
CN111556016B (zh) | 一种基于自动编码器的网络流量异常行为识别方法 | |
CN112560596B (zh) | 一种雷达干扰类别识别方法及系统 | |
CN111652290A (zh) | 一种对抗样本的检测方法及装置 | |
CN112738014A (zh) | 一种基于卷积时序网络的工控流量异常检测方法及系统 | |
CN115811440B (zh) | 一种基于网络态势感知的实时流量检测方法 | |
CN113922985A (zh) | 一种基于集成学习的网络入侵检测方法及系统 | |
CN114697096A (zh) | 基于空时特征和注意力机制的入侵检测方法 | |
CN116633601A (zh) | 一种基于网络流量态势感知的检测方法 | |
CN115348074A (zh) | 深度时空混合的云数据中心网络流量实时检测方法 | |
CN115801374A (zh) | 网络入侵数据分类方法、装置、电子设备及存储介质 | |
CN115277189A (zh) | 基于生成式对抗网络的无监督式入侵流量检测识别方法 | |
CN111130942A (zh) | 一种基于消息大小分析的应用流量识别方法 | |
CN114513367A (zh) | 基于图神经网络的蜂窝网络异常检测方法 | |
Liu et al. | Learning multiple gaussian prototypes for open-set recognition | |
CN115314254B (zh) | 基于改进wgan-gp的半监督恶意流量检测方法 | |
Pandey et al. | A metaheuristic autoencoder deep learning model for intrusion detector system | |
Kyatham et al. | A novel approach for network intrusion detection using probability parameter to ensemble machine learning models | |
Li et al. | An Abnormal Traffic Detection Based on Attention-Guided Bidirectional GRU | |
CN116070137A (zh) | 一种针对恶意流量检测的开集识别装置及方法 | |
Samadzadeh et al. | Evaluating Security Anomalies by Classifying Traffic Using a Multi-Layered Model | |
Wang et al. | Semi-supervised malicious traffic detection with improved wasserstein generative adversarial network with gradient penalty | |
Amjad et al. | A novel deep learning framework for intrusion detection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |