TrainingManager#
- class TrainingManager(metric_config: MetricManager, config_manager: ConfigurationManager, verbose=False)#
Manage the training and evaluation of machine learning models.
Coordinates model training using various algorithms, evaluates them on different datasets, and generates reports. Integrates with EvaluationManager for model evaluation and ReportManager for generating HTML reports.
- Parameters:
- metric_configMetricManager
Configuration for evaluation metrics
- config_managerConfigurationManager
Instance containing data needed to run experiments
- verbosebool, optional
Controls logging verbosity level, by default False
- Attributes:
- metric_configMetricManager
Configuration for evaluation metrics
- verbosebool
Controls logging verbosity level
- data_managersdict
Maps group names to their data managers
- experimentscollections.deque
Queue of experiments to run
- logfilestr
Path to the configuration log file
- output_structuredict
Structure of output data organization
- description_mapdict
Mapping of names to descriptions
- experiment_pathsdefaultdict
Nested structure tracking experiment output paths
- experiment_resultsdefaultdict
Stores results of all experiments
- run_experiments(workflow: Workflow, results_name: str | None = None, create_report: bool = True) None#
Runs the Workflow for each experiment and generates report.
- Parameters:
- workflowWorkflow
A subclass of the Workflow class that defines the training steps.
- results_namestr
The name of the results directory.
- create_reportbool
Whether to generate an HTML report after all experiments. Defaults to True.