gaia.training.config module
Production Training Configuration System
- class gaia.training.config.OptimizationType(value)[source]
Bases:
Enum
- ADAM = 'adam'
- ADAMW = 'adamw'
- SGD = 'sgd'
- RMSPROP = 'rmsprop'
- LION = 'lion'
- CATEGORICAL_ADAM = 'categorical_adam'
- classmethod __contains__(member)
Return True if member is a member of this enum raises TypeError if member is not an enum member
note: in 3.12 TypeError will no longer be raised, and True will also be returned if member is the value of a member in this enum
- classmethod __getitem__(name)
Return the member matching name.
- classmethod __iter__()
Return members in definition order.
- classmethod __len__()
Return the number of members (no aliases)
- class gaia.training.config.SchedulerType(value)[source]
Bases:
Enum
- COSINE = 'cosine'
- LINEAR = 'linear'
- EXPONENTIAL = 'exponential'
- PLATEAU = 'plateau'
- CATEGORICAL_ANNEALING = 'categorical_annealing'
- classmethod __contains__(member)
Return True if member is a member of this enum raises TypeError if member is not an enum member
note: in 3.12 TypeError will no longer be raised, and True will also be returned if member is the value of a member in this enum
- classmethod __getitem__(name)
Return the member matching name.
- classmethod __iter__()
Return members in definition order.
- classmethod __len__()
Return the number of members (no aliases)
- class gaia.training.config.OptimizationConfig(optimizer=OptimizationType.ADAMW, learning_rate=0.001, weight_decay=0.0001, momentum=0.9, betas=(0.9, 0.999), eps=1e-08, categorical_coherence_weight=1.0, simplicial_regularization=0.1, horn_solving_weight=0.5, scheduler=SchedulerType.COSINE, scheduler_params=<factory>, warmup_steps=1000, gradient_clip_norm=1.0, gradient_accumulation_steps=1)[source]
Bases:
object
Optimization configuration with GAIA categorical extensions
- optimizer: OptimizationType = 'adamw'
- scheduler: SchedulerType = 'cosine'
- __init__(optimizer=OptimizationType.ADAMW, learning_rate=0.001, weight_decay=0.0001, momentum=0.9, betas=(0.9, 0.999), eps=1e-08, categorical_coherence_weight=1.0, simplicial_regularization=0.1, horn_solving_weight=0.5, scheduler=SchedulerType.COSINE, scheduler_params=<factory>, warmup_steps=1000, gradient_clip_norm=1.0, gradient_accumulation_steps=1)
- class gaia.training.config.ModelConfig(name='gaia_model', architecture='categorical_mlp', hidden_dims=<factory>, activation='relu', dropout=0.1, batch_norm=True, simplicial_depth=3, categorical_embedding_dim=64, horn_solver_config=<factory>, init_method='xavier_uniform', init_gain=1.0)[source]
Bases:
object
Model architecture configuration
- __init__(name='gaia_model', architecture='categorical_mlp', hidden_dims=<factory>, activation='relu', dropout=0.1, batch_norm=True, simplicial_depth=3, categorical_embedding_dim=64, horn_solver_config=<factory>, init_method='xavier_uniform', init_gain=1.0)
- class gaia.training.config.DataConfig(dataset_path='', batch_size=32, num_workers=0, pin_memory=False, persistent_workers=False, normalize=True, augmentation=False, augmentation_config=<factory>, validation_split=0.2, test_split=0.1, random_seed=42, categorical_features=<factory>, simplicial_structure=None)[source]
Bases:
object
Data loading and processing configuration
- __init__(dataset_path='', batch_size=32, num_workers=0, pin_memory=False, persistent_workers=False, normalize=True, augmentation=False, augmentation_config=<factory>, validation_split=0.2, test_split=0.1, random_seed=42, categorical_features=<factory>, simplicial_structure=None)
- class gaia.training.config.TrainingConfig(epochs=100, max_steps=None, eval_frequency=1000, save_frequency=5000, log_level='INFO', log_frequency=100, use_tensorboard=True, use_wandb=False, wandb_project='gaia-training', checkpoint_dir='checkpoints', save_top_k=3, monitor_metric='val_loss', monitor_mode='min', early_stopping=True, patience=10, min_delta=0.0001, device='auto', mixed_precision=True, compile_model=True, distributed=False, world_size=1, rank=0, categorical_training=True, hierarchical_learning=True, horn_solving_frequency=1000, coherence_check_frequency=500, model=<factory>, data=<factory>, optimization=<factory>)[source]
Bases:
object
Complete training configuration
- model: ModelConfig
- data: DataConfig
- optimization: OptimizationConfig
- __init__(epochs=100, max_steps=None, eval_frequency=1000, save_frequency=5000, log_level='INFO', log_frequency=100, use_tensorboard=True, use_wandb=False, wandb_project='gaia-training', checkpoint_dir='checkpoints', save_top_k=3, monitor_metric='val_loss', monitor_mode='min', early_stopping=True, patience=10, min_delta=0.0001, device='auto', mixed_precision=True, compile_model=True, distributed=False, world_size=1, rank=0, categorical_training=True, hierarchical_learning=True, horn_solving_frequency=1000, coherence_check_frequency=500, model=<factory>, data=<factory>, optimization=<factory>)