Skip to content

Latest commit

 

History

History
82 lines (46 loc) · 5.29 KB

File metadata and controls

82 lines (46 loc) · 5.29 KB
graph LR
    BaseEpochRunner["BaseEpochRunner"]
    BaseIterationRunner["BaseIterationRunner"]
    BaseTSFRunner["BaseTSFRunner"]
    BaseUTSFRunner["BaseUTSFRunner"]
    SimpleTSFRunner["SimpleTSFRunner"]
    OptimBuilder["OptimBuilder"]
    BaseEpochRunner -- "delegates to" --> OptimBuilder
    BaseTSFRunner -- "extends" --> BaseEpochRunner
    BaseUTSFRunner -- "extends" --> BaseEpochRunner
    BaseIterationRunner -- "invokes" --> OptimBuilder
    SimpleTSFRunner -- "specializes" --> BaseTSFRunner
Loading

CodeBoardingDemoContact

Details

The Training & Evaluation Core subsystem in BasicTS is responsible for orchestrating the entire training, validation, and testing lifecycle of machine learning models, particularly focusing on time series analysis. It provides a flexible and extensible framework for defining various training paradigms (epoch-based, iteration-based) and specialized runners for different time series tasks.

BaseEpochRunner

Establishes the fundamental structure for epoch-based training, validation, and testing pipelines. It defines the overall training flow, including train_epoch, val_epoch, and test_epoch methods, and manages lifecycle hooks for epoch-level operations.

Related Classes/Methods:

BaseIterationRunner

Provides the base for iteration-based training, validation, and testing. It manages resources and lifecycle at the individual iteration level, offering finer-grained control than BaseEpochRunner, suitable for scenarios where epoch boundaries are less relevant or for very large datasets.

Related Classes/Methods:

BaseTSFRunner

Specializes BaseEpochRunner for Time Series Forecasting (TSF) tasks. It incorporates TSF-specific functionalities such as data scaling, graph setup, and tailored training/inference steps, adapting the general epoch-based flow for time series data.

Related Classes/Methods:

BaseUTSFRunner

Serves as a base for Unsupervised Time Series Forecasting (UTSF) runners. Its focus is on data preprocessing, postprocessing, and potentially feature selection relevant to unsupervised learning, extending the BaseEpochRunner for unsupervised paradigms.

Related Classes/Methods:

SimpleTSFRunner

A concrete implementation of a TSF runner, inheriting from BaseTSFRunner. It defines the specific forward pass logic for a simple TSF model, showcasing how specific models integrate into the general TSF pipeline and providing a runnable example.

Related Classes/Methods:

OptimBuilder

A utility module responsible for constructing PyTorch optimizers and learning rate schedulers based on configuration. It centralizes the logic for creating and configuring optimization strategies, decoupling it from the runner's core training loop.

Related Classes/Methods: