Federated learning (FL) is a general principle for decentralized clients to train a server model collectively without sharing local data. FL is a promising framework with practical applications, but its standard training paradigm requires the clients to backpropagate through the model to compute gradients. Since these clients are typically edge devices and not fully trusted, executing backpropagation on them incurs computational and storage overhead as well as white-box vulnerability. In light of this, we develop backpropagation-free federated learning, dubbed BAFFLE, in which backpropagation is replaced by multiple forward processes to estimate gradients. BAFFLE is 1) memory-efficient and easily fits uploading bandwidth; 2) compatible with inference-only hardware optimization and model quantization or pruning; and 3) well-suited to trusted execution environments, because the clients in BAFFLE only execute forward propagation and return a set of scalars to the server. Empirically we use BAFFLE to train deep models from scratch or to finetune pretrained models, achieving acceptable results. Code is available in https://github.com/FengHZ/BAFFLE.
翻译:联邦学习(FL)是一种去中心化客户端在不共享本地数据的情况下协同训练服务器模型的通用原则。FL是一个具有实际应用前景的框架,但其标准训练范式要求客户端通过模型进行反向传播以计算梯度。由于这些客户端通常是边缘设备且不完全受信任,在其上执行反向传播会带来计算和存储开销以及白盒漏洞风险。鉴于此,我们开发了免反向传播的联邦学习,命名为BAFFLE,其中反向传播被多个前向过程所取代以估计梯度。BAFFLE具有以下特点:1) 内存高效,易于适应上传带宽;2) 与仅推理硬件优化以及模型量化或剪枝兼容;3) 非常适合可信执行环境,因为BAFFLE中的客户端仅执行前向传播并向服务器返回一组标量。通过实证研究,我们使用BAFFLE从头训练深度模型或微调预训练模型,均取得了可接受的结果。代码可在 https://github.com/FengHZ/BAFFLE 获取。