网络流量分类方法和装置与流程

文档序号:18471274发布日期:2019-08-20 20:19阅读:198来源:国知局
网络流量分类方法和装置与流程

本发明涉及计算机网络技术领域,特别涉及一种网络流量分类方法和装置。



背景技术:

随着大数据时代的到来,新型互联网应用层出不穷,多种类的网络服务广泛应用于生活中,网络业务数据量便随之急剧上升,因此网络流量的组成成分也日益复杂。为了能够更好的实施网络管理及网络安全措施,网络管理者需要对海量的网络流量类型进行分类。

现有的网络流量分类方法有很多种,其中基于神经网络模型对网络流量类型的分类方法被广泛应用于生活中,这种分类方法是依据网络流量中的包大小、持续时间等特征来对训练神经网络模型中分类器对网络流量类型的识别过程,当现有的网络流量分类方法使用网络流量的特征来对所述网络流量进行分类时,神经网络模型需要针对网络流量类型所对应的每种特征进行训练,以便对网络流量进行分类。随着网络广泛的应用,每种网络流量类型会随着用户在不同的时间和地点而出现新特征,针对网络流量类型出现的新特征,现有的网络流量分类方法需要采集具有新特征的网络流量作为训练样本,对神经网络分类模型进行分类训练,由此耗费了大量的人力、物力和时间。



技术实现要素:

有鉴于此,本发明实施例提供一种网络流量分类方法,可应用于对各个网络流量的流量类型进行分类,本发明实施例提供的网络流量分类方法中,训练新的流量分类器时不需要对具备新特征的网络流量进行采集和标注,可应用数据库中已标注的网络流量样本对流量分类器进行训练,从而节省了大量的人力、物力和时间。

为实现上述目的,本发明实施例提供如下技术方案:

一种网络流量分类方法,包括:

获取各个待分类的网络流量;

将所述各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,以得到与每个所述待分类的网络流量相对应的目标领域流量特征;

将各个所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据各个所述目标领域流量特征对所述各个待分类的网络流量的类型进行识别,并输出各个待分类的网络流量的流量类型。

上述的方法,可选的,获得所述预先训练完成的流量分类器,包括:

构建第一训练模型,所述第一训练模型包括流量分类器和源领域特征提取器;

获取预设数据集中的各个源领域网络流量样本,所述源领域网络流量样本为携带类型标签的网络流量,所述类型标签表征所述网络流量的流量类型;

将所述各个源领域网络流量样本输入所述源领域特征提取器中,获得与每个所述源领域网络流量样本对应的源领域流量特征;

将所述各个源领域流量特征输入所述流量分类器,得到与当前输入至所述流量分类器的所述各个源领域流量特征对应的分类结果,依据各个所述分类结果计算得到与所述第一训练模型对应的第一损失参数,并依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数;

实时判断所述第一训练模型对应的第一损失参数是否满足预设的第一收敛条件,当所述第一训练模型对应的第一损失参数满足预设的第一收敛条件时,输出已训练完成的所述流量分类器。

上述的方法,可选的,所述将所述各个源领域流量特征输入所述流量分类器,得到与当前输入至所述流量分类器的所述各个源领域流量特征对应的分类结果,依据各个所述分类结果计算得到与所述第一训练模型对应的第一损失参数,并依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数,包括:

将所述各个源领域流量特征输入至所述流量分类器中,触发所述流量分类器按照预设的分类算法对各个源领域流量特征进行运算;

依据对各个源领域流量特征运算得到的结果确定各个源领域网络流量所对应的流量类型;

将各个所述源领域网络流量所确定的流量类型与其对应的所述类型标签进行比较,并将比较得到的结果依据预设的第一函数进行运算,得到所述流量分类器的第一损失参数,依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数。

上述的方法,可选的,获得所述预先训练完成的目标领域特征提取器,包括:

构建第二训练模型,所述第二训练模型包括目标领域特征提取器,域分类器和所述第一训练模型中已训练完成的所述源领域特征提取器;

获取预设数据集中各个源领域网络流量样本和各个目标领域网络流量样本;

