Training Predictive Coding Networks with Backpropagation Theory of Neural Systems

Description

According to the predictive coding (PC) theory in neuroscience, the brain works like a hierarchical generative model, continuously predicting incoming stimuli. Learning and inference are achieved by minimizing the difference between predicted and actual stimuli [1].

Computational models of PC, known as predictive coding networks (PCNs), differ from standard artificial neural networks (ANNs) in two significant ways. First, the PC inference algorithm iteratively refines activities in its layers rather than passing information purely feedforward. Second, instead of relying on a global loss function as backpropagation does in ANNs, the PC training algorithm updates the network's parameters based on local error signals [2]. While this learning algorithm renders PC biologically plausible, it imposes several limitations on the inference process, particularly because the training objective cannot be easily adapted to the task at hand.

The goal of this work is to analyze the effectiveness of the PC inference process by training a PCN with backpropagation while retaining its unique inference algorithm. Although applying backpropagation to a PCN may contradict the principle of biologically plausible learning, it helps analyze the limitations of PCNs by ignoring the constraints imposed by the PC learning algorithm. One exciting direction enabled by the backpropagation training is the possible introduction of a cross-entropy loss to the training objective, allowing a study of how a PCN could handle the classification-reconstruction trade-off [3].

This work has two main objectives. First, the student will implement and train predictive coding networks using both backpropagation and the PC learning algorithms, highlighting potential differences in the resulting inference dynamics. Second, the student will modify the training process to include a cross-entropy loss to study the classification-reconstruction trade-off in PCNs

Prerequisites:

  • Interest in machine learning and computational neuroscience
  • Programming experience with Python and preferably a deep learning framework, e.g., PyTorch
  • Solid foundation in calculus

References

[1] B. Millidge, A. Seth, and C. L. Buckley. Predictive Coding: Theoretical and Experimental Review, July 2022. URL http://arxiv.org/abs/2202.09467. aarXiv:2107.12979 [cs, q-bio]

[2] B. Millidge, T. Salvatori, Y. Song, R. Bogacz, and T. Lukasiewicz. Predictive Coding: Towards a Future of Deep Learning beyond Backpropagation?, Feb. 2022. URL http://arxiv.org/abs/2202.09467. arXiv:2202.09467 [cs]

[3] J. Rathjens and L. Wiskott. Classification and Reconstruction Processes in Deep Predictive Coding Networks: Antagonists or Allies?, Jan. 2024. URL http://arxiv.org/abs/2401.09237. arXiv:2401.09237 [cs]

The Institut für Neuroinformatik (INI) is a central research unit of the Ruhr-Universität Bochum. We aim to understand the fundamental principles through which organisms generate behavior and cognition while linked to their environments through sensory systems and while acting in those environments through effector systems. Inspired by our insights into such natural cognitive systems, we seek new solutions to problems of information processing in artificial cognitive systems. We draw from a variety of disciplines that include experimental approaches from psychology and neurophysiology as well as theoretical approaches from physics, mathematics, electrical engineering and applied computer science, in particular machine learning, artificial intelligence, and computer vision.

Universitätsstr. 150, Building NB, Room 3/32
D-44801 Bochum, Germany

Tel: (+49) 234 32-28967
Fax: (+49) 234 32-14210