一种用于流量分类的神经网络架构自动搜索方法及装置

文档序号:32099803发布日期:2022-11-08 23:01阅读:111来源:国知局
一种用于流量分类的神经网络架构自动搜索方法及装置

1.本发明涉及信息技术领域,具体而言,涉及一种用于流量分类的神经网络架构自动搜索方法及装置。


背景技术:

2.网络流量分类技术是网络领域中一个重要的研究问题,它在入侵检测、网络异常检测和qos保证中都起到非常关键的作用。深度神经网络作为近年来一种非常有前途的技术,已经在流量分类领域中取得了很好的效果。然而,目前的深度神经网络均需要人工设计,难以适应不同的流量分类任务,这些不同的流量分类任务可能存在不同的侧重点,且不同企业中的流量模式也各不相同,为每个任务单独设计一套适用的神经网络架构是非常高成本的。
3.传统的流量分类技术是基于端口号和深度包检测的,这种方法基于预先设定的规则来对待分类流量进行匹配,从而将其划分到已知的流量模式中。基于机器学习的方法使得流量分类技术能更加智能地去识别其内在的模式,这类方法一般先需要对网络流量进行特征化处理,将其转变为一组流量特征向量,然后结合常用的机器学习方法,如svm、随机森林、knn等进行分类。深度神经网络的出现使得端到端的流量分类成为可能,这类方法不强制要求事先将网络流量特征化,也可以将原始的网络数据进行简单编码后输送到神经网络中。神经网络先将这些编码映射到一组高维向量,然后对其进行卷积、池化、递归计算等操作,从而提取出隐藏特征。一般而言为了加强学习到的特征表达,会加深网络的层数,这就是“深度神经网络”的由来。在多层的特征提取操作后,一般会在最后结合线性层和softmax层来进行分类。
4.传统的流量分类技术基于端口号和深度包检测,这类方法很容易被端口欺骗、流量加密等技术所绕过。基于机器学习的方法需要先对网络流量进行特征化,然而这需要非常大量的专家先验知识,且人工设计出来的特征不一定能保证有代表性和全面性。深度学习方法虽然可以降低专家知识的门槛,然而设计有效的神经网络架构本身就是一件有挑战性的事情。另外,要找出哪一种神经网络架构最适合当前的任务,需要大量的实验和重设计,这需要耗费巨大的人力物力。


技术实现要素:

