CN115733673B - 一种基于多尺度残差分类器的数据异常检测方法 - Google Patents
一种基于多尺度残差分类器的数据异常检测方法 Download PDFInfo
- Publication number
- CN115733673B CN115733673B CN202211375799.3A CN202211375799A CN115733673B CN 115733673 B CN115733673 B CN 115733673B CN 202211375799 A CN202211375799 A CN 202211375799A CN 115733673 B CN115733673 B CN 115733673B
- Authority
- CN
- China
- Prior art keywords
- data
- sae
- training
- scale
- residual
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 66
- 238000012549 training Methods 0.000 claims abstract description 58
- 239000013598 vector Substances 0.000 claims abstract description 21
- 230000009466 transformation Effects 0.000 claims abstract description 12
- 230000002441 reversible effect Effects 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 39
- 238000000354 decomposition reaction Methods 0.000 claims description 28
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 4
- 238000002156 mixing Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000013139 quantization Methods 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 22
- 230000002159 abnormal effect Effects 0.000 description 17
- 238000012360 testing method Methods 0.000 description 12
- 238000002474 experimental method Methods 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 235000019580 granularity Nutrition 0.000 description 7
- 238000009826 distribution Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013400 design of experiment Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 238000000700 time series analysis Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于多尺度残差分类器的数据异常检测方法,包括以下步骤:S1、将原始网络流量数据序列划分为不同观察尺度的多个子序列;S2、对每个尺度下的所有子序列进行小波变换,生成不同层级的小波重构序列数据;S3、利用重构序列对堆栈自编码器中编码器进行逐层训练,再对SAE整体调参;将训练好的SAE中各编码器逐次连接,并将对应的解码器按相反顺序连接,形成链式SAE框架;S4、利用随机抽取的训练集数据对链式SAE框架进行建模后;再将重构序列数据输入链式SAE,得到重构误差向量;S5、构建残差组合结构,将重构误差向量输入,结果汇总后经全连接层输出;S6、将汇总结果输入给轻量型分类器,得到最终检测结果。
Description
技术领域
本发明属于网络安全技术领域,具体涉及一种基于多尺度残差分类器的数据异常检测方法。
背景技术
随着科学技术的飞速发展,互联网己经延伸到社会的各个领域。丰富的网络资源促进了社会、经济的快速发展,在改变人们生活方式的同时,也给网络安全带来了前所未有的挑战。由于网络协议的开放性,木马、病毒等恶意软件借助互联网广泛传播,各种针对网络协议和应用程序漏洞的拒绝服务攻击、零日攻击等网络入侵行为从未间断。这些攻击不仅影响网络空间的正常运行,还给国民经济造成巨大损失,甚至威胁到国家安全。
网络流量数据承载着系统状态、网络环境、商业秘密用户隐私等相关信息,是网络中信息传输和交互实现的载体,通过分析网络流量数据的特征可以发现网络中的异常状况,为感知网络态势、制定相应防范策略提供参考,对增加网络防护能力和维护网络安全有着重要意义。引起网络流量异常的原因总体可分为两类:一是性能原因,通常是由网络拓扑结构设计不合理、使用人员误操作、设备故障等引起的网络流量异常;二是安全原因,主要是由于不法分子利用安全漏洞,对网络进行入侵攻击而产生的非正常网络流量,如:DOS(Denial of Service)、U2R(Userto Root)等攻击行为都会引起网络流量异常。
网络流量异常检测就是利用各种检测技术对网络流量进行分析判断,发现网络中的潜藏攻击行为,是有效的网络安全防护手段。以往有学者尝试利用K-Means、朴素贝叶斯、支持向量机、决策树等机器学习方法对网络流量进行异常检测。然而随着网络边界的不断外延,以及各种服务应用的激增,流量数据呈现出爆炸式增长,传统的机器学习方法在应对海量、高维、动态的网络流量时,往往面临着特征设计困难,误报率高和泛化能力弱等问题。
深度学习有着强大的表征能力,能够从原始数据中自主地提取特征,被广泛应用于自然语言处理、机器视觉、智能诊断等领域。由于网络攻击事件在时间上有很强的关联性,对网络流量进行异常检测时,常利用卷积神经网络(CNN,Convolutional neuralnetwork)循环神经网络(RNN,Recurrent Neural Network)以及长短时记忆(LSTM,Longshort-term memory)捕捉网络流量数据中的隐含关联性,即当前连接与前一段时间内连接的潜在联系。另外,针于流量中某些类别样本稀少的问题,除了“重采样”的解决办法,通常也会利用生成对抗网络(GAN,GenerativeAdversarial Network)来生成少数类样本,以缓解数据类别不平衡的问题,另外GAN产生重构样本与真实样本之间的误差也经常被作为异常判定的依据。有研究表明,观测跨度间隔的长度,即流量的观察尺度,是影响检测性能的关键因素。
上述方法只是从流量数据观察尺度角度来分析特征的相关性,没有利用到流量数据的频域特征。有信号专家研究发现,网络攻击流量的时变信号与正常流量的时变信号在频率特性上表现出较大差异。Wang等提出的基于小波的神经网络结构,将小波频率分析无缝地嵌入到深度学习框架,利用小波分解在频率学习中的优势,学习网络流量中的特征。Naveed等利用信道增强和残差学习搭建的深度卷积神经网络(CBR-CNN)结构用于检测网络入侵,该方法利用多个堆栈自编码器(SAE)对原始信号进行多重映射,实现信道增强效应,再利用残差网络学习各个信道中不同粒度的特征。这两种方法只利用到了原始网络信号的频率特征,并没有完全挖掘出网络信号的不同尺度特征。对于分类任务来说,高频级的特征更能反映流量数据中细粒度的差异性;而对于预测任务,低频级的特征主要反映流量数据的原生状态,有利于捕捉趋势信息反映未来走向。可见,网络流量在不同的观察尺度上表现出不同的行为特征,同样在不同的频域上能反应出信号的原生状态和细粒度差异。当前的深度学习异常检测方法大都是单层体系结构,并没有充分利用网络流量在不同观察尺度和频率尺度上的特征信息,所以导致对异常的分类不准,误报率高。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于多尺度残差分类器的数据异常检测方法。
为实现上述目的,本发明采用的技术方案是:
一种基于多尺度残差分类器的数据异常检测方法,包括以下步骤:
S1、利用不同尺度的滑动窗口将原始网络流量数据序列划分为不同观察尺度的多个子序列;
S2、利用Mallat算法对步骤S1得到的每个尺度下的所有子序列进行转换,生成不同层级的重构序列数据;
S3、利用贪婪训练方法对堆栈自编码器中每个AE进行逐层训练,再对堆栈自编码器进行整体调参,然后将训练好的堆栈自编码器中的编码器逐个连接,并将对应的解码器按相反顺序连接,形成链式SAE框架;
S4、利用随机抽取的部分正常网络流量数据对步骤S3得到的链式SAE框架进行建模,并构建出中间量的潜在空间,得到链式SAE模型,将步骤S2生成的重构序列数据输入到链式SAE模型中,经潜在空间映射变换后,输出得到原始流量在多尺度下的重构误差向量;
S5、构建基于多残差块并联的残差组合结构,将步骤S4得到的重构误差向量输入到残差组合结构中,经过残差块变换的结果汇总后经全连接层后输出;
S6、将步骤S5输出的汇总结果输入给轻量型分类器,并将生成的预测标签输出,得到最终的检测结果。
优选的,步骤S2具体包含以下步骤:
S21、将步骤S1得到的每个尺度下的所有子序列,分别输入到高通滤波器和低通滤波器进行滤波分解,降采样后可得到高频分量和低频分量/>
S22、对步骤S21得到的低频分量进行再分解,得到更下一分解层级的高频分量和低频分量/>然后再对/>进行分解以及降采样,重复上述步骤,直到规定的分解层级,得到低频分量/>和高频分量/>
S23、将步骤S22得到的高频分量经软阈值量化处理后,与步骤S22得到的低频分量/>经上采样后,在各自的滤波器中进行重构并组合,可得到上一层级的低频分量Rj,每个层次都进行重构、组合,最终生成不同层级的重构序列数据。
优选的,步骤S3具体包含以下步骤:
S31、利用最小化重建误差的均方误差对堆栈自编码器中每个AE进行逐层训练,完成所有AE的训练,再对堆栈自编码器进行整体调参,然后将训练好的堆栈自编码器中的编码器逐个连接,并将对应的解码器按相反顺序连接,得到预训练SAE框架;
S32、将随机抽取训练集的部分样本数据输入到步骤S31得到的预训练SAE框架中,采用交叉熵损失函数和随机梯度下降优化方法,对预训练SAE框架的整体参数进行精确调整,形成链式SAE框架。
优选的,步骤S5中,所述基于多残差块并联的残差组合结构通过将多个残差块并联,形成多个残差通路,然后每个残差通路上只对首尾进行直接映射,中间网络层不再开设连接得到。
本发明与现有技术相比,其有益效果在于:
本发明利用滑动窗口划分网络流量为不同观察尺度的子序列,使用小波变换技术(Mallat算法)获取各子序列在多尺度上的时频信息,变换后的序列,不仅包含流量数据的原生态特征信息,还包含流量序列不同粒度的时频特征信息,这些不同粒度的特征有助于异常检测;并设计堆栈自编码器(SAE)学习输入数据的分布,通过构建的特征空间计算重构误差向量,利用多路径残差组学习重构误差向量中不同尺度的特征信息,对各条残差链路映射结果线性拼接后,输入到轻量化分类器进行流量分类检测,进一步挖掘出流量数据关联性信息。这类丰富的关联性信息,有助于提升模型对长时依赖性异常的发现。实验结果表明,本发明的方法对异常网络流量的检测性能较传统方法有明显提升;证实了大的观察尺度和较多的变换尺度,对发现原始网络流量中潜在的多样性信息有积极作用。
附图说明
图1为本发明实施例中的链式SAE框架结构图;
图2为本发明实施例中的3级残差组合结构图;
图3为本发明实施例提供的检测方法的框架网络图;
图4为不同尺度窗口下模型检测性能对比图;
其中,图4(a)为多尺度窗口与精确率;图4(b)为多尺度窗口与召回率;图4(c)为多尺度窗口与F1值;图4(d)为多尺度窗口与准确率;图4(e)为多尺度窗口与误报率;
图5为不同分解尺度下模型检测性能对比图;
其中,图5(a)为不同分解尺度与精确率;图4(b)为不同分解尺度与召回率;图4(c)为不同分解尺度与F1值;图4(d)为不同分解尺度与准确率;图4(e)为不同分解尺度与误报率。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被直立阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种基于多尺度残差分类器的数据异常检测方法,具体包括以下步骤:
S1、利用不同尺度的滑动窗口将训练集中的部分原始网络流量数据序列划分为不同观察尺度的多个子序列,以数据序列记录数为划分,一般取400、600、800等2n*100的数据序列记录数;
S2、利用小波变换方法(Mallat算法)对步骤S1得到的每个尺度下的所有子序列进行转换,生成不同层级的重构序列数据,具体包含以下步骤:
S21、将步骤S1得到的每个尺度下的所有子序列,分别输入到高通滤波器和低通滤波器进行滤波分解,降采样后得到高频分量和低频分量/>
S22、对步骤S21得到的低频分量进行再分解,得到更下一分解层级的高频分量和低频分量/>然后再对/>进行分解以及降采样,重复上述步骤,直到规定的分解层级,得到低频分量/>和高频分量/>上述迭代过程如下式所示:
其中,cl和ch分别为小波变换的近似系数和细节系数,近似系数通过低通滤波器卷积原始信号获得,而细节系数则是利用高通滤波器与原始信号卷积而获得。
多尺度的近似部分和细节部分能从多个层面反应数据的丰富信息,其中更高级别的近似部分表示一种整体的趋势行为,而每个级别的细节部分可以表征更多的局部信息。不同级层具有不同的时间和频率分辨率,并且随着尺度的增加,频率分辨率增加,时间分辨率降低。
S23、将步骤S22得到的高频分量经软阈值量化处理后,与步骤S22得到的低频分量/>经上采样后,在各自的滤波器中进行重构并组合,可得到上一层级的低频分量Rj,每个层次都进行重构、组合,最终生成不同层级的重构序列数据。
原始信号经过k个尺度小波变换后可生成系数列表利用这个系数列表可以完成在第j尺度的信号重建,如下式所示:
其中,f(·)表示重构函数,是分别通过对/>“升采样”得到的,k为分解的尺度数,对于长度为n的原始数据最多可以进行小波分解的级层数为/>因此对于第j尺度数据的重建,可通过在第j+1层的近似解和细节解进行升采样,并使用重建滤波器进行卷积来合成的,当j取不同的值时,这样就可以将原始数据序列变换为一些不同尺度的数据序列。
S3、利用贪婪训练方法对堆栈自编码器中每个AE进行逐层训练,再对SAE进行整体调参,然后将训练好的SAE中的编码器逐个连接,并将对应的解码器按相反顺序连接,形成链式SAE框架,如图1所示,具体包含以下步骤:
采取反向传播法对SAE进行训练,为避免由于SAE初始参数设置不利,使SAE在训练时出现梯度消失,导致模型参数难以完成训练的问题。本发明采取贪婪分层训练的方法对SAE进行训练,包括预训练和微调两个阶段;
S31、使用无监督方法,利用最小化重建误差的均方误差对SAE逐层进行初步训练,即先对第一个AE进行单独训练,完成编码器和解码器的参数调优。再利用第一个AE的输出作为第二个AE的输入,对第二个AE进行训练。完成后,再第二个AE的输出对后面的AE依次进行训练,完成所有AE的训练,这种预先训练的方式可以为整个SAE提供良好的初始参数。将训练好的多个AE编码器逐个连接,并将对应的解码器按相反顺序连接,得到预训练SAE框架;
S32、将随机抽取训练集的部分样本数据输入到步骤S31得到的预训练SAE框架中,采用交叉熵损失函数和随机梯度下降优化方法,使用反向传播的方式对预训练SAE框架的整体参数进行精确调整,这样,SAE能够学习到输入样本的数据分布,可以对输入样本进行有效重构,形成链式SAE框架。
S4、利用训练集中的正常网络流量数据对步骤S3得到的链式SAE框架进行建模,使SAE充分学习到正常流量的特征分布,并构建出中间量的潜在空间,得到链式SAE模型,SAE仅在正常数据样本上进行训练,SAE学习到正常样本的数据分布,在潜在空间只能完成正常数据的重构,即正常样本经过潜在空间映射后可以生成相类似的重构样本。而对于异常样本,经潜在空间映射生成的重构样本与原始样本存在出较大的差异,将步骤S2生成的重构序列数据输入到SAE模型中,经潜在空间映射变换后,输出得到原始流量在多尺度下的重构误差向量,即重构误差向量为原始向量和重构向量对应分量之间的绝对差值,并以此作为鉴别正常样本和异常样本的识别特征,重构误差向量可表示为:
其中,xi为原始特征向量的第i个分量,为第i分量的重构特征向量,ei为该分量的重构误差向量。
S3是利用训练集中的正常流量逐层对每个AE编码器进行训练,得到每个AE的合理参数,但是从SAE到链式SAE的结构是发生变化的(每个AE由编码器和解码器构成,原始SAE的结构为编码器1-解码器1-编码器2-解码器2…编码器N-解码器N,而链式SAE的结构为编码器1-编码器2-编码器3…解码器3-解码器2-编码器1),模型结构是所有调整的,因此需要再利用步骤S4正常网络流量数据进行链式SAE建模。
S5、为了缓解深层网络性能退化的问题,提高网络对特征表示的多样性和可控性,构建基于多残差块并联的残差组合结构,为保证残差变换的多样性,各残差块具有不同的层数,这样残差组就可以学习到输入序列从简单到复杂的多样性变换。另外,为保证残差变换具有可控性,在每个残差通路上只对首尾进行直接映射,中间网络层不再开设连接。本发明通过检测精度和计算开支的对比实现发现,当残差组为三级并联时,可以取得较为满意的结果,如图2所示,其中Wight为卷积网络中的卷积操作,BN为批标准化,ReLU为激活函数,Conpose为汇总各残差块变换结果,FC(fully connected layers)为全连接层操作,将步骤S4得到的重构误差向量输入到残差组合结构中,经过残差块变换的结果汇总后经全连接层后输出;
假设给定输入为x,在第i个残差块中完成变换,并输出:
yi=Fi(x)+x
则此3级残差组的最终可输出可表示为:
S6、将步骤S5输出的汇总结果输入给基于“加权投票”机制的轻量型分类器,并将生成的预测标签输出,得到最终的检测结果。
如图3所示,本发明实施例提供的检测方法概括如下:
对于给定流量数X,利用尺度为m的滑动窗口进行划分,并利用小波变换,重构的数据子序列хm,j,其中j是经过第j尺度重构的输出子序列数据。
将其输入到对应的SAE_j,利用可以得到хm,j的重构误差向量em,j,以后简称为e。
在RG中,重构误差向量e被镜像地输入到n个不同的残差块中,今Ri为e在第i个残差块中的期望变换,Fi为残差函数,由重构误差向量e的公式可以得到:
Ri(e)=Fi(e)+e
因此,该残差组汇总全部残差块的整体输出如下:
其中,表示n条残差块链路特征映射的线性拼接。
输出层,将各残差组汇总后的结果输入给轻量型分类器来预测结果,并将生成的预测标签输出:
其中,Ej为第j个残差组的输出,m为残差组数,表示汇总各残差组的输出结果,Classifier(·)为实现分类预测的函数。
一、实验装置
1、实验环境
本发明涉及的实验在支持GPU的设备上进行,GPU型号为GeForce RTX3090Ti,具有24GB的RAM。
2、数据准备
(1)数据集
为了评估TA-WGAN的性能,本发明在多个网络流量数据集上进行了评估测试,使用了包括KDD99,NSL-KDD,UNSW-NB15以及CICIDS2018在内的4个公开网络流量数据集,这些数据集都被划分好了训练集、测试集。为缩减运算时间,本发明直接利用KDD99、NSL-KDD、UNSW-NB15已经划分好的训练集和测试集,对CICIDS2018则是利用Thursday-01-03-2018中的数据,使用它们各自的部分数据(子集)作为本发明研究的原始数据,下面表1汇总了本发明使用的每个数据集的基本信息,包括样本总体数量和异常样本数量,流量中的特征数及引起异常攻击的种类数,数据集中每个异常位置都是已知的。
表1网络流量数据集
本发明训练模型仅使用正常流量,故将正常样本按70%、30%的比例随机划分,70%的正常数据作为训练集,训练集的数据用于训练模型,30%的正常数据与原测试集中异常样本组合为新的测试集,测试集用于对建立的模型的性能进行检测。
表2汇总了新构造的各数据集的基本信息。每个数据集都各有特点,使本发明的异常检测工作更具挑战性,同时也能够帮助确认本发明提供的方法的有效性以及局限性。
表2新构造网络流量数据集
(2)数据预处理
数据预处理是为保证数据的可读性和统一性而进行的流量数据清洗、文本数值化、数据切分、数值归一化等操作。
数据清洗。从真实网络环境中抓取的流量数据,可能会存在重复或残缺的无效数据,需要利用数据清洗技术对这些冗余和缺失数据进行清除。例如:KDD99数据集中有大量重复的记录,需要将它们去除掉。
文本数值化。原始流量数据的属性特征值并不完全是数字,还有部分是文本信息,因此利用One-Hot编码的方法将这些文本转换成相应的数值以便参与运算。如:NSL-KDD数据集中的网络服务属性值是文本表示的,需要转为相应的编码。
流量匿名化。对于流量特有的IP地址和MAC地址等信息可能会影响分类特征提取。为消除这些因素影响,使用随机生成的新地址替换原来的地址。实际应用中,这一步是可选的,如果待检测的流量来自同一个网络环境则不需要此操作。
数值归一化。不同属性数据的量纲不同,特征向量的取值范围也不尽相同,差异较大时会影响检测结果,利用max-min方法对数据进行归一化处理,使数据分布在[0,1]设定的区间内。
(3)为了评估和验证本发明所提出的于多尺度残差分类器的数据异常检测方法(以下简称MSRC)的性能,本发明使用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、误报率(FPR)以及F1-Score来进行判定,其中正例代表异常流量、负例代表正常流量。这些指标是根据以下公式计算的:
其中,FN:False Negative,被判定为负样本,但事实上是正样本。
FP:False Positive,被判定为正样本,但事实上是负样本。
TN:True Negative,被判定为负样本,事实上也是负样本。
TP:True Positive,被判定为正样本,事实上也是正样本。
二、实验设计
1、单窗口多分解尺度
本实验的目的是评估本发明所提出的方法,在单观察尺度下的性能。本发明使用DB2小波滤波器,滑动窗口大小为800,小波分解尺度为6,SAE结构为3层AE叠加而成,输入输出尺寸如下表3所示,采用Adam算法优化,学习率为0.000 01,批大小为16,残差组由3条路径的残差块构成,结构与本发明实施例提供方法中的步骤S5所构建的结构相同。
表3 SAE框架
本发明提供的MSRC方法在NSL-KDD数据集上完成训练后,为检测本发明所提方法的拟合能力和泛化能力,采用十折交差验证的方法进行训练,即将训练集数据随机分成10份,每次训练时取其中的9份作为训练数据,1份为验证数据。
为更加客观的评价本发明提供方法的性能,采用10折交差运算的方法检验模型对异常检测的能力。将NSL-KDD的测试集数据随机平均分为10部分,每次选择9部分进行测试,最终结果取10次运算平均值,具体指标如下表4所示。可以看出,本发明提供的方法的平均准确率为92.33%,平均精确率为95.02%,平均召回率为94.59%,这是一个让人满意的结果,表明本发明提供的方法可以从训练集数据中学习到了正常数据的分布,并且能得检测出测试集数据中的异常样本。尤其是Precision最高达到了96.0%。
表4单窗口特征在NSL-KDD上的检测性能
2、多窗口多分解尺度检测
下面对本发明提供的检测方法在5个不同尺度的观察窗口下的性能进行研究,仍然使用DB2小波滤波器,滑动窗口大小分别400、600、800、1000、1200,其余实验设置同实验1。仍得用NSL-KDD训练集数据对模型进行10次的完整训练。利用测试集数据进行性能检验,仍采用十折交差验证的方式进行训练。由于实验1已经完成了尺度为800时的检测,本次实验只需要再计算当观察尺度为400、600、1000、1200时的检测结果。如图4所示,展示了5个不同尺度窗口模型的检测对比结果。通过图4可以看出,随着窗口尺度的增加,检测逐步提升,可以看出,使用的窗口尺度越大,信息越丰富,检测的准确率越高。窗口尺度为800时的检测准确率分别为92.13%明显优于窗口尺度为400、600时,它们分别为85.83%和88.83%。另外,当尺度为1000、1200时的检测性能相对800时提升并不明显,如:1000、1200时检测准确率分别为92.25%和92.67%,与窗口尺度为800的准确率相当。可以说,窗口尺度大于800的MSRC检测性能可以达到让人满意的程度。
3、多窗口不同多分解尺度检测
本节实验主要为了验证不同的分解尺度对异常检测性能的影响,为了平衡计算开支,本发明选择400、600、800作为多窗口尺度,并将小波分解最大尺度分别取2级、4级、6级、8级、10级,其余模型设置和训练条件与实验1相同。图5展示了分解尺度与检测指标的关系,通过图5可以看出,随着分解尺度的增加,MSRC的检测性能越来越好。它在2、4、6三层级的准确率(Accuracy)为86.83%、89.08%和92.14%,增加趋势非常明显。然而到达分解尺度为8、10的时间,性能速率减缓,如:F1值在6、8、10的时候,分别为94.67%、94.82%、95.08%,性能虽显有所改善但并不明显,其它检测指标也存在这种情况。
本发明已经完成了MSRC在3个不同条件下的实验,从它们的检测结果中,可以看出获得,MSRC随着不同尺度窗口数量的增加,MSRC集成了更多的多样性和更长观察尺度的信息,对检测性能有明显提升。然而,当窗口尺度扩大到一定范围时,模型的检测性能不会随着窗口的扩大继续提升。其原因大概与检测样本间的时间关联性有关,短促而集中的异常流量只需较小的窗口尺度即可取得较的检测效果。而跨度大的异常流量,则需要更大的窗口尺度。另外,从实验中获知,较多的分解尺度可以从多个时频粒度发掘流量中的丰富信息,对异常流量的检测也有提升功能,但分解尺度越多消耗的计算资源也就越多。
三、本发明检测方法与其他检测方法对比
下面将一些典型的异常检测方法与本发明所提方法(MSRC),在不同数据集的检测结果进行了比较,这些模型包括:
(1)RNN和LSTM,它们是时间序列分析中广泛使用的两种经典深度神经网络,本例中两种网络均使用单隐层结构。
(2)DAGMM,将深度自编码压缩网络和改进高斯混合模型(GMM)相结合的异常检测手段,曾在KDD99数据集上取得不错效果。
(3)MAD-GAN和Tad-GAN,它们是利用生成对抗网络进行时间序列进行异常检测的经典方法,在时间序列的异常检测实验中表现出色。
(4)CBR-CNN,利用信道增强和残差学习搭建的深度卷积神经网络(CBR-CNN)结构用于检测网络入侵,该方法利用多个SAE对原始信号进行多路映射,实现信道增强,再利用残差网络学习每个信号的不同粒度特征。
根据上述实验1、2、3的结果,考虑到计算消耗,本发明提供的MSRC方法选择窗口尺度分别为400、600、800,最大分解尺度为6,作为参与比较的模型。
由于各模型的检测机制不同,对于仅利用正常数据训练的生成式检测模型,如MAD-GAN和CBR-CNN等,使用我们设计的数据集进行训练和检测;而对于需要利用混合样本进行训练的判别式模型,如RNN、CBR-CNN等使用原数据集。利用训练集数据对各个模型进行10次完全训练,利用测试集数据得到包括精确率(Precision)、召回率(Recall)以及F1值等性能指标。下表5展示了7个检测方法在4个数据集上进行异常检测的精确率、召回率和F1值情况。
表5实验结果
通过表5的结果可以发现,本发明所提的多尺度残差特征异常检测方法(MSRC)在NSL-KDD、UNSW-NB15、CIC-IDS2018这3数据集上的检测精确率分别为94.43%、90.12%、85.88%,召回率分别为94.92%、91.79%、87.82%,F1-Score分别为94.67%、90.95%、86.84%,在所有方法中均为最高,在KDD99上的召回率为90.02%也是最好,并且在4个数据集上的精确率、召回率和F1值三项指标总评最高。MSRC在不同数据集上的优异表现,说明MSRC可跨数据集进行训练和测试,具有较强的泛化能力。虽然这4个数据集来自不同的网络环境,特征数量和攻击类型也不相同,但广义上说它们都是从计算机网络中生成的,网络流量数据也具有一定的共性。本发明所提的MSRC检测方法,不仅可以从原始数据的低频分量中获取到原生态的本质特征,还能从高频分量中提取出流量数据的细粒度差异,因此MSRC不仅具有很好的检测性能,同时也表现出较强的泛化能力。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (4)
1.一种基于多尺度残差分类器的数据异常检测方法,其特征在于,包括以下步骤:
S1、利用不同尺度的滑动窗口将原始网络流量数据序列划分为不同观察尺度的多个子序列;
S2、利用Mallat算法对步骤S1得到的每个尺度下的所有子序列进行转换,生成不同层级的重构序列数据;
S3、利用贪婪训练方法对堆栈自编码器中每个AE进行逐层训练,再对堆栈自编码器进行整体调参,然后将训练好的堆栈自编码器中的编码器逐个连接,并将对应的解码器按相反顺序连接,形成链式SAE框架;
S4、利用随机抽取的部分正常网络流量数据对步骤S3得到的链式SAE框架进行建模,并构建出中间量的潜在空间,得到链式SAE模型,将步骤S2生成的重构序列数据输入到链式SAE模型中,经潜在空间映射变换后,输出得到原始流量在多尺度下的重构误差向量;
S5、构建基于多残差块并联的残差组合结构,将步骤S4得到的重构误差向量输入到残差组合结构中,经过残差块变换的结果汇总后经全连接层后输出;
S6、将步骤S5输出的汇总结果输入给轻量型分类器,并将生成的预测标签输出,得到最终的检测结果。
2.如权利要求1所述的基于多尺度残差分类器的数据异常检测方法,其特征在于,步骤S2具体包含以下步骤:
S21、将步骤S1得到的每个尺度下的所有子序列,分别输入到高通滤波器和低通滤波器进行滤波分解,降采样后得到高频分量和低频分量/>
S22、对步骤S21得到的低频分量进行再分解,得到更下一分解层级的高频分量/>和低频分量/>然后再对/>进行分解以及降采样,重复上述步骤,直到规定的分解层级,得到低频分量/>和高频分量/>
S23、将步骤S22得到的高频分量经软阈值量化处理后,与步骤S22得到的低频分量经上采样后,在各自的滤波器中进行重构并组合,可得到上一层级的低频分量R j,每个层次都进行重构、组合,最终生成不同层级的重构序列数据。
3.如权利要求1所述的基于多尺度残差分类器的数据异常检测方法,其特征在于,步骤S3具体包含以下步骤:
S31、利用最小化重建误差的均方误差对堆栈自编码器中每个AE进行逐层训练,完成所有AE的训练,再对堆栈自编码器进行整体调参,然后将训练好的堆栈自编码器中的编码器逐个连接,并将对应的解码器按相反顺序连接,得到预训练SAE框架;
S32、将随机抽取训练集的部分样本数据输入到步骤S31得到的预训练SAE框架中,采用交叉熵损失函数和随机梯度下降优化方法,对预训练SAE框架的整体参数进行精确调整,形成链式SAE框架。
4.如权利要求1所述的基于多尺度残差分类器的数据异常检测方法,其特征在于,步骤S5中,所述基于多残差块并联的残差组合结构通过将多个残差块并联,形成多个残差通路,然后每个残差通路上只对首尾进行直接映射,中间网络层不再开设连接得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211375799.3A CN115733673B (zh) | 2022-11-04 | 2022-11-04 | 一种基于多尺度残差分类器的数据异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211375799.3A CN115733673B (zh) | 2022-11-04 | 2022-11-04 | 一种基于多尺度残差分类器的数据异常检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115733673A CN115733673A (zh) | 2023-03-03 |
CN115733673B true CN115733673B (zh) | 2024-04-12 |
Family
ID=85294553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211375799.3A Active CN115733673B (zh) | 2022-11-04 | 2022-11-04 | 一种基于多尺度残差分类器的数据异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115733673B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117272055B (zh) * | 2023-11-23 | 2024-02-06 | 国网山西省电力公司营销服务中心 | 一种基于滤波增强自编码器的电能表异常检测方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111008224A (zh) * | 2019-11-13 | 2020-04-14 | 浙江大学 | 一种基于深度多任务表示学习的时间序列分类和检索方法 |
WO2020162834A1 (en) * | 2019-02-08 | 2020-08-13 | Singapore Health Services Pte Ltd | Method and system for classification and visualisation of 3d images |
US11153566B1 (en) * | 2020-05-23 | 2021-10-19 | Tsinghua University | Variable bit rate generative compression method based on adversarial learning |
CN115185937A (zh) * | 2022-07-12 | 2022-10-14 | 中国人民解放军海军工程大学 | 一种基于sa-gan架构的时间序列异常检测方法 |
-
2022
- 2022-11-04 CN CN202211375799.3A patent/CN115733673B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020162834A1 (en) * | 2019-02-08 | 2020-08-13 | Singapore Health Services Pte Ltd | Method and system for classification and visualisation of 3d images |
CN111008224A (zh) * | 2019-11-13 | 2020-04-14 | 浙江大学 | 一种基于深度多任务表示学习的时间序列分类和检索方法 |
US11153566B1 (en) * | 2020-05-23 | 2021-10-19 | Tsinghua University | Variable bit rate generative compression method based on adversarial learning |
CN115185937A (zh) * | 2022-07-12 | 2022-10-14 | 中国人民解放军海军工程大学 | 一种基于sa-gan架构的时间序列异常检测方法 |
Non-Patent Citations (2)
Title |
---|
Filtering normal retinal images for diabetic retinopathy screening using multiple classifiers;Yu Fu et al.;IEEE:IATB;20100122;全文 * |
联合膨胀卷积残差网络和金字塔池化表达的高分影像建筑物自动识别;乔文凡;慎利;戴延帅;曹云刚;;地理与地理信息科学;20180827(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115733673A (zh) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109000930B (zh) | 一种基于堆叠去噪自编码器的涡轮发动机性能退化评估方法 | |
Lin et al. | Power quality disturbance feature selection and pattern recognition based on image enhancement techniques | |
CN114386521B (zh) | 时间序列数据的异常检测方法、系统、设备和存储介质 | |
Li et al. | IncepTCN: A new deep temporal convolutional network combined with dictionary learning for strong cultural noise elimination of controlled-source electromagnetic data | |
Duan et al. | Network traffic anomaly detection method based on multi-scale residual classifier | |
CN115733673B (zh) | 一种基于多尺度残差分类器的数据异常检测方法 | |
CN115587335A (zh) | 异常值检测模型的训练方法、异常值检测方法及系统 | |
CN111726350B (zh) | 基于vae和bpnn的内部威胁检测方法 | |
CN114492521A (zh) | 一种基于声振信号的随钻岩性智能识别方法与系统 | |
CN116527346A (zh) | 基于深度学习图神经网络理论的威胁节点感知方法 | |
Dong et al. | Multi‐task learning method for classification of multiple power quality disturbances | |
CN117473275B (zh) | 一种数据中心的能耗检测方法 | |
CN117407816A (zh) | 一种基于对比学习的多元时间序列异常检测方法 | |
CN111092873B (zh) | 非对称卷积网络的流量检测模型的训练方法及检测方法 | |
CN115356599B (zh) | 一种多模态城市电网故障诊断方法及系统 | |
CN117172601A (zh) | 一种基于残差全卷积神经网络的非侵入式负荷监测方法 | |
Xue et al. | RASE: a real-time automatic search engine for anomalous seismic electric signals in geoelectric data | |
CN115913764A (zh) | 基于生成对抗网络的恶意域名训练数据生成方法 | |
Duan et al. | Network traffic anomaly detection method based on multi scale residual feature | |
CN118332034B (zh) | 一种基于机器学习的数据挖掘模型构建方法及系统 | |
Tan et al. | The damage detection based on the fuzzy clustering and support vector machine | |
Huang et al. | Radar signal detection under low SNR using stacked auto-encoder and time-frequency domain features | |
Mu | Ship target radiated noise modulation spectrum processing: integration with deep learning methods | |
CN118332335A (zh) | 一种装备未知故障数据生成方法和装置 | |
Song et al. | A Study of Signal Modulation Recognition Based on Wavelet Analysis and Random Forest |
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 |