{"id":"arxiv:2412.03676","kind":"preprint","title":"JPC: Flexible Inference for Predictive Coding Networks in JAX","authors":["Francesco Innocenti","Paul Kinghorn","Will Yun-Farmbrough","Miguel De Llanza Varona","Ryan Singh","Christopher L. Buckley"],"author_count":6,"year":2024,"published":"2024-12-04","venue":null,"cited_by":1,"doi":null,"arxiv_id":"2412.03676","nct_id":null,"source_url":"https://arxiv.org/abs/2412.03676","archive_url":"https://space-kitty.com/papers/arxiv:2412.03676","updated":"2024-12-04","pmid":null,"pmcid":null,"openalex_id":"W4405096537","pdf_url":"https://arxiv.org/pdf/2412.03676","abstract":"We introduce JPC, a JAX library for training neural networks with Predictive Coding. JPC provides a simple, fast and flexible interface to train a variety of PC networks (PCNs) including discriminative, generative and hybrid models. Unlike existing libraries, JPC leverages ordinary differential equation solvers to integrate the gradient flow inference dynamics of PCNs. We find that a second-order solver achieves significantly faster runtimes compared to standard Euler integration, with comparable performance on a range of tasks and network depths. JPC also provides some theoretical tools that can be used to study PCNs. We hope that JPC will facilitate future research of PC. The code is available at https://github.com/thebuckleylab/jpc.","abstract_license":"CC0-1.0 (arXiv descriptive metadata)","license":null,"is_open_access":false,"retracted":false,"peer_reviewed":false,"categories":["cs.NE","cs.AI","cs.LG"],"details":null,"provenance":"arxiv","attribution":"Abstract: arXiv descriptive metadata (CC0). Thank you to arXiv for use of its open access interoperability. This service was not reviewed or approved by, nor does it necessarily express or reflect the policies or opinions of, arXiv.","topics":[{"slug":"neuroai","name":"NeuroAI & Computational Neuroscience","domain_slug":"neuroscience"}],"cited_in_dossiers":[]}