All objects#

Every public object in the benchmark. Filter by name, module, or description.

Object

Description

TS1Task

The eight scored TS1 tasks: three sequence-level, five timestep-level.

TS2Task

The two scored TS2 tasks, holding out units and trailing timesteps respectively.

TS3Task

The scored TS3 tasks, named <entity>_<target>: what is classified, at which atlas level.

task_id

The flattened task id a submission is filed under, e.g. "ts2-co_smoothing".

is_task_of

Whether a flattened task id belongs to suite. The scorers’ file filter.

get_ts1_supported_tasks

Returns a list of all supported tasks.

ReadoutSpec

What a model needs to size a readout head, and nothing more.

TargetResolution

How many targets a task has along the input’s time axis: one, or one per timestep.

DataType

What kind of value each target is, independent of TargetResolution.

TS1ReadoutSpec

Specification for a single decoding readout head.

get_ts1_readout_spec

What task predicts, and the metrics it is scored on.

TS2ReadoutSpec

What one TS2 task predicts.

get_ts2_readout_spec

What task holds out, and the metrics it is scored on.

TS3ReadoutSpec

What one TS3 task predicts.

get_ts3_readout_spec

What task classifies, its label vocabulary, and the metrics it is scored on.

COSMOS_LABELS

Built-in immutable sequence.

check_ts3_label_order

Raise unless labels is the task’s vocabulary, in order.

BPS

Bits Per Spike metric for Poisson spiking data.

PoissonD2Score

Minimal implementation of Cohen pseudo-R^2 score for Poisson NLL loss.

aggregate_metrics

Compute and flatten a dict of torchmetrics metrics to plain Python scalars.

multi_unit_prediction

Multi-unit averaging of prediction probabilities.

PredictionsWriter

Buffer tensors from an eval loop and save them as a .safetensors file.

version_of

The ibl_bwb_eval_version a prediction file was written under.

encode_entity_ids

Pack string ids into an (n, width) uint8 tensor, width being the longest id.

decode_entity_ids

Unpack what encode_entity_ids() wrote, dropping the padding.

score_file

Score one prediction file against its ground truth file.

score_dir

Score all TS1 prediction files found under pred_dir.

summarize

Aggregate per-seed scores into mean ± SEM per (label, task, recording_id).

score_file

Score one prediction file against its ground truth file.

score_dir

Score all TS2 prediction files found under pred_dir.

summarize

Aggregate per-seed scores into mean ± SEM per (label, task, recording_id).

score_file

Score one prediction file against its ground truth file.

score_dir

Score all prediction files found under pred_dir.

summarize

Aggregate per-seed scores into mean ± SEM per label.

from_ts3

Inject task into ts3_scoring.score_dir’s (label, seed) keys.

aggregate

Clip designated metrics at clip_min per seed, then aggregate over seeds.

rank

Competition ranking, averaged over recording_id within each task.

UnitFilteringInfo

The filter provenance of a single recording.

BuildUnitFiltering

The filter provenance of a whole build, which may be mixed across recordings.

read_build_unit_filtering

Read the label of every recording the dataset covers.

enforce_unit_filtering

Raise unless the build satisfies the contract. There is no way to opt out.

read_recording_ids

Read one vendored list, in file order.

IBLBrainWideBench2026

Dataset for the IBL BrainWideBench benchmark.

VariableContextMixin

Extends the sampled window backward for extra context.

WholeSessionSpikeDataset

The benchmark sampled over whole sessions, after neural QC.

UnitQCPolicy

Which sessions and units a whole-session dataset keeps.

FinetuningStrategy

Base class for finetuning strategies.

FullFinetuning

No-op strategy that leaves all model parameters trainable.

GradualUnfreezing

Freeze all parameters except those matching unfrozen_prefixes, then unfreeze at a target epoch.

Probe

Freeze all parameters except those matching unfrozen_prefixes.

BaseModel

Standardized model interface.

BaseTrainer

The epoch loop, and everything around it that depends on neither task nor model.

DistributedSamplerWrapper

Wrapper for distributing any sampler across multiple processes.

SessionBatchSampler

Group any DatasetIndex sampler’s output into per-session batches.

FilterUnits

Drops units that have failing probe QC or did not fire in this slice.

UnitDropout

A simple unit dropout transform.

apply_unit_mask_

Mask units and corresponding spikes given a boolean mask (in-place).

AdditiveGaussianNoise

