config Module

The config module defines utilities for managing configurations, including loading and validation.

class ucs.utils.config.Config(dataset=<factory>, directories=<factory>, training=<factory>, callbacks=<factory>)[source]
Parameters:
callbacks: CallbacksConfig
dataset: DatasetConfig
directories: DirectoriesConfig
classmethod load_config(config_path=None, **overrides)[source]

Load YAML configuration file and apply overrides.

Parameters:
  • config_path (Optional[str]) – Path to the configuration YAML file.

  • **overrides – Dictionary of command-line overrides.

Returns:

An instance of the Config class with loaded values.

Return type:

Config

training: TrainingConfig
class ucs.utils.config.TrainingConfig(model_name='b0', max_epochs=50, learning_rate=2e-05, weight_decay=0.001, ignore_index=0, weighting_strategy='raw', alpha=0.7, id2label=<factory>)[source]
Parameters:
alpha: float = 0.7
id2label: Dict[int, str]
ignore_index: int | None = 0
learning_rate: float = 2e-05
max_epochs: int = 50
model_name: str = 'b0'
weight_decay: float = 0.001
weighting_strategy: str = 'raw'
class ucs.utils.config.DatasetConfig(dataset_path='erikpinhasov/landcover_dataset', batch_size=16, num_workers=8, do_reduce_labels=False, pin_memory=True, model_name=None)[source]
Parameters:
  • dataset_path (str)

  • batch_size (int)

  • num_workers (int)

  • do_reduce_labels (bool)

  • pin_memory (bool)

  • model_name (str | None)

batch_size: int = 16
dataset_path: str = 'erikpinhasov/landcover_dataset'
do_reduce_labels: bool = False
model_name: str | None = None
num_workers: int = 8
pin_memory: bool = True
class ucs.utils.config.DirectoriesConfig(models='models', pretrained='models/pretrained_models', logs='models/logs', checkpoints='models/logs/checkpoints', results='results')[source]
Parameters:
checkpoints: str = 'models/logs/checkpoints'
logs: str = 'models/logs'
models: str = 'models'
pretrained: str = 'models/pretrained_models'
results: str = 'results'
class ucs.utils.config.CallbacksConfig(early_stop_patience=5, early_stop_monitor='val_loss', early_stop_mode='min', save_model_monitor='val_mean_iou', save_model_mode='max')[source]
Parameters:
  • early_stop_patience (int)

  • early_stop_monitor (str)

  • early_stop_mode (str)

  • save_model_monitor (str)

  • save_model_mode (str)

early_stop_mode: str = 'min'
early_stop_monitor: str = 'val_loss'
early_stop_patience: int = 5
save_model_mode: str = 'max'
save_model_monitor: str = 'val_mean_iou'