$μ$PC: Scaling Predictive Coding to 100+ Layer Networks
Francesco Innocenti, El Mehdi Achour, Christopher L. Buckley
TL;DR
This work demonstrates that predictive coding networks can be scaled to 100+ layers by applying a Depth-muP-inspired reparameterisation, termed μPC. It identifies two key obstacles to large-scale PCN training—ill-conditioned inference landscapes and depth-sensitive forward-pass instability—and proposes a minimal set of desiderata to guide scalable parameterisations. Empirically, μPC enables stable training of very deep residual networks on simple classification tasks with minimal tuning and supports zero-shot transfer of learning rates across widths and depths, while revealing that μPC can approximate BP in a BP-like regime for wide, shallow configurations. The study provides both theoretical insights and practical benchmarks, and releases code to facilitate further exploration of scalable, local learning algorithms.
Abstract
The biological implausibility of backpropagation (BP) has motivated many alternative, brain-inspired algorithms that attempt to rely only on local information, such as predictive coding (PC) and equilibrium propagation. However, these algorithms have notoriously struggled to train very deep networks, preventing them from competing with BP in large-scale settings. Indeed, scaling PC networks (PCNs) has recently been posed as a challenge for the community (Pinchetti et al., 2024). Here, we show that 100+ layer PCNs can be trained reliably using a Depth-$μ$P parameterisation (Yang et al., 2023; Bordelon et al., 2023) which we call "$μ$PC". By analysing the scaling behaviour of PCNs, we reveal several pathologies that make standard PCNs difficult to train at large depths. We then show that, despite addressing only some of these instabilities, $μ$PC allows stable training of very deep (up to 128-layer) residual networks on simple classification tasks with competitive performance and little tuning compared to current benchmarks. Moreover, $μ$PC enables zero-shot transfer of both weight and activity learning rates across widths and depths. Our results serve as a first step towards scaling PC to more complex architectures and have implications for other local algorithms. Code for $μ$PC is made available as part of a JAX library for PCNs.