Adds Gaussian noise scaled to the input max, clipped at 0.

AdditivePepperNoise

Randomly zeros out bins.

AmplitudeScaling

Rescales amplitude by a small random factor.

GaussianNoise

Adds Gaussian noise scaled to the input std.

RandomApply

Apply a transform with probability p.

TemporalGaussianSmoothing

Gaussian smoothing along the temporal (last) axis only.

TemporalJittering

Random row-wise circular shift along the temporal axis.

Embedding

A simple extension of torch.nn.Embedding with a configurable initializer.

MultitaskReadout

Linear readout with one head per task, routed by integer index.

tfixup_init_

Scale a Transformer encoder’s weights in place for optimization without warmup.

self_attn

forward_varlen for RotarySelfAttention, on either backend.

cross_attn

forward_varlen for RotaryCrossAttention, on either backend.

validate_attn_impl

Narrow a config string to a known backend, raising on anything else.

uses_xformers

What to pass as use_xformers when constructing the attention modules.

WeightedMSELoss

Mean squared error under per-element weights, normalized by their sum.

CLIPLoss

Symmetric InfoNCE loss over two paired views (CLIP, Eq. 1 of the NEMO paper).

rankme

Effective rank of an (entities, dim) embedding: the entropy of its spectrum.

NDTStitch

Multi-session NDT with per-session stitchers [Ye and Pandarinath, 2021].

NDTStitchMasker

Temporal masking for spikes (BERT-style).

NDTStitchPretrain

Masked spike modelling for NDT Stitch, which fits one stitcher per session.

MtM

Multi-task masked transformer over binned spikes [Zhang et al., 2024].

MtMMasker

Module for masking spikes. Masking modes:

MtMPretrain

Masked spike modelling for MtM, whose masks carry a mode token.

NDT2

Multi-context masked autoencoder over patched spike tokens [Ye et al., 2023].

NDT2Masker

ShuffleInfill-style MAE masker for NDT2.

NDT2Pretrain

Masked spike modelling for NDT2, which masks context tokens and accumulates gradients.

NEDS

Multimodal masked transformer over spikes and behavior [Zhang et al., 2025].

NEDSMasker

Base class for all neural network modules.

NEDSPretrain

Multimodal masked modelling for NEDS, over spikes and the behaviors alike.

POYO

Transformer-based model for neural decoding from spike trains [Azabou et al., 2023].

POYOSingleTaskPretrain

Supervised pretraining of POYO on one behavior.

POYOPlus

POYO+ over chained spike tokens [Azabou et al., 2025].

POYOPlusMultitaskPretrain

Supervised pretraining of POYO+ on every behavior at once, via its readout heads.

POSSM

POSSM (POYO + State Space Model) for the IBL benchmark [Ryoo et al., 2025].

POSSMSingleTaskPretrain

Supervised pretraining of POSSM on one behavior.

POSSMMultitaskPretrain

Multi-task pretrainer for POSSM.

RRRDecoder

Reduced-rank decoder mapping a window of binned spikes to behavior [Zhang et al., 2026].

RRRSingleTaskPretrain

Supervised pretraining of the shared basis V on one behavior.

NuCLR

Contrastive unit encoder over population context [Arora et al., 2025].

NuCLRLoss

Base class for all neural network modules.

NuCLRPretrain

Contrastive pretraining of the NuCLR unit encoder, against NuCLRLoss.

NEMO

NEMO bimodal contrastive learning model for IBL brain region pretraining [Yu et al., 2025].

NEMOPretrain

Trainer for NEMO SSL pretraining (CLIP-style contrastive learning).

WVFEncoder

Base class for all neural network modules.

ACGEncoder

Base class for all neural network modules.

LinearProjector

Linear -> LayerNorm projection head (from NEMO LinearProjector, layer_norm=True).

IBLBrainWideBenchMaskModelingSpikes

Binned spikes alone, for objectives that mask them and reconstruct them.

IBLBrainWideBenchSingleTaskBehavior

Spikes aligned to one behavioral target.

IBLBrainWideBenchMultiTaskBehavior

Spikes aligned to several behavioral targets at once.

IBLBrainWideBenchTS1

Dataset for the IBL BrainWideBench benchmark.

ts1

TS1TestMixin

Mixin enforcing the TS1 benchmark test contract.

ts1

TS1EvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

ts1

Linear

Single linear layer mapping binned spike counts to task outputs.