将所述各个源领域网络流量样本输入至所述源领域特征提取器中,以及将所述各个目标领域网络流量样本输入至所述目标领域特征提取器中,得到所述与每个所述源领域网络流量样本对应的源领域流量特征和与每个所述目标领域网络流量样本对应的目标领域流量特征;

将各个流量特征输入所述域分类器,所述各个流量特征为所述各个源领域流量特征和所述各个目标领域流量特征,触发所述域分类器对所述各个流量特征进行领域分类,得到所述各个流量特征的分类结果,依据各个所述分类结果计算得到与所述第二训练模型对应的第二损失参数和第三损失参数,并依据所述第二损失参数调整所述目标领域特征提取器中的各个提取参数和依据所述第三损失参数调整所述域分类器中的各个域分类参数;

实时判断所述第二训练模型对应的第二损失参数是否满足预设的第二收敛条件,和预设的第三损失参数是否满足预设的第三收敛条件,当所述第二损失参数满足预设的第二收敛条件且所述第三损失参数满足预设的第三收敛条件时,输出已训练完成的目标特征提取器。

上述的方法,可选的,所述将各个流量特征输入所述域分类器,触发所述域分类器对所述各个流量特征进行领域分类,得到所述各个流量特征的分类结果,包括:

将所述各个流量特征输入至所述域分类器中,触发所述域分类器依据预设的分类算法对所述各个流量特征进行运算,得到各个流量特征的运算结果,依据所述各个运算结果确定对应流量特征的领域类别,得到各个流量特征的分类结果,并确定各个所述流量特征对应的网络流量的领域类别,输出各个所述网络流量的分类结果。

一种网络流量分类装置,包括:

第一获取单元,用于获取各个待分类的网络流量;

第一输入单元,用于将所述各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,以得到与每个所述待分类的网络流量相对应的目标领域流量特征;

输出单元,用于将各个所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据各个所述目标领域流量特征对所述各个待分类的网络流量的类型进行识别,并输出各个待分类的网络流量的流量类型。

上述的装置,可选的,还包括:

第一构建单元,用于构建第一训练模型,所述第一训练模型包括流量分类器和源领域特征提取器;

第二获取单元,用于获取预设数据集中的各个源领域网络流量样本,所述源领域网络流量样本为携带类型标签的网络流量,所述类型标签表征所述网络流量的流量类型;

第二输入单元,用于将所述各个源领域网络流量样本输入所述源领域特征提取器中,获得与每个所述源领域网络流量样本对应的源领域流量特征;

第一调整单元,用于将所述各个源领域流量特征输入所述流量分类器,得到与当前输入至所述流量分类器的所述各个源领域流量特征对应的分类结果,依据各个所述分类结果计算得到与所述第一训练模型对应的第一损失参数,并依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数;

第一判断单元,用于实时判断所述第一训练模型对应的第一损失参数是否满足预设的第一收敛条件,当所述第一训练模型对应的第一损失参数满足预设的第一收敛条件时,输出已训练完成的所述流量分类器。

上述的装置,可选的,所述第一调整单元,包括:

触发子单元,用于将所述各个源领域流量特征输入至所述流量分类器中,触发所述流量分类器按照预设的分类算法对各个源领域流量特征进行运算;

确定子单元,用于依据对各个源领域流量特征运算得到的结果确定各个源领域网络流量所对应的流量类型;

比较子单元,用于将各个所述源领域网络流量所确定的流量类型与其对应的所述类型标签进行比较,并将比较得到的结果依据预设的第一函数进行运算,得到所述流量分类器的第一损失参数,依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数。

上述的装置,可选的,还包括:

第二构建单元,用于构建第二训练模型,所述第二训练模型包括目标领域特征提取器,域分类器和所述第一训练模型中已训练完成的所述源领域特征提取器;

第三获取单元,用于获取预设数据集中各个源领域网络流量样本和各个目标领域网络流量样本;

第三输入单元,用于将所述各个源领域网络流量样本输入至所述源领域特征提取器中,以及将所述各个目标领域网络流量样本输入至所述目标领域特征提取器中,得到所述与每个所述源领域网络流量样本对应的源领域流量特征和与每个所述目标领域网络流量样本对应的目标领域流量特征;

