neuralbench.main.Experiment

pydantic model neuralbench.main.Experiment[source][source]

Brain-modeling experiment with support for loading pretrained weights.

Fields:
field task_name: str = ''[source]
field data: Data [Required][source]
field target_scaler: StandardScaler | None = None[source]
field compute_class_weights: bool = False[source]
field brain_model_config: BaseModelConfig [Required][source]
field brain_model_output_size: int | None = None[source]
field pretrained_weights_fname: str | None = None[source]
field downstream_model_wrapper: DownstreamWrapper | None = None[source]
field trainer_config: TrainerConfig [Required][source]
field loss: BaseLoss [Required][source]
field lightning_optimizer_config: LightningOptimizer [Required][source]
field eval_only: bool = False[source]
field metrics: list[BaseMetric] [Required][source]
field validate_before_training: bool = True[source]
field test_full_metrics: list[BaseMetric] = [][source]
field test_full_retrieval_metrics: list[BaseMetric] = [][source]
field csv_config: CsvLoggerConfig | None = None[source]
field wandb_config: WandbLoggerConfig | None = None[source]
field seed: int = 0[source]
field delete_checkpoints_on_exit: bool = True[source]
field infra: TaskInfra = TaskInfra(folder=None, cluster=None, logs='{folder}/logs/{user}/%j', job_name=None, timeout_min=None, nodes=1, tasks_per_node=1, cpus_per_task=None, gpus_per_node=None, mem_gb=None, max_pickle_size_gb=None, slurm_constraint=None, slurm_partition=None, slurm_account=None, slurm_qos=None, slurm_use_srun=False, slurm_additional_parameters=None, slurm_setup=None, conda_env=None, workdir=None, permissions=511, version='1', mode='cached', keep_in_ram=False)[source]
field dummy: dict[str, Any] = {}[source]
field brain_model_name: str = ''[source]
prepare_pl_module(train_loader: DataLoader, val_loader: DataLoader | None = None) None[source][source]
fit(trainer: Trainer, train_loader: DataLoader, valid_loader: DataLoader) None[source][source]
setup_wandb_logger(wandb_config: WandbLoggerConfig, savedir: str) WandbLogger[source][source]

Setup wandb logger and launch initialization.

setup_run()[source][source]

Setup paths and wandb logger.

setup_trainer(is_test: bool = False) Trainer[source][source]

Create callbacks and setup Trainer.

property run: dict[str, Any][source]

setup, train, test, cleanup.

Returns a dict of test metrics (e.g. {"test/bal_acc": 0.85, ...}) plus n_total_params and n_trainable_params.

Type:

Execute the full experiment lifecycle