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

一种基于开放世界的网络流量分类方法及系统与流程

2022-02-19 12:28:19 来源:中国专利 TAG:


1.本发明涉及网络空间安全以及流量异常检测领域,具体涉及一种基于开放世界的网络流量分类方法及系统。


背景技术:

2.网络流量异常检测一直以来都是网络空间安全领域的热点研究问题之一。随着信息技术和网络通信的发展,由于网络流量数据量的爆炸式增长和演变,网络管理和网络空间安全越来越受到重视。在网络管理中,为了在有限的带宽上对不同的应用程序进行适当的优先级排序,大多数qos机制都有一个流量分类模块来首先识别数据包属于哪个应用程序。在网络安全中,流量分类,特别是面向开放世界的未知流量检测,可以帮助安全分析人员识别和分类攻击行为,进一步确保设备和信息的安全。因此,大多数研究人员将注意力集中在通过机器学习方法进行的流量分类上。目前在网络流量识别领域的方法技术可以分为两个领域:封闭世界网络流量识别以及开放世界网络流量识别。
3.现有的许多网络流量分类方法都局限于封闭世界的前提下。也就是说,测试中没有出现新的类。
4.在早期的研究中,一些算法寻求在数据包级特征上解决问题。基于端口的方法通过匹配网络包中的端口号来识别应用程序类型。然而,在新技术带来分配端口动态变化的情况下,这种方法是失败的。基于负载的方法通过检查包负载中的特定应用程序签名以进行匹配,避免了动态端口问题,但它涉及用户隐私,需要不断更新协议特征库。yun等人提出了securitas,并通过聚类具有相同语义的n

gram来提取统计协议消息格式。另一些则侧重于数据流级特性。gil等人使用c4.5决策树和与时间相关的特性,如流持续时间、每秒流字节数和到达间隔。然而,由于统计特征设计容易出错且耗时,这些方法最终未能付诸实践。目前,关于网络流量分类的多项研究都是基于深度学习。wang等人提出了hast

ids系统,利用cnn和rnn学习低层空间特征和高层序列特征。zhao等人设计了一个新的目标函数来解决类内多样性和类间相似性问题。采用了一个具有堆叠式自动编码器和cnn的深层数据包框架,将特征提取和数据包分类阶段集成到一个系统中。这些方法虽然在深度特征提取方面高效、省时,但都局限于封闭集,不能应用于未知网络流量流的检测。
5.对于开放世界的网络流量识别而言,由于现实世界是开放的、动态的,在很多情况下,模型不能期望在训练中看到一切,这使得开放世界未知流量检测变得困难。
6.有一些流水平的方法来处理这个问题。zhang等人提出了一种参数优化方案rtc,它将有监督和无监督机器学习技术相结合,得到一个额外的置信度,并判断测试样本被看到或看不到的概率。受rtc的启发,使用深度学习方法来获得嵌入表示,并在已知类和未知类之间设置临界值。zhao等人设计了一种基于原型的方法,通过新颖性检测实现了鲁棒的流量分类,并取得了很好的效果。然而,据我们所知,现有的相关研究都只是利用cnn或rnn在流的层次上提取单一类型的特征,缺乏一种基于网络流结构的设计,在这种设计中其背后会存在可判别的潜在信息。
7.目前有两种主要的机器学习方法来应对这一挑战:分别是监督方法和非监督方法。监督的方法在已知的流量样本上训练数据驱动的分类器,取得了满意的结果,但基于一个封闭世界,真实环境中检测会有一定的误报率。例如,一旦新的类别的样本被发送到分类器,它就可能被误分类为预定义的已知的类,从而导致高的虚警率。随着网络流量流的动态变化和演化,这成为网络流量流分类系统的主要瓶颈。相比之下,无监督方法(如聚类)通常用于通过在特征空间中收集来自同一类的未标记样本来处理未知信息。但是,它可能无法很好地应用在高维的网络流量数据,并导致低精度,这就限制了它的实用性。此后,对网络流量流分类的研究大多转向深度学习。
8.深度学习方法以其良好的特征提取能力在许多领域取得了良好的进展。近年来,它在流量分类和未知流量检测方面也取得了突破性进展。递归神经网络(rnn)用于提取序列特征进行流量分类,但它受封闭世界的限制,无法解决未知流量检测问题。基于rnn的注意力网络被用于流量分类,然而该网络在训练阶段非常耗时,尤其是当输入序列太长时。此外,卷积神经网络(cnn)应用于研究是通过学习空间特征来发现未知流量。然而,由于缺乏对类内多样性和类间相似性的考虑,被困难样本混淆的特征提取算法对检测结果产生不利影响。此外,上述方法都缺乏对网络流量流层次结构的设计,只提取单个特征,例如序列特征或空间特征。