第二调整单元,用于将各个流量特征输入所述域分类器,所述各个流量特征为所述各个源领域流量特征和所述各个目标领域流量特征,触发所述域分类器对所述各个流量特征进行领域分类,得到所述各个流量特征的分类结果,依据各个所述分类结果计算得到与所述第二训练模型对应的第二损失参数和第三损失参数,并依据所述第二损失参数调整所述目标领域特征提取器中的各个提取参数和依据所述第三损失参数调整所述域分类器中的各个域分类参数;

第二判断单元,用于实时判断所述第二训练模型对应的第二损失参数是否满足预设的第二收敛条件,和预设的第三损失参数是否满足预设的第三收敛条件,当所述第二损失参数满足预设的第二收敛条件且所述第三损失参数满足预设的第三收敛条件时,输出已训练完成的目标特征提取器。

上述的装置,可选的,所述第二调整单元,包括:

运算子单元,用于将所述各个流量特征输入至所述域分类器中,触发所述域分类器依据预设的分类算法对所述各个流量特征进行运算,得到各个流量特征的运算结果,依据所述各个运算结果确定对应流量特征的领域类别,得到各个流量特征的分类结果,并确定各个所述流量特征对应的网络流量的领域类别,输出各个所述网络流量的分类结果。

与现有技术相比,本发明包括以下优点:

本发明实施例提供了一种网络流量类型分类方法,通过获取各个待分类的网络流量,将所述各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,获得所述目标领域特征提取器输出的与所述各个待分类的网络流量相对应的目标领域流量特征,将各个所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据各个所述目标领域流量特征对所述各个待分类的网络流量的类型进行识别,输出各个待分类的网络流量的流量类型。通过应用本发明实施例中预先训练完成的目标领域特征提取器提取待分类网络流量的目标领域流量特征,将所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据所述目标领域流量特征对所述网络流量进行分类,所述流量分类器在训练的过程中不需要对具有新流量特征的网络流量进行采集和标记,降低了需要耗费的人力、物力和时间。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种网络流量分类方法的方法流程图;

图2为本发明实施例提供的一种网络流量分类方法的另一方法流程图;

图3为本发明实施例提供的一种网络流量分类方法的另一方法流程图;

图4为本发明实施例提供的一种网络流量分类方法的示意图;

图5为本发明实施例提供的一种网络流量分类方法的另一示意图;

图6为本发明实施例提供的一种网络流量分类方法的另一示意图;

图7为本发明实施例提供的一种网络流量分类装置的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本发明实施例提供了一种网络流量分类方法,该方法可应用于众多的专用计算专用环境或配置中,其执行主体可以为计算机终端或者各种移动设备的处理器,通过使用本发明实施例提供的方法,可以对大量的网络流量的类型进行分类,在本发明实施例提供的方法中,通过应用预先训练完成的目标领域提取器和预先训练完成的流量分类器对网络流量进行处理,输出所述网络流量的流量类型,从而节省了人力、物力和时间;本发明实施例提供的方法的方法流程图如图1所示,具体包括:

s101、获取各个待分类的网络流量。

本发明实施例提供的方法中,获取预设的数据集中各个待分类的网络流量,所述待分类的网络流量可以为784字节网络数据包构成的高维向量,所述数据库中还包含已分类的网络流量、已进行标注的网络流量样本,标注的信息包括网络流量的流量类型以及网络流量对应的流量特征,需要说明的是,每种流量类型可以对应多种流量特征。

s102、将所述各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,以得到与每个所述待分类的网络流量相对应的目标领域流量特征。

本发明实施例提供的方法中,获取的各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,通过所述目标领域特征提取器进行一系列的处理,得到与所述各个待分类的网络流量相对应的目标领域流量特征;需要说明的是,所述目标领域特征提取器由全连接网络构成,所述全连接网络中包含多层感知机;所述目标领域特征提取器中可以将高维的网络流量向量压缩成低维向量,例如可以将784字节的高维网络流量压缩成20字节的低维网络流量;所述目标领域特征提取器通过预先设置的算法,提取出能够表达网络流量特征信息的主要成分,即提取出目标领域流量特征,以得到与每个所述待分类的网络流量对应的目标领域流量特征。

