scxpand.util.classes#

Functions

ensure_model_type(model_type)

Convert string to ModelType enum if needed, with validation.

Classes

BaseParams()

Abstract base class for all parameter classes.

DataAugmentParams([mask_rate, noise_std, ...])

DataLoaderParams(batch_size, shuffle, ...)

LRSchedulerParams(lr_scheduler_type, ...)

LRSchedulerType(*values)

ModelType(*values)

Enumeration of supported model types.

OptimizerParams(optimizer_type, adam_betas, ...)

OptimizerType(*values)

Enumeration of supported optimizer types.

SamplerType(*values)

Enumeration of supported sampler types.

class scxpand.util.classes.BaseParams#

Abstract base class for all parameter classes.

Provides a common interface for parameter classes with a shared get_model_type method. All parameter classes should inherit from this base class to ensure consistency.

abstractmethod classmethod get_model_type()#

Return the model type identifier for this parameter class.

Return type:

ModelType

Returns:

ModelType enum value for the model type

class scxpand.util.classes.DataAugmentParams(mask_rate=0.0, noise_std=0.0, soft_loss_beta=1.0)#
__init__(mask_rate=0.0, noise_std=0.0, soft_loss_beta=1.0)#
mask_rate: float = 0.0#
noise_std: float = 0.0#
soft_loss_beta: float = 1.0#
class scxpand.util.classes.DataLoaderParams(batch_size, shuffle, sampler_type)#
__init__(batch_size, shuffle, sampler_type)#
batch_size: int#
sampler_type: SamplerType#
shuffle: bool#
class scxpand.util.classes.LRSchedulerParams(lr_scheduler_type, lr_scheduler_config)#
__init__(lr_scheduler_type, lr_scheduler_config)#
lr_scheduler_config: dict#
lr_scheduler_type: LRSchedulerType#
class scxpand.util.classes.LRSchedulerType(*values)#
CONSTANT_LR = 'ConstantLR'#
COSINE_ANNEALING_LR = 'CosineAnnealingLR'#
NO_SCHEDULER = 'NoScheduler'#
ONE_CYCLE_LR = 'OneCycleLR'#
REDUCE_LR_ON_PLATEAU = 'ReduceLROnPlateau'#
STEP_LR = 'StepLR'#
class scxpand.util.classes.ModelType(*values)#

Enumeration of supported model types.

AUTOENCODER = 'autoencoder'#
LIGHTGBM = 'lightgbm'#
LOGISTIC = 'logistic'#
MLP = 'mlp'#
SVM = 'svm'#
class scxpand.util.classes.OptimizerParams(optimizer_type, adam_betas, weight_decay, max_grad_norm, init_learning_rate)#
__init__(optimizer_type, adam_betas, weight_decay, max_grad_norm, init_learning_rate)#
adam_betas: tuple#
init_learning_rate: float#
max_grad_norm: float#
optimizer_type: OptimizerType#
weight_decay: float#
class scxpand.util.classes.OptimizerType(*values)#

Enumeration of supported optimizer types.

ADAM = 'Adam'#
ADAMW = 'AdamW'#
SGD = 'SGD'#
class scxpand.util.classes.SamplerType(*values)#

Enumeration of supported sampler types.

BALANCED_LABELS = 'balanced_labels'#
BALANCED_TYPES = 'balanced_types'#
RANDOM = 'random'#
scxpand.util.classes.ensure_model_type(model_type)#

Convert string to ModelType enum if needed, with validation.

Return type:

ModelType