一种基于改进联邦学习算法的恶意流量分类方法技术

技术编号:35460039 阅读:55 留言:0更新日期:2022-11-03 12:26
本发明专利技术属于机器学习领域,具体涉及一种基于改进联邦学习算法的恶意流量分类方法。针对目前恶意流量分类方法中存在的“数据孤岛”问题和原始联邦学习算法存在的数据异构问题,本发明专利技术设计并实现了一种基于改进联邦学习算法的恶意流量分类方法。相较于传统的分类方法,本发明专利技术不需要把数据进行集中训练,只需要通过中央服务器聚合各个参与者使用本地数据训练的模型参数来进行协作训练,维护了网络安全厂商的数据安全。相较于原始的联邦学习方法,本发明专利技术通过将具有近似数据分布的参与者划分为一个集群,使得每个集群里的数据分布呈现独立同分布,然后再将每个集群串行训练的方法使得联邦学习算法对非独立同分布的数据也呈现较好的效果。实验证明,本发明专利技术能够对恶意流量分类呈现较好的效果。类呈现较好的效果。类呈现较好的效果。

【技术实现步骤摘要】
一种基于改进联邦学习算法的恶意流量分类方法


[0001]本专利技术属于机器学习领域,具体涉及一种基于改进联邦学习算法的恶意流量分类方法。

技术介绍

[0002]互联网的飞速发展给人们的生活带来了巨大的变化,互联网用户数量呈现爆炸式增长,网民平均上网时间也呈现持续增长的态势。与此同时,互联网环境遭受的网络攻击也越来越频繁,攻击方式也层出不穷。这些网络攻击给人们的信息财产安全和网络空间安全带来了极大的隐患,如何有效的预防网络安全问题带来的危害变得越来越重要。其中将恶意流量分类是进行有效预防网络安全问题中重要的一步。
[0003]目前各个网络安全厂商以及相关国家机构都有自己的恶意流量分类系统,但是由于人们对数据隐私的保护越来越重视,这些组织机构只能基于自己的数据来做分析,这就形成了“数据孤岛”情况,即政府部门、科研部门以及互联网公司等由于隐私保护而不能共享数据。例如360公司只能基于自己的网络安全数据来做自己恶意流量分类系统,由于隐私保护的原因,它无法获取腾讯、长城等网络安全厂商的网络安全数据,这就导致它训练得到的恶意流量分类模型不够全面,有很多的不足。
[0004]联邦学习是一种具有隐私保护功能的分布式机器学习,在中央服务器的协调下,多个参与者协作解决机器学习模型训练问题并且每个参与者的原始私有数据存储在本地,很好的解决了目前的恶意流量分类技术的上述局限。但是现有的联邦学习算法存在数据异构性,当数据呈非独立同分布时联邦学习不能发挥出很好的效果,而现实世界中的数据都是呈现非独立同分布的。
专利技术内
[0005]本专利技术的目的是针对上述问题,提出一种将网络流量数据在隐私保护的情况之下共享,通过改进原有的联邦学习算法,充分发挥数据最大价值的恶意流量分类方法。
[0006]为了实现本专利技术的目的,将采用以下技术方案:为能使各网络安全厂商能够协作训练,我们在恶意流量分类模型中引入联邦学习算法。非独立同分布数据使联邦学习中的局部模型参数发散,使得中央服务器无法聚合出良好的模型;然而,对于独立同分布数据,联邦学习可以得到满意的结果。根据此,我们对原来的联邦学习算法进行改进,根据每个参与者的数据分布对参与者进行划分,将数据分布相似度高的参与者划分为一个集群;因此,该集群中的数据分布类似于独立同分布。然后为了遍历所有参与者,模仿数据集中式的训练方式,将每一个集群当作一个batch