s103、将各个所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据各个所述目标领域流量特征对所述各个待分类的网络流量的类型进行识别,并输出各个待分类的网络流量的流量类型。

本发明实施例提供的方法中,将得到的各个所述目标领域流量特征输入预先训练完成的流量分类器中,以触发所述流量分类器依据预先设置的分类方法将各个目标领域流量特征进行处理,以确定与各个目标领域流量特征对应的待分类的网络流量的流量类型,将各个待分类的网络流量的流量类型输出。

本发明实施例提供的方法中,通过应用预先训练完成的目标特征提取器和流量分类器,对所述待分类的网络流量进行特征提取,依据提取出的流量特征确定所述待分类网络流量的流量类型,通过本发明实施例提供的方法,降低了对网络流量分类的时间和人力的花费,获取预先训练完成的流量分类器的过程可参见图2;

在使用流量分类器对网络流量进行流量类型分类之前,需要对所述流量分类器进行训练,对所述流量分类器进行训练需要构建第一训练模型,所述第一训练模型包括流量分类器和源领域特征提取器,对所述第一训练模型中的流量分类器和源领域特征提取器进行训练,训练的具体过程如下所述;

s201、获取预设数据集中的各个源领域网络流量样本,所述源领域网络流量样本为携带类型标签的网络流量,所述类型标签表征所述网络流量的流量类型。

本发明实施例提供的方法中,获取预设的数据集中的各个源领域网络流量样本,所述源领域网络流量样本为通过人工采集、进行分类和标记的网络流量,所述源领域网络流量样本为携带表征网络流量类型标签的网络流量。

s202、将所述各个源领域网络流量样本输入所述源领域特征提取器中,获得与每个所述源领域网络流量样本对应的源领域流量特征。

本发明实施例提供的方法中,通过将获取的源领域网络流量样本输入源领域特征提取器中,获得与每个所述源领域网络流量样本对应的源领域流量特征,所述源领域特征提取器通过预设的提取函数,对所述源领域网络流量进行运算,将所述源领域网络流量进行降维处理,从而提取出可表达网络流量的主要流量特征,得到与每个所述源领域网络流量样本对应的源领域流量特征。

s203、将所述各个源领域流量特征输入所述流量分类器,得到与当前输入至所述流量分类器的所述各个源领域流量特征对应的分类结果,依据各个所述分类结果计算得到与所述第一训练模型对应的第一损失参数,并依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数。

本发明实施例提供的方法中,将得到的源领域流量特征输入流量分类器中,触发所述流量分类器按照预设的分类算法对各个源领域流量特征进行运算,得到对应的运算结果,并依据对应的运算结果确定各个源领域网络流量的流量类型,将流量分类器输出的各个源领域网络流量的流量类型与其所携带的类型标签进行比较,并通过预设的第一函数进行运算,获得所述第一函数输出的第一损失参数,所述第一损失参数表征所述流量分类器将所述网络流量进行流量类型分类正确的误差,依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数和调整所述源领域特征提取器中的各个提取参数,以提高所述源领域特征提取器提取的源领域流量特征的准确度和所述流量分类器对网络流量的流量类型分类的正确率。

s204、实时判断所述第一训练模型对应的第一损失参数是否满足预设的第一收敛条件,当所述第一训练模型对应的第一损失参数满足预设的第一收敛条件时,输出已训练完成的所述流量分类器。

本发明实施例提供的方法中,通过判断所述第一函数输出的第一损失参数是否符合预设的第一收敛条件,确定所述第一训练模型中的流量分类器以及源领域特征提取器是否训练完成,当所述第一损失参数满足预设的第一收敛条件时,则所述流量分类器和所述源领域特征提取器训练完成,输出训练完成的流量分类器和源领域特征提取器。

