๐ Configuration Design
August 29, 2025 ยท View on GitHub
The design philosophy of BasicTS is to be entirely configuration-based. Our goal is to allow users to focus on their models and data, without getting bogged down by the complexities of pipeline construction.
The configuration file is a .py file where you can import your model and runner, and set all necessary options. BasicTS uses EasyDict as a parameter container, making it easy to extend and flexible to use.
The configuration file typically includes the following sections:
- General Options: Describes general settings such as configuration description,
GPU_NUM,RUNNER, etc. - Environment Options: Includes settings like
TF32,SEED,CUDNN,DETERMINISTIC, etc. - Dataset Options: Specifies
NAME,TYPE(Dataset Class),PARAMS(Dataset Parameters), etc. - Scaler Options: Specifies
NAME,TYPE(Scaler Class),PARAMS(Scaler Parameters), etc. - Model Options: Specifies
NAME,TYPE(Model Class),PARAMS(Model Parameters), etc. - Metrics Options: Includes
FUNCS(Metric Functions),TARGET(Target Metrics),NULL_VALUE(Handling of Missing Values), etc. - Train Options:
- General: Specifies settings like
EPOCHS,LOSS,EARLY_STOPPING, etc. - Optimizer: Specifies
TYPE(Optimizer Class),PARAMS(Optimizer Parameters), etc. - Schduler: Specifies
TYPE(Scheduler Class),PARAMS(Scheduler Parameters), etc. - Curriculum Learning: Includes settings like
CL_EPOHS,WARMUP_EPOCHS,STEP_SIZE, etc. - Data: Specifies settings like
BATCH_SIZE,NUM_WORKERS,PIN_MEMORY, etc.
- General: Specifies settings like
- Valid Options:
- General: Includes
INTERVALfor validation frequency. - Data: Specifies settings like
BATCH_SIZE,NUM_WORKERS,PIN_MEMORY, etc.
- General: Includes
- Test Options:
- General: Includes
INTERVALfor testing frequency. - Data: Specifies settings like
BATCH_SIZE,NUM_WORKERS,PIN_MEMORY, etc.
- General: Includes
For a complete guide on all configuration options and examples, refer to examples/complete_config.py.
๐งโ๐ป Explore Further
- ๐ Getting Stared
- ๐ก Understanding the Overall Design Convention of BasicTS
- ๐ฆ Exploring the Dataset Convention and Customizing Your Own Dataset
- ๐ ๏ธ Navigating The Scaler Convention and Designing Your Own Scaler
- ๐ง Diving into the Model Convention and Creating Your Own Model
- ๐ Examining the Metrics Convention and Developing Your Own Loss & Metrics
- ๐โโ๏ธ Mastering The Runner Convention and Building Your Own Runner
- ๐ Interpreting the Config File Convention and Customizing Your Configuration
- ๐ฏ Exploring Time Series Classification with BasicTS
- ๐ Exploring a Variety of Baseline Models