技术实现要素:

9.为了解决上述技术问题,本发明提供一种基于开放世界的网络流量分类方法及系统。
10.本发明技术解决方案为:一种基于开放世界的网络流量分类方法,包括:
11.步骤s1:构建基于孪生神经网络的she

net模型,以开放世界网络流量作为样本集,获取所述样本集的低维特征向量,所述低维特征向量中含有序列特征向量和空间特征向量;同时,构建互补损失函数训练困难样本;其中,所述she

net模型包括:字节编码器、包编码器和流编码器;
12.步骤s2:根据所述低维特征,利用基于阈值和支持向量机的检测器,对所述开放世界网络流量进行分类和预测。
13.本发明与现有技术相比,具有以下优点:
14.本发明公开了一种基于开放世界的网络流量分类方法,根据数据流的结构特征来设计网络模型结构,整个网络构成了层层递进的编码器,在不同层级的编码器使用了不同的特征,丰富了特征多样性,增强网络流量识别的鲁棒性和泛化性。
15.本发明通过在模型输出端构造互补特征,基于该特征以及概率分布,从而设计了新的互补损失函数,本发明利用互补损失函数与孪生神经网络的对比损失函数一起联合训练网络模型,解决了孪生神经网络的对比损失函数的收敛不稳定的问题。
附图说明
16.图1为本发明实施例中一种基于开放世界的网络流量分类方法的流程图;
17.图2为本发明实施例中she

net模型的框架结构示意图;
18.图3为本发明实施例中一种基于开放世界的网络流量分类系统的结构框图。
具体实施方式
19.本发明提供了一种基于开放世界的网络流量分类方法,构建了双分支三级编码器的she

net模型,增强网络流量识别的鲁棒性和泛化性,并构建互补损失函数,解决了孪生神经网络的对比损失函数的收敛不稳定的问题。
20.为了使本发明的目的、技术方案及优点更加清楚,以下通过具体实施,并结合附图,对本发明进一步详细说明。
21.实施例一
22.如图1所示,本发明实施例提供的一种基于开放世界的网络流量分类方法,包括下述步骤:
23.步骤s1:构建基于孪生神经网络的she

net模型,以开放世界网络流量作为样本集,获取样本集的低维特征向量,低维特征向量中含有序列特征向量和空间特征向量;同时,构建互补损失函数训练困难样本;其中,she

net模型包括:字节编码器、包编码器和流编码器;
24.步骤s2:根据低维特征向量,利用基于阈值和支持向量机的检测器,对开放世界网络流量进行分类和预测。
25.本发明实施例中的she

net模型是基于孪生神经网络的框架构建的双分支三级编码器的网络模型,旨在递进式地学习输入模型的开放世界的网络数据流样本的低维表示。如图2所示为she

net模型的框架结构示意图。
26.在一个实施例中,上述步骤s1:构建she

net模型,以开放世界网络流量作为样本集,获取样本集的低维特征向量,该特征中含有序列特征向量和空间特征向量,同时,构建互补损失函数训练困难样本;其中,she