本发明实施例提供的方法中,对所述流量分类器和所述源领域特征提取器训练完成之后,需要对所述目标领域特征提取器进行训练,以便应用训练完成的目标领域特征提取器对待分类的网络流量进行分类,具体的训练过程可参照图3;

需要说明的是,在对所述目标领域特征提取器进行训练的时候需要构建第二训练模型,所述第二训练模型包括目标领域特征提取器,域分类器和所述第一训练模型中已训练完成的所述源领域特征提取器,对所述目标领域特征提取器和所述域分类器进行训练的具体过程如下所述;

s301、获取预设数据集中各个源领域网络流量样本和各个目标领域网络流量样本。

本发明实施例提供的方法中,获取预设数据集中各个源领域网络流量样本和各个目标领域网络流量样本,所述源领域网络流量样本可以为源领域网络流量,所述源领域网络流量可参照图2中s202的说明,此处不再进行赘述;所述目标领域网络流量样本可以为所述未携带类型标签的网络流量,所述目标领域网络流量样本可以为目标领域网络流量,也可以为待分类的网络流量,所述目标领域网络流量可以为带有新流量特征的网络流量。

s302、将所述各个源领域网络流量样本输入至所述源领域特征提取器中,以及将所述各个目标领域网络流量样本输入至所述目标领域特征提取器中,得到所述与每个所述源领域网络流量样本对应的源领域流量特征和与每个所述目标领域网络流量样本对应的目标领域流量特征。

本发明实施例提供的方法中,将所述目标领域网络流量输入至目标领域特征提取器中,触发所述目标领域特征提取器根据预设提取函数对所述目标领域网络流量进行流量特征的提取,并输出提取得到的各个目标领域流量特征;将所述源领域网络流量输入至源领域特征提取器中,触发所述源领域特征提取器根据预设的提取函数对所述源领域网络流量进行流量特征的提取,并输出提取得到的各个源领域流量特征,需要说明的是,所述目标领域流量特征为与所述流量类型对应的新流量特征。

s303、将各个流量特征输入所述域分类器,所述各个流量特征为所述各个源领域流量特征和所述各个目标领域流量特征,触发所述域分类器对所述各个流量特征进行领域分类,得到所述各个流量特征的分类结果,依据各个所述分类结果计算得到与所述第二训练模型对应的第二损失参数和第三损失参数,并依据所述第二损失参数调整所述目标领域特征提取器中的各个提取参数和依据所述第三损失参数调整所述域分类器中的各个域分类参数。

本发明实施例提供的方法中,将各个流量特征输入至所述域分类器中,所述各个流量特征为源领域特征提取器输出的各个源领域流量特征和所述目标领域特征提取器输出的各个目标领域流量特征;触发所述域分类器依据预设的分类算法对所述各个流量特征进行计算,得到各个流量特征的运算结果,并依据所述运算结果确定各个流量特征的领域类别,所述领域类别有两种,一种是目标领域,也可以称为目标领域网络流量,另一种是源领域,也可以称为源领域网络流量;依据所述各个流量特征的领域类别确定与所述流量特征对应的网络流量的领域类别,输出各个所述网络流量的分类结果,所述分类结果即所述领域类别;

将各个分类结果和各个流量输入预设的函数进行计算,分别得到第二损失参数和第三损失参数,依据所述第二损失参数调整所述目标领域特征提取器中的各个提取参数,以使所述目标领域特征提取器对待分类的网络流量提取出的目标领域流量特征与源领域流量特征更加相近,以使所述域分类器判别不出所述流量特征所属的领域类别;根据所述第三损失参数调整所述域分类器,以使所述域分类器将所述流量特征分至正确的领域类别;所述域分类器用于判别所述流量特征属于源领域网络流量,还是属于目标领域网络流量,通过调整所述域分类器中的判别参数,以提高所述域分类器判别所述流量特征所属的领域类别的正确性。

s304、实时判断所述第二训练模型对应的第二损失参数是否满足预设的第二收敛条件,和预设的第三损失参数是否满足预设的第三收敛条件,当所述第二损失参数满足预设的第二收敛条件且所述第三损失参数满足预设的第三收敛条件时,输出已训练完成的目标特征提取器。