MLP

Multi-layer perceptron mapping binned spike counts to task outputs.

GRU

Gated recurrent unit network mapping binned spike counts to task outputs.

TCN

Temporal convolutional network mapping binned spike counts to task outputs.

CEBRA

CEBRA-based neural decoding model on single-session [Schneider et al., 2023].

CEBRAEvalTrainer

Benchmark eval trainer with in-run CEBRA encoder fitting.

NDTSuperv

Single-session Transformer encoder for supervised neural decoding [Ye and Pandarinath, 2021].

NDTStitchEvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

MtMEvalTrainer

TS1 trainer for MtM, prompting the forward with an optional mask-mode token.

NDT2EvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

NEDSEvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

POSSMEvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

POYOEvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

POYOPlusEvalTrainer

Standardized evaluation Trainer for Task Suite 1 (decoding).

RRREvalTrainer

TS1 eval trainer plus the V hand-off.

IBLBrainWideBenchTS2

Dataset for the IBL BrainWideBench benchmark.

ts2

TS2TestMixin

Mixin enforcing the TS2 benchmark test contract.

ts2

TS2EvalTrainer

Standardized evaluation Trainer for Task Suite 2 (neural prediction).

ts2

AutoencoderMLP

Simple Autoencoder with MLP encoder/decoder for TS2 neural prediction.

LFADS

LFADS for TS2 co-smoothing and forecasting [Keshtkaran et al., 2022, Pandarinath et al., 2018].

LFADSEvalTrainer

TS2 trainer for LFADS.

NDT

Single-session Transformer encoder over binned spikes [Ye and Pandarinath, 2021].

NDTEvalTrainer

TS2 trainer for the single-session NDT.

StatBaseline

Shared skeleton for every statistical baseline.

PopCoupling

Population coupling.

RRRReadout

Reduced-rank readout over binned counts.

RRRReadoutWithISI

Reduced-rank readout over [counts, time-since-last-spike, last ISI].

TrailingMean

Trailing-window mean, held flat over the horizon.

Shrinkage

Trial-local / global rate blend, held flat over the horizon.

RidgeAR

Per-unit ridge autoregression from the observed bins to the horizon.

StatBaselineTrainer

TS2 trainer for the zero-parameter statistical baselines.

MtMEvalTrainer

TS2 trainer for MtM, prompting the forward with the task’s mask-mode token.

NDTStitchEvalTrainer

TS2 trainer for NDT Stitch.

IBLBrainWideBenchTS3

TS3’s view of the benchmark: whole sessions after neural QC.

ts3

Extractor

A unit-embedding producer, driven by ts3/extract.py.

ts3

compute_isi_histogram

ISI histogram, L1-normalized to sum=1.

ts3

NuCLRExtractor

A unit-embedding producer, driven by ts3/extract.py.

NEMOExtractor

A unit-embedding producer, driven by ts3/extract.py.

ISIExtractor

A unit-embedding producer, driven by ts3/extract.py.

TransductiveExtractor

A unit-embedding producer, driven by ts3/extract.py.

POYOPlusExtractor

POYO+’s unit_emb rows, optionally length-matched to the pretrain part.

POSSMExtractor

POSSM’s unit_emb rows, optionally length-matched to the pretrain part.

NDTStitchExtractor

A unit-embedding producer, driven by ts3/extract.py.

MtMExtractor

A unit-embedding producer, driven by ts3/extract.py.

NDTStitchCalibrateTrainer

Masked spike modelling for NDT Stitch, which fits one stitcher per session.

MtMCalibrateTrainer

Masked spike modelling for MtM, whose masks carry a mode token.

POSSMCalibrateTrainer

Multi-task pretrainer for POSSM.

POYOPlusCalibrateTrainer

Supervised pretraining of POYO+ on every behavior at once, via its readout heads.

LOLCAT

ISI histogram encoder, attention pooling and a brain region classifier [Schneider et al., 2023].

MultiHeadGlobalAttention

Multi-Head Global pooling layer.

LOLCATTrainer

Supervised training of LOLCAT, the one TS3 model fit on the region labels.

LossFeedbackSampler

Samples elements randomly from a given list of indices, without replacement.

Probe

A classifier fit on unit embeddings, scored by eval.py.

LinearProbe

Multinomial logistic regression on standardized embeddings.

MLPProbe

An MLP whose hyperparameters are swept with Optuna before the final fit.