联邦学习框架FedCS——面向异构资源的客户端选择问题(Client Selection for Federated Learning with Heterogeneous Resources in Mobile Edge)
1主要目标:
Federated Learning(FL)是一个分散的学习框架,使模型具有隐私性,可以与实用的蜂窝网络中的异质客户合作。
1.1 矛盾——所要解决的问题:
考虑联邦学习客户的异构客户资源(数据资源:异质size more data more time、计算能力:需要更长时间更新模型、无线信道条件:传输 更新时间变长)——延长服务器的聚合更新步骤
1.2 提出FedCS框架解决问题:
works efficiently with clients with heterogeneous resources
管理异构客户 FedCS设定了一定的截止日期;客户端在FL协议中下载,更新和上传ML模型。然后,MEC操作员选择客户端,以便服务器可以在有限的时间范围内汇总尽可能多的客户端更新,从而使整体培训过程更高效,并减少了训练ML模型的所需时间。这是通过客户选择问题来提出的,该问题确定了哪些客户参与培训过程,以及每个客户必须完成该过程的同时考虑客户本身的计算和通信资源约束,可以以贪婪的方式解决。
2 FedCS框架:
2.1 模型流程
1.初始化信息: 任意参数或者 预训练参数
2.资源请求: 选择任意K*C客户, 让他们提交资源信息
3.用户选择:根据资源信息评估 Distribution ||| Scheduled Update and Upload steps 该用户所需时间 决定哪些用户进入后续步骤
4.模型分发:服务器把全局模型的参数分给工人
5.更新、上传调度:工人根据操作员分配有限RBs资源同时更新全局模型(上传参数)
6.聚合:服务器聚合更新模型参数
7.迭代:除初始化步骤外 其他步骤2-6迭代至模型设定的精度阈值
2.2 模型对比(传统模型 vs FedCS)
对比 of Steps | Protocol 1(Traditional) | Protoclo 2(New Fedcs) |
---|---|---|
Initialization: | 任意|公开数据预训练——初始化全局模型 | 任意|公开数据预训练——初始化全局模型 |
Resource Request: | 随机选择K*C个客户,声明资源信息 | |
Client Selection: | 服务器任意选择 K × C个人 | 根据资源信息 操作员决定那些员工进入后续操作 |
Distribution: | 服务器把全局模型的参数分给工人 | 服务器把全局模型的参数分给工人 |
Scheduled Update and Upload: | 工人使用本地数据更新模型,并上传参数 | 工人根据操作员分配有限RBs资源更新全局模型 |
Aggregation: | 服务器聚合更新模型参数 | 服务器聚合更新模型参数 |
iteration: | 除初始化步骤外 其他步骤迭代至精度阈值 | 除初始化步骤外 其他步骤迭代至精度阈值 |
资源信息: 无线信道状态,计算能力(更新模型备的CPU或GPU)以及相关的数据资源大小(size)
2.3 工人选择算法:
优化目的是在让中心服务器在截止时间内聚合更多工人上传的模型参数 以 最高效完成模型训练任务
基于[5]的结论,每回合中使用的更多的客户会节省全局模型训练至所需性能的总时间。(每轮迭代选更多的人最高效)
在此步骤中操作员依据资源信息选择那些能在截止时间前完成Distribution ||| Scheduled Update and Upload steps的工人,同时决定何时将RBs(LTE [13]中定义的最小单位信道带宽资源)分配给所选工人。
为简化流程,假定工人一个接一个地完成参数上传步骤(因为即便多个工人通过共享RB并行上传模型参数,传输所有模型参数所需的时间与假定顺序上传的相同。)
核心思想:根据贪婪算法,每次选择的工人加入所带来的时长增加最小
2.4 优化模型:
决策变量:S中工人的选择情况,是一个0-1向量组(0未被选中,1已选中)
目标函数:最大化每轮迭代时选择的客户人数
约束条件:每轮迭代的截止时间要长于 模型更新的所有步骤总体耗费时长。
Tround表示每轮迭代的截至时间
Tcs表示每轮迭代时客户选择的耗费时间
TSd表示每轮迭代时模型参数分发所需总时间
Θ|S|表示每轮迭代时所选择工人群体完成本地训练和参数上传的总时间
Tagg表示每轮迭代时服务器进行模型聚合的总时间
注:每个工人的RBs由操作员分配,确定后便可计算出工人上传模型参数总耗时。
3总结:
本文所要解决的问题是异构客户资源(数据资源:异质size more data more time、计算能力:需要更长时间更新模型、无线信道条件:传输 更新时间变长)——延长服务器的聚合更新步骤,进而降低网络模型更新的效率。
为解决上述问题,作者提出了FedCS框架, 相较于传统的模型,其创新点在于增加了 Resource Request步骤,该步骤可以帮助移动边缘计算(MEC)服务器依据工人上传信息评估其“优劣”。 显然 针对上述三种异构情况, 若某工人的本地数据集太大/小,计算能力弱、信道状况差会通过工人选择算法(基于贪婪)直接被pass掉,进而保证全局模型训练效率。