面临的问题:网络或计算资源的差异–> 客户不会同时更新梯度,这可能需要更多的时间等待
解决方案:提出了一种新颖的 AFL 框架 VAFL。VAFL可以减少约51.02%的通信次数,平均通信压缩率为48.23%,并且使模型收敛速度更快。
联邦学习的提出:机器学习和人工智能需要输入大量数据才能获得性能良好的模型,这满足了每个设备中存储的数据的需求。例如,智慧城市[1]、医疗[2]、信用评估[3]。但是,这些数据很敏感。同时,数据之间的关系往往是孤立的、碎片化的。这限制了其处理数据的应用。联邦学习是一种保护隐私的分布式机器学习技术。数据持有者只需要提供一个使用本地数据训练的本地模型和中央节点交互
传统的联邦学习在灵活性和可扩展性有很大的挑战:
异步联邦学习主要解决在任意异构客户端(异构数据分布、计算资源、网络条件等)存在的情况下,中央服务器参数如何聚合的问题。
本文的方法:提出了一种新的异步联邦学习优化算法(VAFL,可以减少通信成本和空闲时间)解决前俩个挑战
本文针对联邦学习训练中通信成本过高以及客户滞后的问题,提出一种基于梯度、客户数量和模型准确率的通信值计算的优化联邦学习异步算法(VAFL)。与Chai[18]的方法不同,我们使用客户端的梯度变化、测试集上的准确率以及客户端的数量来评估客户端的通信价值,
使用五台 Raspberry Pi 设备和两台笔记本电脑构建了边缘计算联邦学习的实验系统,还有一个中央设备。所有设备均连接至同一局域网。
我们使用PySyft提供的客户端类和服务器类通过WebSocket进行连接,以方便构建我们的联邦学习系统。
我们在每个客户端上运行我们的客户端程序(总共五台树莓派设备和一台笔记本电脑,彼此无法获知对方的存在,保证了客户端之间一定程度的安全和隐私)。每个客户端都连接到服务器,服务器只能获知每个客户端的型号和客户端总数。服务器使用VAFL更新模型,然后将算法得到的模型返回给客户端,客户端使用该模型进行预测。
我们使用 MNIST 构建了分发给每个客户端的 IID 和 Non-IID 数据,并分别进行了实验。对于 IID 情况,训练集平均分配给所有客户端,每个客户端包含带有 10 个标签的样本。对于非独立同分布数据集分布,训练集在标签和具有不同标签的样本数量方面有所不同。有些客户端包含所有标签,每个标签下有大量样本,有些客户端只包含少量标签,每个标签下有一些样本
实验使用准确率和通信压缩率
通信压缩率反映了客户端与服务器之间的通信被压缩的程度,压缩率越大,压缩程度越高。虽然过度的压缩率可以减少通信损耗并节省时间,但通常会伴随着模型 Acc 的下降。
思考:通信值得计算是否有问题?客户端通信值的计算频繁吗?