size进行串行训练。从而达到消除非独立同分布数据在联邦学习中的不利影响,提高对恶意流量分类准确率的目的。该方法包括以下步骤:
[0007]S1、每个网络安全厂商计算自己的数据属性I,并将其发送给中央服务器。
[0008]S2、中央服务器使用聚类算法来将所有的网络安全厂商聚合到N个集群S
N
中。
[0009]S3、中央服务器初始化全局模型参数w0。
[0010]S4、中央服务器将初始化全局模型参数w0发送给第一个集群S1中的参与者。
[0011]S5、第一个集群S1中的参与者以w0为模型起点,利用本地私有网络安全数据进行模型训练,并将经过训练后的本地模型参数上传至中央服务器。
[0012]S6、中央服务器在收到第一个集群S1中的客户端发来的本地模型参数后,对这些参数进行加权聚合,得到全局模型参数w1。然后将全局模型参数w1发送给第二个集群S2中的客户端。
[0013]S7、重复S5~S6,直到得到全局模型参数w
N
,这构成了一轮通信。接着将全局模型参数w
N
发送给第一个集群S1中的参与者进行新一轮的通信。
[0014]S8、重复S5~S7,直到达到预定通信轮次或者全局模型收敛。然后使用训练好的全局模型进行恶意流量分类。
[0015]本专利技术的有益效果是:
[0016](1)将联邦学习与恶意流量分类技术相结合,解决了网络安全厂商因为数据隐私保护而不能共享数据导致的“数据孤岛”问题。在隐私数据保存在本地的情况下可以与其他网络安全厂商进行合作训练,提高恶意流量分类的准确率;
[0017](2)对联邦学习算法进行了改进,解决了联邦学习算法在数据分布呈现非独立同分布的情况下训练效果不理想的问题,进一步提高了恶意流量分类的准确率;
[0018](3)本专利技术提供的联邦学习改进算法适用范围广,对不同的数据分布,不同的参与者数量都具有优异的效果。
附图说明
[0019]图1为本专利技术基于改进联邦学习算法的恶意流量分类方法框图。
[0020]图2为本专利技术改进联邦学习算法详细框图。
[0021]图3为改进联邦学习算法于原始联邦学习的训练过程对比图。
[0022]图4为恶意流量使用改进联邦学习算法训练后的混淆矩阵。
[0023]图5为恶意流量使用原始联邦学习算法训练后的混淆矩阵。
具体实施方式
[0024]下面结合附图对本专利技术的技术方案进行进一步的说明。
[0025]如图1和图2所示,本专利技术包括以下步骤:
[0026]步骤1、每个网络安全厂商根据本地私有数据计算自己的数据属性I,并将其发送给中央服务器。
[0027]步骤2、中央服务器使用聚类算法来将所有的网络安全厂商聚合到N个集群S
N
中。
[0028]如果数据分布是独立同分布的,那么在经过本地训练后每个网络安全厂商的本地模型参数差异很小,此时进行模型参数聚合有利于提高全局模型的性能,使全局模型对未知数据具有更强的泛化能力。但是,如果数据是非独立同分布的,那么每个网络安全厂商的数据就大不相同,每个经过本地数据训练后的本地模型所学习到的知识也大不相同,模型参数也大不相同。如果此时再对每个本地模型参数进行简单的平均,那么每个本地模型学到的知识就会丢失,使得全局模型效果变差。所以,本专利技术根据数据分布对各网络安全厂商进行划分,将数据分布相似度高的网络安全厂商划分为一个集群;这样,在该集群中的数据
分布类似于独立同分布。这时,在每个集群内进行联邦优化可以大大提高模型在每个集群内的性能,可以提高效率。
[0029]步骤3、中央服务器初始化全局模型参数w0。
[0030]步骤4、中央服务器将初始化模型参数w0发送给第一个集群S1中的参与者。
[0031]步骤5、第一个集群S1中的客户端以w0为模型起点,利用本地数据集进行模型训练,并将经过训练后的模型参数上传至中央服务器。
[0032]步骤6、中央服务器在收到第一个集群S1中的参与者发来的模型参数后,对这些参数按照参与者的数据样本量进行加权聚合,得到全局模型参数w1。然后将全局模型参数w1发送给第二个集群S2中的客户端。其中
[0033]步骤7、重复步骤5~步骤6,直到得到全局模型模型参数w
N
,这构成了一轮通信。接着将全局模型参数w
N
发送给第一个集群S1中的参与者进行新一轮的通信。
[0034]在更新模型参数的方法上,联邦学习本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于改进联邦学习算法的恶意流量分类方法,其特征在于,包括以下步骤:S1、每个参与联邦学习的网络安全厂商计算自己的数据属性I,并将其发送给中央服务器;其中数据属性定义为:n为参与者所拥有的样本量,n
i
为所拥有的第i类数据的样本量;S2、中央服务器使用聚类算法来将所有的网络安全厂商聚合到N个集群S
N
中,其中聚类算法为:(1)将每个网络安全厂商视为单独的一个集群;(2)计算两个集群之间的距离,并合并最小距离的两个集群,两个集群之间的距离定义为D
p,q
=max(d
ij
=||I
i

I
j
||2|i∈p,j∈q)
ꢀꢀꢀꢀ
(1)其中d
ij
代表集群p中的网络安全厂商...

【专利技术属性】
技术研发人员:王壮刘仁婷任春辉付毓生
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1