CN115277587B - 网络流量识别方法、装置、设备及介质 - Google Patents
网络流量识别方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115277587B CN115277587B CN202210910886.8A CN202210910886A CN115277587B CN 115277587 B CN115277587 B CN 115277587B CN 202210910886 A CN202210910886 A CN 202210910886A CN 115277587 B CN115277587 B CN 115277587B
- Authority
- CN
- China
- Prior art keywords
- classifier
- source data
- data domain
- domain
- constraint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000012549 training Methods 0.000 claims abstract description 115
- 239000011159 matrix material Substances 0.000 claims abstract description 99
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000009826 distribution Methods 0.000 claims description 106
- 238000010276 construction Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 15
- 238000013507 mapping Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 8
- 238000007689 inspection Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000001131 transforming effect Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 16
- 238000013508 migration Methods 0.000 abstract description 4
- 230000005012 migration Effects 0.000 abstract description 4
- 238000013526 transfer learning Methods 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- WSEMPUNMUMBGQG-UHFFFAOYSA-N 9-(2-anthracen-9-ylethynyl)anthracene Chemical compound C1=CC=CC2=CC3=CC=CC=C3C(C#CC=3C4=CC=CC=C4C=C4C=CC=CC4=3)=C21 WSEMPUNMUMBGQG-UHFFFAOYSA-N 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种网络流量识别方法、装置、设备及介质,涉及大数据技术领域。该方法包括:对接收到的网络流量的待识别数据报文进行识别,并构造源数据域特征矩阵和目标数据域特征矩阵;构造分类器约束项和分类器约束框架;根据源数据域内所有样本和标签及目标域样本训练初始分类器,通过初始分类器得到未识别数据报文伪标签;根据带有分类器系数的预测分类器和分类器约束框架,计算源数据域内样本的权重以及分类器系数;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。本公开通过将迁移学习技术和DPI技术相结合,提升了对未知网络流量的识别能力。
Description
技术领域
本公开涉及大数据技术领域,尤其涉及一种网络流量识别方法、装置、电子设备及计算机可读存储介质。
背景技术
如今在网络上承载的各种应用纷繁复杂,服务提供商不断推出新的业务来吸引用户,而对于运营商来说,要留住老用户并且不断发展更多的用户,就需要保证运营网络能够很好地承载各种关键业务(例如企业资源规划ERP、远程数据库访问等),同时限制一些非关键业务(例如无监管的网络电话VOIP、点对点P2P等)无节制的占用网络资源。另一方面,网络环境面临前所未有的安全风险,各种恶意攻击和非法应用层出不穷,给运营商和网络用户造成不可估量的损失。因此,运营商需要对网络承载的各类业务进行识别,并分析与其相关的用户行为,作为业务评估和确定业务发展策略的理论基础。
在相关技术中,通过深度报文识别(Deep Packet Inspection,DPI)技术需要人工维护更新特征库和匹配规则,人工成本高;通过人工智能识别无需过分依赖应用协议的特征字段,对于加密的数据载荷也具有一定的识别能力,然而该技术无法识别具体应用,识别结果受网络流量长度影响大、计算量大;识别加密网络流量通常采用半监督或全监督学习的机器学习方法,而该方法需要大量人工标注成本。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种网络流量识别方法、装置、设备及介质,至少在一定程度上克服现有的识别网络流量计算量大、成本高的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供了一种网络流量识别方法,包括:
深度报文识别DPI对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
根据所述可识别数据报文、所述可识别数据报文标签构造源数据域特征矩阵,根据所述未识别数据报文构造目标数据域特征矩阵;
构造分类器约束项,并根据所述分类器约束项构建分类器约束框架,其中,所述分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;
根据源数据域内所有样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过所述初始分类器处理所述目标数据域特征矩阵,得到未识别数据报文伪标签;
根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;
更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
在本公开的一个实施例中,所述构造分类器约束项,包括:
所述联合分布约束项根据所述源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到;
所述结构风险最小化约束项根据所述源数据域特征矩阵内的可识别数据报文和所述目标数据域内的未识别数据报文构造得到;
所述流形正则化约束项根据所述源数据域特征矩阵内的可识别数据报文标签和所述未识别数据报文伪标签构造得到;
所述正则化约束项根据所述源数据域特征矩阵的权重构造得到。
在本公开的一个实施例中,所述联合分布约束项根据所述源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到,包括:
采用最大均值差异法构造初始边缘分布;
将所述初始边缘分布对映射的选取变换为对预测分类器的选取,构造边缘分布项;
构造每一类的条件分布项,并对每一类的条件分布项加和,得到条件分布项;
根据所述边缘分布项和所述条件分布项,得到所述联合分布项。
在本公开的一个实施例中,所述结构风险最小化约束项构造如下:
其中,l(f(xi),yi)=(yi-f(xi))2为平方损失函数,vi表示源数据域样本xi的权重,vi∈{0,1},i=1…ns,ns为选取的源数据域内特征矩阵的样本数量,σ为预设的收缩正则化参数,用以控制预测分类器复杂度,HK是属于核空间中的一组预测分类器,l用于测量预测分类器得到的源数据域预测标签f(xi)和源数据域标签yi之间的匹配度。
在本公开的一个实施例中,所述流形正则化约束项构造如下:
其中,在中,vi、vj表示源数据域中样本xi、xj的权重,vi,vj∈{0,1},j=1…ns,ns为源数据域内特征矩阵的样本数量,f(xi)、f(xj)为源数据域中样本xi、xj的预测标签;在/>中,vi表示源数据域中样本xi的权重,vi∈{0,1},f(xi)为源数据域中样本xi的预测标签,f(xj)为目标数据域中样本xj的预测标签,nt为目标数据域内特征矩阵的样本数量;在/> 中,f(xi)、f(xj)为目标数据域中样本xi、xj的预测标签,Wij表示样本xi和样本xj在流形中的相似度,表示如下:
其中,Np(xj)为样本xi在边缘分布中的邻近集合。
在本公开的一个实施例中,所述正则化约束项构造如下:
其中,‖v‖1范数用于控制每一轮中源数据域中样本的相似度,δ为自步学习参数,‖v‖2,1范数控制组稀疏度,β为组稀疏参数。
在本公开的一个实施例中,所述更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,包括:
根据δ=1.1δ和β=1.1β选择不同类别的源数据域内的样本和标签加入训练集。
在本公开的一个实施例中,所述根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器,包括:
将所述带有分类器系数的预测分类器代入分类器约束框架,固定源数据域样本的权重对角矩阵,求解得到分类器系数;
将所述分类器系数代入预测分类器,得到过程预测分类器;
固定分类器系数,求解得到源数据域样本权重对角矩阵。
在本公开的一个实施例中,所述训练停止条件包括源数据域内的所有样本均加入训练,或者预测分类器的精确度达到预设精确度阈值。
在本公开的一个实施例中,所述预测分类器的精确度通过以下方式得到:
通过所述预测分类器对目标数据域进行分类标记,得到所述目标数据域内各样本的伪标签;
根据所述目标数据域内的各样本、所述伪标签及源数据域样本,训练得到验证分类器;
通过所述验证分类器对源数据域进行分类,得到所述源数据域的待验证标签;
根据所述源数据域的待验证标签和真实标签,得到所述预测分类器的精确度。
在本公开的另一个方法,提供了一种网络流量识别装置,包括:
DPI识别模块,用于对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
特征构造模块,用于根据所述可识别数据报文、所述可识别数据报文标签构造源数据域特征矩阵,根据所述未识别数据报文构造目标数据域特征矩阵;
约束项构造模块,用于构造构造分类器约束项,并根据所述分类器约束项构建分类器约束框架,其中,所述分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;
初始分类器训练模块,用于根据源数据域内全部样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过所述初始分类器处理所述目标数据域特征矩阵,得到未识别数据报文伪标签;
预测分类器训练模块,用于根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。通过分类器约束框架,在第一轮选择全部源域样本训练得到初始分类器后,后续每轮训练先依托增大了的训练参数(δ和β)以及上一轮的分类器系数求解得到本轮的源数据域可信样本的权重矩阵,得到本轮要加入训练的源域样本后,再通过求解得到本轮的分类器系数,如此反复。
根据本公开的另一个方面,提供了一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的网络流量识别方法。
根据本公开的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的网络流量识别方法。
根据本公开的另一个方面,提供了一种计算机程序产品,包括可执行指令,该可执行指令存储在计算机可读存储介质中,电子设备的处理器从计算机可读存储介质读取该可执行指令,处理器执行该可执行指令,使得该电子设备执行上述实施例中任一所述的网络流量识别方法。
本公开的实施例所提供的一种网络流量识别方法、装置、设备及介质,通过将迁移学习技术和DPI技术相结合,充分挖掘DPI可识别数据报文和无法识别数据报文(如加密报文)之间的结构特性,无需人力标注未知加密报文,提升了对未知网络流量如加密网络流量的识别能力。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,显示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开实施例提供的一种网络流量识别方法的流程图;
图2示出本公开实施例提供的分类器约束项构建方法的流程图;
图3示出本公开实施例提供的联合分布约束项构建方法的流程图;
图4示出本公开实施例提供的模型训练的流程图;
图5示出本公开实施例提供的一种网络流量识别装置示意图;
图6示出本公开实施例提供的一种电子设备的结构框图;
图7示出本公开实施例中提供的一种计算机可读存储介质示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本申请实施例提供的方案涉及大数据技术领域,通过深度报文识别技术对接收到的网络流量的待识别数据报文进行识别,根据识别得到的可识别数据报文、可识别数据报文标签构造源数据域特征矩阵,根据未识别数据报文构造目标数据域特征矩阵;构造分类器约束项,并根据分类器约束项构建分类器约束框架;根据源数据域内所有样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过初始分类器处理目标数据域特征矩阵,得到未识别数据报文伪标签;根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,并固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器,通过将迁移学习技术和DPI技术相结合,充分挖掘DPI可识别数据报文和无法识别数据报文(如加密报文)之间的结构特性,无需人力标注未知加密报文,提升了对未知网络流量如加密网络流量的识别能力。为了便于理解,下面首先对本公开涉及到的几个名词进行解释。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
迁移学习是运用已存有的知识对不同但相关领域问题进行求解的一种新的机器学习方法。与传统的机器学习相比,迁移学习放宽了机器学习中的两个基本假设,即源域和目标域可以满足不同分布且不需要大量的有标签训练样本,基于此,迁移学习可以使用某个领域已有的足量信息帮助只有少量标签信息或者没有标签信息的目标域完成学习任务。而未知加密报文和普通应用流量报文的结构差异性正适用于迁移学习模型。
自步学习是一种学习方法论。结合认知科学的思想,谨慎地自适应地优先学习简单、可靠的范例,然后逐步过渡到对于难得范例的学习。因此自步学习是一个过程,它从最相关的源知识开始迁移,逐渐到不相关的知识,直到所有知识都被利用,类似于婴儿学习的过程。
反向分类是一种筛选策略,比如自步学习的训练中依据所选源域样本的不同会产生多个的分类器,反向分类是一种验证基于源域集(有标签)的对目标域(无标签)的学习。在每次自步学习迭代中,使用当前的分类器获得目标域的伪标签,然后使用目标域数据和对应的伪标签来给源域数据训练一个分类器,再使用这个分类器给源域数据打标签,由于源域数据是有标签的,可以通过标记的精确度来验证当前分类器的性能。
每个源域或目标域都有这个领域固定的概率分布,联合概率分布包括边缘概率分布和条件概率分布,联合概率分布正则化本质上是在映射空间上降低源域和目标域的概率分布差异。
流形正则化本质上是挖掘了数据分布的几何形状然后将其作为损失函数的一个增加的正则化项,或者说,两个样本在流形中距离相近,那么他们的标签也应该一样或相近。
因此,迁移学习方法的损失函数可考虑联合概率分布正则化、流行正则化来减少迁移学习源域、目标域的结构差异性,并通过自步学习正则化项和反向分类来帮助筛选可信源域样本训练出来的目标域分类器。
下面,将结合附图及实施例对本示例实施方式中的一种网络流量识别方法的各个步骤进行更详细的说明。
图1示出本公开实施例中一种网络流量识别方法流程图。本公开实施例提供的方法可以由任意具备计算处理能力的电子设备执行。
如图1所示,本实施例提供的网络流量识别方法,包括如下步骤:
S101、深度报文识别DPI对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
DPI技术是在传统IP数据包检测技术的基础上增加了对应用层数据的应用协议识别、业务流量分析和防服务攻击等功能。
DPI根据特征字段的匹配和识别来完成对数据包的应用层数据深度分析并识别出相应的协议和应用,如HTTP协议中,可以根据HTTP报文的请求/响应行、请求/响应头、请求/响应正文中的字段和字符与特征库中的特征信息进行匹配,从而精确识别具体应用。DPI识别过程中可以结合数据包的首部信息,识别更多的协议类型,很多数据包包头没有明显特征,也可以通过DPI技术识别出来,DPI多用于网络应用层协议的识别,也可以用于识别四层到七层的流量特征。
在本实施例中,DPI识别模块对数据包的数据链路层进行操作,在数据链路层的解析中根据MAC帧头部的类型type字段,解掉数据包的数据链路层,对数据包的网络层进行解包操作,获取源地址、目的地址和协议类型,在网络层的解析中根据网络层IP数据包报头信息获取目的IP地址、源IP地址、传输层协议的类型;然后对传输层拆包,根据传输层数据包的头部获取目的端口和源端口;根据获得的目的IP地址、源IP地址、目的端口和源端口、以及协议类型构成五元组,该五元组可以唯一确定一个DPI流,属于该DPI流的报文拥有相同的属性(同一用户的同一行为);最后对应用层进行分析,根据TCP三次握手状态判断该DPI流所属服务器和客户端连接状态,根据每一DPI流中数据包铭文特征判断其对应的应用层协议,根据匹配结果确定该DPI流的应用类别,例如识别不同服务提供商的应用流量,实现对数据博文的识别。
对于加密报文,DPI识别模块无法进行识别,得到未识别数据报文,人工智能识别模块用于识别DPI识别模块无法识别的未识别数据报文。
S102、根据可识别数据报文、可识别数据报文标签构造源数据域特征矩阵,根据未识别数据报文构造目标数据域特征矩阵。
本实施例的源数据域特征矩阵和目标数据域特征矩阵通过特征构造模块获得,特征构造模块充分考虑可识别数据报文和未识别数据报文之间的结构差异性,构造用于进行人工智能识别模块进行迁移学习的数据集,其中,在数据集中,可识别数据报文和未识别数据报文按照1:10的比例分别作为迁移学习的源数据域和目标数据域,并使用sklearn工具提取特征,并将数据集进行数值矩阵化,以供人工智能识别模块使用。
需要注意的是,sklearn是一个开源的机器学习工具包,通过sklearn工具的特征提取形成数值化矩阵,可以将一个样例矩阵中各个句子的词语筛选出来,输出一个数值化的矩阵,矩阵的行为句子(例如,字符串),列为各个词语出现的频率。该样例-特征值矩阵可以作为人工智能识别模型的输入,用于模型训练。
在本实施例中,采用sklearn工具对未识别数据报文提取各个报文载荷部分的内容,提取出来并形成字符串,每个字符串文本代表一个报文,每个词代表一个字节。
每次取固定数量的未识别数据报文对应的字符串按行排列(如30个)成矩阵D,然后调用sklearn工具的feature_extraction模块,通过CountVectorizer.fit_transform(D).toarray()接口得到样本-特征值矩阵并裁剪或填充成固定长度矩阵(如30*50),供人工智能识别模块训练使用。
S103、构造分类器约束项,并根据分类器约束项构建分类器约束框架,其中,分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项。
在本实施例中,通过包含联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项的分类器约束项,作为模型训练的损失函数,通过联合分布约束项、流形正则化约束项可以有效减少可识别数据报文和未识别数据报文之间的领域差异,通过正则化约束项逐步添加源数据域的可信样本,以支撑模型训练。
S104、根据源数据域内所有样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过初始分类器处理目标数据域特征矩阵,得到未识别数据报文伪标签。
在训练人工智能识别模型时,将源数据域内所有可识别数据报文输入初始分类器,输出源数据域内所有可识别数据报文的预测标签,计算可识别数据报文的预测标签与真实标签的精确度,当预测标签与真实标签的精确度满足预设初始训练停止条件时,训练得到初始分类器。
需要说明的是,在训练初始分类器时,源数据域内所有可识别数据报文均作为输入量,此时,源数据域内所有样本的权重矩阵的各个元素均设置为1。即,已知源数据域内样本的权重,可得到分类器系数α,根据分类器系数构建初始分类器,根据分类器系数、源数据域样本和目标数据域样本可以得到源数据域样本伪标签、目标数据域样本伪标签。
在首轮预测时,将目标数据域特征矩阵输入初始分类器,输出目标数据域内各个未识别数据报文对应的未识别数据报文伪标签,以供后续模型训练迭代。
S105、根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器。
在本实施例中,在分类器约束框架中,包含两个变量,其一为分类器系数(α),其二为源数据域样本权重,其中,分类器系数用于确定每轮训练得到的过程预测分类器,上一轮模型训练的源数据域样本权重用于确定下一轮模型训练的源数据域样本权重,以选择每轮加入到模型训练过程中的源数据域可信样本。
当上一轮模型训练的源数据域样本权重确定后,根据训练参数即可得到下一轮模型训练选择的源数据域可信样本。当得到下一轮模型训练选择的源数据域可信样本后,仅剩分类器系数一个变量,即可求得分类器系数,通过分类器系数得到过程预测分类器。然后,在分类器系数固定情况下,可求解得到源数据域样本的权重矩阵。
需要说明的是,从第二轮模型训练开始,每轮模型训练用的分类器约束框架的变化在于源数据域的权重矩阵,除此之外,每轮模型训练用的分类器约束框架还包括目标数据域样本和参与模型训练的源数据域可信样本的真实标签。
S106、更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
在本实施例中,通过更新训练参数,选择更多不同的样本作为可信样本加入训练集,逐渐迭代,直至满足训练停止条件,其中,源数据域内的可信样本为计算得到的权重矩阵中权重值为1的源数据域中的样本。
需要说明的是,预设的训练停止条件可通过人工智能识别模型的精确度限定,例如,精确度达到95%及其以上。
示例性的,在人工智能识别模型训练时,首先采用源数据域内所有样本和目标数据域内的所有样本训练得到初始分类器,其次根据训练参数得到下一轮需要加入训练的源数据域可信样本的权重矩阵,再次利用得到的源数据域可信样本和目标数据域内的所有样本得到第二个分类器,依次迭代,直至满足预设的训练停止条件,得到训练完成的预测分类器。
本公开实施例提供的一种网络流量分类方法,通过将迁移学习技术和DPI技术相结合,充分挖掘DPI可识别数据报文和无法识别数据报文(如加密报文)之间的结构特性,无需人工标注未知加密报文,提升了对未知网络流量如加密网络流量的识别能力。
图2示出本公开实施例提供的分类器约束项构建方法的流程图。如图2所示,在本实施例中,步骤S103构造分类器约束项,包括:
S201、联合分布约束项根据源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到;
S202、结构风险最小化约束项根据源数据域特征矩阵内的可识别数据报文和目标数据域内的未识别数据报文构造得到;
S203、流形正则化约束项根据源数据域特征矩阵内的可识别数据报文标签和未识别数据报文伪标签构造得到;
S204、正则化约束项根据源数据域特征矩阵的权重构造得到。
通过每轮模型训练得到的未识别数据报文伪标签、源数据域可信样本的权重矩阵等元素构建分类器约束项,降低领域之间的差异性,同时提升分类精度。
需要说明的是,上述步骤仅为说明分类器约束项的构造方式,也可根据实际需要,调整上述步骤的先后顺序,本申请不做具体限定。
下面对联合分布约束项、结构风险最小化约束项、流行正则化约束项和正则化约束项进行详细说明。
针对迁移学习,源数据域和目标数据域的分布是不同的,不符合机器学习的假设。我们需要减小源数据域和目标数据域之间的分布差异,使其符合机器学习的假设。具体的,可以将源数据域和目标数据域的数据报文映射到一个新的空间中,在这个新的空间中,源数据域和目标数据域的分布是相近的,联合分布约束项的目的即为寻找这种合适的映射,通过研究源数据域和目标数据域的边缘分布和条件分布,分别减少源数据域和目标数据域之间的边缘分布差异和条件分布差异,使得源数据域和目标数据域满足相同的分布,通过分类器约束项来选取最合适的映射。
图3示出本公开实施例提供的联合分布约束项构建方法的流程图。如图3所示,在本实施例,上述步骤S201联合分布约束项根据源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到,包括:
S2011、采用最大均值差异法构造初始边缘分布。
令源数据域集合Ds为源数据域内所有样本其中,/> C是类别的个数,C为小于或等于ns的自然数,/>为源数据域内第i个可识别数据报文,/>为源数据域内可识别数据报文/>对应的真实标签,ns为源数据域内样本的个数。
令目标数据域集合Dt为目标数据域内所有样本其中,/>为目标数据域内第j个未识别数据报文,nt为目标数据域内样本的个数。
采用最大均值差异法(Maximum Mean Discrepancy,MMD)来规范映射后数据报文的分布,以构造初始边缘分布。
初始边缘分布构造如下:
其中,n为源数据域中可信样本的个数,m为目标数据域中未识别数据报文的个数。i为源数据域样本的下标,j为目标数据域样本的下标,H为再生核希尔伯特空间。φ(xi)和φ(xj)是将任意属于源数据域或者目标数据域的样本映射到再生核希尔伯特空间后的数据,通过将所有源数据域的可信样本φ(xi)和的均值和所有目标数据域样本φεxj)和的均值差最小化来控制两个域的样本矩,使得源数据域和目标数据域边缘分布之差减小来选择合适的映射。
S2012、将初始边缘分布对映射的选取变换为对预测分类器的选取,构造边缘分布项。
在本实施例中,将步骤S2011中公式一中的φ(xi)和φ(xj)换成f(xi)和f(xj),将对映射的选取变换成对预测分类器的选取,从而构造出最终的边缘分布项,完成对预测分类器的选择约束:
其中,Ps为源数据域的边缘分布,Pt为目标数据域的边缘分布。
S2013、构造每一类的条件分布项,并对每一类的条件分布项加和,得到条件分布项。
对于条件分布项,Qs代表源数据域条件分布,Qt代表目标数据域条件分布,xs和xt分别代表源数据域和目标数据域的数据报文,ys和yt分别代表源数据域的真实标签和目标数据域的未识别数据报文伪标签。因为Qs(ys|xs)和Qt(yt|xt)难于计算。而当样本数据足够大时候,可以转化成Qs(xs|ys)和Qt(xt|yt)的计算,因此我们需要先有数据报文的标签y,源数据域已有可识别数据报文标签,而目标数据域没有未识别数据报文的标签,所以这里使用目标数据域的未识别数据报文伪标签。在源数据域标签,目标数据域标签(这里是伪标签)都有的情况下,构造每一类的条件分布项。通过下面的公式我们规范使得属于同一类别标签c的源数据域标签均值和目标数据域的数据报文预测标签均值之间的差异最小,以此来约束预测分类器的选择,每一类c的条件分布项如下:
其中,是属于源数据域中类别c的源数据域样本集合,xv是属于类别c的源数据域样本,v∈n,yv是对应的源数据域样本xv的真实标签,f(xv)是xv对应的预测标签,/>是属于目标数据域中类别c的样本集合,xz是属于类别c的目标数据域样本,z∈m,/>是对应的目标数据域样本xz的伪标签,f(xz)是xz对应的预测标签,/>
在对每一个类别c的条件分布项加和得到最终的条件分布项:
S2014、根据边缘分布项和条件分布项,得到联合分布项。
我们利用公式:
Df,K(Js,Jt)=Df,K(Ps,Pt)+Df,K(Qs,Qt) 公式五
将公式三和公式四中的边缘分布项和条件分布项求和得到联合分布项,其中,Js是源数据域的联合分布,Jt是目标数据域的联合分布。通过最小化项能够使得源数据域和目标数据域的联合分布的差距尽量小来选取预测分类器。
在本实施例中,结构风险最小化约束项构造如下:
其中,l(f(xi),yi)=(yi-f(xi))2为平方损失函数,vi表示源数据域样本xi的权重,vi∈{0,1},i=1…ns,ns为选取的源数据域内特征矩阵的可信样本数量,σ为预设的收缩正则化参数,用以控制预测分类器复杂度,HK是属于核空间中的一组预测分类器,l用于测量预测分类器得到的源数据域预测标签f(xi)和源数据域标签yi之间的匹配度。通过控制平方损失函数最小使得预测分类器的经验风险尽量小,同时考虑预测分类器复杂度以提升预测分类器的泛化能力,最终使得源数据域预测标签f(xi)和源数据域标签yi相近(对于所有xi)。而通过结构风险最小化约束项,完成了对预测分类器的约束。
在一个实施例中,流形正则化约束项构造如下:
其中,在中,vi、vj表示源数据域中样本xi、xj的权重,vi,vj∈{0,1},j=1…ns,ns为源数据域内特征矩阵的样本数量,f(xi)、f(xj)为源数据域中样本xi、xj的预测标签;在/>中,vi表示源数据域中样本xi的权重,vi∈{0,1},f(xi)为源数据域中样本xi的预测标签,f(xj)为目标数据域中样本xj的预测标签,nt为目标数据域内特征矩阵的样本数量;在/> 中,f(xi)、f(xj)为目标数据域中样本xi、xj的预测标签,Wij表示样本xi和样本xj在流形中的相似度,表示如下:
其中,Np(xj)为样本xj在边缘分布中的邻近集合。
在本实施例中,正则化约束项构造如下:
其中,‖v‖1范数用于控制每一轮中源数据域中样本的相似度,δ为自步学习参数,‖v‖2,1范数控制组稀疏度,β为组稀疏参数。
训练参数为上述的自步学习参数δ和组稀疏参数β,根据δ=1.1δ和β=1.1β选择不同类别的源数据域内的样本和标签加入训练集。需要说明的是,每轮自步学习参数δ和组稀疏参数β的选择系数除了采用1.1之外,还可根据实际情况而定,本申请不做具体限定。
将公式五、公式六、公式七和公式八中得到的联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项构建分类器约束框架:
其中,σ、λ、γ分别为各部分的正则化参数。我们可以设定σ=0.1,λ=10,γ=1。
在一个实施例中,上述步骤S105根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域可信样本的权重,固定源数据域可信样本的权重计算分类器系数以得到过程预测分类器,包括:
将带有分类器系数的预测分类器代入分类器约束框架,固定目标数据域样本的权重对角矩阵,求解得到分类器系数;
将分类器系数代入预测分类器,得到过程预测分类器;
固定分类器系数,求解得到源数据域样本权重对角矩阵。
分类器约束项框架的矩阵表示如下:
其中,α为分类器系数,Ks为源数据域的内核矩阵,作为一种映射,Ksα代表源数据域映射到高维空间后的分类结果,Ys表示源数据域样本的真实标签矩阵,V表示源数据域的样本权重矩阵,V中的各元素为0或1。为MMD矩阵,用于刻画两种分布的相似性,MMD矩阵的元素表示为:
为一个对角矩阵,对角线上的元素表示为:其中,/>表示如下:
其中,Wij表示两个样例i和j在流行中的相似度,若两者临近,则采用以下公式预先刻画两者的相似度,其他情况为0,表示如下:
通过公式十可知,公式中包括两个变量,其一为分类器系数α,其二为源数据域内样本的权重V。
当每轮模型训练时,固定分类器系数α,可以得到源数据域内样本的权重;固定源数据域内样本的权重,可求得分类器系数α,将计算得到的分类器系数α代入预测分类器公式,即可得到过程预测分类器。
根据上述方法得到的分类器系数α采用下式十四表示:
源数据域相对目标数据域的相似度采用下式表示:
其中,L表示平方损失,D表示联合分布损失,M表示流形一致性。
平方损失L采用下式表示:
L=||f(xi)-yi||2
联合分布损失D采用下式表示:
流形一致性M采用下式表示:
通过源数据域相对目标数据域的相似度与训练参数之间的关系,确定下一轮模型训练被选择进入模型训练的可信样本,通过以下方式确定:
若则确定满足上述条件的源数据域内的样本作为可信样本,进入下一轮的模型训练。
在一个实施例中,训练停止条件包括源数据域内的所有样本均加入训练,或者预测分类器的精确度达到预设精确度阈值。
需要说明的是,上述条件只要满足一个,停止模型训练,得到训练完成的预测分类器。
本公开实施例的预测分类器的精确度通过以下方式得到:
通过预测分类器对目标数据域进行分类标记,得到目标数据域内各样本的伪标签;
根据目标数据域内的各样本、伪标签及源数据域样本,训练得到验证分类器;
通过验证分类器对源数据域进行分类,得到待验证标签;
根据源数据域的待验证标签和真实标签,得到预测分类器的准确度。
本实施例的人工智能识别模型可以利用卷积神经网络模型实现。
为了便于对本公开技术方案的深入理解,下面结合图4,对人工智能识别模型的训练过程进行说明。
如图4所示,通过迁移学习模型训练时,构建分类器约束项,分类器约束项包括联合分布约束项、结构风险最小化约束项、流行正则化约束项和正则化约束项。
第一次将所有源数据域样本作为输入,对应的标签作为输出,训练初始分类器α0。
根据初始分类器α0,固定分类器参数α,求解得到第一次训练的源数据域样本权重v0,权重v0为1的源数据域样本作为可信样本被选入第二次模型训练。
更新自步学习参数δ=1.1δ和β=1.1β,选择更多简单和不同类别的最可信源数据域样本和对应的标签,重新训练预测分类器。
通过不断更新自步学习系数和组稀疏参数,引入更多的源数据域样本训练监督分类器,每轮采用交替求解方式得到α和样本权重v。
使用每一轮得到的预测分类器对目标数据域进行分类标记,再反向将源数据域和目标数据域互换,训练得到新的分类器,新的分类器通过源数据域中的标签验证准确度,当所有源数据域样本都被加入训练或者训练过程中达到设定阈值,终止训练,输出训练完成的预测分类器。
基于同一发明构思,本公开实施例中还提供了一种网络流量识别装置,如下面的实施例所述。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参看上述方法实施例的实施,重复指出不再赘述。
图5示出本公开实施例中一种网络流量识别装置图。如图5所示,本实施例的网络流量识别装置,包括DPI识别模块501、特征构造模块502、约束项构造模块503、初始分类器训练模块504和预测分类器训练模块504,其中,
DPI识别模块501,用于对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
特征构造模块502,用于根据可识别数据报文、可识别数据报文标签构造源数据域特征矩阵,根据未识别数据报文构造目标数据域特征矩阵;
约束项构造模块503,用于构造分类器约束项,并根据分类器约束项构建分类器约束框架,其中,分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;
初始分类器训练模块504,用于根据源数据域内全部样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过初始分类器处理目标数据域特征矩阵,得到未识别数据报文伪标签;
预测分类器训练模块505,用于根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
在一个实施例中,约束项构建模块503包括未显示在附图中的联合分布约束项构建模块、结构风险最小化约束项构建模块、流形正则化约束项构建模块和正则化约束项构建模块,其中,
联合分布约束项构建模块,用于根据源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造联合分布约束项;
结构风险最小化约束项构建模块,用于根据源数据域特征矩阵内的可识别数据报文和目标数据域内的未识别数据报文构造结构风险最小化约束项;
流形正则化约束项构建模块,用于根据源数据域特征矩阵内的可识别数据报文标签和未识别数据报文伪标签构造流形正则化约束项;
正则化约束项构建模块,用于根据源数据域特征矩阵的权重构造正则化约束项。
在本公开的一个实施例中,联合分布约束项构建模块,具体用于采用最大均值差异法构造初始边缘分布;将初始边缘分布对映射的选取变换为对预测分类器的选取,构造边缘分布项;构造每一类的条件分布项,并对每一类的条件分布项加和,得到条件分布项;根据边缘分布项和条件分布项,得到联合分布项。
在一个实施例中,结构风险最小化约束项构建模块用于构造结构风险最小化约束项,结构风险最小化约束项构造如下:
其中,l(f(xi),yi)=(yi-f(xi))2为平方损失函数,vi表示源数据域样本xi的权重,vi∈{0,1},i=1…ns,ns为选取的源数据域内特征矩阵的样本数量,σ为预设的收缩正则化参数,用以控制预测分类器复杂度,HK是属于核空间中的一组预测分类器,l用于测量预测分类器得到的源数据域预测标签f(xi)和源数据域标签yi之间的匹配度。
在一个实施例中,流行正则化约束项构建模块用于构造流行正则化约束项,流形正则化约束项构造如下:
其中,在中,vi、vj表示源数据域中样本xi、xj的权重,vi,vj∈{0,1},j=1…ns,ns为源数据域内特征矩阵的样本数量,f(xi)、f(xj)为源数据域中样本xi、xj的预测标签;在/>中,vi表示源数据域中样本xi的权重,vi∈{0,1},f(xi)为源数据域中样本xi的预测标签,f(xj)为目标数据域中样本xj的预测标签,nt为目标数据域内特征矩阵的样本数量;在/> 中,f(xi)、f(xj)为目标数据域中样本xi、xj的预测标签,Wij表示样本xi和样本xj在流形中的相似度,表示如下:
其中,Np(xj)为样本xj在边缘分布中的邻近集合。
在一个实施例中,正则化约束项构造如下:
其中,‖v‖1范数用于控制每一轮中源数据域中样本的相似度,δ为自步学习参数,‖v‖2,1范数控制组稀疏度,β为组稀疏参数。
需要说明的是,预测分类器训练模块505包括未显示在附图中的参数更新模块,其中,参数更新模块,用于根据δ=1.1δ和β=1.1β选择不同类别的源数据域内的样本和标签加入训练集。
在一个实施例中,预测分类器训练模块505,还用于将带有分类器系数的预测分类器代入分类器约束框架,固定源数据域样本的权重对角矩阵,求解得到分类器系数;
将分类器系数代入预测分类器,得到过程预测分类器;
固定分类器系数,求解得到源数据域样本权重对角矩阵。
需要注意的是,训练停止条件包括源数据域内的所有样本均加入训练,或者预测分类器的精确度达到预设精确度阈值。
在一个实施例中,该预测分类器训练模块505还包括未显示在附图中的分类器验证模块,具体用于计算预测分类器的精确度:
通过预测分类器对目标数据域进行分类标记,得到目标数据域内各样本的伪标签;
根据目标数据域内的各样本、伪标签及源数据域样本,训练得到验证分类器;
通过验证分类器对源数据域进行分类,得到待验证标签;
根据源数据域的待验证标签和真实标签,得到预测分类器的准确度。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为***、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
本实施例提供的一种网络流量识别方法、装置,通过将迁移学习技术和DPI技术相结合,充分挖掘DPI可识别数据报文和无法识别数据报文(如加密报文)之间的结构特性,无需人力标注未知加密报文,提升了对未知网络流量如加密网络流量的识别能力。
下面参照图6来描述根据本发明的这种实施方式的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的深度报文识别DPI对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;根据可识别数据报文、可识别数据报文标签构造源数据域特征矩阵,根据未识别数据报文构造目标数据域特征矩阵;构造分类器约束项,并根据分类器约束项构建分类器约束框架,其中,分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;根据源数据域内所有样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过初始分类器处理目标数据域特征矩阵,得到未识别数据报文伪标签;根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备640(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该***600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,***600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图6所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质。图7示出本公开实施例中提供的一种计算机可读存储介质示意图,如图7所示,该计算机可读存储介质700上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在用户设备上运行时,所述程序代码用于使所述用户设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在用户设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (13)
1.一种网络流量识别方法,其特征在于,包括:
深度报文识别DPI对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
根据所述可识别数据报文、所述可识别数据报文标签构造源数据域特征矩阵,根据所述未识别数据报文构造目标数据域特征矩阵;
构造分类器约束项,并根据所述分类器约束项构建分类器约束框架,其中,所述分类器约束项根据所述可识别数据报文、所述可识别数据报文标签、所述未识别数据报文、所述未识别数据报文伪标签、源数据域特征矩阵的权重中的至少一项构造得到的,所述分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;
根据源数据域内所有样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过所述初始分类器处理所述目标数据域特征矩阵,得到未识别数据报文伪标签;
根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;
更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
2.根据权利要求1所述的网络流量识别方法,其特征在于,所述构造分类器约束项,包括:
所述联合分布约束项根据所述源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到;
所述结构风险最小化约束项根据所述源数据域特征矩阵内的可识别数据报文和所述目标数据域内的未识别数据报文构造得到;
所述流形正则化约束项根据所述源数据域特征矩阵内的可识别数据报文标签和所述未识别数据报文伪标签构造得到;
所述正则化约束项根据所述源数据域特征矩阵的权重构造得到。
3.根据权利要求2所述的网络流量识别方法,其特征在于,所述联合分布约束项根据所述源数据域特征矩阵内的可识别数据报文、可识别数据报文标签、未识别数据报文和未识别数据报文伪标签构造得到,包括:
采用最大均值差异法构造初始边缘分布;
将所述初始边缘分布对映射的选取变换为对预测分类器的选取,构造边缘分布项;
构造每一类的条件分布项,并对每一类的条件分布项加和,得到条件分布项;
根据所述边缘分布项和所述条件分布项,得到所述联合分布约束项。
4.根据权利要求1所述的网络流量识别方法,其特征在于,所述结构风险最小化约束项构造如下:
其中,l(f(xi),yi)=(yi-f(xi))2为平方损失函数,vi表示源数据域样本xi的权重,vi∈{0,1},i=1...ns,ns为选取的源数据域内特征矩阵的样本数量,σ为预设的收缩正则化参数,用以控制预测分类器复杂度,HK是属于核空间中的一组预测分类器,l用于测量预测分类器得到的源数据域预测标签f(xi)和源数据域标签yi之间的匹配度。
5.根据权利要求1所述的网络流量识别方法,其特征在于,所述流形正则化约束项构造如下:
其中,在中,vi、uj表示源数据域中样本xi、xj的权重,vi,vj∈{0,1},j=1...ns,ns为源数据域内特征矩阵的样{0,1},f(xi)为源数据域中样本xi的预测标签,f(xj)为目标数据域中样本xj的预测标签,nt为目标数据域内特征矩阵的样本数量;在/> 中,f(xi)、f(xj)为目标数据域中样本xi、xj的预测标签,Wij表示样本xi和样本xj在流形中的相似度,表示如下:
其中,Np(xj)为样本xj在边缘分布中的邻近集合,Np(xi)为样本xi在边缘分布中的邻近集合。
6.根据权利要求1所述的网络流量识别方法,其特征在于,所述正则化约束项构造如下:
其中,||v||1范数用于控制每一轮中源数据域中样本的相似度,δ为自步学习参数,||v||2,1范数控制组稀疏度,β为组稀疏参数。
7.根据权利要求6所述的网络流量识别方法,其特征在于,所述更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,包括:
根据δ=1.1δ和β=1.1β选择不同类别的源数据域内的样本和标签加入训练集。
8.根据权利要求1所述的网络流量识别方法,其特征在于,所述根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器,包括:
将所述带有分类器系数的预测分类器代入分类器约束框架,固定源数据域样本的权重对角矩阵,求解得到分类器系数;
将所述分类器系数代入预测分类器,得到过程预测分类器;
固定分类器系数,求解得到源数据域样本权重对角矩阵。
9.根据权利要求1-8任一项所述的网络流量识别方法,其特征在于,所述训练停止条件包括源数据域内的所有样本均加入训练,或者预测分类器的精确度达到预设精确度阈值。
10.根据权利要求9所述的网络流量识别方法,其特征在于,所述预测分类器的精确度通过以下方式得到:
通过所述预测分类器对目标数据域进行分类标记,得到所述目标数据域内各样本的伪标签;
根据所述目标数据域内的各样本、所述伪标签及源数据域样本,训练得到验证分类器;
通过所述验证分类器对源数据域进行分类,得到所述源数据域的待验证标签;
根据所述源数据域的待验证标签和真实标签,得到所述预测分类器的精确度。
11.一种网络流量识别装置,其特征在于,包括:
DPI识别模块,用于对接收到的网络流量的待识别数据报文进行识别,得到可识别数据报文、可识别数据报文标签以及未识别数据报文;
特征构造模块,用于根据所述可识别数据报文、所述可识别数据报文标签构造源数据域特征矩阵,根据所述未识别数据报文构造目标数据域特征矩阵;
约束项构造模块,用于构造分类器约束项,并根据所述分类器约束项构建分类器约束框架,其中,所述分类器约束项根据所述可识别数据报文、所述可识别数据报文标签、所述未识别数据报文、所述未识别数据报文伪标签、源数据域特征矩阵的权重中的至少一项构造得到的,所述分类器约束项包括联合分布约束项、结构风险最小化约束项、流形正则化约束项和正则化约束项;
初始分类器训练模块,用于根据源数据域内全部样本的特征矩阵及目标数据域特征矩阵训练得到初始分类器,通过所述初始分类器处理所述目标数据域特征矩阵,得到未识别数据报文伪标签;
预测分类器训练模块,用于根据带有分类器系数的预测分类器和分类器约束框架,固定分类器系数计算源数据域内样本的权重,以及固定源数据域内样本的权重计算分类器系数以得到过程预测分类器;更新训练参数,重新选择源数据域内的可信样本对过程预测分类器进行训练,直至满足预设的训练停止条件,得到训练完成的预测分类器。
12.一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行如权利要求1-10任一项所述的网络流量识别方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-10任一项所述的网络流量识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210910886.8A CN115277587B (zh) | 2022-07-29 | 2022-07-29 | 网络流量识别方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210910886.8A CN115277587B (zh) | 2022-07-29 | 2022-07-29 | 网络流量识别方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115277587A CN115277587A (zh) | 2022-11-01 |
CN115277587B true CN115277587B (zh) | 2023-10-31 |
Family
ID=83747185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210910886.8A Active CN115277587B (zh) | 2022-07-29 | 2022-07-29 | 网络流量识别方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115277587B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115866077B (zh) * | 2023-02-23 | 2023-05-23 | 眉山环天智慧科技有限公司 | 一种自适应的物联网tcp协议动态处理***及方法 |
CN117499325B (zh) * | 2023-12-29 | 2024-03-15 | 湖南恒茂信息技术有限公司 | 一种基于人工智能的交换机业务报文分流方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468252A (zh) * | 2013-09-23 | 2015-03-25 | 重庆康拜因科技有限公司 | 一种基于正迁移学习的智能网络业务识别方法 |
CN107895177A (zh) * | 2017-11-17 | 2018-04-10 | 南京邮电大学 | 一种保持图像分类稀疏结构的迁移分类学习方法 |
CN110224987A (zh) * | 2019-05-08 | 2019-09-10 | 西安电子科技大学 | 基于迁移学习的网络入侵检测模型的构建方法、检测*** |
CN112235264A (zh) * | 2020-09-28 | 2021-01-15 | 国家计算机网络与信息安全管理中心 | 一种基于深度迁移学习的网络流量识别方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10855698B2 (en) * | 2017-12-22 | 2020-12-01 | Cisco Technology, Inc. | Leveraging endpoint and network environment inferences for malware traffic classification |
-
2022
- 2022-07-29 CN CN202210910886.8A patent/CN115277587B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468252A (zh) * | 2013-09-23 | 2015-03-25 | 重庆康拜因科技有限公司 | 一种基于正迁移学习的智能网络业务识别方法 |
CN107895177A (zh) * | 2017-11-17 | 2018-04-10 | 南京邮电大学 | 一种保持图像分类稀疏结构的迁移分类学习方法 |
CN110224987A (zh) * | 2019-05-08 | 2019-09-10 | 西安电子科技大学 | 基于迁移学习的网络入侵检测模型的构建方法、检测*** |
CN112235264A (zh) * | 2020-09-28 | 2021-01-15 | 国家计算机网络与信息安全管理中心 | 一种基于深度迁移学习的网络流量识别方法及装置 |
Non-Patent Citations (2)
Title |
---|
Network traffic classification based on transfer learning;Guanglu Sun等;Computers and Electrical Engineering(第69期);第920-927页 * |
基于迁移学习的应用流量分类研究;李赛赛;中国优秀硕士学位论文全文数据库 信息科技辑(第3期);第2-3章 * |
Also Published As
Publication number | Publication date |
---|---|
CN115277587A (zh) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11374953B2 (en) | Hybrid machine learning to detect anomalies | |
CN111639344B (zh) | 一种基于神经网络的漏洞检测方法及装置 | |
CN115277587B (zh) | 网络流量识别方法、装置、设备及介质 | |
CN113505244B (zh) | 基于深度学习的知识图谱构建方法、***、设备及介质 | |
US20210279644A1 (en) | Modification of Machine Learning Model Ensembles Based on User Feedback | |
US11907675B2 (en) | Generating training datasets for training neural networks | |
US11423333B2 (en) | Mechanisms for continuous improvement of automated machine learning | |
CN113344700B (zh) | 一种基于多目标优化的风控模型构建方法、装置和电子设备 | |
US20230049817A1 (en) | Performance-adaptive sampling strategy towards fast and accurate graph neural networks | |
WO2023246146A1 (zh) | 基于优化规则决策树的目标安全识别方法及装置 | |
CN113010683B (zh) | 基于改进图注意力网络的实体关系识别方法及*** | |
Pei et al. | A two-stream network based on capsule networks and sliced recurrent neural networks for DGA botnet detection | |
CN115186015A (zh) | 一种网络安全知识图谱构建方法及*** | |
CN115935372A (zh) | 一种基于图嵌入和双向门控图神经网络的漏洞检测方法 | |
Wang et al. | Network intrusion detection based on explainable artificial intelligence | |
CN117808481A (zh) | 一种云边协同的大语言模型智能客服部署优化方法 | |
US20220067579A1 (en) | Dynamic ontology classification system | |
Chen et al. | Efficient Windows malware identification and classification scheme for plant protection information systems | |
Hao et al. | Deep collaborative online learning resource recommendation based on attention mechanism | |
WO2023137918A1 (zh) | 文本数据的分析方法、模型训练方法、装置及计算机设备 | |
CN115622810A (zh) | 一种基于机器学习算法的业务应用识别***及方法 | |
CN116980356A (zh) | 一种网络流量识别方法、装置、电子设备及存储介质 | |
CN111401067B (zh) | 一种蜜罐仿真数据的生成方法及装置 | |
CN113849641A (zh) | 一种跨领域层次关系的知识蒸馏方法和*** | |
CN112698977A (zh) | 服务器故障定位方法方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |