Module optimization

Module optimization 

Source
Expand description

Multi-Output Learning Optimization Framework

This module provides a comprehensive suite of optimization algorithms for multi-output learning problems. It has been refactored from a monolithic 2697-line file into 5 specialized modules for improved maintainability and focused functionality.

§Module Organization

  • joint_loss_optimization: Joint loss optimization with multiple loss function combinations
  • multi_objective_optimization: Genetic algorithm-based Pareto optimization
  • scalarization_methods: Scalarization techniques for multi-objective problems
  • nsga2_algorithms: NSGA-II evolutionary algorithms with advanced operators
  • evolutionary_multi_objective: Complete NSGA-II implementation with SBX crossover and polynomial mutation
  • tests: Comprehensive integration test suite

§Key Features

  • Joint Loss Functions: MSE, MAE, Huber, Cross-entropy, and Hinge losses
  • Loss Combination Strategies: Sum, weighted sum, max, geometric mean, and adaptive
  • Multi-Objective Optimization: Pareto-optimal solution discovery
  • Scalarization Methods: Weighted sum, epsilon-constraint, and Tchebycheff approaches
  • Advanced Evolutionary Algorithms: NSGA-II with SBX crossover and polynomial mutation
  • Performance Monitoring: Convergence tracking with hypervolume indicator

Re-exports§

pub use joint_loss_optimization::JointLossConfig;
pub use joint_loss_optimization::JointLossOptimizer;
pub use joint_loss_optimization::JointLossOptimizerTrained;
pub use joint_loss_optimization::LossCombination;
pub use joint_loss_optimization::LossFunction;
pub use multi_objective_optimization::MultiObjectiveConfig;
pub use multi_objective_optimization::MultiObjectiveOptimizer;
pub use multi_objective_optimization::MultiObjectiveOptimizerTrained;
pub use multi_objective_optimization::ParetoSolution;
pub use scalarization_methods::ScalarizationConfig;
pub use scalarization_methods::ScalarizationMethod;
pub use scalarization_methods::ScalarizationOptimizer;
pub use scalarization_methods::ScalarizationOptimizerTrained;
pub use nsga2_algorithms::NSGA2Algorithm;
pub use nsga2_algorithms::NSGA2Config;
pub use nsga2_algorithms::NSGA2Optimizer;
pub use nsga2_algorithms::NSGA2OptimizerTrained;
pub use evolutionary_multi_objective::GenerationStats;
pub use evolutionary_multi_objective::Individual;
pub use evolutionary_multi_objective::OptimizationResult;
pub use evolutionary_multi_objective::NSGAII;

Modules§

evolutionary_multi_objective
Evolutionary Multi-Objective Optimization Algorithms
joint_loss_optimization
Joint Loss Optimization for Multi-Output Learning
multi_objective_optimization
Multi-Objective Optimization for Multi-Output Learning
nsga2_algorithms
Enhanced Evolutionary Multi-Objective Optimization Algorithms
scalarization_methods
Scalarization Methods for Multi-Objective Optimization