aibedo.interface.get_model_and_data

aibedo.interface.get_model_and_data(config: omegaconf.dictconfig.DictConfig) -> (<class 'aibedo.models.base_model.BaseModel'>, <class 'aibedo.datamodules.abstract_datamodule.AIBEDO_DataModule'>)[source]

Get the model and datamodule. This is a convenience function that wraps around get_model() and get_datamodule().

Parameters

config (DictConfig) – A OmegaConf config (e.g. produced by hydra <config>.yaml file parsing)

Returns

(BaseModel, AIBEDO_DataModule) – A tuple of (model, datamodule), that you can directly use to train with pytorch-lightning

Examples:

from aibedo.utilities.config_utils import get_config_from_hydra_compose_overrides

cfg = get_config_from_hydra_compose_overrides(overrides=['datamodule=icosahedron', 'model=mlp'])
mlp_model, icosahedron_data = get_model_and_data(cfg)

# Use the data from datamodule (its ``train_dataloader()``), to train the model for 10 epochs
trainer = pl.Trainer(max_epochs=10, gpus=-1)
trainer.fit(model=model, datamodule=icosahedron_data)