5.本发明实施例提供了一种用于流量分类的神经网络架构自动搜索方法及装置,目的在于实现自动的神经网络架构的搜索。
6.根据本发明的一实施例,提供了一种用于流量分类的神经网络架构自动搜索方法,包括以下步骤:
7.获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;
8.将流量数据集分别划分成训练集、验证集和测试集;
9.在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;
10.基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。
11.进一步地,方法还包括:
12.在每个cell的输出位置加上空间注意力和通道注意力;
13.保存搜索出来的cell架构参数,并使用训练集和验证集合并成的新训练集进行重新训练cell架构。
14.进一步地,在获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集中包括:
15.步骤一:在网络流粒度进行数据提取;
16.步骤二:在数据包粒度进行数据提取;
17.步骤三:将在网络流粒度提取数据和在数据包粒度提取的数据沿通道维度进行拼接组成张量;
18.步骤四:对所有网络流进行上述第一步至第三步的操作,构建格式化的流量数据集。
19.进一步地,在将流量数据集分别划分成训练集、验证集和测试集中包括:
20.训练集、验证集及测试集中含有相同比例的各类别流量;其中,
21.训练集用于更新该结构中的网络权重参数;
22.验证集用于搜索最佳的网络结构参数;
23.测试集用于在搜索完成后使用训练集加验证集进行重新训练、并在测试集上评测最终结果。
24.进一步地,构建搜索空间的可选操作中包括:限定搜索神经网络架构空间的范围。
25.进一步地,神经网络架构的搜索空间的可选操作为设置为:3x3深度可分离卷积、5x5深度可分离卷积、3x3空洞卷积、5x5空洞卷积、3x3最大化池化及3x3平均池化。
26.进一步地,在基于搜索空间的可选操作,搜索最优的神经网络架构中包括:
27.步骤一:构建超网;其中,在超网中扩展八条边的操作,且每条边有不同的权重;
28.步骤二:在验证集损失上使用梯度下降法更新神经网络架构参数;
29.步骤三:在训练集损失上使用梯度下降法更新操作权重参数;
30.步骤四:重复步骤二、步骤三直至神经网络架构训练完成;
31.步骤五:训练完成后,保留节点权重最大的那条边。
32.进一步地,在每个cell的输出位置加上空间注意力和通道注意力中包括:
33.步骤一:通过对搜索出的cell结构的输出后面加入通道注意力进行处理,得到通道注意力权重;
34.步骤二:通过对搜索出的cell结构的输出后面加入空间注意力进行处理,得到空间注意力权重;
35.步骤三:将得到的通道注意力权重和空间注意力权重进行矩阵乘法,得到注意力加权的新输出。
36.根据本发明的另一实施例,提供了一种用于流量分类的神经网络架构自动搜索装置,装置包括:
37.数据转换模块:用于获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;
38.数据分成模块:用于将流量数据集分别划分成训练集、验证集和测试集;
39.可选操作构建模块:用于在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;
40.搜索最优网络架构模块:用于基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。
41.进一步地,装置还包括:
42.注意力加入模块:用于在每个cell的输出位置加上空间注意力和通道注意力;
43.重新训练模块:用于保存搜索出来的cell架构参数,并使用训练集和验证集合并成的新训练集进行重新训练cell架构。
44.本发明实施例中的用于流量分类的神经网络架构自动搜索方法及装置,获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;将流量数据集分别划分成训练集、验证集和测试集;在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。本发明能够通过给定的候选操作自动地搜索出最优的神经网络结构,而无需人工的参与。
附图说明
45.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
46.图1为本发明用于流量分类的神经网络架构自动搜索方法的流程图;
47.图2为本发明用于流量分类的神经网络架构自动搜索方法的优选流程图;
48.图3为本发明用于流量分类的神经网络架构自动搜索装置的模块图;
49.图4为本发明用于流量分类的神经网络架构自动搜索装置的优选模块图;
50.图5为本发明描述搜索最佳网络结构的过程图;
51.图6为本发明描述在搜索到的cell结构后面加入注意力的原理图;
52.图7为本发明描述通道注意力的计算过程图;
53.图8为本发明描述空间注意力的计算过程图。
具体实施方式
54.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
55.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用
的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
56.实施例1
57.参见图1至图8,根据本发明一实施例,提供了一种用于流量分类的神经网络架构自动搜索方法,包括以下步骤:
58.s101:获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;
59.s102:将流量数据集分别划分成训练集、验证集和测试集;
60.s103:在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;
61.s104:基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。
62.本发明实施例中的用于流量分类的神经网络架构自动搜索方法及装置,获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;将流量数据集分别划分成训练集、验证集和测试集;在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。本发明能够通过给定的候选操作自动地搜索出最优的神经网络结构,而无需人工的参与。
63.实施例中,方法还包括:
64.s105:在每个cell的输出位置加上空间注意力和通道注意力;
65.s106:保存搜索出来的cell架构参数,并使用训练集和验证集合并成的新训练集进行重新训练cell架构。
66.本发明技术中将空间注意力、通道注意力机制结合在搜索到的每个cell结构中,增强了模型的特征提取能力。
67.本发明技术中在搜索到的每个cell结构的输出位置中,加上空间注意力和通道注意力,以增强模型的特征提取能力;将加上空间注意力和通道注意力训练得到的cell架构参数保存下来之后,继续重新训练直至训练完。
68.实施例中,在获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集中包括:
69.步骤一:在网络流粒度进行数据提取;
70.步骤二:在数据包粒度进行数据提取;
71.步骤三:将在网络流粒度提取数据和在数据包粒度提取的数据沿通道维度进行拼接组成张量;
72.步骤四:对所有网络流进行上述第一步至第三步的操作,构建格式化的流量数据集。
73.下面以具体实施例,对本发明的将数据样本进行预处理并转成二维矩阵形式的流量数据集进行详细说明:
74.步骤一,在网络流粒度进行数据提取,将网络流的前个字节提取出来,组成的二维矩阵m1。
75.步骤二,在数据包粒度进行数据提取,对一个流的前η个数据包进行字节提取,每个数据包提取前α/η个字节,总计α字节,组成的二维矩阵m2。
76.步骤三,将m1和m2沿通道维度进行拼接,组成32*32*3的张量。
77.步骤四,对所有网络流进行上述第一步至第三步的操作,构建格式化的流量数据集。
78.实施例中,在将流量数据集分别划分成训练集、验证集和测试集中包括:
79.训练集、验证集及测试集中含有相同比例的各类别流量;其中,
80.训练集用于更新该结构中的网络权重参数;
81.验证集用于搜索最佳的网络结构参数;
82.测试集用于在搜索完成后使用训练集加验证集进行重新训练、并在测试集上评测最终结果。
83.将上述构建的流量数据集进行划分,一部分用于训练,一部分用于验证,剩余的部分用于测试。每个集中含有相同比例的各类别流量。训练集用于更新该结构中的网络权重参数,验证集用于搜索最佳的网络结构参数,在搜索完成后使用训练集结合验证集进行重新训练,并在测试集上评测最终结果。
84.实施例中,构建搜索空间的可选操作中包括:限定搜索神经网络架构空间的范围。自动神经架构搜索的可选操作是无限的,为了降低复杂度我们需要限定搜索空间的范围。
85.实施例中,神经网络架构的搜索空间的可选操作为设置为:3x3深度可分离卷积、5x5深度可分离卷积、3x3空洞卷积、5x5空洞卷积、3x3最大化池化及3x3平均池化。本发明中搜索空间的可选操作包括:3x3深度可分离卷积、5x5深度可分离卷积、3x3空洞卷积、5x5空洞卷积、3x3最大化池化、3x3平均池化、恒等及直连共八个操作。
86.实施例中,在基于搜索空间的可选操作,搜索最优的神经网络架构中包括:
87.步骤一:构建超网;其中,在超网中扩展八条边的操作,且每条边有不同的权重;
88.步骤二:在验证集损失上使用梯度下降法更新神经网络架构参数;
89.步骤三:在训练集损失上使用梯度下降法更新操作权重参数;
90.步骤四:重复步骤二、步骤三直至神经网络架构训练完成;
91.步骤五:训练完成后,保留节点权重最大的那条边。
92.本搜索方法属于微观搜索,即搜索一个最优的cell结构,然后重复堆叠相同的cell形成整个网络。每一个cell中包含四个节点,节点代表某一个时刻的特征图。节点与节点之间的边代表某种可选操作,总的可选操作数有种,本例中为八种。最终需要搜索出一个有向无环图,即一个cell的结构,如图5所示。
93.下面以具体实施例,对本发明搜索最优的神经网络架构的过程进行详细说明:
94.步骤一:通过超网构建公式构建超网,在超网中扩展八条边的操作,且每条边有不同的权重;超网构建公式如下:
[0095][0096]
其中,o(x)是可选操作集合中的其中一个操作,即代表八条边中的某一条边;指的是该边o(x)的权重,(i,j)限定了该边是属于i和j节点之间的;表示节点i和i之间的八条边加权操作,通过该加权操作的计算能够得到一个特征图;另外,该公式使用了softmax函数对进行了处理;
[0097]
步骤二:在验证集损失上使用梯度下降法更新神经网络架构参数α,公式如下:
[0098][0099]
步骤三:在训练集损失上使用梯度下降法更新操作权重参数w,公式如下:
[0100][0101]
步骤四:重复步骤二、步骤三直至神经网络架构训练完成;
[0102]
步骤五:训练完成后,通过节点保留公式实现保留节点(i,j)之间权重最大的那条边;节点保留公式为:
[0103][0104]
其中,每个节点只保留与前面两个具有最大权重边的节点的连接。
[0105]
实施例中,在每个cell的输出位置加上空间注意力和通道注意力中包括:
[0106]
步骤一:通过对搜索出的cell结构的输出后面加入通道注意力进行处理,得到通道注意力权重;
[0107]
步骤二:通过对搜索出的cell结构的输出后面加入空间注意力进行处理,得到空间注意力权重;
[0108]
步骤三:将得到的通道注意力权重和空间注意力权重进行矩阵乘法,得到注意力加权的新输出。
[0109]
下面以具体实施例,如图6和图8所示,对本发明每个cell的输出位置加上空间注意力和通道注意力的过程进行详细说明:
[0110]
步骤一:对搜索出的cell结构的输出后面加入通道注意力,如图7所示;其中包括,首先对维度为h*w*c的x分别采取全局平均池化以及全局最大池化得到两个1*1*c的张量,然后使用一个共享的mlp层对该两个张量进一步提取特征,并将它们相加后经过sigmoid函数得到通道注意力权重mc。
[0111]
步骤二:对搜索出的cell结构的输出后面加入空间注意力,如图8所示;其中包括,首先对维度为h*w*c的x分别采取全局平均池化以及全局最大池化得到两个h*w*1的张量,然后使用一个卷积核将该两个张量转换为一个h*w*1的特征图,再经过sigmoid函数处理后得到空间注意力权重ms。
[0112]
步骤三:将得到的通道注意力权重mc和空间注意力权重ms通过矩阵乘法公式在原输出维度x上进行矩阵乘法,得到注意力加权的新输出x',矩阵乘法公式如下所示:
[0113]
x'=ms×
(mc×
x)
[0114]
实施例2
[0115]
根据本发明的另一实施例,提供了一种用于流量分类的神经网络架构自动搜索装置,参见图3至图8,包括:
[0116]
数据转换模块:用于获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;
[0117]
数据分成模块:用于将流量数据集分别划分成训练集、验证集和测试集;
[0118]
可选操作构建模块:用于在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;
[0119]
搜索最优网络架构模块:用于基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。
[0120]
本发明实施例中的用于流量分类的神经网络架构自动搜索方法及装置,数据转换模块:用于获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;数据分成模块:用于将流量数据集分别划分成训练集、验证集和测试集;可选操作构建模块:用于在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;搜索最优网络架构模块:用于基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。本发明能够通过给定的候选操作自动地搜索出最优的神经网络结构,而无需人工的参与。
[0121]
实施例中,装置还包括:
[0122]
注意力加入模块:用于在每个cell的输出位置加上空间注意力和通道注意力;
[0123]
重新训练模块:用于保存搜索出来的cell架构参数,并使用训练集和验证集合并成的新训练集进行重新训练cell架构。
[0124]
本发明技术中将空间注意力、通道注意力机制结合在搜索到的每个cell结构中,增强了模型的特征提取能力。
[0125]
本发明技术中在搜索到的每个cell结构的输出位置中,加上空间注意力和通道注意力,以增强模型的特征提取能力;将加上空间注意力和通道注意力训练得到的cell架构参数保存下来之后,继续重新训练直至训练完。
[0126]
本发明的有益效果在于:
[0127]
1.本发明实施例中的用于流量分类的神经网络架构自动搜索方法及装置,获取网络流量数据样本,将数据样本进行预处理并转成二维矩阵形式的流量数据集;将流量数据集分别划分成训练集、验证集和测试集;在流量数据集划分后,构建神经网络架构的搜索空间的可选操作;基于搜索空间的可选操作,搜索最优的神经网络架构;其中包括,搜索最优的cell结构,重复搜索堆叠相同的cell结构,将搜索的cell结构形成整个神经网络架构。本发明能够通过给定的候选操作自动地搜索出最优的神经网络结构,而无需人工的参与。
[0128]
2.本发明使用的是两个粒度的数据二维矩阵提取,从而形成双通道的输入。
[0129]
3.本发明在每个cell结构中加入了空间注意力和通道注意力以增强特征提取能力。
[0130]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应
视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1