Go from choosing a track to submitting a trained model. Develop with NeuralBench, Benchopt, both, or your own pipeline, then submit the trained model to Codabench for official evaluation. Each track provides two complementary worked examples: a NeuralBench start kit to explore the task and data through a neuro-specific model-development and evaluation framework, and a Benchopt competition kit to develop and validate against the submission workflow. Both are recommended, not required.
Three complementary tools support different parts of your path from public data to the leaderboard. NeuralBench and Benchopt are strongly recommended but optional. Codabench is required for registration, submission, and official evaluation.
01 · Tasks, data & baselines
NeuralBench
Neurophysiology task and model environment.
Defines the public tasks, datasets, preprocessing, splits, and reference baselines. Use it to explore a task and run a catalogue model — a task-specific network or a pretrained foundation model (probed or fine-tuned).
Reproducible experimentation and competition preparation.
Use it to develop your own model and compare methods reproducibly. A new architecture lives in your submission.py as plain PyTorch; Benchopt reuses the NeuralBench task and data layer to train, validate, and package it into a submission.
Use it to register, read the current submission requirements, upload your trained model package, and receive official scores on the track leaderboards.
Optional but recommended · two complementary entry points
Start with worked examples.
Each track offers a NeuralBench start kit to explore the task and test a model, plus a Benchopt competition kit to exercise the competition workflow and submission contract. Try the entry point closest to your immediate goal. This does not lock in how you train your final model.
This installs the track dependencies, prepares THINGS-EEG2 through the NeuralBench data pipeline, trains the Torch linear solver, evaluates it on the public split, and writes a submission folder. Zip that folder before uploading it to Codabench.
NBNeuralBench start kitCheck EEGNet with NeuralBenchOpenClose
The --debug command quickly checks the NeuralBench task and EEGNet pipeline. Choose this start kit to explore the neuro-specific task, adaptation strategies, and evaluation of catalogue models.
This installs the track dependencies, prepares Dreyer 2023 through the NeuralBench data pipeline, trains the Torch linear solver, evaluates it on the public split, and writes a submission folder. Zip that folder before uploading it to Codabench.
NBNeuralBench start kitCheck EEGNet with NeuralBenchOpenClose
The --debug command quickly checks the NeuralBench task and EEGNet pipeline on Dreyer 2023. Choose this start kit to explore the neuro-specific task, adaptation strategies, and evaluation of catalogue models.
REFPublic-data referenceBaseline resultsOpenClose
Baseline results obtained on Stieger 2021 (Stieger2021Continuous), a four-class motor-imagery dataset, using the split documented in the Track 02 NeuralBench reference guide. Codabench currently uses Dreyer 2023 for warm-up evaluation, so these are not Codabench warm-up scores.
This installs the track dependencies, prepares Sleep-EDF through the NeuralBench data pipeline, trains the Torch linear solver, evaluates it on the public split, and writes a submission folder. Zip that folder before uploading it to Codabench.
NBNeuralBench start kitCheck EEGNet with NeuralBenchOpenClose
The --debug command quickly checks the NeuralBench task and EEGNet pipeline. Choose this start kit to explore the neuro-specific task, adaptation strategies, and evaluation of catalogue models.
REFPublic-data referenceBaseline resultsOpenClose
Baseline results obtained on Sleep-EDF (Kemp2000Analysis), using the participant-level split documented in the Track 03 NeuralBench reference guide.
Reference values: Mean ± standard deviation from NeuralBench (Banville et al., 2026), Table 1. Here, bMAE is the unweighted mean of the MAE computed within each non-empty time-to-onset bin.
This installs the track dependencies, prepares EMG2Pose through the NeuralBench data pipeline, trains the Torch linear solver, evaluates it on the public split, and writes a submission folder. Zip that folder before uploading it to Codabench. The dataset preparation is large and requires substantial local storage.
NBNeuralBench start kitCheck VEMG2Pose with NeuralBenchOpenClose
The --debug command quickly checks the NeuralBench task and VEMG2Pose pipeline. Choose this start kit to explore the neuro-specific task, adaptation strategies, and evaluation of catalogue models.
NeuroPoseLiu et al., 2021Pose CNN-paperMAE 17.5 ± 1.5°tasks/emg/pose/config.yaml
Reference values: Mean ± standard deviation from NeuralBench (Banville et al., 2026), Table 1.
03
Your model · three development routes
Choose where to develop and train your model.
All three routes can use your own architecture. Choose according to the workflow you need.
NeuralBench
Use the neuro-specific environment.
Best for developing within neuro-specific tasks, data pipelines, preprocessing, metrics, adaptation strategies, and scientific comparisons. Train or evaluate a built-in or custom PyTorch model, then keep the trained checkpoint.
Best for developing directly against the submission contract with the same core benchmark code Codabench runs. Add your own method, compare configurations, train on public data, and export a submission folder. On real data, Benchopt reuses the NeuralBench task and data layer.
Train with your preferred codebase and permitted data. Neither NeuralBench nor Benchopt must control training, provided you save everything needed to reproduce inference and satisfy the track contract.
These routes are complementary, not cumulative requirements. You can develop in NeuralBench and use Benchopt only to validate and package the result, develop and package directly in Benchopt, train in your own pipeline and use Benchopt only for final validation, or handle training, contract validation, and packaging entirely yourself. You never need to train the same model twice.
Whatever training route you used, the final artifact is the same: a trained model wrapped in the required submission class, called a Solver. Before packaging it, read the shared submission guide and open Get Started → Submission Guide on your Codabench track below. They define how to package, validate, and upload it.
1Read the contractOpen Get Started → Submission Guide on your Codabench track.
2Build the submissionWrap the architecture, inference preprocessing, trained weights, and any optional files in the required Solver.
3Validate and ZIPTest inference locally with Benchopt, then zip the contents of the submission folder.
4Upload and checkSubmit through My Submissions and confirm that evaluation succeeds.
Two evaluation stages: Warm-up scores use public test data and are indicative. Codabench switches to the private 2026 cohorts for the sealed phase, and only sealed scores determine the final ranking.