网络流的特征提取方法、网络流异常检测方法及相关装置

文档序号:24718802发布日期:2021-04-16 14:44阅读:201来源:国知局
网络流的特征提取方法、网络流异常检测方法及相关装置

1.本申请涉及网络流检测的技术领域,尤其涉及一种网络流的特征提取方法、网络流异常检测方法及相关装置。


背景技术:

2.目前,基于深度特征学习的网络流量检测方法,需要使用深度特征学习模型进行自动地提取特征。网络检测的基本单元是网络流,而网络流量的底层实际是一串字节。依照网络协议规定,将流量字节组合成数据包,而数据包进一步组成网络流,其中,数据包里的字节间存在着空间关系,而网络流中的每个数据包间又存在时序关系。针对原始的网络流量,需构建合适的深度特征学习模型,以学习网络流量的时间特征和空间特征。
3.然而,在现有技术中,通常是使用卷积神经网络学习对网络流的空间特征进行提取,以分别进行加密流量分类和恶意流量分类相关的流量检测;或,对原始流量数据,建立循环神经网络进行时序特征提取的学习,以提高相应的检测性能,但现有的基于卷积神经网络或循环神经网络进行网络流的特征提取的方式,均存在有缺失的部分,以致在基于由此得到的特征表示进行分类检测时,相应检测的准确性也较低。


技术实现要素:

4.本申请提供了一种网络流的特征提取方法、网络流异常检测方法及相关装置,该网络流的特征提取方法能够有效解决现有网络流的特征提取方法均存在有缺失的部分,进而使进一步进行的分类检测的准确性较低的问题。
5.为解决上述技术问题,本申请采用的一个技术方案是:提供一种网络流的特征提取方法,其中,该网络流的特征提取方法包括:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示;对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示。
6.其中,获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示的步骤包括:获取待处理的网络流的字节向量,对字节向量进行卷积运算;对卷积运算后的字节向量进行池化处理,以得到空间特征表示。
7.其中,获取待处理的网络流的字节向量,对字节向量进行卷积运算的步骤包括:获取待处理的网络流的字节向量,通过第一设定滑动窗口对字节向量进行运算,得到第一运算结果;将第一运算结果与第一设定权重矩阵相乘,并通过第一卷积滤波器对相乘后的乘积进行滤波运算,以得到第一卷积输出张量;对卷积运算后的字节向量进行池化处理,以得到空间特征表示的步骤包括:通过第一池化滤波器对第一卷积输出张量进行最大池化运算,以得到第一池化输出张量;通过第二设定滑动窗口对第一池化输出张量进行运算,得到第二运算结果;将第二运算结果与第二设定权重矩阵相乘,并通过第二卷积滤波器对相乘后的乘积进行滤波运算,得到第二卷积输出张量;通过第二池化滤波器对第二卷积输出张量进行最大池化运算,以得到网络流的空间特征表示。
8.其中,获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示的步骤包括:获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示。
9.其中,获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示步骤之前,还包括:通过网络流样本中的多个字节向量样本及其对应的多个时序特征对第一预设网络模型进行训练,以建立卷积神经网络模型。
10.其中,对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示的步骤包括:将当前时刻的空间特征表示与设定空间参数矩阵相乘,并将相乘后的乘积与当前时刻的上一时刻的时空特征表示和设定时间参数矩阵的乘积相加,进而将相加得到的和与设定激活函数相乘,以得到时空特征表示。
11.其中,对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示的步骤包括:通过长短期记忆网络模型对空间特征表示的时序特征进行提取,以得到时空特征表示。
12.为解决上述技术问题,本申请采用的又一个技术方案是:提供一种网络流异常的检测方法,其中,该网络流异常的检测方法包括:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示;对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示;对时空特征表示进行全连接处理;对全连接处理后的时空特征表示进行分类检测,以确定网络流是否出现异常。
13.为解决上述技术问题,本申请采用的又一个技术方案是:提供一种智能终端,其中,该智能终端包括相互耦接的存储器和处理器,存储器存储有程序数据,处理器用于执行程序数据,以实现如上任一项所述的网络流的特征提取方法,或网络流异常的检测方法。
14.为解决上述技术问题,本申请采用的又一个技术方案是:提供一种计算机可读存储介质,其中,该计算机可读存储介质存储有程序数据,该程序数据能够被执行以实现如上任一所述的网络流的特征提取方法,或网络流异常的检测方法。
15.本申请的有益效果是:区别于现有技术,本申请中的网络流的特征提取方法包括:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示,并进一步对该空间特征表示的时序特征进行提取,以得到网络流的时空特征表示,从而能够提取出网络流的时空特征的综合表示,以在基于该综合表示进行分类检测时,能够得到更可靠、准确性更高的检测结果。
附图说明
16.为了更清楚地说明本申请实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
17.图1是本申请网络流的特征提取方法第一实施方式的流程示意图;
18.图2是图1中网络流的特征提取方法一具体应用场景中的网络流时空特征提取网络模型的结构示意图;
19.图3是本申请网络流的特征提取方法第二实施方式的流程示意图;
20.图4是本申请网络流的特征提取方法第三实施方式的流程示意图;
21.图5是本申请网络流异常的检测方法一实施方式的流程示意图;
22.图6是本申请智能终端一实施方式的结构示意图;
23.图7是本申请计算机可读存储介质一实施方式的结构示意图。
具体实施方式
24.下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,均属于本申请保护的范围。
25.请参阅图1