本发明实施例提供的方法中,实时对所述第二损失参数和所述第三损失参数进行判断,判断所述第二损失参数是否满足预设的第二收敛条件以及所述第三损失参数是否满足预设的第三收敛条件,当所述第二损失参数满足预设的第二收敛条件,并且所述第三损失参数满足预设的第三收敛条件时,则所述第二训练模型中的目标领域特征提取器和域分类器训练完成,输出训练完成的目标领域特征提取器。

本发明实施例提供的方法中,通过对所述目标领域特征提取器和所述流量分类器进行训练,以实现对带有新流量特征的网络流量进行分类,对所述目标领域特征提取器的训练过程中不需要对带有新流量特征的网络流量的流量类型进行标记,使用已带有类型标签的网络流量和未带有类型标签的网络流量进行训练,从而减少了人力的耗费。

本发明实施例提供的方法中,对所述目标领域特征提取器和所述流量分类器的训练过程进行详细的说明,具体说明如下所述;

将预设的数据集中的网络流量分为源领域网络流量样本和目标领域网络流量样本,所述源领域网络流量样本为:

(xs,ys)={(xs1,ys1),(xs2,ys2),…,(xsn,ysn)},其中xsi表示源领域网络流量样本中第i条源领域网络流量样本,共有n个网络流量样本,ysi∈{1,...,l}表示源网络流量样本中对应的流量类型共有l类;

所述目标领域网络流量样本为:

(xt,yt)={(xt1,yt1),(xt2,yt2),…,(xtm,ytm)},其中xti表示目标领域网络流量样本中第i条目标领域网络流量样本,共有m个样本流量,yti∈{1,...,l}表示目标网络流量样本中对应的流量类型共有l类;

需要说明的是,所述源领域网络流量样本可以为经过人工采集且进行标注流量类型的pacp文件,保存在数据库中;所述目标领域网络流量样本可以为用户使用网络的时间、地点变化后,经交换机镜像技术旁路出的部分网络流量,也形成pacp文件保存在数据库中,采用tcpdump技术将两部分pacp文件均按五元组,即源领域网络流量ip,目标领域网络流量ip,源领域网络流量端口,目标领域网络流量端口,协议号这五部分,分为网络数据流的形式;将选取每条网络流量中的前784个字节经归一化处理后作为原始高维输入,设置源领域特征提取器和目标领域特征提取器的输出表达为20维,在进行提取流量特征的同时实现流量特征降维;

源领域特征提取器ms,目标领域特征提取提取器mt,域分类器d,流量分类器c,需要说明的是,所述源领域特征提取ms和所述目标领域特征提取器mt分别由两个不同的全连接神经网络组成,每个全连接神经网络中包含多层感知机隐含层的神经元,需要说明的是,所述源领域特征提取器和所述目标领域特征提取器完全独立,并且两者不共享各自提取出的流量特征;所述源领域特征提取器提取流量特征的具体过程可参见图4中的a图,其中,为输入的各个源领域网络流量,h1~h4为所述多层感知机隐含层的神经元,为所述源领域特征提取器ms输出的各个源领域网络流量特征;所述源领域网络流量为高维的向量,通过所述源领域特征提取器ms可将高维的源领域网络流量向量压缩成低维的向量,并从中提取出网络流量的流量特征;

所述目标领域特征提取器提取流量特征的具体过程可参见图4中的b图,其中,为输入的各个目标领域网络流量,h1~h4为所述多层感知机隐含层的神经元,为所述目标领域特征提取器mt输出的各个目标领域网络流量特征;所述目标领域网络流量为高维的向量,通过所述目标领域特征提取器mt可将高维的目标领域网络流量向量压缩成低维的向量,并从中提取出网络流量的流量特征;