net模型包括:字节编码器、包编码器和流编码器,具体包括:
27.步骤s11:在每一个样本的每个数据包最前端插入一个clstoken,经过字节编码器处理,得到数据包的原始嵌入表示p,其中,字节编码器包括:语义嵌入子层和位置嵌入子层;
28.步骤s12:将原始嵌入表示p经过包编码器处理,得到数据包的序列特征向量;
29.步骤s13:将序列特征向量经过流编码器处理,得到数据流的空间特征向量;
30.步骤s14:构建互补损失函数训练困难样本。
31.在一个实施例中,上述步骤s11:在每一个样本的每个数据包最前端插入一个cls token,经过字节编码器处理,得到所述数据包的原始嵌入表示p,其中,字节编码器包括:语义嵌入子层和位置嵌入子层,具体包括:
32.步骤s111:语义嵌入子层可获取输入的样本中每个字节的语义表示,对于字节b∈[0,261],获取其语义嵌入向量o
se
,表示为下述公式(1):
[0033]
o
se
=wonehot(b)
ꢀꢀꢀ
(1)
[0034]
其中,w是变换矩阵,onehot()将离散数字,即每个字节,编码为一个onehot向量,o
se
表示字节b经过语义嵌入子层得到的d维语义嵌入向量;
[0035]
步骤s112:位置嵌入子层可获取输入的样本中每个字节的位置关系,对于字节b的d维位置嵌入向量o
pe
,表示为下述公式(2):
[0036][0037]
其中,2i

,2i

1∈[0,d)分别是样本的偶数和奇数位字节;对于样本位置嵌入的每个维度对应于一个正弦曲线,波长以[2π,10000
·
2π]的形式形成几何级数,对于任何固定偏移量k,pe
pos k
可表示为pe
pos
的线性函数;
[0038]
通过位置嵌入子层可使得she

net模型学习输入样本的字节间的相对位置表示。
[0039]
步骤s113:位置嵌入向量o
pe
与语义嵌入向量o
se
具有相同的维度d,将二者相加得到每个字节的嵌入表示,从而得到每个数据包的原始嵌入表示p。
[0040]
在一个实施例中,上述步骤s12:将数据包的原始嵌入表示p经过包编码器处理,得到数据包的序列特征向量,具体包括:
[0041]
包编码器利用自注意机制获取数据包的序列特征:将维度d划分为h组,以产生d'维的输出向量,将输出向量串联起来,再次通过一个线性层进行投影,从而获得数据包的序列特征向量,表示为下述公式(3):
[0042][0043]
其中,p是由包编码器得到序列特征向量;linear(p)是对每个数据包原始嵌入表示p进行线性映射操作。
[0044]
经过本步骤后,当前数据包中的每个字节(包括clstoken)都会包含整个数据包原始嵌入表示p的所有隐表示。
[0045]
在一个实施例中,上述步骤s13:将序列特征向量经过流编码器处理,得到数据流的空间特征向量,具体包括:
[0046]
流编码器将序列特征向量p按顺序取出对应于clstoken的特征向量,并将该向量按顺序拼接在一起,以形成一个流矩阵m;利用cnn网络将流矩阵m编码成数据流的空间特征向量x,表示为下述公式(4)~(5):
[0047][0048][0049]
其中,cls
i
为从序列特征向量p取出的数据包中第i个clstoken所对应的特征向量;m表示由m行d列形成的二维矩阵,即m个数据包特征向量以及每个数据包特征向量的维度是d;表示m行d列矩阵所行成的向量空间,表示二维向量空间;x即为由she

net模型提取出的开放世界网络流量的低维特征向量。
[0050]
由于攻击流量数据中的类内多样性和类间相似性问题可能导致困难样本的存在,因此本发明实施例构建了互补损失函数用于训练困难样本。
[0051]
在一个实施例中,上述步骤s14:构建互补损失函数训练困难样本,具体包括:
[0052]
利用孪生神经网络的对比损失函数l
con
如下述公式(6)以及互补损失函数l
com
如下述公式(7)联合训练网络模型:
[0053]
[0054]
l
com


(1

pro)
γ
ylog(pro)