图2,其中,图1为本申请网络流的特征提取方法第一实施方式的流程示意图,图2是图1中网络流的特征提取方法一具体应用场景中的网络流时空特征提取网络模型的结构示意图。本实施方式包括如下步骤:
26.s11:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示。
27.在对网络流,也即网络中的字节流量进行的各项检测中,比如,在对该字节流量进行的异常检测、恶意流量分类检测等任一合理的分类检测中,通常需要首先对待处理的网络流进行空间特征或时序特征提取,以进而能够基于本次提取到的空间特征表示或时序特征表示进行相应的检测分类。
28.其中,在本实施方式中,在获取到待处理的网络流后,首先对该网络流的空间特征进行提取,比如,通过经训练的深度学习网络模型对该网络流中的字节向量进行相应的卷积运算和池化处理等,以对其空间特征进行提取,进而得到该网络流的空间特征表示。
29.s12:对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示。
30.进一步地,在获取到待处理的网络流的空间特征表示后,进而对该空间特征表示的时序特征进行提取,比如,通过一lstm(long short

term memory,长短期记忆网络)循环对当前时刻及上一时刻的空间特征表示和经时序特征提取后的空间特征表示进行时序特征提取,以能够进而提取得到该网络流的时空特征表示。
31.可理解的是,因本网络流的特征提取方法能够提取出网络流的时空特征的综合表示,也即,兼顾了网络流的空间特征和时序特征,而非单一地针对网络流的时序特征或空间特征进行提取,以在基于该综合表示进行分类检测时,能够得到更可靠、准确性更高的检测结果。
32.进一步地,可以理解的,在一具体实施方式中,以上所述s11还包括:获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示。其中,该卷积神经网络模型预先设置有相应的卷积和池化处理规则,以在获取到待处理的网络流时,能够通过该卷积神经网络模型中的相应卷积层和池化层对该网络流进行相应的卷积和池化处理,进而提取得到该网络流的空间特征表示。
33.可理解的是,基于卷积神经网络模型进行网络流的特征提取方法,因避免了使用基于特征工程的网络流量检测方法,故而也无需针对网络流的特征变化,依靠于人工的经验和特征工程技巧,每次都使用人工重新收集规则,或收集相应的构造特征,故而能够有效
节省对网络流进行特征提取的工作量,工作效率也便能够得到提升。
34.进一步地,可以理解的,在一具体实施方式中,在以上所述的获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示的步骤之前,还包括:通过网络流样本中的多个字节向量样本及其对应的多个时序特征对第一预设网络模型进行训练,以建立卷积神经网络模型。
35.其中,对网络流的特征提取通常需要合适的卷积和池化运算参数,比如,合适的卷积核、卷积运算权重矩阵、池化滤波器大小等,以能够提取出较好的网络流的空间特征,进而增加后续检测分类的置信度和准确性,而为了获得合适的该卷积运算参数,通常还需要对该卷积神经网络模型进行模拟训练,以能够通过预先提供的网络流样本中的多个字节向量样本及其对应的多个时序特征对初始的第一预设网络模型进行训练,以进而建立起相应的卷积神经网络模型。
36.其中,在一具体的实施例中,该卷积神经网络模型的训练方法具体可以包括如下步骤:
37.按照网络协议的规定,将多个字节组成数据包,并进一步将通信双方的数据包组成网络流。其中,网络流是网络流量检测的基本单位,而一个网络流样本可由网络流的字节向量和标签组成,在本实施例中,训练样本集合d的表达如下:
38.d=[(b1,y1),(b2,y2),...,(b
k
,y
k
)]。
[0039]
其中,y
k
表示第k(k为正整数)个网络流的标签,b
k
=[b1,b2,...,b
m*n
]
t
为字节向量,m(m为正整数)指的是一条网络流中包含数据包的数量,n(n为正整数)指的是一个数据包中包含字节的数量,也即一条网络流的字节数量为m*n,也是字节向量的长度。b
j
(j为1至m*n中的任一个)代表其中的每一个字节,b
j
∈r(r为实数)且0≤b
j
≤255,也即b
j
取值为0到255之间的正整数。
[0040]
从网络流的层次结构可以得知,各数据包之间存在着显著的时序特征,而数据包内的字节向量则被认为存在着空间特征。因此,也可采用如图2所示的特征提取流程,对具有如图2所示的网络结构的第一预设网络模型进行训练,以能够持续调整该第一预设网络模型的内部参数,以获取到准确性更高的分类结果,进而建立相应的卷积神经网络模型。
[0041]
其中,该第一预设网络模型的输入为网络流字节向量(flow bytes vector),也即,上述训练样本集合d中的每一字节向量b
k
,以将该b
k
依次输入到该第一预设网络模型中,对其进行训练,而该第一预设网络模型具体包含了两卷积层(conv1和conv2)、两最大池化层(maxpool1和maxpool2)、全连接层(fc)、lstm和softmax(逻辑回归模型)层。且相应训练的主要流程有三个步骤:
[0042]
(1)网络流空间特征提取的学习过程:针对网络流样本的数据,设计卷积神经网络来学习网络流样本的空间特征。其中,第一预设网络模型的网络结构使用了两层卷积层和两层最大池化层,首先将网络流样本的字节流向量变形为大小为n*n*channels的张量,以作为空间特征提取的网络模型的输入,其中n*n*channels取1,以通过该网络结构首先对网络流样本的局部特征提取进行学习,并输出为网络流的空间特征表示h1,以之后将该h1应用于相应网络模型的深层结构,进而用于学习更多的全局特征。
[0043]
(2)网路流时序特征提取的学习过程:对于(1)中得到的空间特征表示h1,设计一个lstm网络来进一步学习网络流样本的时序特征,该lstm网络使用了两层隐藏层,并输出
为时空特征表示h2。
[0044]
(3)网络流的检测分类过程:对于经过(1)和(2)得到的网络流时空特征表示h2,设计一个全连接层和输出层,并使用softmax分类器进行分类检测,以输出网络流样本所属类别的预测概率,并持续调整第一预设网络模型中的各网络层的内部参数,以逐步提升最终分类检测的置信度及相应预测概率和准确性,从而建立相应的卷积神经网络模型。
[0045]
可理解的是,训练得到的卷积神经网络结构包含了第一层卷积层、第一层最大池化层、第二层卷积层、第二层最大池化层和一层全连接层。循环神经网络结构的单元使用的是lstm,包含两层隐藏层和一层全连接层,这个全连接层输出即包含了网络流的时空特征表示。且在后续获取到待处理的网络流时,也可直接将该网络流输入到经训练得到的卷积神经网络及lstm中,并通过同于上述训练过程的特征提取方式,也即采用如图2所示的特征提取流程,对该网络流进行特征提取,以进而得到该网络流的时空特征表示。
[0046]
进一步地,可以理解的,在一具体实施方式中,以上所述s12还包括:将当前时刻的空间特征表示与设定空间参数矩阵相乘,并将相乘后的乘积与当前时刻的上一时刻的时空特征表示和设定时间参数矩阵的乘积相加,进而将相加得到的和与设定激活函数相乘,以得到时空特征表示。
[0047]
其中,为了进一步提取待处理的网络流的时序特征,还需获取当前时刻的上一时刻的网络流的时空特征表示,举例来说,当设定当前时刻的空间特征表示为x
t
(t为正整数),当前时刻的上一时刻的时空特征表示为h
t
‑1时,因设定空间参数矩阵、设定时间参数矩阵及设定激活函数可由相应循环神经网络预先设置,且可分别为w、u及f,则可知,由该循环神经网络对待处理的网络流的相应空间特征表示进行时序特征提取后的时空特征表示为:
[0048]
h
t
=f(wh
t
‑1+ux
t
)。
[0049]
进一步地,可以理解的,在一具体实施方式中,以上所述s12还包括:对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示的步骤包括:通过长短期记忆网络模型对空间特征表示的时序特征进行提取,以得到时空特征表示。
[0050]
其中,对空间特征表示的时序特征进行提取可通过长短期记忆网络模型,也即lstm完成,以在将获取到的空间特征表示输入到该lstm中时,能够得到待处理网络流的时空特征表示。
[0051]
其中,循环神经网络每一层的参数是共享的,当前层的输出不仅要考虑上一层的输出,还需要考虑上一时刻隐藏层的输出,而隐藏层更新公式如下所示:
[0052]
h
t
=f(wh
t
‑1+ux
t
)。
[0053]
其中,w是t

