CN113705712A - 一种基于联邦半监督学习的网络流量分类方法和系统 - Google Patents

一种基于联邦半监督学习的网络流量分类方法和系统 Download PDF

Info

Publication number
CN113705712A
CN113705712A CN202111028686.1A CN202111028686A CN113705712A CN 113705712 A CN113705712 A CN 113705712A CN 202111028686 A CN202111028686 A CN 202111028686A CN 113705712 A CN113705712 A CN 113705712A
Authority
CN
China
Prior art keywords
model
training
client
local
federal
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.)
Granted
Application number
CN202111028686.1A
Other languages
English (en)
Other versions
CN113705712B (zh
Inventor
王宇
彭瑶
何美蓉
崔田莹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou University
Original Assignee
Guangzhou University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou University filed Critical Guangzhou University
Priority to CN202111028686.1A priority Critical patent/CN113705712B/zh
Publication of CN113705712A publication Critical patent/CN113705712A/zh
Application granted granted Critical
Publication of CN113705712B publication Critical patent/CN113705712B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及网络流量分类领域,为一种基于联邦半监督学习的网络流量分类方法和系统,其包括:数据预处理模块,用于通过增强采样方法获取客户端本地的无标签网络流和服务端中的标签网络流,得到无标签数据集和标记数据集;客户端预训练模块,用于客户端执行本地无监督训练,通过自编码器模型学习各个客户端上本地数据的特征,将学习到的数据特征用于训练分类器;服务器端重训练模块,用于服务器端执行有监督训练,利用联邦服务器上的带标记数据对重训练模型执行重训练,得到一个用于客户端分类网络流的通用分类器。本发明可以在保护用户数据隐私的前提下,协助多方在不公开和共享本地用户数据集的情况下共同学习一个准确且通用的网络流量分类模型。

Description

一种基于联邦半监督学习的网络流量分类方法和系统
技术领域
本发明涉及网络流量分类领域,具体涉及一种基于联邦半监督学习的网络流量分类方法和系统。
背景技术
网络流量分类任务的目标是将互联网流量分类为预定义的类别,例如:正常或异常流量、应用程序类型或应用程序名称。网络流量分类在网络管理和网络安全领域都起着重要作用,它的主要应用有以下几个方面:第一、在网络监控与管理、流量计费、用户行为分析等方面有着重要的应用;第二、用于入侵检测系统及防火墙识别恶意流量,及时阻断恶意流量;第三、获悉各类网络应用所占比例,预测网络业务的发展趋势,合理规划网络等。
在互联网发展早期,网络流量的识别是一项较为简单的任务,即通过传输层的端口号识别,研究者只需要解析网络流量的包头数据,提取端口号并查询端口应用对照表就可以获知流量所属的具体应用。但是,随着新的应用数量越来越多,很多应用不再具有可查询的固定端口号,而且流行的P2P应用普遍采用随机端口策略,所以随着基于端口识别的方法的准确性的不断下降,这种方法已经逐渐淘汰了。在上世纪90年代末开始出现了更加可靠的网络流量分类方法—基于深层包检测的方法。这种方法检查包头和载荷在内的整个数据包内容。如果在数据包任意位置发现了预定义的固定字符串就可以判定其所属流量的种类。它的准确性非常高,但依然存在缺点,如计算复杂度较高、无法处理加密流量等。为克服深层包检测存在的缺陷,研究者尝试使用机器学习的方法来执行网络流量分类。其中,比较常见的是基于统计的机器学习方法。基本思想是提取不同种类的应用产生的流量特性的统计信息,然后选择某种机器学习模型进行训练,例如决策树、支持向量机等。这种方式的优势是计算复杂度相对较低、可以应用于加密流量等,缺点是对人工特征设计较依赖。
深度学习的出现,大大改善了传统机器学习的人工特征依赖问题。近几年出现了许多将深度学习应用到网络流量分类任务的研究,有人提出的方法在协议和应用分类方面优于传统的机器学习方法,尽管这些已有的研究显示,深度学习在公开网络流量数据集上的表现效果优异,但这些方法在实际运用中还是存在一些问题:
第一、隐私安全问题
在网络流量分类领域中,运用深度学习技术往往会面临数据隐私泄露的问题,因为采集自用户设备的流量数据往往包含意外捕捉到的有关用户网络行为等的隐私信息。通常用户都不希望这些信息被公开,然而没有足够的用户信息,深度学习技术在网络流量分类任务上的应用将会受到严重影响,甚至无法训练出一个可用的模型。
第二、数据孤岛问题
深度学习技术的成功在于有大量可用于训练的数据,由于用户的网络流量数据带有大量隐私信息,所以法律或法规不允许商业公司公开或和其他机构共享这些用户数据,这就导致了行业中出现了数据孤岛问题,每一个公司或机构就像一座座独立的岛屿,独自存储和定义自己内部的数据。因此,单个企业和组织拥有的数据可能非常同质,从而训练产生一个过度拟合的模型。这种特定数据训练得到的过拟合模型不具备通用性,实际应用中将大大降低分类的准确性。
第三、标注数据稀缺问题
现阶段主流的深度学习技术仍然是基于监督学习,它需要收集大量的有标签数据来对模型进行训练。但在现实的情况中,采集的用户数据大多数都是无标签的,而且由于计算机网络领域知识的复杂性,给流量数据标注需要大量专业人员进行,这将消耗巨额的人力成本和时间成本。
发明内容
为解决现有技术所存在的技术问题,本发明的目的是提供一种通过结合联邦学习训练环境和半监督的网络流量分类方法,可以有效解决深度学习在现实网络流量分类任务中的瓶颈,得到准确率高、适用性广、训练成本小且可以保护用户隐私的分类模型。
为解决上述技术问题,本发明的技术方案如下:
一种基于联邦半监督学习的网络流量分类方法,其特征在于,包括以下步骤:
S1、若干个客户端获取本地无标签网络数据,依据增强采样方法提取每条网络流样本中时间相关特征,构成基于时间序列的无标签网络数据集,联邦服务器端中拥有少量的基于时间序列的有标签网络数据集;
S2、联邦服务器端分别初始化用于在客户端本地执行无监督训练的全局模型、模型权重和用于联邦服务器端执行有监督训练的模型、模型权重;
S3、联邦服务器端与若干个客户端进行第t次通信时,联邦服务器端依据max(C·K,1)方法随机选取若干个客户端并向其发送全局模型、模型权重;
S4、客户端接收到联邦服务器端发送的全局模型之后,利用其本地数据执行无监督训练,更新本地模型,本地模型可学习客户端数据集的网络流统计特征;
S5、选取的若干个客户端结束本轮通信中无监督学习任务之后,将其本地训练的模型中训练结果参数上传至联邦服务器端;
S6、联邦服务器端将各个客户端发送过来的训练结果参数使用加权平均方法计算出聚合后的参数,用聚合后的参数更新全局模型,此时第t次通信结束;
S7、t次通信结束之后,接着执行下一通信轮次,多次迭代步骤S3至S6,经过联邦服务器端多次进行聚合更新直至全局模型收敛后不再迭代,最后可获得全局模型中的参数;
S8、联邦服务器端将全局模型中的参数复制到执行有监督训练的模型中的对应网络层;
S9、联邦服务器端利用标签数据集执行有监督学习,直至执行有监督训练的模型收敛并训练得到一个用于客户端进行网络流分类任务的模型,客户端从服务端下载用于客户端进行网络流分类任务的模型。
本发明的另一目的是提供一种基于联邦半监督学习的网络流量分类系统,包括:
数据预处理模块,用于通过增强采样方法获取客户端本地的无标签网络流和服务端中少量的标签网络流,得到大量的无标签数据集和少量的标记数据集;
客户端预训练模块,用于客户端执行本地无监督训练,通过自编码器模型学习各个客户端上本地数据的特征,将学习到的数据特征用于训练分类器;
服务器端重训练模块,用于服务器端执行有监督训练,利用联邦服务器上的带标记数据对重训练模型执行重训练,通过反向传播对整个分类器进行微调,得到一个可以用于客户端分类网络流的通用分类器。
本发明与现有技术相比,具有如下优点和有益效果:
1、本发明通过搭建联邦学习(Federated Learning,FL)的环境来训练网络流量分类模型,可以协助多方共同学习一个准确且通用的神经网络模型,而无需公开和共享他们的本地用户数据集;每个参与者,即客户端都可以在自己的用户数据集上独立训练,只需在训练期间有选择地共享独立训练出的模型的参数;这种协助多方训练又无需收集本地数据的训练方式既解决了流量领域中数据孤岛问题,又巧妙地化解了暴露用户隐私数据问题。
2、本发明构建了基于自编码器和卷积神经网络的分类模型来在上述的联邦环境下进行半监督学习,半监督学习使用大量的未标记数据,以及同时使用少量的有标签数据来训练一个模型,可以有效解决现实网络流量分类任务中给数据标注成本大的问题。
附图说明
图1为本发明实施例中的基于联邦半监督学习网络流量分类方法的流程图;
图2为本发明实施例中所使用的预训练模型的网络结构图;
图3为本发明实施例中所使用的重训练模型的网络结构图;
图4为本发明实施例中的基于联邦半监督学习网络流量分类方法的框架示意图;
图5为本发明实施例中的系统模块图;
图6为本发明实施例中不同通信轮次下的测试准确率图;
图7本发明在实施例中各个应用类型上不同性能指标的实验效果图。
具体实施方式
下面将结合附图和实施例,对本发明技术方案做进一步详细描述,显然所描述的实施例是本发明一部分实施例,而不是全部的实施例,本发明的实施方式并不限于此。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明是基于联邦环境下一个联邦服务器和多个客户端,采用半监督学习来训练网络流量分类器,包括三个阶段:数据预处理阶段、客户端预训练阶段和服务器重训练阶段。半监督学习(Semi-Supervised Learning,SSL)是无监督学习与监督学习相结合的一种学习方法。在数据预处理阶段,采用增强采样方法来扩充各个客户端上的无标签网络流量数据。在客户端预训练阶段,选取一定数量的客户端。在每轮客户端与联邦服务器的通讯中,被选取客户端首先使用其无标签数据在本地进行无监督训练,然后把训练出来的模型参数发送到联邦服务器端。联邦服务器通过聚合算法聚合各个客户端的模型参数来更新服务器端的全局模型,直到全局模型的损失值稳定,客户端与服务器的结束通讯。在服务器重训练阶段,联邦服务器端利用其拥有的少量带标记数据集对全局模型进行重新训练并生成最终网络流量分类模型。重训练结束后,每个客户端可以从联邦服务器端下载最终分类模型到其本地来进行网络流量分类任务。
实施例
如图1所示,本实施例中提供的是一种基于联邦半监督学习的网络流量分类方法,该方法包括:
S1、K个客户端获取本地无标签网络数据,依据增强采样方法提取每条网络流样本中时间相关特征,构成基于时间序列的无标签网络数据集Du,联邦服务器端中拥有少量的基于时间序列的有标签网络数据集Ds
具体地,无标签网络数据集
Figure BDA0003244303240000041
表示Du是由K个客户端中的本地无标签网络流构成,其中
Figure BDA0003244303240000042
表示第k位客户端拥有N个实例的训练样本xi,且每个客户端本地数据集数据分布情况相同。有标签网络数据集
Figure BDA0003244303240000043
表示Ds是由N个带标签数据流构成,其中xi是训练样本,yi是训练样本xi对应的标签;
增强采样方法有三个重要的参数(l,α,β),其中α,β均是常量,本实施例中取α=10,β=1.6。对每一条流中间距为l的数据包采样,每采样α次后,将β乘以l,使得l逐渐增大。且从每条流的头部采样若干次(例如100次),采样网络流中时序特征(流中数据包的到达时长和长度特性)构成大量的无标签数据集Du和少量的标签数据集Ds,即无标签数据集的数量多于标签数据集。
S2、联邦服务器端分别初始化用于在客户端本地执行无监督训练的全局模型
Figure BDA0003244303240000051
及其模型权重
Figure BDA0003244303240000052
和、用于联邦服务器端执行有监督训练的模型MS、及其模型权重wS
全局模型
Figure BDA0003244303240000053
的构造是基于自编码器技术,该模型中包含多个卷积层、池化层和一个全连接层,激活函数选择的是ReLU函数,其中模型
Figure BDA0003244303240000054
的详细网络构造如图2所示。模型MS较模型
Figure BDA0003244303240000055
具有更多的线性层结构,模型MS
Figure BDA0003244303240000056
的基础上增加了三个全连接层和一个Softmax输出层,其中模型MS的详细网络构造如图3所示。
S3、联邦服务器端与K个客户端进行第t次通信时,联邦服务器端依据max(C·K,1)方法随机选取若干个客户端并向其发送全局模型
Figure BDA0003244303240000057
模型权重
Figure BDA0003244303240000058
和模型参数θt
具体地,若干个客户端
Figure BDA0003244303240000059
是一个由C·K位客户端构成的集合,其中Si表示该集合Set_clients中第i个客户端,C表示一个0到1之间的小数;函数max(C·K,1)表示取C·K与1之间的最大值,表明服务器每次通信时至少随机选取1个客户端。
S4、客户端Si接收到联邦服务器端发送的全局模型
Figure BDA00032443032400000510
之后,利用其本地数据
Figure BDA00032443032400000511
执行无监督训练,更新本地模型
Figure BDA00032443032400000512
此过程本地模型
Figure BDA00032443032400000513
可学习到该客户端数据集
Figure BDA00032443032400000514
的网络流统计特征。其中,
Figure BDA00032443032400000515
表示客户端Si的本地模型,
Figure BDA00032443032400000516
表示客户端Si的本地无标签数据集。
Figure BDA00032443032400000517
的模型结构和
Figure BDA00032443032400000518
是一样的,但是
Figure BDA00032443032400000519
中的参数是经过本地无标签数据的训练更新的。
优选地,本地执行无监督训练以网络流24个统计特征为回归目标,统计特征包括:每个数据包长度、到达时间的平均值、最大值、最小值和方差等。
S5、步骤S3所选取的若干个客户端Set_clients结束本轮通信中无监督学习任务之后,将其本地模型
Figure BDA00032443032400000520
的训练结果参数
Figure BDA00032443032400000521
上传至联邦服务器端;
具体地,模型
Figure BDA00032443032400000522
中训练的更新公式为:
Figure BDA0003244303240000061
Figure BDA0003244303240000062
其中,
Figure BDA0003244303240000063
为第Si位客户端在第t次通信时结束本地无监督训练后本地模型
Figure BDA0003244303240000064
中的参数,η1为本地无监督学习的学习率,
Figure BDA0003244303240000065
为第Si位客户端的本地无标签数据集,
Figure BDA0003244303240000066
为第Si位客户端本地模型
Figure BDA0003244303240000067
对无标签数据集24个统计特征的预测值,n是无标签数据集的样本个数,
Figure BDA0003244303240000068
表示均方损失函数。
S6、联邦服务器端将各个客户端发送过来的参数
Figure BDA0003244303240000069
使用加权平均方法计算出聚合后的参数θt+1,并用参数θt+1更新全局模型
Figure BDA00032443032400000610
此时第t次通信结束;其中,加权平均方法计算公式为:
Figure BDA00032443032400000611
其中,
Figure BDA00032443032400000612
为第Si位客户端在第t次通信时结束本地无监督训练后本地模型
Figure BDA00032443032400000613
中的参数,
Figure BDA00032443032400000614
为第Si位客户端在本地训练的样本个数,n表示所有选取的客户端在本地训练的样本个数。
S7、t次通信结束之后,接着执行下一通信轮次,多次迭代S3至S6,经过联邦服务器端多次进行聚合更新直至全局模型
Figure BDA00032443032400000615
收敛后不再迭代,最后可获得参数θ。
具体地,
Figure BDA00032443032400000616
表示经过服务端多次进行聚合更新直至全局模
Figure BDA00032443032400000617
收敛不再迭代后聚合得到的参数θ。
S8、联邦服务器端将全局模型
Figure BDA00032443032400000618
中的参数θ复制到模型MS中的对应网络层。
具体地,联邦服务器端将全局模型
Figure BDA00032443032400000619
中的参数θ到模型MS中的对应网络层,其中联邦服务器端模型MS未进行有监督学习训练前的参数θs
θs=deepcopy(θ)
S9、联邦服务器端利用标签数据集Ds执行有监督学习,直至模型MS收敛并训练得到一个用于客户端进行网络流分类任务的模型Mc,需要进行流量分类任务的客户端从服务端下载模型Mc
具体地,模型MS中参数的更新公式为:
Figure BDA00032443032400000620
Figure BDA0003244303240000071
其中,
Figure BDA0003244303240000072
为服务端中的标签数据集,其中yi为服务端中实际标签数据集实例的训练样本xi的标签,
Figure BDA0003244303240000073
是对数据集所有实例(xi,yi)的预测值,η2为学习率,θs即为联邦服务器端模型MS未进行有监督学习训练前参数,θc为模型MS已结束训练后的最终参数,此时称模型MS被训练收敛为模型Mc,n是Ds中训练样本个数。
如图4所示,本实施例基于联邦半监督学习的网络流量分类方法的框架示意图,方法步骤包括:数据预处理阶段、客户端预训练阶段和服务器重训练阶段。在数据预处理阶段,本实施例采用增强采样方法来扩充各个客户端上的无标签网络流量数据。在客户端预训练阶段,本实施例选取一定数量的客户端,在每轮客户端与联邦服务器的通讯中,被选取客户端首先使用其无标签数据在本地进行无监督训练,然后把训练出来的模型参数发送到联邦服务器端。联邦服务器通过聚合算法聚合各个客户端的模型参数来更新服务器端的全局模型。直到全局模型的损失值稳定,客户端与服务器的结束通讯。在服务器重训练阶段,联邦服务器端利用其拥有的少量带标记数据集对全局模型进行重新训练并生成最终网络流量分类模型。重训练结束后,每个客户端可以下载最终分类模型到其本地来进行网络流量分类任务。
本实施例可以在保护用户数据隐私的前提下,协助多方在不公开和共享本地用户数据集的情况下共同学习一个准确且通用的网络流量分类模型。此外,本实施例还在上述的联邦学习环境中运用了半监督学习技术,可以有效解决现实网络流量分类任务中给数据标注成本大的问题。
本实施例通过结合联邦学习训练环境和半监督学习方法,可以有效解决深度学习在现实网络流量分类任务中的瓶颈,得到准确率高,适用性广,训练成本小且可以保护用户隐私的分类模型。
实施例2
如图5所示,基于同样的发明构思,本发明还提供一种基于联邦半监督学习的网络流量分类系统,包括:数据预处理模块、客户端预训练模块、服务端重训练模块。
数据预处理模块,用于K个客户端获取本地无标签网络数据后,通过增强采样方法获取客户端本地的无标签网络流和服务端中少量的标签网络流,得到大量的无标签数据集Du和少量的标记数据集Ds。增强采样方法有三个重要的参数(l,α,β),对网络流之间间距为l的数据包采样,每采样α次后,将β乘以1,使得l逐渐增大。且从每条网络流的头部采样若干次(例如100次),采样得到的网络流中时序特征(数据包的到达时长和长度特性)可构成大量的无标签数据集Du和少量的标记数据集Ds。使用增强采样方法能够获取网络流中不同模式且复杂度不同的部位,以便训练的模型更具泛化性。
客户端预训练模块,用于选取K个客户端,在每轮客户端与联邦服务器的通讯中,被选取客户端首先使用其无标签数据在本地进行预训练,联邦服务器端将各个客户端发送过来的训练模型参数使用加权平均方法计算出聚合后的参数,用聚合后的参数更新全局模型,多次迭代预训练直至全局模型收敛后不再迭代,最后获得全局模型中的参数;
服务器端重训练模块,用于联邦服务器端将全局模型中的参数复制到执行有监督训练的模型中的对应网络层;联邦服务器端利用标签数据集执行有监督学习,直至执行有监督训练的模型收敛并训练得到一个用于客户端进行网络流分类任务的模型。
客户端预训练模块预训练过程包括:
联邦服务器端与K个客户端进行第t次通信时,联邦服务器端依据max(C·K,1)方法随机选取若干个客户端并向其发送全局模型、模型权重;C表示一个0到1之间的小数;函数max(C·K,1)表示取C·K与1之间的最大值;
客户端接收到联邦服务器端发送的全局模型之后,利用其本地数据执行无监督训练,更新本地模型,本地模型学习客户端数据集的网络流统计特征;
所选取的若干个客户端结束本轮通信中无监督学习任务之后,将其本地模型的训练模型参数上传至联邦服务器端。
在本实施例的一种基于联邦半监督学习网络流量分类系统,可以在保护用户数据隐私的前提下,协助多方在不公开和共享本地用户数据集的情况下共同学习一个准确且通用的网络流量分类模型。此外,该系统还在上述的联邦学习环境中运用了半监督学习技术,可以有效解决现实网络流量分类任务中给数据标注成本大的问题。本实施主要是对联邦环境中运用半监督学习技术的说明,本系统基于联邦环境下,即一个联邦服务器和多个客户端,采用半监督学习来训练网络流量分类器,这包括三个阶段,分别是数据预处理阶段、客户端预训练阶段和服务器重训练阶段。在数据预处理阶段,我们采用增强采样方法来扩充各个客户端上的无标签网络流量数据。在客户端预训练阶段,我们选取一定数量的客户端。在每轮客户端与联邦服务器的通讯中,被选取客户端首先使用其无标签数据在本地进行无监督训练,然后把训练出来的模型参数发送到联邦服务器端。联邦服务器通过聚合算法聚合各个客户端的模型参数来更新服务器端的全局模型。直到全局模型的损失值稳定,客户端与服务器的结束通讯。在服务器重训练阶段,联邦服务器端利用其拥有的少量带标记数据集对全局模型进行重新训练并生成最终网络流量分类模型。重训练结束后,每个客户端可以下载最终分类模型到其本地来进行网络流量分类任务。
如图6所示,为服务端与客户端在不同通信轮次下,训练得到的分类器模型Mc对测试数据集的分类准确率效果图。可见整体效果趋势是随着通信的次数的增加,其分类的准确率越高。
如图7所示,列举了不同应用通过上述系统训练出的分类模型进行分类后得到的准确率、精度、召回率和F1值。F1值一般用于评价多应用分类器对每种应用的不同分类性能,它是正确率和召回率的加权调和平均。如图7所示,可以看到各个类别的应用在本发明的方法训练出的分类器说均取得了很好的效果。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.一种基于联邦半监督学习的网络流量分类方法,其特征在于,包括以下步骤:
S1、K个客户端获取本地无标签网络数据,依据增强采样方法提取每条网络流样本中时间相关特征,构成基于时间序列的无标签网络数据集,联邦服务器端中拥有基于时间序列的有标签网络数据集;
S2、联邦服务器端分别初始化用于在客户端本地执行无监督训练的全局模型及其模型权重、用于联邦服务器端执行有监督训练的模型及其模型权重;
S3、联邦服务器端与K个客户端进行第t次通信时,联邦服务器端依据max(C·K,1)方法随机选取若干个客户端并向其发送全局模型、模型权重;C表示一个0到1之间的小数;函数max(C·K,1)表示取C·K与1之间的最大值;
S4、客户端接收到联邦服务器端发送的全局模型之后,利用其本地数据执行无监督训练,更新本地模型,本地模型学习客户端数据集的网络流统计特征;
S5、步骤S3所选取的若干个客户端结束本轮通信中无监督学习任务之后,将其本地模型的训练结果参数上传至联邦服务器端;
S6、联邦服务器端将各个客户端发送过来的训练模型参数使用加权平均方法计算出聚合后的参数,用聚合后的参数更新全局模型,此时第t次通信结束;
S7、t次通信结束之后,接着执行下一通信轮次,多次迭代步骤S3至S6,经过联邦服务器端多次进行聚合更新直至全局模型收敛后不再迭代,最后获得全局模型中的参数;
S8、联邦服务器端将全局模型中的参数复制到执行有监督训练的模型中的对应网络层;
S9、联邦服务器端利用标签数据集执行有监督学习,直至执行有监督训练的模型收敛并训练得到一个用于客户端进行网络流分类任务的模型。
2.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S1中,无标签网络数据集由若干个客户端中的本地无标签网络流构成,有标签网络数据集由N个带标签数据流构成;
增强采样方法中,对每一条流中间距为l的数据包采样,每采样α次后,将β乘以l,使得l逐渐增大。
3.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S2中,执行无监督训练的全局模型的构造是基于自编码器技术,该模型中包含多个卷积层、池化层和一个全连接层,激活函数选择的是ReLU函数;执行有监督训练的模型在执行无监督训练的全局模型的基础上增加了三个全连接层和一个Softmax输出层。
4.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S3中,若干个客户端是一个由C·K位客户端构成的集合,表示为
Figure FDA0003244303230000011
其中Si表示该集合Set_clients中第i个客户端,表示一个服务器每次通信时至少随机选取1个客户端。
5.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S4中,执行无监督训练以网络流的统计特征为回归目标,统计特征包括:每个数据包长度、到达时间的平均值、最大值、最小值和方差。
6.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S5中,本地模型训练的更新公式为:
Figure FDA0003244303230000021
Figure FDA0003244303230000022
其中,
Figure FDA0003244303230000023
为第Si位客户端在第t次通信时结束本地无监督训练后本地模型中的参数,η1为本地无监督学习的学习率,
Figure FDA0003244303230000024
为第Si位客户端的本地无标签数据集,
Figure FDA0003244303230000025
Figure FDA0003244303230000026
为第Si位客户端本地模型对无标签数据集的统计特征的预测值,n是无标签数据集的样本个数。
7.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S6中,加权平均方法计算公式为:
Figure FDA0003244303230000027
其中,
Figure FDA0003244303230000028
为第Si位客户端在第t次通信时结束本地无监督训练后本地模型中的参数,
Figure FDA0003244303230000029
为第Si位客户端在本地训练的样本个数,n表示所有选取的客户端在本地训练的样本个数。
8.根据权利要求1所述的网络流量分类方法,其特征在于,在步骤S9中,执行有监督训练的模型中参数的更新公式为:
Figure FDA00032443032300000210
Figure FDA00032443032300000211
其中,θc为执行有监督训练的模型已结束训练后的最终参数,
Figure FDA00032443032300000212
为服务端中的标签数据集,其中yi为服务端中实际标签数据集实例的训练样本xi的标签,
Figure FDA00032443032300000213
Figure FDA00032443032300000214
是对数据集所有实例(xi,yi)的预测值,η2为学习率,θs即为联邦服务器端模型MS未进行有监督学习训练前参数,n是Ds中训练样本个数。
9.一种基于联邦半监督学习的网络流量分类系统,其特征在于,包括:
数据预处理模块,用于K个客户端获取本地无标签网络数据后,依据增强采样方法提取每条网络流样本中时间相关特征,构成基于时间序列的无标签网络数据集,联邦服务器端中拥有基于时间序列的有标签网络数据集;联邦服务器端分别初始化用于在客户端本地执行无监督训练的全局模型及其模型权重、用于联邦服务器端执行有监督训练的模型及其模型权重;
客户端预训练模块,用于选取K个客户端,在每轮客户端与联邦服务器的通讯中,被选取客户端使用其无标签数据在本地进行预训练,联邦服务器端将各个客户端发送过来的训练模型参数使用加权平均方法计算出聚合后的参数,用聚合后的参数更新全局模型,多次迭代预训练直至全局模型收敛后不再迭代,最后获得全局模型中的参数;
服务器端重训练模块,用于联邦服务器端将全局模型中的参数复制到执行有监督训练的模型中的对应网络层;联邦服务器端利用标签数据集执行有监督学习,直至执行有监督训练的模型收敛并训练得到一个用于客户端进行网络流分类任务的模型。
10.根据权利要求9所述的网络流量分类系统,其特征在于,客户端预训练模块预训练过程包括:
联邦服务器端与K个客户端进行第t次通信时,联邦服务器端依据max(C·K,1)方法随机选取若干个客户端并向其发送全局模型、模型权重;C表示一个0到1之间的小数;函数max(C·K,1)表示取C·K与1之间的最大值;
客户端接收到联邦服务器端发送的全局模型之后,利用其本地数据执行无监督训练,更新本地模型,本地模型学习客户端数据集的网络流统计特征;
所选取的若干个客户端结束本轮通信中无监督学习任务之后,将其本地模型的训练模型参数上传至联邦服务器端。
CN202111028686.1A 2021-09-02 2021-09-02 一种基于联邦半监督学习的网络流量分类方法和系统 Active CN113705712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111028686.1A CN113705712B (zh) 2021-09-02 2021-09-02 一种基于联邦半监督学习的网络流量分类方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111028686.1A CN113705712B (zh) 2021-09-02 2021-09-02 一种基于联邦半监督学习的网络流量分类方法和系统

Publications (2)

Publication Number Publication Date
CN113705712A true CN113705712A (zh) 2021-11-26
CN113705712B CN113705712B (zh) 2024-01-05

Family

ID=78657764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111028686.1A Active CN113705712B (zh) 2021-09-02 2021-09-02 一种基于联邦半监督学习的网络流量分类方法和系统

Country Status (1)

Country Link
CN (1) CN113705712B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114092769A (zh) * 2022-01-20 2022-02-25 国网江西省电力有限公司电力科学研究院 基于联邦学习的变电站多场景巡检分析方法
CN114417417A (zh) * 2022-01-24 2022-04-29 山东大学 一种基于联邦学习的工业物联网隐私保护系统及方法
CN114499979A (zh) * 2021-12-28 2022-05-13 云南电网有限责任公司信息中心 一种基于联邦学习的sdn网络异常流量协同检测方法
CN114882245A (zh) * 2022-04-22 2022-08-09 山东大学 一种联邦多任务学习中基于特征提取-子任务分类器的数据标签分类方法及系统
CN114884894A (zh) * 2022-04-18 2022-08-09 南京邮电大学 一种基于迁移学习的半监督网络流量分类方法
CN114997286A (zh) * 2022-05-18 2022-09-02 大连理工大学 一种基于联邦支持向量机的金融客户分类方法及装置
CN115081002A (zh) * 2022-06-28 2022-09-20 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN115118653A (zh) * 2022-08-26 2022-09-27 南京可信区块链与算法经济研究院有限公司 一种基于多任务学习的实时业务流量分类方法及系统
CN115187783A (zh) * 2022-09-09 2022-10-14 之江实验室 基于联邦学习的多任务混合监督医疗图像分割方法及系统
CN115412465A (zh) * 2022-07-11 2022-11-29 中国人民解放军国防科技大学 基于客户端生成分布式真实网络流量数据集的方法及系统
CN115632996A (zh) * 2022-12-19 2023-01-20 中国人民解放军国防科技大学 基于联邦式在线主动学习的网络流量分类系统及方法
CN116108491A (zh) * 2023-04-04 2023-05-12 杭州海康威视数字技术股份有限公司 基于半监督联邦学习的数据泄露预警方法、装置及系统
CN116701939A (zh) * 2023-06-09 2023-09-05 浙江大学 一种基于机器学习的分类器训练方法及装置
CN116823810A (zh) * 2023-08-25 2023-09-29 之江实验室 基于联邦学习的腹部多器官动态增强分割方法及系统
CN117114148A (zh) * 2023-08-18 2023-11-24 湖南工商大学 一种轻量级联邦学习训练方法
CN118364341A (zh) * 2024-06-19 2024-07-19 南京邮电大学 一种基于软件定义车联网网络流量分类方法、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111275207A (zh) * 2020-02-10 2020-06-12 深圳前海微众银行股份有限公司 基于半监督的横向联邦学习优化方法、设备及存储介质
CN111291897A (zh) * 2020-02-10 2020-06-16 深圳前海微众银行股份有限公司 基于半监督的横向联邦学习优化方法、设备及存储介质
CN111865815A (zh) * 2020-09-24 2020-10-30 中国人民解放军国防科技大学 一种基于联邦学习的流量分类方法及系统
CN113298191A (zh) * 2021-04-01 2021-08-24 山东大学 基于个性化半监督在线联邦学习的用户行为识别方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111275207A (zh) * 2020-02-10 2020-06-12 深圳前海微众银行股份有限公司 基于半监督的横向联邦学习优化方法、设备及存储介质
CN111291897A (zh) * 2020-02-10 2020-06-16 深圳前海微众银行股份有限公司 基于半监督的横向联邦学习优化方法、设备及存储介质
CN111865815A (zh) * 2020-09-24 2020-10-30 中国人民解放军国防科技大学 一种基于联邦学习的流量分类方法及系统
CN113298191A (zh) * 2021-04-01 2021-08-24 山东大学 基于个性化半监督在线联邦学习的用户行为识别方法

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114499979A (zh) * 2021-12-28 2022-05-13 云南电网有限责任公司信息中心 一种基于联邦学习的sdn网络异常流量协同检测方法
CN114092769A (zh) * 2022-01-20 2022-02-25 国网江西省电力有限公司电力科学研究院 基于联邦学习的变电站多场景巡检分析方法
CN114092769B (zh) * 2022-01-20 2022-06-14 国网江西省电力有限公司电力科学研究院 基于联邦学习的变电站多场景巡检分析方法
CN114417417A (zh) * 2022-01-24 2022-04-29 山东大学 一种基于联邦学习的工业物联网隐私保护系统及方法
CN114417417B (zh) * 2022-01-24 2024-04-30 山东大学 一种基于联邦学习的工业物联网隐私保护系统及方法
CN114884894B (zh) * 2022-04-18 2023-10-20 南京邮电大学 一种基于迁移学习的半监督网络流量分类方法
CN114884894A (zh) * 2022-04-18 2022-08-09 南京邮电大学 一种基于迁移学习的半监督网络流量分类方法
CN114882245A (zh) * 2022-04-22 2022-08-09 山东大学 一种联邦多任务学习中基于特征提取-子任务分类器的数据标签分类方法及系统
CN114882245B (zh) * 2022-04-22 2023-08-25 山东大学 一种联邦多任务学习中基于特征提取-子任务分类器的数据标签分类方法及系统
CN114997286A (zh) * 2022-05-18 2022-09-02 大连理工大学 一种基于联邦支持向量机的金融客户分类方法及装置
CN115081002A (zh) * 2022-06-28 2022-09-20 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN115081002B (zh) * 2022-06-28 2024-05-14 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN115412465A (zh) * 2022-07-11 2022-11-29 中国人民解放军国防科技大学 基于客户端生成分布式真实网络流量数据集的方法及系统
CN115412465B (zh) * 2022-07-11 2023-06-20 中国人民解放军国防科技大学 基于客户端生成分布式真实网络流量数据集的方法及系统
CN115118653A (zh) * 2022-08-26 2022-09-27 南京可信区块链与算法经济研究院有限公司 一种基于多任务学习的实时业务流量分类方法及系统
CN115187783A (zh) * 2022-09-09 2022-10-14 之江实验室 基于联邦学习的多任务混合监督医疗图像分割方法及系统
CN115632996A (zh) * 2022-12-19 2023-01-20 中国人民解放军国防科技大学 基于联邦式在线主动学习的网络流量分类系统及方法
CN116108491A (zh) * 2023-04-04 2023-05-12 杭州海康威视数字技术股份有限公司 基于半监督联邦学习的数据泄露预警方法、装置及系统
CN116108491B (zh) * 2023-04-04 2024-03-22 杭州海康威视数字技术股份有限公司 基于半监督联邦学习的数据泄露预警方法、装置及系统
CN116701939B (zh) * 2023-06-09 2023-12-15 浙江大学 一种基于机器学习的分类器训练方法及装置
CN116701939A (zh) * 2023-06-09 2023-09-05 浙江大学 一种基于机器学习的分类器训练方法及装置
CN117114148A (zh) * 2023-08-18 2023-11-24 湖南工商大学 一种轻量级联邦学习训练方法
CN117114148B (zh) * 2023-08-18 2024-04-09 湖南工商大学 一种轻量级联邦学习训练方法
CN116823810B (zh) * 2023-08-25 2023-11-17 之江实验室 基于联邦学习的腹部多器官动态增强分割方法及系统
CN116823810A (zh) * 2023-08-25 2023-09-29 之江实验室 基于联邦学习的腹部多器官动态增强分割方法及系统
CN118364341A (zh) * 2024-06-19 2024-07-19 南京邮电大学 一种基于软件定义车联网网络流量分类方法、系统及存储介质

Also Published As

Publication number Publication date
CN113705712B (zh) 2024-01-05

Similar Documents

Publication Publication Date Title
CN113705712A (zh) 一种基于联邦半监督学习的网络流量分类方法和系统
Sun et al. Internet traffic classification based on incremental support vector machines
Dong Multi class SVM algorithm with active learning for network traffic classification
Yao et al. Identification of encrypted traffic through attention mechanism based long short term memory
Cherif et al. On using extreme gradient boosting (XGBoost) machine learning algorithm for home network traffic classification
Ertam et al. A new approach for internet traffic classification: GA-WK-ELM
CN108900432B (zh) 一种基于网络流行为的内容感知方法
Wang The applications of deep learning on traffic identification
CN113037730B (zh) 基于多特征学习的网络加密流量分类方法及系统
Zeng et al. DeepVCM: A deep learning based intrusion detection method in VANET
WO2022088972A1 (zh) 面向带权异质图的恶意行为识别方法、系统和存储介质
Zhang et al. Deep learning–based network application classification for SDN
Wang et al. App-net: A hybrid neural network for encrypted mobile traffic classification
Wang et al. A novel semi-supervised approach for network traffic clustering
CN109871948A (zh) 一种基于二维卷积神经网络的应用层协议识别方法
CN115102763A (zh) 基于可信联邦学习多域DDoS攻击检测方法与装置
Wang et al. An encrypted traffic classification framework based on convolutional neural networks and stacked autoencoders
CN109194498A (zh) 一种基于lstm的网络流量预测方法
CN114172688A (zh) 基于gcn-dl的加密流量网络威胁关键节点自动提取方法
Gogoi et al. A rough set–based effective rule generation method for classification with an application in intrusion detection
CN115277587B (zh) 网络流量识别方法、装置、设备及介质
Zhao et al. A few-shot learning based approach to IoT traffic classification
CN113935398B (zh) 一种物联网环境下基于小样本学习的网络流量分类方法及系统
Xu et al. Trafficgcn: Mobile application encrypted traffic classification based on gcn
Wang et al. Internet traffic classification using machine learning: a token-based approach

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