使用所述源领域特征提取器ms和流量分类器c构建第一训练模型,具体如图5所示,将各个源领域网络流量(xs,ys)输入源领域特征提取器ms中,得到所述源领域特征提取器ms输出的各个源领域流量特征,并将所述各个源领域流量特征输入所述流量分类器c中,所述流量分类器通过预设的算法,对各个所述源领域流量特征进行运算,以得到各个源领域网络流量所对应的流量类型,通过预设的交叉熵损失函数lcls计算依据所述流量分类器对各个源领域网络流量输出的流量类型的交叉熵损失参数,依据所述损失参数调整所述流量分类器中的各个流量类型分类参数和所述源领域流量特征提取器中的各个特征提取参数;需要说明的是,所述交叉熵损失参数与所述第一损失参数相对应;通过对所述源领域特征提取器和所述流量分类器不断的调整,使所述交叉熵损失函数的输出值满足预设的收敛条件,即使所述交叉熵损失函数的输出值最小化,具体如下:

当所述交叉熵损失函数的输出值满足预设的收敛条件时,则所述源领域特征提取器和所述流量分类器训练完成;

使用所述目标领域特征提取提取器mt,域分类器d和训练完成的所述源领域特征提取器ms构建第二训练模型,具体如图6所示,固定已训练完成的所述源领域特征提取器ms中的各个特征提取参数,使用所述源领域网络流量(xs,ys)和目标领域网络流量(xt,yt)同时对所述目标领域特征提取器mt和所述域分类器d进行训练,所述目标领域特征提取器mt和所述域分类器d组成生成对抗网络,通过不断的优化所述生成对抗网络中的损失函数ladvd和ladvm,从而使所述域分类器将输入的流量特征分到正确的领域类别,使所述目标领域特征提取器提取出的目标领域流量特征与源领域流量特征更加相似,使得所述域分类器分辩不出输入的流量特征所属的领域类别,需要说明的是,通过所述生成对抗网络,可以实现所述源领域流量特征和目标领域流量特征的特征共享;

需要说明的是,通过所述损失函数ladvd和ladvm输出的损失参数,按照反向传播算法对所述目标领域提取器中的各个特征提取参数和域分类器中的各个域分类参数进行调整,直至所述损失函数输出的值均满足预设的收敛条件;需要说明的是,所述损失函数ladvm输出的损失参数为第二损失参数,所述损失函数ladvd输出的损失参数为第三损失参数,当所述第二损失参数满足预设的第二收敛条件,并且所述第三损失参数满足预设的第三收敛条件时,则所述目标领域特征提取器和所述域分类器训练成完成,输出所述目标领域特征提取器;

对所述损失函数ladvm和ladvd的优化为:

其中ladvm表示使得目标领域特征提取器输出的目标领域流量特征更接近源领域特征提取器提取的源领域流量特征,表示尽可能使得域分类器d不能区分出流量特征来自源领域还是目标领域;

当完成对第一训练模型和所述第二训练模型的训练时,则携带有新流量特征的网络流量经过所述目标领域特征提取器提取出的流量特征会无限的接近于源领域网络流量中已知流量类型标签的流量特征,实现了源领域流量特征和目标领域流量特征这两种流量特征的共享和自适应,由此增加了流量特征中的数量;此时,通过使用源领域网络流量训练的流量分类器,即可实现对携带新流量特征的网络流量的流量类型分类。

通过应用本发明实施例提供的方法,可采用已知流量类型的网络流量训练新的流量分类器,通过所述生成对抗网络实现了源领域流量特征和目标领域流量特征之间的特征共享,解决了现有网络流量分类方法中对流量特征数据的依赖性的问题,减轻了当网络流量分布变化,产生新的流量特征之后重复进行的网络流量清洗、网络流量标注和流量分类器等工作,有效减少了人力、物力和时间的耗费。

在本发明实施例中,还提供了与图1所述的方法相对应的一种网络流量分类装置,用于对图1中方法的具体实现,本发明实施例提供的网络流量分类装置可应用于计算机终端或者各种对网络流量分类的设备中,其结构示意图如图7所示,具体包括:

第一获取单元601,用于获取各个待分类的网络流量;

第一输入单元602,用于将所述各个待分类的网络流量输入预先训练完成的目标领域特征提取器中,以得到与每个所述待分类的网络流量相对应的目标领域流量特征;

输出单元603,用于将各个所述目标领域流量特征输入预先训练完成的流量分类器中,触发所述流量分类器依据各个所述目标领域流量特征对所述各个待分类的网络流量的类型进行识别,并输出各个待分类的网络流量的流量类型。

本发明实施例提供的装置中,通过应用训练完成的目标特征提取器提取待分类的网络流量的目标领域流量特征,流量分类器通过对所述目标领域流量特征确定所述待分类的网络流量的流量类型,可广泛应用于多种网络流量的分布场景中,减少了人力和物力的花费。

本发明实施例提供的装置中,基于前述方案,还包括:

第一构建单元,用于构建第一训练模型,所述第一训练模型包括流量分类器和源领域特征提取器;

第二获取单元,用于获取预设数据集中的各个源领域网络流量样本,所述源领域网络流量样本为携带类型标签的网络流量,所述类型标签表征所述网络流量的流量类型;

第二输入单元,用于将所述各个源领域网络流量样本输入所述源领域特征提取器中,获得与每个所述源领域网络流量样本对应的源领域流量特征;

第一调整单元,用于将所述各个源领域流量特征输入所述流量分类器,得到与当前输入至所述流量分类器的所述各个源领域流量特征对应的分类结果,依据各个所述分类结果计算得到与所述第一训练模型对应的第一损失参数,并依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数;

第一判断单元,用于实时判断所述第一训练模型对应的第一损失参数是否满足预设的第一收敛条件,当所述第一训练模型对应的第一损失参数满足预设的第一收敛条件时,输出已训练完成的所述流量分类器。

本发明实施例提供的装置中,基于前述方案,所述第一调整单元,包括:

触发子单元,用于将所述各个源领域流量特征输入至所述流量分类器中,触发所述流量分类器按照预设的分类算法对各个源领域流量特征进行运算;

确定子单元,用于依据对各个源领域流量特征运算得到的结果确定各个源领域网络流量所对应的流量类型;

比较子单元,用于将各个所述源领域网络流量所确定的流量类型与其对应的所述类型标签进行比较,并将比较得到的结果依据预设的第一函数进行运算,得到所述流量分类器的第一损失参数,依据所述第一损失参数调整所述流量分类器中的各个流量类型分类参数。

本发明实施例提供的装置中,基于前述方案,还包括:

第二构建单元,用于构建第二训练模型,所述第二训练模型包括目标领域特征提取器,域分类器和所述第一训练模型中已训练完成的所述源领域特征提取器;

第三获取单元,用于获取预设数据集中各个源领域网络流量样本和各个目标领域网络流量样本;

第三输入单元,用于将所述各个源领域网络流量样本输入至所述源领域特征提取器中,以及将所述各个目标领域网络流量样本输入至所述目标领域特征提取器中,得到所述与每个所述源领域网络流量样本对应的源领域流量特征和与每个所述目标领域网络流量样本对应的目标领域流量特征;

第二调整单元,用于将各个流量特征输入所述域分类器,所述各个流量特征为所述各个源领域流量特征和所述各个目标领域流量特征,触发所述域分类器对所述各个流量特征进行领域分类,得到所述各个流量特征的分类结果,依据各个所述分类结果计算得到与所述第二训练模型对应的第二损失参数和第三损失参数,并依据所述第二损失参数调整所述目标领域特征提取器中的各个提取参数和依据所述第三损失参数调整所述域分类器中的各个域分类参数;

第二判断单元,用于实时判断所述第二训练模型对应的第二损失参数是否满足预设的第二收敛条件,和预设的第三损失参数是否满足预设的第三收敛条件,当所述第二损失参数满足预设的第二收敛条件且所述第三损失参数满足预设的第三收敛条件时,输出已训练完成的目标特征提取器。

本发明实施例提供的装置中,基于前述方案,所述第二调整单元,包括:

运算子单元,用于将所述各个流量特征输入至所述域分类器中,触发所述域分类器依据预设的分类算法对所述各个流量特征进行运算,得到各个流量特征的运算结果,依据所述各个运算结果确定对应流量特征的领域类别,得到各个流量特征的分类结果,并确定各个所述流量特征对应的网络流量的领域类别,输出各个所述网络流量的分类结果。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1