1时刻到t时刻的时间参数矩阵,u是输入层到当前层的空间参数矩阵,两者是共享的,f是激活函数。但这种简单的循环神经网络存在梯度消失、梯度爆炸和难以训练的问题,lstm是成功的扩展之一。lstm引入了输入门、遗忘门和输出门,还有记忆单元。lstm隐藏层更新公式如下所示:
[0054]
i
t
=f(w
i
h
t
‑1+u
i
x
t
)
[0055]
f
t
=f(w
f
h
t
‑1+u
f
x
t
)
[0056]
o
t
=f(w
o
h
t
‑1+u
o
x
t
)
[0057]
[0058][0059][0060]
其中,i
t
,f
t
和o
t
是输入门和输出门,f为激活函数,它们都有循环神经网络中特有的两个参数矩阵w和u。tanh是激活函数,其公式为c
t
‑1是上一时刻的记忆,为当前时刻的记忆,c
t
为经过遗忘门和输出门后的记忆,h
t
‑1和h
t
分别为上一个单元隐藏层和当前单元隐藏层的输出,也即,待处理网络流的上一时刻的时空特征表示和当前时刻的特征表示,而x
t
为待处理网络流当前时刻的空间特征表示。
[0061]
可理解的是,lstm模型h0的初始化是0,以在获取到第一个待处理的网络流的时空特征表示h1后,能够通过该h1和相应的空间特征表示依次对待处理网络流的时序特征循环进行特征提取,进而能够得到待处理的该网络流的时空特征表示。
[0062]
区别于现有技术,本申请中的网络流的特征提取方法包括:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示,并进一步对该空间特征表示的时序特征进行提取,以得到网络流的时空特征表示,从而能够提取出网络流的时空特征的综合表示,以在基于该综合表示进行分类检测时,能够得到更可靠、准确性更高的检测结果。
[0063]
请参阅图3,图3是本申请网络流的特征提取方法第二实施方式的流程示意图。本实施方式的网络流的特征提取方法是图1中的网络流的特征提取方法的一细化实施方式的流程示意图,包括如下步骤:
[0064]
s31:获取待处理的网络流的字节向量,对字节向量进行卷积运算。
[0065]
在对网络流,也即网络中的字节流量进行的各项检测中,比如,在对该字节流量进行的异常检测、恶意流量分类等任一合理的分类检测中,通常需要首先对待处理的网络流的字节向量进行空间特征或时序特征提取,以进而能够基于本次提取到的空间特征表示或时序特征表示进行相应的检测分类。
[0066]
其中,在本实施方式中,在获取到待处理的网络流的字节向量后,首先对该字节向量进行卷积运算,比如,通过预设卷积核、卷积滤波器或卷积神经网络中的卷积层对该字节向量进行卷积运算。
[0067]
s32:对卷积运算后的字节向量进行池化处理,以得到空间特征表示。
[0068]
进一步地,对卷积运算后的字节向量进行池化处理,比如,通过预设池化滤波器或卷积神经网络中的池化层对该字节向量进行池化处理,以进而得到该字节向量的空间特征表示。
[0069]
s33:对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示。
[0070]
其中,s33与图1中的s12相同,具体请参阅s12及其相关的文字描述,在此不再赘述。
[0071]
请参阅图4,图4是本申请网络流的特征提取方法第三实施方式的流程示意图。本实施方式的网络流的特征提取方法是图2中的网络流的特征提取方法的一细化实施方式的流程示意图,包括如下步骤:
[0072]
s41:获取待处理的网络流的字节向量,通过第一设定滑动窗口对字节向量进行运
算,得到第一运算结果。
[0073]
在对网络流,也即网络中的字节流量进行的各项检测中,比如,在对该字节流量进行的异常检测、恶意流量分类检测等任一合理的分类检测中,通常需要首先对待处理的网络流进行空间特征或时序特征提取,以进而能够基于本次提取到的空间特征表示或时序特征表示进行相应的检测分类。
[0074]
其中,在本实施方式中,在获取到待处理的网络流的字节向量后,首先对该字节向量进行卷积运算,如通过第一设定滑动窗口对该字节向量进行卷积运算,以得到第一运算结果。
[0075]
s42:将第一运算结果与第一设定权重矩阵相乘,并通过第一卷积滤波器对相乘后的乘积进行滤波运算,以得到第一卷积输出张量。
[0076]
进一步地,将第一运算结果与第一设定权重矩阵相乘,进而通过第一卷积滤波器对本次相乘后的乘积进行滤波运算,以得到第一卷积输出张量。
[0077]
具体地,在获取到待处理的网络流的字节向量后,可先将其转换为d*d*channels的张量,则相应卷积运算公式如下:
[0078]
c
i
=f(w
·
x
i:i+h
‑1)。
[0079]
其中,x
i:i+h
‑1代表第i行到第i+h

