SPEAR:Exact Gradient Inversion of Batches in Federated Learning

Dimitar I. Dimitrov, Maximilian Baader, Mark Niklas Müller, Martin Vechev
3/6/2024
cs.LGcs.CRcs.DC

No confident code implementation found for this paper.

Abstract

Federated learning is a framework for collaborative machine learning where clients only share gradient updates and not their private data with a server. However, it was recently shown that gradient inversion attacks can reconstruct this data from the shared gradients. In the important honest-but-curious setting, existing attacks enable exact reconstruction only for batch size of $b=1$, with larger batches permitting only approximate reconstruction. In this work, we propose SPEAR, the first algorithm reconstructing whole batches with $b >1$ exactly. SPEAR combines insights into the explicit low-rank structure of gradients with a sampling-based algorithm. Crucially, we leverage ReLU-induced gradient sparsity to precisely filter out large numbers of incorrect samples, making a final reconstruction step tractable. We provide an efficient GPU implementation for fully connected networks and show that it recovers high-dimensional ImageNet inputs in batches of up to $b \lesssim 25$ exactly while scaling to large networks. Finally, we show theoretically that much larger batches can be reconstructed with high probability given exponential time.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{dimitrov2024spearexact,
  title  = {SPEAR:Exact Gradient Inversion of Batches in Federated Learning},
  author = {Dimitar I. Dimitrov and Maximilian Baader and Mark Niklas Müller and Martin Vechev},
  year   = {2024},
  eprint = {2403.03945},
  archivePrefix = {arXiv},
  doi    = {10.48550/arXiv.2403.03945},
  url    = {http://arxiv.org/abs/2403.03945v3},
  journal = {NEURIPS 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2403.03945.svg)](https://codeofpaper.com/paper/2403.03945)

Discussion