一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于注意力机制的网络流量分类方法与流程

2022-07-30 22:14:42 来源:中国专利 TAG:


1.本发明涉及网络流量分类领域,具体涉及一种基于注意力机制的网络流量分类方法。


背景技术:

2.近年来,随着网络技术的飞速发展和网络流量的急剧上升,开发一种快速、准确的网络流量自动分类方法是十分必要的。为了更好地管理网络流量,优化网络质量,了解实时网络流量分布,防止网络攻击,需要更好的网络流量分类方法。
3.同时,由于网络加密算法的广泛应用,现有的网络流量识别和分类方法面临着巨大的挑战。网络流量识别和分类的障碍是加密。网络流量加密是保护互联网用户隐私和安全的关键技术,是各种隐私增强工具的关键技术。例如,tor,最初被称为洋葱路由器,是使用最广泛的匿名通信软件,具有低延迟和高质量。tor通过三个节点转发流量以实现匿名性。由于三个转发节点分布在世界不同的地区,匿名通信系统通过信道传输tcp数据流来提供匿名服务,使得网络审查难以追踪。
4.在网络流量分类领域主要有以下几种方法:基于端口匹配、深度包检测、行为特征和机器学习。然而,随着网络应用的日益复杂和加密协议的广泛使用,传统的流量分类方法已经无法准确识别流量特征。目前,大多数深度学习的改进方法都是通过增加网络的宽度和深度来实现的。虽然可以提高网络流量的分类精度,但需要计算大量的参数,这增加了算法的计算复杂度。同时,也存在着过度拟合、训练效率低等问题,并不适用于目前网络流量的分类与识别的应用场景。
5.为了解现有技术的发展状况,对已有的专利和文献进行了检索、比较和分析,筛选出如下与本发明相关度比较高的技术信息:
6.专利方案1:cn111147396a一种基于序列特征的加密流量分类方法,提供一种基于序列特征的加密流量分类方法,通过对原始加密流量数据进行预处理;将预处理后的数据使用基于注意力机制的一维卷积网络学习数据分组的局部特征;将局部特征的输出结果使用长短时记忆网络学习数据分组的全局特征。本发明不需要人工提取特征,并且在此基础上,能够保证加密流量数据原有的序列特征,将其指定到具体应用;解决了的传统循环神经网络严重的梯度消失和梯度爆炸的问题;有效地解决了关于两种不同传输层协议的数据包长度不同的问题,并且过滤了网络层和数据链路层的干扰信息;很好地解决了长序列数据的预测问题。缺陷:该方案旨在使用一种基于序列特征的方法对网络流量进行分类。通过基于注意力机制的一维卷积网络学习数据分组的局部特征,再将步骤2的输出结果使用长短时记忆网络学习数据分组的全局特征。但是流量具有不同粒度的多重特性,在流量特征提取中需要考虑到不同模态下的特性表征,该方案中网络架构为串行结构,没有考虑多种粒度下的特征处理,对复杂的应用场景中的表现并不稳定。
7.专利方案2:cn111209933a基于神经网络和注意力机制的网络流量分类方法和装置,公开了一种基于神经网络和注意力机制的网络流量分类方法和装置,所述方法包括:将
同一网络流的n个数据包基于字节进行独热编码后,得到n个独热编码矩阵;将n个独热编码矩阵通过神经网络提取特征,得到n个特征编码向量;将所述n个特征编码向量通过数据包注意力机制加强对重要数据包所对应的特征编码向量的注意,得到所述网络流的数据包注意力编码矩阵;将所述数据包注意力编码矩阵通过全连接层得到所述网络流的分类结果。应用本发明可以实现对网络流量的识别和分类。缺陷:该方案利用神经网络进行特征提取,再通过注意力机制加强对重要特征的注意。但是网络流量往往具有多元化的特征,该方案中的特征提取的方式并没有考虑到空间维度以及时间维度上的综合多尺度特征。同时,采用独热编码对同一流中的数据包进行编码,当出现很多类别的时候,得到的特征矩阵维度会非常大,可能导致并行性和多重共线性问题。
8.在网络流量分类领域主要有以下几种方法:基于端口匹配、深度包检测、行为特征和机器学习。然而,随着网络应用的日益复杂和加密协议的广泛使用,传统的流量分类方法已经无法准确识别流量特征。针对网络流量的识别准确率低的问题,常见的研究是使用深度学习方法对网络流量进行分类。但是大多数方案是通过增加网络的深度来实现的,模型提取到的特征表征能力不够全面,因此,需要制定一个新的具有多尺度特征融合能力的网络流量分类方案。


技术实现要素:

9.本发明针对匿名通信场景下中网络流量的自动识别问题,聚焦于计算复杂度高、识别准确率低、特征表征能力有限三大主要问题,设计了基于注意力机制的网络流量分类方法。
10.本发明采用的技术方案为:
11.一种基于注意力机制的网络流量分类方法,包括以下步骤:
12.s1、对原始流量进行数据预处理,从存储原始流量文件中提取双向流,并提取流量属性,形成流量属性向量;
13.s2、对提取的流量属性进行归一化处理;
14.s3、采用cnn lstm的结构,提取流量属性不同粒度的时间和空间特征;
15.s4、将提取到的不同粒度的时间和空间特征进行多尺度融合处理;
16.s5、采用注意力机制,提取融合后特征的显著特征;
17.s6、使用全连接层 softmax函数的方式,利用融合后特征的显著特征对网络流量进行分类。
18.进一步的,步骤s3具体包括:
19.s31、使用不同卷积核大小的卷积层提取流量属性的空间特征,cnn层的计算公式如下:
20.cnn(x)=f(w
·
x
i h-1
b)
21.其中,x为归一化后的流量属性向量,x
i h-1
为流量属性向量中第i h-1个流量属性,w为权重矩阵,b为偏置参数,f为激活函数,h为卷积核长度;
22.s32、将cnn层提取的流量特征分别放入lstm层,提取流量的时间特征,lstm层的计算公式如下:
23.f
t
=σ(w
xf
x
t
w
hfht-1
)
24.i
t
=σ(w
xi
x
t
w
hiht-1
)
25.o
t
=σ(w
xo
x
t
w
hoht-1
)
26.c_in
t
=tanh(w
xc
x
t
w
hcht-1
)
27.c
t
=f
tct-1
i
t
c_in
t
28.h
t
=o
t
tanh(c
t
)
29.其中,x
t
是神经元的输入,为cnn层提取的空间特征,w
xf
、w
hf
、w
xi
、w
hi
、w
xo
、w
ho
、w
xc
和w
hc
分别为权重矩阵,h
t-1
为前一时刻隐层状态,h
t
为当前时刻隐层状态,f
t
为遗忘门,i
t
为输入门,o
t
为输出门,c
t
为当前细胞状态,c
t-1
为前一时刻细胞状态,c_in
t
为t时刻的更新状态,σ为元素级的sigmoid函数,tanh为用作激活函数的双曲正切函数。
30.进一步的,步骤s5具体包括:
31.利用注意机制提取融合后特征的显著特征ci,计算公式为:
[0032][0033][0034][0035]
其中,s
i-1
表示前一时刻的融合特征,hj表示当前时刻的融合特征,a
ij
表示hj的权重,ci表示输入序列的上下文向量,va、wa和ua分别表示对应变量的权重矩阵,tanh表示用作激活函数的双曲正切函数,m表示输入序列的长度。
[0036]
本发明相比现有技术具有如下优点:
[0037]
(1)针对网络流量具有多重时空特性,它首先利用cnn提取局部空间特征,然后利用lstm提取时间信息,再利用多尺度融合得到对网络流量数据特征的综合考虑;
[0038]
(2)与现有的基于单模式输入的深度学习流量分类器相比,本发明从多模态的角度出发,设计了一种多尺度特征融合方法,学习到流量的时空特征,对多种不同类型的特征进行有效处理,合理完成不同粒度特征之间的信息互补,减少模态间的异质性差异,从而获得更丰富的深度融合特征,为模型决策提供更多的信息,提高整体分类结果的准确性。;
[0039]
(3)为了有效提取多模态融合之后的显著特征,本发明采用注意力机制,赋予模型关注高重要度特征的能力。同时采用并行结构,有效地解决了串行模型的复杂性带来的梯度消失和爆炸问题。
附图说明
[0040]
图1为本发明实施例的方法流程图。
具体实施方式
[0041]
下面结合附图对本发明作进一步解释说明。
[0042]
本发明的实例中,为了验证具有注意机制的多尺度时空特征融合模型的有效性,我们将在包含正常流量和tor流量的iscxtor2016数据集中识别tor流量,如图1所示,具体步骤如下:
[0043]
s1、对原始流量进行数据预处理,从存储原始流量的文件中提取双向流,并抽取属
性,共生成67828条记录,其中包含23列属性和1列标签值,用tor标识tor流量,nontor标识常规流量;步骤s1具体包括:
[0044]
s11、数据包被{源ip,目的ip,源端口,目的端口,协议,字节数}所描述;
[0045]
s12、网络流被定义为具有相同五元组{源ip,目的ip,源端口,目的端口,协议}值的数据包序列,其属性为{源ip,目的ip,源端口,目的端口,协议,方向,字节数,数据包个数}。从原始流量文件中提取双向流,23个提取的属性如表1所示。其中首个从源到目的地的数据包传输方向定义为前向方向,进而从目的地到源地的数据包传输方向定义为后向方向。;
[0046][0047]
表1流相关属性描述表
[0048]
其中,flow iat、fwd iat、fwd iat、active和idle字段值需要同时提取其最大值、最小值、平均值和标准差。
[0049]
s2、对数据进行归一化处理,归一化后的属性值均在[0,1]之内,用于消除奇异样本的影响。min-max归一化函数表示为nor(),并定义为:
[0050][0051]
其中,x是属于集合x中要归一化的个体值,min(x)和max(x)表示集合x的最小值和最大值。
[0052]
s3、网络流量是具有层次结构的一维字节流,流量中的字节、数据包和会话的结构与自然语言处理中的字符、单词和句子的结构非常相似,因此一维卷积神经网络适合处理序列数据,使用不同卷积核大小的卷积层提取流量的空间特征。cnn层的计算公式如下:
[0053]
cnn(x)=f(w
·
x
i h-1
b)
[0054]
其中,x为归一化后的流量属性向量,x
i h-1
为流量属性向量中第i h-1个流量属性,w为权重矩阵,b为偏置参数,f为激活函数,h为卷积核长度;
[0055]
考虑到网络流量本质上是一种时间序列数据,将cnn层提取的流量特征分别放入lstm层,提取流量的时间特征,并添加dropout层用于防止模型过拟合。lstm层的计算公式如下:
[0056]ft
=σ(w
xf
x
t
w
hfht-1
)
[0057]it
=σ(w
xi
x
t
w
hiht-1
)
[0058]ot
=σ(w
xo
x
t
w
hoht-1
)
[0059]
c_in
t
=tanh(w
xc
x
t
w
hcht-1
)
[0060]ct
=f
tct-1
i
t
c_in
t
[0061]ht
=o
t
tanh(c
t
)
[0062]
其中,x
t
是神经元的输入,为cnn层提取的空间特征,w
xf
、w
hf
、w
xi
、w
hi
、w
xo
、w
ho
、w
xc
和w
hc
分别为权重矩阵,h
t-1
为前一时刻隐层状态,h
t
为当前时刻隐层状态,f
t
为遗忘门,i
t
为输入门,o
t
为输出门,c
t
为当前细胞状态,c
t-1
为前一时刻细胞状态,c_in
t
为t时刻的更新状态,σ为元素级的sigmoid函数,tanh为用作激活函数的双曲正切函数。
[0063]
本实施例同时使用下表中3个卷积核大小分别为2,3,4的一维卷积层并行提取空间特征分别得到16个维度分别为22,21,20的特征图,并将该三种不同粒度的特征分别输入到隐藏层大小为64的长短期记忆网络中,分别得到64个维度分别为22,21,20的特征,完成时间特征提取部分。
[0064] 卷积核数量卷积核大小步长flowduration1621flowbytes/s1631flowpackets/s1641
[0065]
表2卷积信息
[0066]
s4、融合不同粒度的特征,丰富特征表示。多尺度特征融合是指对多种不同类型的特征进行有效处理,合理完成不同粒度特征之间的信息互补,解决可能出现的冗余问题,从而获得更丰富的深度融合特征。在融合过程中,对网络流量的细节特征和整体特征进行融合,得到的输出向量为64个维度为63的融合特征;
[0067]
s5、利用注意机制处理被现有结构忽略的时空特征的重要性差异,提取重要的细粒度特征。由于提取的时空特征的重要性不同,重要的显著特征往往包含更多的信息,对实际分类效果的趋势影响较大。在多尺度特征融合后,如果赋予模型更多关注高重要度特征的能力,则在特征融合后可以对有助于分类的有效特征进行优化。利用注意机制提取多模态的显著特征,以提高动态结构的输出质量,并添加dropout层用于防止模型过拟合。
[0068]
计算公式为:
[0069][0070][0071]
[0072]
其中,s
i-1
表示前一时刻的融合特征,hj表示当前时刻的融合特征,a
ij
表示hj的权重,ci表示输入序列的上下文向量,v
a、
wa和ua分别表示对应变量的权重矩阵,tanh表示用作激活函数的双曲正切函数,m表示输入序列的长度;经过处理后得到一个128维度的注意力向量。
[0073]
s6、最终,使用全连接层和softmax函数对得到的注意力向量进行分类,模型在训练集上的准确率为95.39%,在测试集上的准确率为95.58%。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献