1、2023 年 5 月 Journal on Communications May 2023 第 44 卷第 5 期 通 信 学 报 Vol.44 No.5冗余数据去除的联邦学习高效通信方法 李开菊1,2,许强3,王豪1,4(1.重庆邮电大学计算机科学与技术学院,重庆 400065;2.重庆大学计算机学院,重庆 400044;3.香港城市大学电机工程系,香港 999077;4.旅游多源数据感知与决策技术文化和旅游部重点实验室,重庆 400065)摘 要:为了应对终端设备网络带宽受限对联邦学习通信效率的影响,高效地传输本地模型更新以完成模型聚合,提出了一种冗余数据去除的联邦学习高效通信方法。该方法
2、通过分析冗余更新参数产生的本质原因,根据联邦学习中数据非独立同分布特性和模型分布式训练特点,给出新的核心数据集敏感度和损失函数容忍度定义,提出联邦核心数据集构建算法。此外,为了适配所提取的核心数据,设计了分布式自适应模型演化机制,在每次训练迭代前动态调整训练模型的结构和大小,在减少终端与云服务器通信比特数传输的同时,保证了训练模型的准确率。仿真实验表明,与目前最优的方法相比,所提方法减少了 17%的通信比特数,且只有 0.5%的模型准确率降低。关键词:联邦学习;通信效率;核心数据;模型演化;准确率 中图分类号:TP391 文献标志码:A DOI:10.11959/j.issn.1000436x
3、.2023072 Communication-efficient federated learning method via redundant data elimination LI Kaiju1,2,XU Qiang3,WANG Hao1,4 1.School of Computer Science and Technology,Chongqing University of Posts and Telecommunications,Chongqing 400065,China 2.College of Computer Science,Chongqing University,Chong
4、qing 400044,China 3.Department of Electrical Engineering,City University of Hong Kong,Hong Kong 999077,China 4.Key Laboratory of Tourism Multisource Data Perception and Decision,Ministry of Culture and Tourism,Chongqing University of Posts and Telecommunications,Chongqing 400065,China Abstract:To ad
5、dress the influence of limited network bandwidth of edge devices on the communication efficiency of federated learning,and efficiently transmit local model update to complete model aggregation,a communication-efficient federated learning method via redundant data elimination was proposed.The essenti
6、al reasons for generation of redundant update parameters and according to non-IID properties and model distributed training features of FL were analyzed,a novel sensitivity and loss function tolerance definitions for coreset was given,and a novel federated coreset construction algorithm was proposed
7、.Furthermore,to fit the extracted coreset,a novel distributed adaptive sparse network model evolution mechanism was designed to dynamically adjust the structure and the training model size before each global training iteration,which reduced the number of communication bits between edge devices and t
8、he server while also guarantees the training model accuracy.Experimental results show that the proposed method achieves 17%reduction in communication bits transmission while only 0.5%degradation in model accuracy compared with state-of-the-art method.Keywords:federated learning,communication efficie
9、ncy,coreset,model evolution,accuracy 收稿日期:20221016;修回日期:20230204 通信作者:王豪, 基金项目:国家自然科学基金资助项目(No.42001398);重庆市自然科学基金资助项目(No.cstc2020jcyj-msxmX0635);重庆市博士后研究项目特别资助项目(No.2021XM3009);中国博士后基金资助项目(No.2021M693929)Foundation Items:The National Natural Science Foundation of China(No.42001398),The Natural Scie
10、nce Foundation of Chongqing(No.cstc2020jcyj-msxmX0635),Chongqing Postdoctoral Research Program Special Funding(No.2021XM3009),China Postdoctoral Foundation(No.2021M693929)80 通 信 学 报 第 44 卷 0 引言 随着智能边缘设备的普及和应用,个性化、低时延的人工智能应用需求,如人脸识别、智能驾驶、智能监控等不断涌现。传统的基于云的集中式机器学习(ML,machine learning)1算法虽然可以训练更加准确的人工智能
11、模型,但存在高传输时延、高网络带宽压力以及用户隐私泄露等弊端。联邦学习(FL,federated learning)2允许多个分布式边缘设备在云服务器的统一协调下,协作完成一个全局模型的训练,而不需要传输自身所采集的原始数据。与直接传输原始数据的集中式 ML 算法相比,FL 选择上传训练后的模型参数,能有效地降低对云端的网络带宽压力,同时保护用户的隐私3。然而,由于联邦学习中边缘设备网络带宽资源受限,通信效率问题一直是制约联邦学习落地实现的一个重要瓶颈4。目前,已有不少提高联邦学习通信效率的方法。一类是通过降低总的通信轮数加快模型收敛的方法5;另一类是减少单次模型聚合中总通信比特数的方法,如模
12、型的稀疏化、量化等数据压缩技术6。传统的基于模型压缩的方法的主要思想是从原始的训练参数中去除一部分冗余的更新,只传输少量的梯度信息来达到减少通信量的目的。模型压缩的方法虽然已被证明能在一定程度上提高联邦学习的通信效率,但并没有从本质上探索冗余更新参数产生的根本原因。因此,如何从本质上探究冗余更新参数产生的原因,进而提高联邦学习的通信效率是本文的主要研究内容。随着智能设备使用量的急剧增长,设备所产生和采集的原始数据规模也呈现海量增长的趋势。为满足高质量智能应用服务的需求,需要在边缘设备上布置高度复杂化的人工智能模型来完成模型训练,这间接导致在多个分布式设备上产生高维模型更新参数。然而,在联邦学习
13、场景中,边缘设备所采集的原始数据通常具有冗余特性7-8,如视频和智能感知数据,仅有小部分数据对模型训练来说是重要的或者有用的。例如,图像数据就包含了大量的冗余数据,尤其是图像中变化不明显的部分9。冗余信息只能对模型训练带来极小的帮助,但需要布置更复杂的网络模型来完成训练,这间接导致网络模型参数数量也呈现高维增长的趋势。本文旨在提出一种新的提高联邦学习通信效率的优化方法。该方法通过探索冗余更新参数产生的本质原因,从数据的角度考虑,从原始数据集中去除一部分冗余数据,并布置一个适配的小型演化模型使训练所需的网络模型更小,在减少终端与云服务器间通信量的同时,保证训练模型的准确率。本文的主要贡献如下。1
14、)提出了冗余数据去除的联邦学习高效通信优化框架。该框架探索了冗余更新参数产生的本质原因,并从根本上提高了联邦学习的通信效率,为提高联邦学习通信效率开辟了一个新的视角。与目前基于模型压缩的方法相比,所提方法从原始数据集中去除冗余数据,并部署一个更小的匹配的演化网络模型,间接地减少了每个边缘设备总的传输比特。2)提出了一种联邦核心数据集构建算法,以去除原始数据集中的冗余数据。该算法在充分考虑联邦学习的非独立同分布(non-IID,non-independently identically distribution)特性的基础上,重新定义了核心数据集敏感度和损失函数容忍度公式,扩展了现有集中式或基于
15、独立同分布(IID,independently identically distribution)的核心数据集构建算法在联邦场景中的应用。3)提出了一种分布式自适应模型演化机制。该机制考虑初始化稀疏的网络模型、本地模型和聚合模型的自适应演化,定义网络模型连接重要性以及重要性评估机制,在每次训练迭代前动态调整了训练模型的结构和大小,在降低边缘设备模型复杂度的同时,保证了训练模型的准确率。4)理论上证明了所提方法的收敛性,且在实验中验证了所提方法的有效性。仿真实验表明,与目前最优的方法相比,所提方法减少了 17%的通信比特传输数目,且只有 0.5%的模型准确率降低。1 相关工作 与本文密切相关的工
16、作主要包括模型的稀疏化和模型参数的量化减少 2 个方面,下面分别对这2 个方面的相关工作进行阐述。模型的稀疏化主要是从原始更新向量中选择一部分更新参数上传至云服务器,来减少每轮迭代终端与云端的通信比特数。文献10-12主要基于评估局部更新对全局模型的贡献度,选择一部分重要的11或者相关的12本地更新参与全局模型的聚合。文献4,13-14研究联合减少上行和下行通信量的优化方法。其中,文献4提出稀疏三元第 5 期 李开菊等:冗余数据去除的联邦学习高效通信方法 81 压缩(STC,sparse ternary compression)框架,扩展了现有的 top-k 梯度稀疏化压缩技术,实现了下游压缩
17、以及权重更新的三元化和最优 Golomb 编码;文献13提出联合训练的三元量化(FTTQ,federated trained ternary quantization)算法,通过自我学习的量化因子优化客户端的量化网络;文献14提出通用梯度稀疏化(GGS,general gradient sparsification)框架,设计梯度修正和本地梯度更新批归一化层 2 个机制。文献15-17考虑通信与其他因素的平衡,包括梯度稀疏程度控制的最佳通信与计算15、测试精度与稀疏编码开销16,以及通信效率与隐私保护17之间的均衡。模型参数的量化减少是通过将原始更新参数限制在一个缩小的数值集上。文献18-20
18、研究有精度损失的模型量化方法。其中,文献18提出signSGD 的量化方法,该方法把更新参数的每个梯度值量化为二进制符号;文献19联合考虑周期性平均、部分设备参与以及量化消息传递 3 个关键特征,提出一种具有周期性平均和量化的通信优化方法;文献20联合量化模型训练过程中的局部更新和全局更新。文献21-22研究通信与精度均衡的模型量化方法。其中,文献21动态调整通信和精度之间的平衡,提出增强的 FFL(fast federated learning)方案;文献22提出 AdaQuantFL 的自适应量化策略,通过在训练过程中自适应地改变模型量化的水平来实现通信效率和模型误差之间的均衡。文献23-
19、24研究其他方法来实现模型参数的量化。其中,文献23将随机梯度分解为规范梯度和归一化块梯度,提出分层梯度量化框架;文献24提出由量化指标模块、量化策略模块和量化优化模块组成的自动梯度量化方法。无论是模型的稀疏化还是模型参数的量化方法,它们都只是从模型更新参数的角度,通过从原始更新向量中选择一部分子更新梯度或者是量化的更新上传至云服务器,来减少冗余更新参数的传输,从而达到减少通信量的目的。这些方法虽然已被证明能在一定程度上提高联邦学习的通信效率,但并没有探索冗余更新参数产生的根本原因。此外,文献25针对 k-center 和 k-median 聚类问题提出了基于最远点算法的核心数据集构建方法。该
20、方法最初是针对中心式环境的最小闭包球(MEB,minimum enclosing ball)问题提出的,其主要思想是通过迭代地在原始数据集中选择离当前中心足够远或者最远的点添加至核心数据集,直至核心数据集包含了给定范围内的所有数据点为止。文献26提出了一种基于随机采样的核心数据集构造算法,其主要思想是从原始数据集中随机采样构建一个核心集。这类方法虽然在一定程度上提高了核心数据集的构建效率,但通常需要一个大的核心集来实现与原始数据集的良好近似。Lu 等27提出了一种支持各种 ML 问题的鲁棒性核心数据集构建算法,该算法可以支持各种机器学习问题。虽然上述方法在实践中被证明有效,但这些方法要么只考虑
21、了集中式环境下的核心数据集构造,要么只考虑了典型的满足数据 IID 的分布式场景的数据集构造,而这与典型的联邦学习 non-IID 去中心化场景有着本质区别。因此,不能直接将现有的基于中心式或者传统分布式的核心数据集构建算法直接应用于本文的联邦学习场景中,需要根据联邦学习数据的 non-IID 特性,设计新的核心数据集构建算法。2 冗余数据去除的高效通信方法 2.1 问题定义 表 1 总结了本文所用到的符号和对应的含义。为了提高联邦学习的通信效率,本文将联邦学习的整个优化过程表示为一个双目标优化问题。第一个优化目标 P1是减少终端设备与云服务器之间的总传输比特数,主要包括上行和下行传输比特数。
22、具体地,定义tb为所有设备在第t轮迭代上传至云服务器的总传输比特,tb为第t轮迭代服务器传输至终端设备的下行传输比特数。那么,整个模型训练过程的总传输比特数可定义为每轮迭代传输比特数的累加。假设全局模型经过T轮迭代后收敛,记TB为累计通信比特数,则有 1TTtttBbb(1)那么,第一个优化目标1P为 1minimize TPB(2)由于通信比特的减少不应该以牺牲模型的准确率为代价,因此,本文的第二个优化目标2P是保证训练模型的准确率。记TA为经过T轮迭代后全局模型的收敛准确率,则有 82 通 信 学 报 第 44 卷 2maximize TPA (3)表 1 符号和对应的含义 符号 含义()
23、F 全局加权平均损失函数()iF 设备 Ni第 t 轮迭代的本地损失函数()itF 设备 Ni第 t 轮迭代的梯度值 i 设备 Ni的学习率,i t 设备 Ni第 t 轮迭代的本地模型更新 t 第 t 轮迭代的全局模型参数 T 第 T 轮迭代的全局模型参数 iD 设备的本地数据集 D 全体样本空间 N 终端设备数目 损失函数容忍度 原始数据集 X 的核心数据集 TA 全局模型的收敛准确率 TB 累计通信比特数 2.2 模型框架 为了实现式(3)中的目标,本文从数据冗余的角度,提出了冗余数据去除的联邦学习高效通信方法。如图1所示,所提方法的总体流程主要包括4 个步骤,以第t轮迭代为例进行如下说明
24、。1)核心数据集构建。每个设备i从其原始数据集i中去除一部分冗余数据,得到核心数据集i。注意,虽然i的规模比i要小很多,但i具有与i相同的样本空间。2)本地模型训练。每个设备i根据其核心数据集i进行本地模型训练,得到其本地模型更新,i t。3)模型演化。每个设备i根据第t轮迭代的模型剪枝率t对其本地模型进行稀疏化,然后上传稀疏化后的本地模型,i t至云服务器。云服务器在接收到稀疏化后的本地模型之后,进行全局模型聚合,并得到更新的全局模型1t。此外,为了适配所有用户的核心数据和减少下行的通信比特数,所提方法在云服务器端对更新的全局模型进行二次剪枝。4)模型下发。云服务器将剪枝之后的全局模型1t下
25、发给每个设备,模型训练进入第1t 轮迭代。2.3 联邦核心数据集构建 基于敏感度取样的核心数据集构建是目前主流 图 1 冗余数据去除的联邦学习高效通信方法 第 5 期 李开菊等:冗余数据去除的联邦学习高效通信方法 83 的工作,其主要包括集中式28和分布式292种场景。直接将现有方法应用于联邦学习场景不仅会严重影响核心数据集的提取质量,改变原有数据的分布特点,甚至会严重降低训练模型的准确率。与传统方法相比,所提方法进行了2个方面的改进。一方面,基于联邦学习的non-IID特性,给出了新的核心数据集损失函数容忍度的定义。设置核心数据集联合损失函数容忍度,并将定义为只有一个设备的核心数据集被用于模
26、型训练时对全局模型损失函数的影响;另一方面,定义了一个新的敏感度,考虑不同数据点的不同权重,并将每个数据点的敏感度定义为由该点所产生的损失函数相对于所有数据点的加权平均损失函数的比重。接下来,描述几个与所提方法相关的定义和定理。定义 1-容忍度。假设可以从设备i的原始数据集i中去除一部分冗余数据,得到子数据集i满足ii,且使用i进行模型训练,对全局模型的影响满足式(4),则称i是i的接近。111(,),(),(,)iNiNiNiFFF (4)其中,01i 表示设备i的全局模型损失函数容忍度,1(,)iNF 表示所有设备使用原始数据集 进 行 模 型 训 练 所 得 到 的 全 局 损 失 函
27、数,1(,)iNF 表示所有用户中仅有用户i使用子集i进行模型训练所得到的全局损失函数。定理 1 假设从设备i的原始数据集i中提取了一个子集i,所有用户的全局模型损失函数的容忍度为,每个用户的模型损失函数的容忍度为i。根据联邦学习的基本定义和性质,有 1|()()(,)iiiiNiFFF (5)当 数 据 满 足 IID 时,有1|i|1N以及1iNN。当数据满足non-IID 时,有1|iN、1iN以及|,1,2,iiiN。注意,当数据满足non-IID 时,每 个 设 备 的 损 失 函 数 容 忍 度 为|ii。其主要思想如下:如果数据集的大小比较小,那么去除少量数据对全局模型影响较大,
28、因此,设置更大的损失函数容忍度;反之,冗余数据较多,对全局模型的影响较小,故设置更严格的损失函数容忍度。终端设备数据集大小的参数可以通过同态加密等安全技术和云服务器进行交互。证明 根据联邦学习的性质,有 11(,)()|NiiNiiFF (6)11(,)()()|iNiiiNiiiFF DF (7)其中,iN表示除去设备i。基于式(6)和式(7),定义 1 中的式(4)可修改为 1|()()(,)iiiiNiFFF (8)当数据满足IID时,式(7)可修改为 1()(),()iiiNFFFN (9)损失累加后,表示为 111()()()NNNiiiiiiFFF(10)当数据满足 non-IID
29、 时,式(8)可表示为 1()()(,)|iiiiiiNFFF (11)损失累加后,有 111111()()|()|()|)|(NNNiiiiiiiiiiNjiNiiNiiiFFFFF(12)证毕。在定义了全局模型损失函数容忍度之后,为了从原始数据集中去除冗余数据,需要重新定义每个数据点的冗余度。与文献28-29类似,所提方法采用敏感度来量化每个数据点的冗余度。不同的是,所提方法考虑了不同数据点的不同权重,将每个数据点的敏感度定义为该数据点的损失函数与数据集中所有数据点加权平均损失函数的差距。差距越大,表示该数据点对全局模型越重要,则越不84 通 信 学 报 第 44 卷 冗余;差距越小,表示
30、该数据点对全局模型来说影响较小,越冗余,具体如定义 2 所示。定义 2 敏感度。记,i j为数据集i 中任意的数据点j对应的权重,则该数据点j的敏感度,i j可表示为 ,1()sup()ii jji jwi jjjF xF x(13)其中,,i j表示在w()w变化时数据点j对数据集中所有数据点的模型损失函数的影响。,i j的值越大,数据点j越重要,越应该被包含在核心数据集中。通过定义2可以发现,由于给定的模型参数w是不断变化的,很难直接给出数据点j的敏感度。因此,与前期研究相似,本文采用计算敏感度边界的方法来评估每个数据点的敏感度。首先,采用聚类的方法将原始数据集划分为多个聚类簇检测冗余和异
31、常数据。然后,将聚类在一起除聚类中心点的数据点视作冗余数据,而远离其他数据点的异常数据点和聚类中心点数据看作核心数据。具体地,将原始数据集i 划分为K个聚类簇,每个聚类簇用ki表示。在任意的簇ki中,记,ki j为任意数据点j的权重,,ki j为聚类簇k中与数据点j标签相同的数据点集合,,ki j为与数据点j标签不相同的数据点集合,,ki jW为,ki j中所有数据点的权重之和,,ki jW为,ki j中 所 有 数 据 点 的 权 重 之 和,且,ki j,(,)kppi jki jxy,,(,)kppi jkki ji jxyW。具体的敏感度边界如定义3所示。定义 3 敏感度边界。记,i
32、jS为数据集i中数据点j的敏感度边界,满足 ,11dxdxi ji jKkki ji ji ji ji jkSWW(14)其中,2,(,),(),dxepjp jkxyppi jxxWi j表示数据点j与其标签相同的数据点集合,ki j中所有数据点的加权平均距离,,(,)kppi jki jp jki jxyCW,aI表示利普希茨常数,I表示聚类中心的平均距离,a由实际数据集 计 算 得 到,取 值 范 围 为2.53.5a;2,(,),(),dxepjp jkxyppi jxxWi j表示数据点j与其标签相同的数据点集合,ki j中所有数据点的加权平均距离,,(,)ppi jki jkp j
33、i jxyW。敏感度边界表示数据点与每个簇中数据点集合中所有数据点的加权平均距离,距离较大说明该数据点离其他数据点较远,与其他数据点不相似,冗余度较低;反之,冗余度较高。敏感度边界是一个可以计算得到的实数值,计算得到敏感度边界后就可以根据敏感度边界的加权平均值计算核心数据集的抽取概率,进行核心数据集抽取。联邦核心数据集构建如算法1所示。算法 1 联邦核心数据集构建 输入 设备集合1Nii,数据集集合1Nii,全局模型损失函数容忍度,错误率,参数,簇个数K 输出 核心数据集i 1)划分i为K个聚类簇 2)for 数据点1:ij do 3)for 簇kKdo 4)评估,d xp ji jp jWW
34、、以及,dxi j 5)end for 6)根据式(13)评估,i jS 7)end for 8)|,11|iii jijSS 9)for 数据点1:ij do 10),|,1ii ji ji jjSPS 11)end for 12)211 loglog|iiiiicSSD 13)从数据集i中提取核心数据集i 2.4 分布式自适应模型演化 为了更好地适配所提取的核心数据,保证训练模型的性能,终端设备需要布置一个适配的小型训练模型。然而,由于不同的终端具有不同的核心数第 5 期 李开菊等:冗余数据去除的联邦学习高效通信方法 85 据集,因此很难直接给出一个最优的神经网络模型去适配所有的核心数据集
35、。神经网络模型稀疏演化是一种构建稀疏网络的重要方法,被成功且广泛应用于机器学习的各个领域。其中,稀疏演化训练(SET,sparse evolutionary training)30算法自适应地训练稀疏化网络模型,从一个初始的Erdos-Rnyi随机网络开始,每个相邻层都满足如式(15)的连接概率,()lm vP w。在每次迭代训练中,SET删除固定比例的不重要网络连接,并将相同比例的重要网络连接重新加入训练模型中。重复这一步骤,直至得到最优的演化模型。1,1()()lllm vllnnP wn n(15)其中,ln 和1ln分别为层l 和层1l的神经元个数,为模型稀疏化比例,1()llnn为层
36、l 和层1l之间的网络连接数。SET算法可以有效地演化网络模型的拓扑结构,但它的应用场景主要集中在单一模型的集中式训练环境中。这与联邦学习的分布式环境具有本质的区别。因此,本文提出了一种新的分布式自适应模型演化算法,如算法2所示。算法 2 分布式自适应模型演化 输入 设备集合1Nii,核心数据集 1Nii,稀疏化参数,用户参与比率r,训练块大小 B,本地训练轮数 E,模型层数 L及参数 输出 全局模型T,通信比特数TB 1)服务器:2)初始化初始剪枝率0i、TB 及全连接网络模型 3)for层lLdo 4)根据式(14)初始化稀疏网络模型 5)end for 6)初始化0 7)for 0,1,
37、2,tTdo 8)|mr,111mtttiim 9)从t中去除0i%不重要的连接 10)1|mtTTtiiBBm 11)end for 12)用户i:13)tit 14)for 1,2,eEdo 15)for bBdo 16)(,)tttiiiiiFb 17)end for 18)end for 19)for从ti中的每条连接jdo 20)根据式(16)评估,ti jI 21)end for 22)根据式(17)评估第 t 轮的剪枝率ti 23)从ti中去除ti%不重要的连接 24)上传演化的本地模型ti至云服务器 具体地,所提算法进行了2个方面的改进。首先,将原来的集中式模型演化扩展到分布式
38、场景。其次,根据联邦学习的特点设计了一种新的模型演化方式,包括如何确定不重要的连接以及如何删除这些连接。具体来说,所提算法包括如下几个阶段。在初始全局模型上进行网络模型稀疏化。在联邦学习训练之前,根据式(15)中的稀疏化控制变量初始化一个稀疏的全局模型,并将稀疏化的全局模型下发给每个选择的终端。构建初始化稀疏模型有如下几方面的优势。首先,布置一个小型稀疏模型开始联邦学习训练可以大大减少每个参与设备在每轮迭代时所产生的网络模型参数;其次,使用小型稀疏模型可以更好地适应所提取的核心数据集;最后,使用小型稀疏模型可以减少本地设备训练所使用的计算资源的消耗。每个终端根据其自身的模型剪枝率动态地对本地模
39、型进行稀疏化操作。每个终端根据定义4和定义5的连接重要性和重要性评估机制,自适应地从本地模型中去除一部分不重要的模型参数及网络连接,并将演化之后的模型传输给云服务器。为每个用户设置动态变化的剪枝率主要有2个方面的考虑。一方面,每个终端可以根据自身的剪枝率对本地模型而非全局模型进行剪枝,充分考虑了不同终端的个性化特性;另一方面,设置动态变化的剪枝率,可以更好地满足学习模型越来越收敛的特性。全局模型聚合,并在聚合的全局模型上进行二次网络模型演化。由于从每个终端上传稀疏化本地模型只考虑了其自身的个性化特征,并不能表征其他所有设备的全局特征。同时,为了更好地减少下行的通信比特数,本文在标准的联邦平均聚
40、合之后,进行进一步的网络模型演化。86 通 信 学 报 第 44 卷 值得注意的是,由于在每个局部训练迭代中去除一部分不重要的连接和模型参数可能会引起模型性能的波动。因此,本文采用在最后一个局部模型训练迭代时进行去除操作。定义 4 连接重要性。记设备i在第 t 轮迭代根据其本地核心数据集进行本地训练,所得到的本地模型更新为ti,且,1,ttttiii ji N,更新参数ti中每个子更新,ti j的重要性表示为,ti jI,且,ti jI定义为去除子更新参数,ti j对模型损失函数的均方差,即 2,(,)(,0)tttti jiiiii jIF CF C (16)其中,(,)tiiF C 和,(
41、,|0)ttiii jF C分别表示不去除和去除第j个子更新时的模型损失函数值。从式(16)可知,如果要评估去除每个子参数对模型的损失函数影响,需要评估N个不同版本的网络模型,这是非常耗时的。因此,为了解决这个问题,本文采用泰勒级数展开来近似连接重要性,ti jI,具体的近似值如定理2所示。定理 2 记,ti j和,ti jg分别表示第j个子更新以及其相应的子更新梯度值,第j条连接的重要性,ti jI可近似表示为 ,12tttttti ji ji ji ji jiIgH (17)其中,,ti jti jFg表示第j个子更新梯度值,,ti jH表示第j行Hessian矩阵(二阶导数矩阵)。定义
42、5 重要性评估机制。由于训练模型是随着通信迭代轮数的增加越来越收敛的。因此,本文设计了一个动态的自适应连接重要性评估机制。其主要思想是在联邦学习的开始阶段,通过从当前模型中去除更多不重要的连接或参数来加速模型收敛速度。当训练得到一个更适应的模型时,所提方法就动态地减少被去除的连接数,以保证模型的稳定性和准确性。具体地,记设备i的初始剪枝率为0i,训练过程中使用指数衰减来表征模型剪枝率的变化,则迭代轮数t时的剪枝率ti为 0exp()tiit (18)随着通信迭代轮数t的增加,训练模型变得更加收敛,阈值ti也变得非常小,这使从当前网络模型中删除的连接数大大减少。通过不断保留网络中不重要或无用的网
43、络连接和模型参数,可以保证训练模型的准确性。由于全局模型是根据每个设备自身的剪枝率进行的演化,并不适配所有的用户数据。因此,所提方法在聚合的全局模型上进行第二次网络模型演化,即在聚合的全局模型上去除一部分权重为0的参数更新,一方面使全局模型更加紧致,减少了下行通信比特数;另一方面,对聚合的全局模型进行演化,使所训练的模型在保证满足设备个性化特征的同时又能满足其他所有设备的数据特点。3 收敛性证明 本节给出所提方法的收敛性证明。神经网络中的损失函数通常满足如下2个性质10,12。性质 1-平滑性10。损失函数 F 为-平滑函数,则对于,,有 2()()(),()|2FFF(19)其中,表示2个向
44、量的内积,()F表示梯度函数,|表示范数。性质 2 Lipschitz条件12。损失函数 F 满足-Lipschitz条件,则对于,,有 ()()|FF(20)基于以上损失函数的2个性质,本节给出了如下的收敛性证明,其函数收敛性满足定理3。定理 3 收敛性保证。假设全局模型损失函数F 满足-平滑性和-Lipschitz条件。记t为第t轮迭代经过全局剪枝之后的全局模型参数,*为全局模型参数最优值,经过迭代轮数T,全局损失函数 F 满足式(21),其表明随着迭代轮数的增加,全局参数向量最终收敛至一个固定值。*0*22110()()()()()2TTTTttFFFF (21)其中,T 为经过 T 轮
45、迭代的全局模型参数,22()tF。证明 由于下一轮迭代的模型更新值是在上一轮剪枝之后的模型更新基础上进行迭代训练第 5 期 李开菊等:冗余数据去除的联邦学习高效通信方法 87 所得到的,因此一次 SGD 迭代的模型更新可以表示为 1(;)()ttttFbm (22)其中,t 为第t轮迭代经过全局剪枝之后的全局模型参数,1t为第t轮迭代的全局模型参数,()tm 为模型参数t 的掩码向量,为 2 个矩阵对应位置元素进行乘积。由于训练过程中 t 不可以提前获得,因此(;)(;)ttFbFb,()()ttmm,为了简化证明,下面将(;)tFb和()tm 分别表示为()tF和tm,则式(22)等价于 1
46、()ttttFm (23)基于式(23)和假设 1,有 1*22()()|,()()()(),()|,()|,2tttttttttttttFFmFFFFFmmFmm (24)进 一 步 地,因 为()|,ttttFmm()|tttFm,则式(24)可表示为 1*22*222*()()|,()()()(),()|,()|,2()()()(),()()|,2()()()()()tttttttttttttttttttttttttFFmFFFFFmm FmmFFFFFm FmmFFFFFm22()|,2tttt Fmm(25)由 于22()()tttFmF 2,则式(25)可表示为 1*222*()(
47、)|,()()()()()2tttttttFFmFFFFFm (26)由于损失函数 F 满足 Lipschitz 条件,则根据性质 2,有 ()()ttttFF(27)根据式(27),式(26)可进一步表示为 1*222*222*222*222*()()|,()()()()()2()()()()2()()()2()2()()ttttttttttttttttttttttFFmFFFFFmFFFFmFFmFFFF 22222*()()22tttttttFF (28)将式(28)两边展开,可以得到 1*22()()()()2ttttFFFF (29)根据式(29),经过T 轮迭代,有*0*22100
48、221*0()()()()()()2()2TTTtttTTtttFFFFTFTF (30)证毕。4 实验 4.1 实验配置 网络模型和数据集。与文献2,6类似,本文使用联邦学习常用的 MLP 和 CNN 模型进行训练。MLP 模型由一个输入层、2 个隐藏层以及一个输出层组成。其中,每个隐藏层包含 200 个神经元节点。在整个模型训练过程中,使用 ReLU 作为激活函数。CNN 模型包含 10 个 55 的卷积层(第一个卷积层具有 32 个通道,第二个卷积层具有 64 个通道,每个卷积层之后都设置了一个 22 的最大池化层),一个具有 512 个神经元单元的全连接层,ReLU 激活层,以及最后的
49、 softmax 输出层。实验中,使用MNIST 和 CIFAR-10 这 2 个图像数据集对所提方法性能进行测试。88 通 信 学 报 第 44 卷 数据划分及联邦环境。设置用户数目 N 和每轮通信迭代的用户参与比例r 分别为 100 和 1。模型训练最小的块大小B=10,本地模型训练轮数E=5,学习率=0.01。同时,为了研究不同数据分布对模型训练的影响,以 MNIST 数据集为例,本文实验测试了 2 种不同的数据划分方式。一种是 IID,将训练数据集随机划分给参与训练的 100 个用户,每个用户分配 600 个采样样本;另一种是 non-IID,将训练数据集按照其标签排序分成200 个大
50、小为300 的碎片,给每个参与训练的用户随机分配 2 个碎片,且每个参与用户只包含 2 个不同类别的标签。核心数据集构建和模型演化。表 2 给出了本文主要实验参数设置。由于参数以及聚类簇个数K是核心数据集构建过程中的 2 个重要因素,因此本文测试了 5 组不同和 K 的取值,即(,)K (5,16),(4,8),(3,6),(2,4),(1,2)。除此之外,设置全局模型的损失函数容忍度和错误率分别为 0.05和 0.08。同时,为了更加全面地分析不同模型演化参数对所提方法性能的影响,测试了在相同核心数据 集 构 建 参 数 条 件 下,100,50,30、0,0.1,0.5,1.0以及0,0.