IBLBrainWideBench2026#

class core.dataset.IBLBrainWideBench2026(root, split, dirname='ibl_brain_wide_bench_2026', recording_ids=None, transform=None, regime='pretrain', require_unit_filtering=None, contract=None, context_length=1.0)[source]#

Bases: torch_brain.datasets.mixins.SpikingDatasetMixin, torch_brain.datasets.dataset.Dataset

Dataset for the IBL BrainWideBench benchmark.

Parameters:
  • root (str) – The root directory of the dataset.

  • dirname (str) – The name of the dataset (and the directory containing its data).

  • recording_ids (Union[str, list[str], None]) – The recording ids to include in the dataset. If None, all recordings in the dataset related to the regime are included.

  • transform (Optional[Any]) – The transform(s) to apply to the data.

  • split (Optional[Literal['train', 'val', 'test']]) – Which split to sample, one of the class’s SPLITS. None (default) for whole sessions.

  • regime (Literal['pretrain', 'eval']) – The regime of the dataset (pretrain, eval).

  • require_unit_filtering (Optional[Literal['all_units', 'selected_units', 'custom']]) – Build label this consumer requires. None accepts any build.

  • contract (Optional[str]) – Name used in the contract error, defaults to the class name.

  • context_length (float) – Total sampled window size in seconds (context preceding the target). Must be less than or equal to MAX_CONTEXT_LENGTH.

property unit_filtering: BuildUnitFiltering#

Which unit filters this build ran.

property dataset_version: str#

The data-build pipeline’s derived_version.

dataset_transform(data)[source]#

Defines dataset-level transformations that are applied to all recordings in the Dataset.

This method can be applied on an entire recording or a single slice.

Parameters:

data (Data) – The Data object to apply the transformations to.

Return type:

Data

Returns:

The Data object with the transformations applied.

Example

>>> dataset = IBLBrainWideBench2026(...)
>>> data = dataset.get_recording(...)
>>> data = dataset.dataset_transform(data)
>>> slice = data.slice(0.5, 1.5)
>>> slice = dataset.dataset_transform(slice)
get_sampling_intervals()[source]#

Not defined here, since what is samplable depends on the suite.

Raises:

NotImplementedError – Always. A subclass names its own intervals.

get_brain_regions(atlas='cosmos')[source]#

Return a sorted list of all brain regions across all recordings in the dataset.

Return type:

list[str]