1行所组成的h*d的滑动窗口,w为权重矩阵,f为激活函数。可理解的,该c
i
即第一卷积输出张量。
[0080]
s43:通过第一池化滤波器对第一卷积输出张量进行最大池化运算,以得到第一池化输出张量。
[0081]
具体地,通过第一池化滤波器对经第一次卷积运算后得到的第一卷积输出张量进行最大池化运算,以得到第一池化输出张量。
[0082]
s44:通过第二设定滑动窗口对第一池化输出张量进行运算,得到第二运算结果。
[0083]
具体地,通过第二设定滑动窗口对经第一次最大池化处理后得到的第一池化输出张量进行卷积运算,以得到第二运算结果。
[0084]
s45:将第二运算结果与第二设定权重矩阵相乘,并通过第二卷积滤波器对相乘后的乘积进行滤波运算,得到第二卷积输出张量。
[0085]
进一步地,将第二运算结果与第二设定权重矩阵相乘,进而通过第二卷积滤波器对相乘后的乘积进行滤波运算,得到第二卷积输出张量。可理解的,s44和s45中的相应运算公式,同于s42中列举的运算公式,在此不再赘述。
[0086]
s46:通过第二池化滤波器对第二卷积输出张量进行最大池化运算,以得到网络流的空间特征表示。
[0087]
进一步地,通过第二池化滤波器对经第二次卷积运算后得到的第二卷积输出张量进行最大池化运算,以进而得到待处理的网络流的空间特征表示。
[0088]
而在其他实施例中,还可以对待处理的网络流循环间隔执行3次或4次等任一合理次数的卷积运算和最大池化运算,以最终得到该网络流的空间特征表示;且还可以仅对该网络流进行一次卷积运算后,只进行一次最大池化运算,以得到该网络流的空间特征表示,其中,对该网络流进行卷积运算和最大池化运算的次数具体可以由用户根据相应的运算量、运算效率及获取到的空间特征表示的质量进行合理的选择,本申请对此不做限定。
[0089]
s47:对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示。
[0090]
其中,s47与图1中的s12相同,具体请参阅s12及其相关的文字描述,在此不再赘述。
[0091]
在一个具体的实施例中,对待处理的网络流进行的卷积运算和池化运算过程还可以由一卷积神经网络完成,其中,针对该网络流的原始数据,该卷积神经网络使用了两层卷积层和两层最大池化,而第一层卷积层使用了32个卷积滤波器,且其大小为5*5,步长为1,以作用于该网络流的局部区域,对其进行局部特征提取。
[0092]
其中,在给定一个大小为d*d*channels的张量作为该第一层卷积层输入时,得到的输出张量大小为(d

4)*(d

4)*(channels*32)。而该卷积神经网络的第二层卷积层使用的是64个卷积滤波器,大小为3*3,步长为1,且在给定一个大小为d*d*channels的张量作为输入,得到的输出张量大小为(d

2)*(d

2)*(channels*64)。
[0093]
则由此可知,在获取到待处理的网络流后,可首先将该网络流转换为d*d*channels的张量,以作为第一层卷积层的输入,则本次卷积操作如以下公式:
[0094]
c
i
=f(w
·
x
i:i+h
‑1)。
[0095]
其中,x
i:i+h
‑1代表第i行到第i+h

