FedDebug: Systematic Debugging for Federated Learning Applications
Waris Gill, Ali Anwar, Muhammad Ali Gulzar
TL;DR
FedDebug addresses the challenge of debugging federated learning (FL) applications under strict data privacy by enabling interactive, replay-based debugging that does not access client data. It builds a simulation from selective telemetry, provides a breakpoint-based interface for stepwise inspection, and introduces an automatic fault-localization method using inference-guided test inputs and differential testing on neuron activations, followed by fix-and-replay to remove faulty contributions. The framework achieves 100% accuracy in locating a single faulty client and 90.3% for multiple faults across extensive FL configurations, with only about $1.2\%$ of a round’s training time in overhead. This approach offers a practical, privacy-preserving debugging pathway for real-world FL deployments and can be adapted to other FL frameworks beyond IBMFL.
Abstract
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, FedDebug, 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's breakpoint can help inspect an FL state (round, client, and global model) and move between rounds and clients' models seamlessly, 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 debugging incurs 1.2% overhead during training, while it localizes a faulty client in only 2.1% of a round's training time.
