scxpand.hyperopt.param_grids#

Hyperparameter configuration functions for Optuna optimization.

This module defines the parameter search spaces for all supported model types. Each function suggests hyperparameters for a specific model architecture using Optuna’s trial.suggest_* methods with appropriate ranges and distributions.

Functions

configure_ae_trial_params(trial)

Configure Autoencoder hyperparameters for Optuna optimization.

configure_lightgbm_trial_params(trial)

Configure LightGBM hyperparameters for Optuna optimization.

configure_logistic_trial_params(trial)

Configure Logistic Regression hyperparameters for Optuna optimization.

configure_mlp_trial_params(trial)

Configure MLP (Multi-layer Perceptron) hyperparameters for Optuna optimization.

configure_svm_trial_params(trial)

Configure SVM (Support Vector Machine) hyperparameters for Optuna optimization.

create_optimized_lr_scheduler_config(trial, ...)

Create optimized learning rate scheduler configuration with hyperparameter search.

scxpand.hyperopt.param_grids.configure_ae_trial_params(trial)#

Configure Autoencoder hyperparameters for Optuna optimization.

This function defines the search space for autoencoder hyperparameters including: - Architecture: Standard vs fork variants, encoder/decoder layers (1-3), latent dimensions (16-128) - Loss Functions: MSE (mean squared error), NB (negative binomial), ZINB (zero-inflated negative binomial) - Training: Learning rate (1e-6 to 1e-3), batch size (2048 or 4096), 30 epochs - Regularization: Dropout (0.1-0.5), L1/L2 regularization, data augmentation - Multi-task: Configurable loss weights for reconstruction, classification, and auxiliary tasks

Parameters:

trial (Trial) – Optuna trial object for parameter suggestion

Return type:

dict

Returns:

Dictionary of autoencoder parameters (unprefixed for model instantiation)

scxpand.hyperopt.param_grids.configure_lightgbm_trial_params(trial)#

Configure LightGBM hyperparameters for Optuna optimization.

This function defines the search space for gradient boosting hyperparameters including: - Tree Structure: Max depth (3-12), number of leaves (15-127), estimators (50-300) - Learning: Learning rate (1e-3 to 0.1), min child samples (5-100) - Regularization: Feature/bagging fractions (0.7-0.95), alpha/lambda regularization - Boosting: GBDT, DART, GOSS variants with binary objective - Preprocessing: Optional log transform and z-score normalization

Parameters:

trial (Trial) – Optuna trial object for parameter suggestion

Return type:

dict

Returns:

Dictionary of LightGBM parameters (unprefixed for model instantiation)

scxpand.hyperopt.param_grids.configure_logistic_trial_params(trial)#

Configure Logistic Regression hyperparameters for Optuna optimization.

This function defines the search space for logistic regression hyperparameters including: - Optimization: SGD with 30 epochs, learning rates 1e-5 to 1e-2 (log-uniform) - Regularization: L2 and elasticnet penalties (alpha: 1e-6 to 1e-1) - Scheduling: Multiple learning rate schedules (optimal, constant, invscaling, adaptive) - Data: Optional log transform, configurable batch sizes (512-2048) - Features: Warm start, averaging, early stopping, data augmentation

Parameters:

trial (Trial) – Optuna trial object for parameter suggestion

Return type:

dict

Returns:

Dictionary of logistic regression parameters (unprefixed for model instantiation)

scxpand.hyperopt.param_grids.configure_mlp_trial_params(trial)#

Configure MLP (Multi-layer Perceptron) hyperparameters for Optuna optimization.

This function defines the search space for neural network hyperparameters including: - Architecture: Number of layers (2-5) and layer sizes (512-4096 units) - Training: Learning rate (1e-5 to 1e-3), batch size (2048 or 4096), 30 epochs - Regularization: Dropout (0.1-0.3), weight decay (1e-5 to 1e-2), data augmentation - Optimization: Adam optimizer with configurable learning rate schedulers - Advanced: Soft loss, auxiliary tasks, balanced sampling strategies

Parameters:

trial (Trial) – Optuna trial object for parameter suggestion

Return type:

dict

Returns:

Dictionary of MLP parameters (unprefixed for model instantiation)

scxpand.hyperopt.param_grids.configure_svm_trial_params(trial)#

Configure SVM (Support Vector Machine) hyperparameters for Optuna optimization.

This function defines the search space for SVM hyperparameters including: - Optimization: SGD with 30 epochs, learning rates 1e-5 to 1e-2 (log-uniform) - Regularization: L2 and elasticnet penalties (alpha: 1e-6 to 1e-1) - Scheduling: Multiple learning rate schedules (optimal, constant, invscaling, adaptive) - Data: Optional log transform, configurable batch sizes (512-2048) - Features: Warm start, averaging, early stopping, data augmentation

Note: SVM uses hinge loss, which only supports L2 and elasticnet penalties (not L1).

Parameters:

trial (Trial) – Optuna trial object for parameter suggestion

Return type:

dict

Returns:

Dictionary of SVM parameters (unprefixed for model instantiation)

scxpand.hyperopt.param_grids.create_optimized_lr_scheduler_config(trial, lr_scheduler_type, n_epochs, prefix)#

Create optimized learning rate scheduler configuration with hyperparameter search.

Parameters:
  • trial (Trial) – Optuna trial object

  • lr_scheduler_type (str) – Type of learning rate scheduler

  • n_epochs (int) – Number of training epochs

  • prefix (str) – Prefix for parameter names (e.g., "mlp_", "ae_")

Return type:

dict

Returns:

Dictionary with scheduler-specific configuration