1行所组成的h*d的滑动窗口,w为权重矩阵。
[0096]
其中,两层最大池化层具体可以为第一层最大池化层和第二层最大池化层,也即分别能够对区域内的特征点取最大值,且采用的池化滤波器的大小可以是为2*2,步长为2。则可知,当给定的是一个大小为d*d*channels的张量作为输入,由第一层最大池化层和第二层最大池化层处理得到的输出张量大小为(d/2)*(d/2)*channels。
[0097]
可理解的是,在使用第一层卷积层对待处理网络流进行卷积运算得到c
i
后,可采用上述卷积和池化处理规则,进一步使用第一层最大池化层对c
i
进行最大池化处理,并再使用第二层卷积层对第一次最大池化处理后的输出进行第二卷积运算,以进而使用第二层最大池化层对第二次卷积运算后的输出进行最大池化处理,以能够得到待处理网络流的空间特征表示。
[0098]
请参阅图5,图5是本申请网络流异常检测方法一实施方式的流程示意图。本实施方式包括如下步骤:
[0099]
s51:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示。
[0100]
在对网络流,也即网络中的字节流量进行的各项检测中,比如,在对该字节流量进行的异常检测、恶意流量分类检测等任一合理的分类检测中,通常需要首先对待处理的网络流进行空间特征或时序特征提取,以进而能够基于本次提取到的空间特征表示或时序特征表示进行相应的检测分类。
[0101]
其中,在本实施方式中,在获取到待处理的网络流后,首先对该网络流的空间特征进行提取,比如,通过经训练的深度学习网络模型对该网络流中的字节向量进行相应的卷积运算和池化处理等,以对其空间特征进行提取,进而得到该网络流的空间特征表示。
[0102]
s52:对空间特征表示的时序特征进行提取,以得到网络流的时空特征表示。
[0103]
进一步地,在获取到待处理的网络流的空间特征表示后,进而对该空间特征表示的时序特征进行提取,比如,通过一lstm(long short

term memory,长短期记忆网络)循环对当前时刻及上一时刻的空间特征表示和经时序特征提取后的空间特征表示进行时序特征提取,以能够进而提取得到该网络流的时空特征表示。
[0104]
s53:对时空特征表示进行全连接处理。
[0105]
具体地,在提取得到待处理网络流的时空特征表示后,进一步对该时空特征表示进行全连接处理。
[0106]
s54:对全连接处理后的时空特征表示进行分类检测,以确定网络流是否出现异常。
[0107]
进一步地,对全连接处理后的时空特征表示进行分类检测,比如,通过softmax分类器对全连接处理后的时空特征表示是否出现异常进行二元分类,以确定待处理的网络流是否出现异常。而在其他实施例中,该softmax分类器也可以由其他类别的任一合理的二元分类器替代,只需进行是否发生异常分类即可,本申请对此不做限定。
[0108]
可理解的是,因本网络流的特征提取方法能够提取出网络流的时空特征的综合表示,也即,兼顾了网络流的空间特征和时序特征,而非单一地针对网络流的时序特征或空间特征进行提取,以在基于该综合表示进行分类检测时,能够得到更可靠、准确性更高的检测结果。
[0109]
进一步地,可以理解的,在一具体实施方式中,以上所述s51还包括:获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示。其中,该卷积神经网络模型预先设置有相应的卷积和池化处理规则,以在获取到待处理的网络流时,能够通过该卷积神经网络模型中的相应卷积层和池化层对该网络流进行相应的卷积和池化处理,进而提取得到该网络流的空间特征表示。
[0110]
可理解的是,基于卷积神经网络模型进行网络流的特征提取方法,因避免了使用基于特征工程的网络流量检测方法,故而也无需针对网络流的特征变化,依靠于人工的经验和特征工程技巧,每次都使用人工重新收集规则,或收集相应的构造特征,故而能够有效节省对网络流进行特征提取的工作量,工作效率也便能够得到提升。
[0111]
进一步地,可以理解的,在一具体实施方式中,在以上所述的获取待处理的网络流,通过卷积神经网络模型对网络流的空间特征进行提取,以得到空间特征表示的步骤之前,还包括:通过网络流样本中的多个字节向量样本及其对应的多个时序特征对第一预设网络模型进行训练,以建立卷积神经网络模型。
[0112]
其中,对网络流的特征提取通常需要合适的卷积和池化运算参数,比如,合适的卷积核、卷积运算权重矩阵、池化滤波器大小等,以能够提取出较好的网络流的空间特征,进而增加后续检测分类的置信度和准确性,而为了获得合适的该卷积运算参数,通常还需要对该卷积神经网络模型进行模拟训练,以能够通过预先提供的网络流样本中的多个字节向量样本及其对应的多个时序特征对初始的第一预设网络模型进行训练,以进而建立起相应的卷积神经网络模型。
[0113]
进一步地,可以理解的,在一具体实施方式中,以上所述s52还包括:将当前时刻的空间特征表示与设定空间参数矩阵相乘,并将相乘后的乘积与当前时刻的上一时刻的时空特征表示和设定时间参数矩阵的乘积相加,进而将相加得到的和与设定激活函数相乘,以得到时空特征表示。
[0114]
可理解的,在一些具体的实施方式中,本申请网络流异常检测方法一实施方式中的上述s51和s52,也即涉及网络流的特征提取部分的更详细内容和本申请上述网络流的特征提取方法第一、第二及第三实施方式的相关内容完全相同,在此不再赘述。
[0115]
其中,当通过在设定的网络轨迹数据集上进行实验,以提取网络原始流量的时空特征表示,并进一步进行流量检测,且跟其他的深度表示学习方法进行对比时,实验结果验证了本实施方式所提出的方法在时空特征提取上优于现有其他方法。其中,表1的对比实验是选择单一网络结构的特征提取方法,包括两层全连接的全连接网络(mlp)、卷积神经网络和lstm,而对于得到的特征用softmax层进行分类,分类的实验结果如表1所示:
[0116]
表1
[0117][0118][0119]
其中,由表1的对比实验结果可以看出cnn

