一句话:提出 FedDebug,用记录回放实现联邦学习交互式调试,并借助差分测试与神经元激活无需测试数据即可定位故障客户端。
联邦学习(FL)中客户端独立训练并上传本地模型,由于无法访问客户端数据且训练过程协同,当全局模型性能下降时,定位问题轮次与责任客户端极为困难,开发者往往只能试错。FedDebug 提出系统化故障定位框架:一方面利用记录与回放技术构建镜像实时 FL 的仿真,支持交互式调试,可在断点处检查轮次、客户端与全局模型状态,并在轮次和客户端模型间无缝切换、逐步检查;另一方面无需测试数据与标签,通过将差分测试与神经元激活相结合,自动识别偏离正常行为、拖累全局模型的客户端。评估显示,单故障客户端定位准确率 100%,多故障客户端 90.3%,交互式调试训练开销仅 1.2%,定位一个故障客户端仅需一轮训练时间的 2.1%。
In Federated Learning (FL), clients independently train local models and share them with a central aggregator to build a global model. Impermissibility to access clients' data and collaborative training make FL appealing for applications with data-privacy concerns, such as medical imaging. However, these FL characteristics pose unprecedented challenges for debugging. When a global model's performance deteriorates, identifying the responsible rounds and clients is a major pain point. Developers resort to trial-and-error debugging with subsets of clients, hoping to increase the global model's accuracy or let future FL rounds retune the model, which are time-consuming and costly. We design a systematic fault localization framework, Fedde-bug,that advances the FL debugging on two novel fronts. First, Feddebug enables interactive debugging of realtime collaborative training in FL by leveraging record and replay techniques to construct a simulation that mirrors live FL. Feddebug'sbreakpoint can help inspect an FL state (round, client, and global model) and move between rounds and clients' models seam-lessly, enabling a fine-grained step-by-step inspection. Second, Feddebug automatically identifies the client(s) responsible for lowering the global model's performance without any testing data and labels-both are essential for existing debugging techniques. Feddebug's strengths come from adapting differential testing in conjunction with neuron activations to determine the client(s) deviating from normal behavior. Feddebug achieves 100% accuracy in finding a single faulty client and 90.3% accuracy in finding multiple faulty clients. Feddebug's interactive de-bugging incurs 1.2% overhead during training, while it localizes a faulty client in only 2.1% of a round's training time. With FedDebug,we bring effective debugging practices to federated learning, improving the quality and productivity of FL application developers.