In Search of Goodness: Large Scale Benchmarking of Goodness Functions for the Forward-Forward Algorithm

Arya Shah, Vaibhav Tripathi
11/23/2025
cs.LG

Official code: aryashah2k/In-Search-of-Goodness (1 star, Apache-2.0, last commit 2025-11-23).

Abstract

The Forward-Forward (FF) algorithm offers a biologically plausible alternative to backpropagation, enabling neural networks to learn through local updates. However, FF's efficacy relies heavily on the definition of "goodness", which is a scalar measure of neural activity. While current implementations predominantly utilize a simple sum-of-squares metric, it remains unclear if this default choice is optimal. To address this, we benchmarked 21 distinct goodness functions across four standard image datasets (MNIST, FashionMNIST, CIFAR-10, STL-10), evaluating classification accuracy, energy consumption, and carbon footprint. We found that certain alternative goodness functions inspired from various domains significantly outperform the standard baseline. Specifically, \texttt{game\_theoretic\_local} achieved 97.15\% accuracy on MNIST, \texttt{softmax\_energy\_margin\_local} reached 82.84\% on FashionMNIST, and \texttt{triplet\_margin\_local} attained 37.69\% on STL-10. Furthermore, we observed substantial variability in computational efficiency, highlighting a critical trade-off between predictive performance and environmental cost. These findings demonstrate that the goodness function is a pivotal hyperparameter in FF design. We release our code on \href{https://github.com/aryashah2k/In-Search-of-Goodness}{Github} for reference and reproducibility.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

NeuroAI Research on Large Scale Benchmarking of Goodness Functions for the Forward-Forward Algorithm

10PythonNov 21, 202511 months agoApache-2.0

Similar Papers

Cite this paper

@article{shah2025search,
  title  = {In Search of Goodness: Large Scale Benchmarking of Goodness Functions for the Forward-Forward Algorithm},
  author = {Arya Shah and Vaibhav Tripathi},
  year   = {2025},
  eprint = {2511.18567},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2511.18567v1}
}

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/2511.18567.svg)](https://codeofpaper.com/paper/2511.18567)

Discussion