scxpand.mlp.mlp_params#

Classes

MLPParam([use_log_transform, n_epochs, ...])

class scxpand.mlp.mlp_params.MLPParam(use_log_transform=True, n_epochs=10, early_stopping_patience=5, init_learning_rate=0.0001, weight_decay=0.05, max_grad_norm=10.0, lr_scheduler_config=<factory>, lr_scheduler_type=LRSchedulerType.REDUCE_LR_ON_PLATEAU, optimizer_type=OptimizerType.ADAMW, adam_betas=(0.9, 0.999), train_batch_size=2048, inference_batch_size=2048, sampler_type=SamplerType.RANDOM, layer_units=(1024, 512, 256, 128), dropout_rate=0.3, mask_rate=0.1, noise_std=0.0001, soft_loss_beta=1.0, soft_loss_start_epoch=None, positives_weight=1.0, train_log_interval=5, random_seed=42, aux_categorical_types=<factory>, cat_loss_weight=1.0)#
classmethod get_model_type()#

Return the model type identifier for this parameter class.

Return type:

ModelType

__init__(use_log_transform=True, n_epochs=10, early_stopping_patience=5, init_learning_rate=0.0001, weight_decay=0.05, max_grad_norm=10.0, lr_scheduler_config=<factory>, lr_scheduler_type=LRSchedulerType.REDUCE_LR_ON_PLATEAU, optimizer_type=OptimizerType.ADAMW, adam_betas=(0.9, 0.999), train_batch_size=2048, inference_batch_size=2048, sampler_type=SamplerType.RANDOM, layer_units=(1024, 512, 256, 128), dropout_rate=0.3, mask_rate=0.1, noise_std=0.0001, soft_loss_beta=1.0, soft_loss_start_epoch=None, positives_weight=1.0, train_log_interval=5, random_seed=42, aux_categorical_types=<factory>, cat_loss_weight=1.0)#
get_data_loader_params()#

Return a DataLoaderParams object with data loader-related parameters.

Return type:

DataLoaderParams

get_dataset_params()#

Return a DatasetParams object with dataset-related parameters.

Return type:

DataAugmentParams

get_lr_scheduler_params()#

Return an LRSchedulerParams object with learning rate scheduler-related parameters.

Return type:

LRSchedulerParams

get_optimizer_params()#

Return an OptimizerParams object with optimizer-related parameters.

Return type:

OptimizerParams

adam_betas: tuple = (0.9, 0.999)#
aux_categorical_types: tuple[str, ...]#
cat_loss_weight: float = 1.0#
dropout_rate: float = 0.3#
early_stopping_patience: int = 5#
inference_batch_size: int = 2048#
init_learning_rate: float = 0.0001#
layer_units: tuple = (1024, 512, 256, 128)#
lr_scheduler_config: dict[str, object]#
lr_scheduler_type: LRSchedulerType = 'ReduceLROnPlateau'#
mask_rate: float = 0.1#
max_grad_norm: float = 10.0#
n_epochs: int = 10#
noise_std: float = 0.0001#
optimizer_type: OptimizerType = 'AdamW'#
positives_weight: float = 1.0#
random_seed: int = 42#
sampler_type: SamplerType = 'random'#
soft_loss_beta: float | None = 1.0#
soft_loss_start_epoch: int | None = None#
train_batch_size: int = 2048#
train_log_interval: int = 5#
use_log_transform: bool = True#
weight_decay: float = 0.05#