lstm(ours)(卷积神经网络

长短期记忆网络,我们的),也即采用本实施方式得到的数据中的准确性(0.8618)显然优于其他对照组数据。
[0120]
基于总的发明构思,本申请还提供了一种智能终端,请参阅图6,图6是本申请智能终端一实施方式的结构示意图。其中,该智能终端61包括相互耦接的存储器611和处理器612,存储器611存储有程序数据,处理器612用于执行程序数据,以实现如上任一项所述的网络流的特征提取方法,或网络流异常的检测方法。
[0121]
基于总的发明构思,本申请还提供了一种计算机可读存储介质,请参阅图7,图7是本申请计算机可读存储介质一实施方式的结构示意图。其中,该计算机可读存储介质71存储有程序数据711,该程序数据711能够被执行以实现如上任一所述的网络流的特征提取方法,或网络流异常的检测方法。
[0122]
在一个实施方式中,计算机可读存储介质71可以是终端中的存储芯片、硬盘或者是移动硬盘或者优盘、光盘等其他可读写存储的工具,还可以是服务器等等。
[0123]
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,处理器或存储器的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个处理器与存储器实现的功能可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或连接可以是通过一些接口,装置或单元的间接耦合或连接,可以是电性,机械或其它的形式。
[0124]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式的目的。
[0125]
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的
单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0126]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0127]
区别于现有技术,本申请中的网络流的特征提取方法包括:获取待处理的网络流,对网络流的空间特征进行提取,以得到网络流的空间特征表示,并进一步对该空间特征表示的时序特征进行提取,以得到网络流的时空特征表示,从而能够提取出网络流的时空特征的综合表示,以在基于该综合表示进行分类检测时,能够得到更可靠、准确性更高的检测结果。
[0128]
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1