pro
γ
(1

y)log(1

pro)
ꢀꢀꢀ
(7)
[0055]
其中,公式(6)中d为孪生神经网络输出端两个低维特征向量间的欧氏距离,m是超参数因子,用于衡量来自两个不同类别的低维特征向量的距离;y是真实概率分布;
[0056]
公式(7)中pro表示预测概率分布,γ是超参数,(1

pro)
γ
和pro
γ
都是调制因子。
[0057]
本步骤中,公式(6)是孪生神经网络自带的对比损失函数,但是该损失函数收敛缓慢,波动不断。为了解决对比损失函数l
con
的收敛缓慢震荡的现象,本发明实施例从概率分布的角度出发,在训练中修正了采样规则,并通过构造成对数据的互补特征v
com
,其中对超参数因子m进行了消除以及加入温度系数t使得互补特征的分布尖锐,这样才能训练得到一个较低而理想的损失值,具体如下:
[0058]
pro=softmax(v
com
)=softmax([d,max(m

d,0)]/m/t)
[0059]
其中,pro表示预测概率分布,对预测概率分布和真实概率分布(即成对样本来自同一个类别则标签为1,否则标签为0)做一个相对熵,得到如下表示:
[0060]

logpr(y|pro)=

ylogpro

(1

y)log(1

pro)
[0061]
其中,y是真实概率分布。pr(y|pro)表示已知预测分布的真实分布的概率。本发明实施例期望相似流向量的预测概率分布尽可能接近于1,因为

log(1)=0,这是最优损失,期望不同类别样本的分布接近于0,因为任何非零值都会减少相似向量的值。然后,为了在训练中考虑到困难样本对的挖掘,本发明设计了一种新的互补损失函数来集中训练困难样本,其损失函数设计如公式(7)所示,其中,(1

pro)
γ
和pro
γ
都是调制因子,通过提高错分样本(即,困难样本)的权重,降低正确分类样本的权重,从而使she

net模型能够更关注于错误分类的样本。本发明通过l
con
和l
com
联合训练she

net网络模型。
[0062]
在一个实施例中,上述步骤s2:根据低维特征向量,利用基于阈值和支持向量机的检测器,对开放世界网络流量进行分类和预测,具体包括:
[0063]
步骤s21:采用基于阈值的最近原型匹配机制来对开放世界流量进行分类,对于每一个类计算类均值、平均类内距离以及类内距离的标准差,阈值就是平均类内距离与类内距离标准差的之和;
[0064]
步骤s22:采用支持向量机svm进行分类,当且仅当一个新样本的低维特征向量落在阈值内,并且由svm判断的预测标签等于新样本的真实标签时,认为新样本属于一个已知的类,否则新样本属于未知类别。
[0065]
本发明公开了一种基于开放世界的网络流量分类方法,根据数据流的结构特征来设计网络模型结构,整个网络构成了层层递进的编码器,在不同层级的编码器使用了不同的特征,丰富了特征多样性,增强网络流量识别的鲁棒性和泛化性。
[0066]
本发明通过在模型输出端构造互补特征,基于该特征以及概率分布,从而设计了新的互补损失函数,本发明利用互补损失函数与孪生神经网络的对比损失函数一起联合训练网络模型,解决了孪生神经网络的对比损失函数的收敛不稳定的问题。
[0067]
实施例二
[0068]
如图3所示,本发明实施例提供了一种基于开放世界的网络流量分类系统,包括下述模块:
[0069]
构建she

net模型模块31,用于构建she

net模型,以开放世界网络流量作为样本集,获取样本集的低维特征向量,低维特征向量中含有序列特征向量和空间特征向量;同
时,构建互补损失函数训练困难样本;其中,she

net模型包括:字节编码器、包编码器和流编码器;
[0070]
分类和预测模块32,用于根据低维特征,利用基于阈值和支持向量机的检测器,对开放世界网络流量进行分类和预测。
[0071]
提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。
再多了解一些

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

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

相关文献