from dataclasses import dataclass | |
from typing import Dict, List, Union | |
class Model: | |
anchor: List[List[int]] | |
model: Dict[str, List[Dict[str, Union[Dict, List, int]]]] | |
class Download: | |
auto: bool | |
path: str | |
class DataLoaderConfig: | |
batch_size: int | |
shuffle: bool | |
num_workers: int | |
pin_memory: bool | |
class OptimizerArgs: | |
lr: float | |
weight_decay: float | |
class OptimizerConfig: | |
type: str | |
args: OptimizerArgs | |
class SchedulerArgs: | |
step_size: int | |
gamma: float | |
class SchedulerConfig: | |
type: str | |
args: SchedulerArgs | |
class EMAConfig: | |
enabled: bool | |
decay: float | |
class TrainConfig: | |
optimizer: OptimizerConfig | |
scheduler: SchedulerConfig | |
ema: EMAConfig | |
class HyperConfig: | |
data: DataLoaderConfig | |
train: TrainConfig | |
class Dataset: | |
file_name: str | |
num_files: int | |
class Datasets: | |
base_url: str | |
images: Dict[str, Dataset] | |
class Download: | |
auto: bool | |
save_path: str | |
datasets: Datasets | |
class Config: | |
model: Model | |
download: Download | |
hyper: HyperConfig | |