一种基于特征选择和特征对齐的联邦学习方法
未命名
08-12
阅读:88
评论:0

1.本发明涉及联邦学习领域,特别是涉及联邦学习特征空间非独立同分布处理方法。
背景技术:
2.google于2019年提出联邦学习算法fedavg,使得在不共享各方数据的前提下仍然能够有效的联合训练深度模型,并已经被广泛应用到行为识别、恶意软件分类、商品推荐等实际场景中。虽然fedavg在许多领域中得到了广泛应用,但由于在实际场景中各方数据往往存在非独立同分布问题,简单的应用fedavg往往面临着收敛困难、模型预测精度差等问题。缓解数据非独立同分布对联邦学习的影响仍然是联邦学习中一个具有挑战性的任务。
3.最近,有不少方法通过施加约束来缓解联邦学习中的数据非独立同分布问题。这些方法主要是在损失函数中增加了约束项,以此约束了模型更新方向。一般以上一轮的全局模型为锚点,使得本轮更新后的本地模型都围绕在其附近,以此来缓解由数据非独立同分布产生的客户机漂移现象。此外,还有一些方法通过估计模型的更新方向,对其进行修正以使其更新方向一致。
4.现有的联邦学习算法大多对模型进行约束、关注标签空间的非独立同分布问题。对于施加约束,虽然可以在一定程度上缓解客户机漂移现象,但是使得模型无法进行快速的有效更新,限制了模型的更新潜力,减慢了模型的收敛速度。本发明与现有联邦学习大多关注标签空间非独立同分布问题不同,关注于特征空间的非独立同分布问题,通过基于梯度反转的特征对抗对齐的方法,从数据层面根本上缓解客户机漂移现象。由于不同维度的特征并不一定都是非独立同分布的,本发明通过特征注意力向量生成掩膜向量对特征进行筛选,对非独立同分布特征维度进行针对性对齐。同时,为缓解特征对齐对原始任务的影响,本发明通过梯度截断的方法,使得原始任务特征不接受来自特征对齐损失的梯度。
技术实现要素:
5.本发明提供了一种基于特征选择和特征对齐的联邦学习方法。该方法采用选择性对抗特征对齐方式,协同训练客户机鉴别器和特征选择向量,可以有效的筛选非独立同分布的特征维度,并且通过个性化的仿射变换对齐各方特征分布,从数据层面缓解数据非独立同分布对联邦学习训练的不良影响。实验结果表明,该方法能够提升联邦学习训练的收敛速度与模型预测精度。
6.一种基于特征选择和特征对齐的联邦学习方法,其步骤如下:
7.步骤(1)、数据集获取,我们通过对公共数据集施加不同的高斯噪声,作为不同客户机的本地数据集。
8.步骤(2)、中央服务器下发当前的全局特征提取模块至所有客户机。客户机各自使用本地数据集和接收到的全局特征提取模块,生成中间层特征,并上传至中央服务器。中央服务器利用接收到的各方中间层特征训练客户机鉴别器和特征注意力向量。
9.步骤(3)、中央服务器按一定策略选择客户机子集参与本轮联邦学习,并下发全局模型,包括客户机鉴别器和特征注意力向量。
10.步骤(4)、被选中的客户机利用得到的特征注意力向量构造特征掩膜向量进行特征筛选,并利用特征仿射变换模块进行特征对齐。
11.步骤(5)、被选中的客户机利用得到客户机鉴别器,结合对齐损失和预测损失更新全局模型,最终将得到的本地模型上传至中央服务器。
12.步骤(6)、中央服务器按照一定策略聚合接收到的本地模型生成新的全局模型。
13.进一步的,步骤(1)所指的通过施加不同的高斯噪声,作为不同客户机的本地数据集,是指添加均值为0,方差为的高斯噪声至数据集i,以生成客户机i的本地数据集ii,具体公式如下:
[0014][0015]
其中,方差由客户机的编号i确定。我们使用n表示全体客户机的数量,β表示最大方差,方差计算的具体公式如下:
[0016][0017]
对于每个客户机i,我们会为数据集i中每张原始图像生成一个相同尺寸的噪声图像,其中噪声图像的每个像素是从对应的高斯分布中采样得到的一个随机值。我们将噪声图像和原始图像相加,得到最终的本地数据集图像。
[0018]
步骤(2)所述的中间层特征获取和客户机鉴别器和特征选择向量训练过程具体如下:
[0019]
为了更好的捕获不同客户机本地数据分布之间的差异,我们使用统一的全局特征提取器对原始特征进行编码,以得到中间层特征r,具体公式如下:
[0020][0021]
r=r1∪r2…
∪rnꢀꢀꢀ
(公式3)
[0022]
其中,ri表示客户机i的所有中间层特征集合,ii表示原始特征。
[0023]
客户机鉴别器和特征选择向量训练数据为中间层特征ri,以及对应的客户机编号i作为标签。我们使用α表示特征注意力向量,它与每一维特征相乘后,送入客户机鉴别器中。客户机鉴别器依靠各个客户机数据分布的差异来分辨来自各个客户机的中间层特征,即非独立同分布程度更高的维度对客户机鉴别器更加重要,会被给予更高的注意力权重。我们在中央服务器上对客户机鉴别器和特征注意力向量进行统一优化,具体公式如下:
[0024][0025][0026]
其中,d
*
、α
*
分别表示更新后的客户机鉴别器和特征注意力向量,r
i,j
表示第i个客户机的特征集合ri中第j个特征,|ii|表示第i个客户机原始特征的个数,n表示所有客户机的数量。
[0027]
使用sigmoid的函数与缩放系数ζ,来加速特征注意力向量的收敛以及达到二值化
的目的。具体来说,特征注意力向量由下式产生:
[0028]
α=digmoid(ζp)
[0029][0030]
其中p是用于生成特征注意力向量的可训练参数,x表示函数输入值。
[0031]
步骤(3)所指的客户机选择是指通过随机采样,从所有n个客户机中采样得到包含n个客户机的子集sr,参与第r轮联邦学习训练过程。
[0032]
步骤(4)中的特征筛选和特征变换过程主要由掩膜向量m和特征仿射变换模块g实现。
[0033]
先利用在步骤(2)中得到的特征注意力向量α按照阈值θ生成的掩膜向量m,公式如下:
[0034][0035]
其中,αk表示特征注意力向量α第k位的值,mk表示掩膜向量m第k位的值,掩膜向量m为1的位置的特征即代表选中的特征,利用该掩膜向量m对原始中间层特征进行筛选得到待对齐的特征维度子集。
[0036]
特征仿射变换ti包含可训练参数缩放系数si以及偏置系数bi,具体来说仿射变换公式如下:
[0037]
τi(x)=si⊙
x+biꢀꢀꢀ
(公式7)
[0038]
其中,x表示函数输入值。
[0039]
需要注意的是,该仿射变换只对筛选出的非独立同分布特征维度进行变换,而对于独立同分布的特征维度我们并不进行任何修改。
[0040]
总而言之,仿射变换模块公式如下:
[0041]gi
(ri,m)=c(τi(θ(ri,m)),θ(ri,1-m))
ꢀꢀꢀ
(公式8)
[0042]
其中θ表示特征筛选操作,c表示拼接操作,即将对齐后的非独立同分布特征维度子集和独立同分布的特征维度子集拼接成和原始大小相同的特征。
[0043]
步骤(5)中的本地模型训练是指对本地模型wi={φi,gi,pi}进行更新,即特征提取模块φi,特征仿射变换模块gi,预测网络模块pi。
[0044]
每个客户机接收到由中央服务器发送的全局模型后,先将本地模型替换为全局模型。本发明保留特征仿射变换模块g的个性化,以使其能够针对不同客户机数据分布进行个性化的变换,即本轮待更新的初始本地模型wi为:
[0045][0046]
其中,特征提取模块φi只接受来自任务损失函数的梯度,以保证特征的可分性,减少特征对齐对原始任务的影响。特征提取模块φi,预测网络模块pi更新的具体公式如下:
[0047][0048]
[0049]
其中,m是指数据集ii中包含的类别数量,为客户机i的第j条特征r
i,j
经过变换后得到的特征,具体公式如下:
[0050][0051]
对于特征仿射变换模块g的训练,我们使用了一个称为梯度反转层的模块r,该模块可以在正向传播时保持恒等映射,反向传播时对梯度进行反转,其反向传播时求导公式如下:
[0052][0053]
其中λ为反转系数,x表示函数输入值。
[0054]
同时,特征仿射变换模块g需要兼顾预测任务损失,其更新公式如下:
[0055][0056][0057]
步骤(6)所指的模型聚和操作是指将接收到的本地模型进行平均,作为下一轮联邦学习的全局模型。由于我们使用个性化的仿射变换模块g,无需对其进行聚合,只需要对特征提取模块φ和预测网络模块p进行聚合,具体公式如下:
[0058][0059]
其中,sr为第r轮采样得到的客户机集合,n为该集合中客户机的数量。
[0060]
本发明的有益效果如下:
[0061]
本发明通过对抗特征对齐对各方非独立同分布的特征维度进行对齐,从数据层面缓解了数据非独立同分布对联邦学习产生的不良影响。此外,本发明通过自适应的特征筛选的方式,由模型主动学习各个特征维度的非独立同分布程度,只筛选出非独立同分布特征维度进行对齐,减少了计算量,加快了训练速度。相比对模型更新进行约束,能够减少对模型更新方向和更新量的强制约束,加快模型收敛速度,相比对模型更新进行修正,能够减少对模型修正产生的额外计算量和存储量。
附图说明
[0062]
图1是本发明的具体流程示意图。
[0063]
图2是本发明的网络框架示意图。
[0064]
图3是本发明的特征变换示意图。
具体实施方式
[0065]
下面结合附图对本发明做进一步具体说明:
[0066]
如图1所示,本发明提供一种基于特征选择和特征对齐的联邦学习算法,可用于缓解特征空间的非独立同分布问题,具体流程细节如图2。如附图2所示,展示了本发明的应用场景和模型结构与训练过程。子图(a)展示了本发明在跨境电商中的应用场景,不同国家站点与中央服务器进行通信,在不传输原始数据的情况下协同训练全局模型。子图(b)展示了
传统fedavg算法的训练过程,各个客户机利用本地数据集更新下发的全局模型后,再上传至中央服务器,由中央服务器进行聚合,并下发新一轮的全局模型。子图(c)展示了本发明的整体训练框架图,分为分布式训练过程和集中式训练过程,接下来根据附图1中的子图(c)来分别说明每个步骤的细节,具体实施步骤如下:
[0067]
分布式训练过程中,每个客户机对本地模型wi={φi,gi,pi}进行更新,即特征提取模块φi,特征仿射变换模块gi,预测网络模块pi。其训练数据来自于本地数据集,并且由特征掩膜模块m和特征仿射变换模块gi对特征进行对齐,以缓解联邦学习中存在的数据非独立同分布问题。其具体公式汇总如下:
[0068][0069][0070][0071]
集中式训练过程中,对客户机鉴别器d和特征注意力向量α进行更新,使得客户机鉴别器学到不同客户机本地数据分布之间的差异,以在分布式训练过程中指导特征仿射变换模块gi的更新,并使得特征注意力向量α学到不同特征维度的非独立同分布程度,以在分布式训练过程中指导特征筛选。
[0072]
如附图3所示,具体展示本发明的特征变换过程。首先,通过特征注意力向量得到掩膜向量m,并以此将原始特征划分为独立同分布子集和非独立同分布子集。其中,独立同分布子集经由恒等映射不进行改变,非独立同分布子集由特征仿射变换模块gi进行变换,以产生对齐的特征分布,再经由拼接函数c将独立同分布子集和非独立同分布子集重新拼接为一条特征。
[0073]
如表1所示,选取工业数据集ce-ccp,此数据集来自跨境电商平台的真实流量日志。数据集包含点击标签和购买标签,在本发明中仅使用点击标签进行ctr预测任务。将不同国家视为不同客户机,此数据集包含四个主要国家,分别为美国、巴西、西班牙、法国。不同国家中样本数量和正负样本比例是相似的,但是由于不同国家用户购买行为是不同的,特征分布是极为不相似的,表现为特征非独立同分布。数据集统计信息如表1所示:
[0074]
表1 ce-ccp数据集统计信息
[0075][0076]
实验采用的对比模型为现有的解决数据非独立同分布联邦学习算法。我们使用推荐系统中的常用指标auc来评估模型预测性能,auc定义为roc曲线下的面积。其含义是:随
机选择一对正负样本,当正样本的分数大于负样本分数的概率越高,auc越高,即模型对正负样本的分类性能越好。从表2中可以看出,我们发明的方法基于特征选择和对抗特征对齐的联邦学习算法在跨境电商联邦系统中取得了明显的效果,平均预测准确率auc相比于本地训练提高了0.14%。
[0077]
表2 ce-ccp实验结果
[0078][0079]
我们在公共数据集cifar10上使用步骤(1)所示方法构造数据集进行实验。我们使用acc作为模型性能的评估指标,其含义是预测正确的样本占总样本的比例。同时,我们绘制了训练过程中的预测性能变化曲线,并计算了收敛所需的轮次。
[0080]
表3(a)cifar-10实验结果表3(b)cifar-10实验结果
[0081][0082]
从表3中可以看出,我们发明的方法在公共数据集上也取得了明显效果。如表3(a)所示,本发明平均预测准确率acc相比于本地训练提高了20.68%。同时,如表3(b)所示,本发明大大加快了收敛速度,比传统联邦学习方法fedavg相比,达到相同的预测准确率的轮次减少了2倍。
技术特征:
1.一种基于特征选择和特征对齐的联邦学习方法,其特征在于包含如下步骤:步骤(1)、数据集获取,通过对公共数据集施加不同的高斯噪声,作为不同客户机的本地数据集;步骤(2)、中央服务器下发当前的全局特征提取模块至所有客户机;客户机各自使用本地数据集和接收到的全局特征提取模块,生成中间层特征,并上传至中央服务器;中央服务器利用接收到的各方中间层特征训练客户机鉴别器和特征注意力向量;步骤(3)、中央服务器按指定策略选择客户机子集参与本轮联邦学习,并下发全局模型,包括客户机鉴别器和特征注意力向量;步骤(4)、被选中的客户机利用得到的特征注意力向量构造特征掩膜向量进行特征筛选,并利用特征仿射变换模块进行特征对齐;步骤(5)、被选中的客户机利用得到客户机鉴别器,结合对齐损失和预测损失更新全局模型,最终将得到的本地模型上传至中央服务器;步骤(6)、中央服务器按照一定策略聚合接收到的本地模型生成新的全局模型。2.根据权利要求1所述的一种基于特征选择和特征对齐的联邦学习方法,其特征在于步骤(2)具体实现如下:为了更好的捕获不同客户机本地数据分布之间的差异,使用统一的全局特征提取器对原始特征进行编码,以得到各个客户机的中间层特征集合r,具体公式如下:r=r1∪r2…
∪r
n
ꢀꢀꢀꢀꢀ
(公式1)其中,r
i
表示客户机i的所有中间层特征集合,i
i
表示原始特征;在中央服务器上对客户机鉴别器d和特征注意力向量α进行统一优化,其训练数据来自于第i个对应的客户机的特征集合r
i
,具体公式如下:具体公式如下:其中,d
*
、α
*
分别表示更新后的客户机鉴别器和特征注意力向量,r
i,j
表示第i个客户机的特征集合r
i
中第j个特征,|i
i
|表示第i个客户机原始特征的个数,n表示所有客户机的数量;同时,使用sigmoid的函数与缩放系数ζ来加速特征注意力向量的收敛以及达到二值化的目的;具体来说,特征注意力向量由下式产生:α=sigmoid(ζp)其中p是用于生成特征注意力向量的可训练参数,x表示函数输入值。3.根据权利要求2所述的一种基于特征选择和特征对齐的联邦学习方法,其特征在于步骤(4)具体实现如下:4-1.利用在步骤(2)中得到的优化后的特征注意力向量α
*
按照阈值θ生成掩膜向量m,公式如下:
其中,α
k
表示特征注意力向量α第k位的值,m
k
表示掩膜向量m第k位的值;4-2.按照掩膜向量m,筛选出对应的非独立同分布特征维度子集,在其上施加仿射变换τ
i
,仿射变换模块公式如下:g
i
(r
i
,m)=c(t
i
(θ(r
i
,m)),θ(r
i
,1-m))t
i
(x)=s
i
⊙
x+b
i
ꢀꢀꢀꢀꢀꢀ
(公式5)其中θ表示特征筛选操作,c表示拼接操作,即将对齐后的非独立同分布特征维度子集和独立同分布的特征维度子集拼接成和原始大小相同的特征,s
i
、b
i
为客户机i对应的仿射变换的可训练参数,x表示函数输入值。4.根据权利要求3所述的一种基于特征选择和特征对齐的联邦学习方法,其特征在于步骤(5)具体实现如下:每个客户机接收到由中央服务器发送的全局模型后,先将本地模型替换为全局模型;保留本地模型中特征仿射变换模块g的个性化,以使其能够针对不同客户机数据分布进行个性化的变换,即待更新的初始本地模型w
i
为:其中,本地模型包括特征提取模块φ
i
,特征仿射变换模块g
i
,预测网络模块p
i
;在仿射变换模块g与客户机鉴别器之间,插入一个梯度反转层r以对仿射变换模块进行训练,梯度反转层r在反向传播过程中引入反转操作,具体公式如下:其中,λ是反转系数,表示反转程度大小,x表示函数输入值;通过梯度截断的方式阻止来自损失函数的梯度反向传播至特征提取模块φ
i
;对特征提取模块φ
i
、特征仿射变换模块g
i
、预测网络模块p
i
,整体优化目标如下:整体优化目标如下:整体优化目标如下:其中,p
i*
,φ
i*
分别表示优化后的特征提取模块和预测网络模块p
i
,表示优化后的特征仿射变换模块,m表示数据类别的数量,为客户机i的第j条特征r
i,j
经过变换后得到的特征。5.根据权利要求4所述的一种基于特征选择和特征对齐的联邦学习方法,其特征在于步骤(6)所指的模型聚和操作是指将接收到的本地模型进行平均,作为下一轮联邦学习的
全局模型;由于使用个性化的仿射变换模块g,无需对其进行聚合,只需要对特征提取模块φ和预测网络模块p进行聚合,具体公式如下:其中,s
r
为第r轮采样得到的客户机集合,n为该集合中客户机的数量。
技术总结
本发明公开了一种基于特征选择和特征对齐的联邦学习方法。本发明步骤:1、数据集获取。2、中央服务器下发当前的全局特征提取模块至所有客户机。客户机生成中间层特征并上传至中央服务器。中央服务器利用接收到中间层特征训练客户机鉴别器和特征注意力向量。3、中央服务器选择客户机子集参与本轮联邦学习并下发全局模型。4、被选中的客户机利用得到的特征注意力向量构造特征掩膜向量进行特征筛选,并进行特征对齐。5、利用得到客户机鉴别器,结合对齐损失和预测损失更新全局模型后上传至中央服务器。6、中央服务器聚合接收到的本地模型生成新的全局模型。本发明能够提升联邦学习训练的收敛速度与模型预测精度。收敛速度与模型预测精度。收敛速度与模型预测精度。
技术研发人员:谭敏 褚灵强 夏紫琳
受保护的技术使用者:杭州电子科技大学
技术研发日:2023.05.06
技术公布日:2023/8/9
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/