Showing preview only (1,080K chars total). Download the full file or copy to clipboard to get everything.
Repository: microsoft/ProbTS
Branch: main
Commit: 6975a9766995
Files: 299
Total size: 998.7 KB
Directory structure:
gitextract_33gmype6/
├── .gitignore
├── .gitmodules
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README.md
├── SECURITY.md
├── checkpoints/
│ └── README.md
├── config/
│ ├── default/
│ │ ├── autoformer.yaml
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru.yaml
│ │ ├── gru_maf.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── itransformer.yaml
│ │ ├── linear.yaml
│ │ ├── mean.yaml
│ │ ├── moderntcn.yaml
│ │ ├── naive.yaml
│ │ ├── nhits.yaml
│ │ ├── nlinear.yaml
│ │ ├── patchtst.yaml
│ │ ├── timegrad.yaml
│ │ ├── timesnet.yaml
│ │ ├── trans_maf.yaml
│ │ ├── transformer.yaml
│ │ ├── tsdiff.yaml
│ │ └── tsmixer.yaml
│ ├── ltsf/
│ │ ├── electricity_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── etth1/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── etth2/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── ettm1/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── ettm2/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── exchange_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── illness_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── traffic_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ └── weather_ltsf/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ └── timegrad.yaml
│ ├── m4/
│ │ ├── m4_daily/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── m4_weekly/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── m5/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ └── tourism_monthly/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ └── timegrad.yaml
│ ├── multi_hor/
│ │ ├── autoformer.yaml
│ │ └── elastst.yaml
│ ├── pipeline_config.yaml
│ ├── stsf/
│ │ ├── electricity/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── exchange/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── solar/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── traffic/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ └── wiki/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru.yaml
│ │ ├── gru_maf.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ ├── timegrad.yaml
│ │ ├── timesnet.yaml
│ │ ├── trans_maf.yaml
│ │ └── transformer.yaml
│ └── tsfm/
│ ├── chronos.yaml
│ ├── forecastpfn.yaml
│ ├── lag_llama.yaml
│ ├── moirai/
│ │ ├── context_5000/
│ │ │ ├── electricity_ltsf.yaml
│ │ │ ├── electricity_nips.yaml
│ │ │ ├── etth1.yaml
│ │ │ ├── etth2.yaml
│ │ │ ├── ettm1.yaml
│ │ │ ├── ettm2.yaml
│ │ │ ├── exchange_rate_nips.yaml
│ │ │ ├── solar_nips.yaml
│ │ │ └── weather_ltsf.yaml
│ │ └── context_96/
│ │ ├── electricity_ltsf.yaml
│ │ ├── electricity_nips.yaml
│ │ ├── etth1.yaml
│ │ ├── etth2.yaml
│ │ ├── ettm1.yaml
│ │ ├── ettm2.yaml
│ │ ├── exchange_rate_nips.yaml
│ │ ├── solar_nips.yaml
│ │ └── weather_ltsf.yaml
│ ├── moirai.yaml
│ ├── time_moe.yaml
│ ├── timer.yaml
│ ├── timesfm.yaml
│ ├── tinytimemixer.yaml
│ └── units.yaml
├── datasets/
│ └── .gitignore
├── docs/
│ ├── benchmark/
│ │ ├── README.md
│ │ ├── foundation_model/
│ │ │ ├── README.md
│ │ │ ├── chronos.md
│ │ │ ├── forecastpfn.md
│ │ │ ├── lag-llama.md
│ │ │ ├── moirai.md
│ │ │ ├── timer.md
│ │ │ ├── timesfm.md
│ │ │ ├── ttm.md
│ │ │ └── units.md
│ │ └── supervised_model/
│ │ └── README.md
│ └── documentation/
│ ├── Gift_eval.md
│ └── README.md
├── exps/
│ └── .gitignore
├── notebook/
│ └── data_characteristics.ipynb
├── probts/
│ ├── __init__.py
│ ├── callbacks/
│ │ ├── __init__.py
│ │ ├── memory_callback.py
│ │ └── time_callback.py
│ ├── data/
│ │ ├── __init__.py
│ │ ├── data_manager.py
│ │ ├── data_module.py
│ │ ├── data_utils/
│ │ │ ├── data_scaler.py
│ │ │ ├── data_utils.py
│ │ │ ├── get_datasets.py
│ │ │ └── time_features.py
│ │ ├── data_wrapper.py
│ │ └── datasets/
│ │ ├── gift_eval_datasets.py
│ │ ├── multi_horizon_datasets.py
│ │ └── single_horizon_datasets.py
│ ├── model/
│ │ ├── __init__.py
│ │ ├── forecast_module.py
│ │ ├── forecaster/
│ │ │ ├── __init__.py
│ │ │ ├── forecaster.py
│ │ │ ├── point_forecaster/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── autoformer.py
│ │ │ │ ├── dlinear.py
│ │ │ │ ├── elastst.py
│ │ │ │ ├── forecastpfn.py
│ │ │ │ ├── gru.py
│ │ │ │ ├── itransformer.py
│ │ │ │ ├── linear.py
│ │ │ │ ├── mean.py
│ │ │ │ ├── moderntcn.py
│ │ │ │ ├── naive.py
│ │ │ │ ├── nhits.py
│ │ │ │ ├── nlinear.py
│ │ │ │ ├── patchtst.py
│ │ │ │ ├── time_moe.py
│ │ │ │ ├── timer.py
│ │ │ │ ├── timesfm.py
│ │ │ │ ├── timesnet.py
│ │ │ │ ├── tinytimemixer.py
│ │ │ │ ├── transformer.py
│ │ │ │ ├── tsmixer.py
│ │ │ │ └── units.py
│ │ │ └── prob_forecaster/
│ │ │ ├── __init__.py
│ │ │ ├── chronos.py
│ │ │ ├── csdi.py
│ │ │ ├── gru_maf.py
│ │ │ ├── gru_nvp.py
│ │ │ ├── lag_llama.py
│ │ │ ├── moirai.py
│ │ │ ├── timegrad.py
│ │ │ ├── trans_maf.py
│ │ │ └── tsdiff.py
│ │ └── nn/
│ │ ├── __init__.py
│ │ ├── arch/
│ │ │ ├── AutoformerModule/
│ │ │ │ ├── AutoCorrelation.py
│ │ │ │ └── Autoformer_EncDec.py
│ │ │ ├── ChronosModule/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── chronos.py
│ │ │ │ ├── chronos_bolt.py
│ │ │ │ ├── loss.py
│ │ │ │ └── utils.py
│ │ │ ├── Conv_Blocks.py
│ │ │ ├── ElasTSTModule/
│ │ │ │ ├── ElasTST_backbone.py
│ │ │ │ ├── Layers.py
│ │ │ │ ├── Modules.py
│ │ │ │ ├── SubLayers.py
│ │ │ │ ├── TRoPE.py
│ │ │ │ └── __init__.py
│ │ │ ├── ModernTCN_backbone.py
│ │ │ ├── Moirai_backbone.py
│ │ │ ├── PatchTSTModule/
│ │ │ │ ├── PatchTST_backbone.py
│ │ │ │ └── PatchTST_layers.py
│ │ │ ├── RevIN.py
│ │ │ ├── S4/
│ │ │ │ ├── s4.py
│ │ │ │ └── s4_backbones.py
│ │ │ ├── TSMixer_layers.py
│ │ │ ├── TimesFMModule/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── patched_decoder.py
│ │ │ │ ├── pytorch_patched_decoder.py
│ │ │ │ ├── timesfm_base.py
│ │ │ │ ├── timesfm_jax.py
│ │ │ │ ├── timesfm_torch.py
│ │ │ │ └── xreg_lib.py
│ │ │ ├── TransformerModule/
│ │ │ │ ├── Embed.py
│ │ │ │ ├── SelfAttention_Family.py
│ │ │ │ └── Transformer_EncDec.py
│ │ │ ├── __init__.py
│ │ │ └── decomp.py
│ │ └── prob/
│ │ ├── MAF.py
│ │ ├── RealNVP.py
│ │ ├── __init__.py
│ │ ├── diffusion_layers.py
│ │ ├── flow_model.py
│ │ └── gaussian_diffusion.py
│ └── utils/
│ ├── __init__.py
│ ├── download_datasets.py
│ ├── evaluator.py
│ ├── masking.py
│ ├── metrics.py
│ ├── position_emb.py
│ ├── save_utils.py
│ └── utils.py
├── pyproject.toml
├── run.py
├── run.sh
└── scripts/
├── prepare_datasets.sh
├── prepare_tsfm_checkpoints.sh
├── reproduce_ltsf_results.sh
├── reproduce_stsf_results.sh
├── reproduce_tsfm_results.sh
├── run_elastst.sh
└── run_varied_hor_training.sh
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
# vscode IDE
.vscode
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/
# Translations
*.mo
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal
# Flask stuff:
instance/
.webassets-cache
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
.pybuilder/
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version
# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock
# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock
# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
.pdm.toml
.pdm-python
.pdm-build/
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/
# Celery stuff
celerybeat-schedule
celerybeat.pid
# SageMath parsed files
*.sage.py
# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Pyre type checker
.pyre/
# pytype static type analyzer
.pytype/
# Cython debug symbols
cython_debug/
# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
1.sh
log/
.vscode/
*.DS_Store
*.AppleDouble
*.LSOverride
*__MACOSX
# Icon must end with two \r characters
Icon
# Thumbnails / metadata
._*
.Spotlight-V100
.Trashes
.fseventsd
# Volumes / network
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.VolumeIcon.icns
# iCloud placeholders
*.icloud
================================================
FILE: .gitmodules
================================================
[submodule "submodules/uni2ts"]
path = submodules/uni2ts
url = https://github.com/SalesforceAIResearch/uni2ts.git
[submodule "submodules/lag_llama"]
path = submodules/lag_llama
url = https://github.com/time-series-foundation-models/lag-llama.git
[submodule "submodules/timesfm"]
path = submodules/timesfm
url = https://github.com/google-research/timesfm.git
[submodule "submodules/tsfm"]
path = submodules/tsfm
url = https://github.com/ibm-granite/granite-tsfm.git
================================================
FILE: CODE_OF_CONDUCT.md
================================================
# Microsoft Open Source Code of Conduct
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
Resources:
- [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
- [Microsoft Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
- Contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with questions or concerns
================================================
FILE: LICENSE
================================================
MIT License
Copyright (c) Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE
================================================
FILE: README.md
================================================
<div align=center> <img src="docs/figs/probts_logo.png" width = 50%/> </div>
# ProbTS: Benchmarking Point and Distributional Forecasting across Diverse Prediction Horizons
[](https://arxiv.org/abs/2310.07446) [](./docs/benchmark/README.md) [](./docs/documentation/README.md)
## News :tada:
:triangular_flag_on_post: **May 2025**: We have integrated [ModernTCN](https://github.com/luodhhh/ModernTCN/tree/main) into ProbTS. You can find the corresponding configuration file [here](./config/default/moderntcn.yaml).
:triangular_flag_on_post: **Apr 2025**: ProbTS now includes [Time-MoE](https://github.com/Time-MoE/Time-MoE) and offers improved support for foundation models of varying sizes. See [Foundation Models](#foundation-models) for details.
:triangular_flag_on_post: **Dec 2024**: ProbTS now supports [GIFT-EVAL](https://github.com/SalesforceAIResearch/gift-eval?tab=readme-ov-file#installation) benchmark datasets! Visit [this page](./docs/documentation/Gift_eval.md) for detailed instructions. *Please note that this feature is still in beta version and may contain bugs or inconsistencies. We will continue to update and improve it.*
:triangular_flag_on_post: **Dec 2024**: Added quick guides for benchmarking foundation models. Visit [this page](./docs/benchmark/foundation_model/README.md) for detailed instructions.
:triangular_flag_on_post: **Oct 2024**: ProbTS now includes the ElasTST model! Check out the [ElasTST branch](https://github.com/microsoft/ProbTS/tree/elastst) to reproduce all results reported in paper or run `bash scripts/run_elastst.sh` for a quick start.
:triangular_flag_on_post: **Oct 2024**: The [camera-ready version](https://arxiv.org/abs/2310.07446) of ProbTS is now available, with more in-depth analyses on the impact of normalization.
## About ProbTS :bulb:
A wide range of industrial applications desire precise point and distributional forecasting for diverse prediction horizons. ProbTS serves as a benchmarking tool to aid in understanding how advanced time-series models fulfill these essential forecasting needs. It also sheds light on their advantages and disadvantages in addressing different challenges and unveil the possibilities for future research.
To achieve these objectives, ProbTS provides a unified pipeline that implements [cutting-edge models](#-available-models) from different research threads, including:
- Supervised long-term point forecasting models, such as [PatchTST](https://arxiv.org/abs/2211.14730), [iTransformer](https://arxiv.org/abs/2310.06625), etc.
- Supervised short-term probabilistic forecasting models, such as [TimeGrad](https://arxiv.org/abs/2101.12072), [CSDI](https://arxiv.org/abs/2107.03502), etc.
- Pre-trained time-series foundation models for zero-shot forecasting, such as [TimesFM](https://arxiv.org/abs/2310.10688), [MOIRAI](https://arxiv.org/abs/2402.02592), etc.
Specifically, ProbTS emphasizes the differences in their primary methodological designs, including:
- Supporting point or distributional forecasts
- Using autoregressive or non-autoregressive decoding schemes for multi-step outputs
<div align=center> <img src="docs/figs/probts_framework.png" width = 95%/> </div>
## Available Models 🧩
ProbTS includes both classical time-series models, specializing in long-term point forecasting or short-term distributional forecasting, and recent time-series foundation models that offer zero-shot and arbitrary-horizon forecasting capabilities for new time series.
### Classical Time-series Models
| **Model** | **Original Eval. Horizon** | **Estimation** | **Decoding Scheme** | **Class Path** |
| --- | --- | --- | --- | --- |
| Linear | - | Point | Auto / Non-auto | `probts.model.forecaster.point_forecaster.LinearForecaster` |
| [GRU](https://arxiv.org/abs/1412.3555) | - | Point | AR / NAR | `probts.model.forecaster.point_forecaster.GRUForecaster` |
| [Transformer](https://arxiv.org/abs/1706.03762) | - | Point | AR / NAR | `probts.model.forecaster.point_forecaster.TransformerForecaster` |
| [Autoformer](https://arxiv.org/abs/2106.13008) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.Autoformer` |
| [N-HiTS](https://arxiv.org/abs/2201.12886) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.NHiTS` |
| [NLinear](https://arxiv.org/abs/2205.13504) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.NLinear` |
| [DLinear](https://arxiv.org/abs/2205.13504) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.DLinear` |
| [TSMixer](https://arxiv.org/abs/2303.06053) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.TSMixer` |
| [TimesNet](https://arxiv.org/abs/2210.02186) | Short / Long | Point | NAR | `probts.model.forecaster.point_forecaster.TimesNet` |
| [PatchTST](https://arxiv.org/abs/2211.14730) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.PatchTST` |
| [iTransformer](https://arxiv.org/abs/2310.06625) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.iTransformer` |
| [ElasTST](https://arxiv.org/abs/2411.01842) | Long | Point | NAR | `probts.model.forecaster.point_forecaster.ElasTST` |
| [GRU NVP](https://arxiv.org/abs/2002.06103) | Short | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.GRU_NVP` |
| [GRU MAF](https://arxiv.org/abs/2002.06103) | Short | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.GRU_MAF` |
| [Trans MAF](https://arxiv.org/abs/2002.06103) | Short | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.Trans_MAF` |
| [TimeGrad](https://arxiv.org/abs/2101.12072) | Short | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.TimeGrad` |
| [CSDI](https://arxiv.org/abs/2107.03502) | Short | Probabilistic | NAR | `probts.model.forecaster.prob_forecaster.CSDI` |
| [TSDiff](https://arxiv.org/abs/2307.11494) | Short | Probabilistic | NAR | `probts.model.forecaster.prob_forecaster.TSDiffCond` |
### Foundation Models
| **Model** | **Any Horizon** | **Estimation** | **Decoding Scheme** | **Class Path** | **Model Size** |
| --- | --- | --- | --- | --- | --- |
| [Lag-Llama](https://arxiv.org/abs/2310.08278) | ✔ | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.LagLlama` | - |
| [ForecastPFN](https://arxiv.org/abs/2311.01933) | ✔ | Point | NAR | `probts.model.forecaster.point_forecaster.ForecastPFN` | - |
| [TimesFM](https://arxiv.org/abs/2310.10688) | ✔ | Point | AR | `probts.model.forecaster.point_forecaster.TimesFM` | `200m`, `500m` |
| [TTM](https://arxiv.org/abs/2401.03955) | ✘ | Point | NAR | `probts.model.forecaster.point_forecaster.TinyTimeMixer` | - |
| [Timer](https://arxiv.org/abs/2402.02368) | ✔ | Point | AR | `probts.model.forecaster.point_forecaster.Timer` | - |
| [MOIRAI](https://arxiv.org/abs/2402.02592) | ✔ | Probabilistic | NAR | `probts.model.forecaster.prob_forecaster.Moirai` | `small`, `base`, `large` |
| [UniTS](https://arxiv.org/abs/2403.00131) | ✔ | Point | NAR | `probts.model.forecaster.point_forecaster.UniTS` | - |
| [Chronos](https://arxiv.org/abs/2403.07815) | ✔ | Probabilistic | AR | `probts.model.forecaster.prob_forecaster.Chronos` | `tiny`, `mini`, `small`, `base`, `large` |
| [Time-MoE](https://arxiv.org/abs/2409.16040) | ✔ | Point | AR | `probts.model.forecaster.point_forecaster.TimeMoE` | `50M`, `200M` |
See the [tsfm configuration directory](./config/tsfm/) for more details. More models will be added soon—stay tuned!
## Setup :wrench:
### Environment
ProbTS is developed with Python 3.10 and relies on [PyTorch Lightning](https://github.com/Lightning-AI/lightning). To set up the environment:
```bash
# Create a new conda environment
conda create -n probts python=3.10
conda activate probts
# Install required packages
pip install .
pip uninstall -y probts # recommended to uninstall the root package (optional)
```
<details>
<summary>Optional for TSFMs reproducibility</summary>
For time-series foundation models, you need to install basic packages and additional dependencies:
**1. Set Up Environment**
```bash
# Create a new conda environment
conda create -n probts_fm python=3.10
conda activate probts_fm
# Git submodule
git submodule update --init --recursive
# Install additional packages for foundation models
pip install ".[tsfm]"
pip uninstall -y probts # recommended to uninstall the root package (optional)
```
**2. Initialize Submodules**
```bash
# For MOIRAI, we fix the version of the package for better performance
cd submodules/uni2ts
git reset --hard fce6a6f57bc3bc1a57c7feb3abc6c7eb2f264301
# For Lag-Llama, fix the version for reproducibility (optional)
cd submodules/lag_llama
git reset --hard 4ad82d9
# For TinyTimeMixer, fix the version for reproducibility (optional)
cd submodules/tsfm
git reset --hard bb125c14a05e4231636d6b64f8951d5fe96da1dc
```
</details>
### Datasets
For a complete dataset list, refer to the [Datasets Overview](./docs/documentation/README.md#datasets-overview).
- **Short-Term Forecasting**: We use datasets from [GluonTS](https://github.com/awslabs/gluonts).
Configure the datasets using `--data.data_manager.init_args.dataset {DATASET_NAME}`. You can choose from multivariate or univariate datasets as per your requirement.
```bash
['exchange_rate_nips', 'electricity_nips', 'traffic_nips', 'solar_nips', 'wiki2000_nips']
```
- **Long-Term Forecasting**: To download the [long-term forecasting datasets](https://drive.google.com/drive/folders/1ZOYpTUa82_jCcxIdTmyr0LXQfvaM9vIy), please follow these steps:
```bash
bash scripts/prepare_datasets.sh "./datasets"
```
Configure the datasets using `--data.data_manager.init_args.dataset {DATASET_NAME}` with the following list of available datasets:
```bash
['etth1', 'etth2','ettm1','ettm2','traffic_ltsf', 'electricity_ltsf', 'exchange_ltsf', 'illness_ltsf', 'weather_ltsf', 'caiso', 'nordpool']
```
*Note: When utilizing long-term forecasting datasets, you must explicitly specify the `context_length` and `prediction_length` parameters. For example, to set a context length of 96 and a prediction length of 192, use the following command-line arguments:*
```bash
--data.data_manager.init_args.context_length 96 \
--data.data_manager.init_args.prediction_length 192 \
```
- **Using Datasets from Monash Time Series Forecasting Repository**: To use datasets from the [Monash Time Series Forecasting Repository](https://forecastingdata.org/), follow these steps:
1. **Download the Dataset**:
- Navigate to the target dataset, such as the [Electricity Hourly Dataset](https://zenodo.org/records/4656140).
- Download the `.tsf` file and place it in your local `datasets` directory (e.g., `./datasets`).
1. **Configure the Dataset**:
- Use the following configuration to specify the dataset, file path, and frequency:
```bash
--data.data_manager.init_args.dataset {DATASET_NAME} \
--data.data_manager.init_args.data_path /path/to/data_file.tsf \
--data.data_manager.init_args.freq {FREQ}
```
- **Example Configuration**:
```bash
--data.data_manager.init_args.dataset monash_electricity_hourly \
--data.data_manager.init_args.data_path ./datasets/electricity_hourly_dataset.tsf \
--data.data_manager.init_args.freq H \
--data.data_manager.init_args.context_length 96 \
--data.data_manager.init_args.prediction_length 96 \
--data.data_manager.init_args.multivariate true
```
*Note 1: Refer to the [Pandas Time Series Offset Aliases](https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#timeseries-offset-aliases) for the correct frequency values (`{FREQ}`) to use in your configuration.*
*Note 2: You can adjust the test instance sampling using the `--data.data_manager.init_args.test_rolling_length` parameter.*
### Checkpoints for Foundation Models
Download the checkpoints with the following command (details can be found [here](./checkpoints/README.md)):
```bash
bash scripts/prepare_tsfm_checkpoints.sh # By downloading, you agree to the original licenses
```
## Quick Start :rocket:
Specify `--config` with a specific configuration file to reproduce results of point or probabilistic models on commonly used long- and short-term forecasting datasets. Configuration files are included in the [config](./config/) folder.
To run models:
```bash
bash run.sh
```
Experimental results reproduction:
- **Long-term Forecasting:**
```bash
bash scripts/reproduce_ltsf_results.sh
```
- **Short-term Forecasting:**
```bash
bash scripts/reproduce_stsf_results.sh
```
- **Time Series Foundation Models:**
```bash
bash scripts/reproduce_tsfm_results.sh
```
### Short-term Forecasting Configuration
For short-term forecasting scenarios, datasets and corresponding `context_length` and `prediction_length` are automatically obtained from [GluonTS](https://github.com/awslabs/gluonts). Use the following command:
```bash
python run.py --config config/path/to/model.yaml \
--data.data_manager.init_args.path /path/to/datasets/ \
--trainer.default_root_dir /path/to/log_dir/ \
--data.data_manager.init_args.dataset {DATASET_NAME}
```
See full `DATASET_NAME` list:
```python
from gluonts.dataset.repository import dataset_names
print(dataset_names)
```
### Long-term Forecasting Configuration
For long-term forecasting scenarios, `context_length` and `prediction_length` must be explicitly assigned:
```bash
python run.py --config config/path/to/model.yaml \
--data.data_manager.init_args.path /path/to/datasets/ \
--trainer.default_root_dir /path/to/log_dir/ \
--data.data_manager.init_args.dataset {DATASET_NAME} \
--data.data_manager.init_args.context_length {CTX_LEN} \
--data.data_manager.init_args.prediction_length {PRED_LEN}
```
`DATASET_NAME` options:
```bash
['etth1', 'etth2','ettm1','ettm2','traffic_ltsf', 'electricity_ltsf', 'exchange_ltsf', 'illness_ltsf', 'weather_ltsf', 'caiso', 'nordpool']
```
### Forecasting with Varied Prediction Lengths
Conventional forecasting models typically require specific training and deployment for each prediction horizon. However, with the growing importance of varied-horizon forecasting, there is a need for models that can deliver robust predictions across multiple inference horizons after a single training phase.
ProbTS has been updated to support varied-horizon forecasting by enabling the specification of distinct context and prediction lengths for the training, validation, and testing phases.
**Quick Start**
To quickly train and evaluate ElasTST:
```bash
bash scripts/run_elastst.sh
```
To quickly set up varied-horizon training:
```bash
bash scripts/run_varied_hor_training.sh
```
For detailed information on the configuration, refer to the [documentation](./docs/documentation/README.md#forecasting-with-varied-prediction-lengths).
*Note: Currently, this feature is only supported by ElasTST, Autoformer, and foundation models.*
## Benchmarking :balance_scale:
By utilizing ProbTS, we conduct a systematic comparison between studies that focus on point forecasting and those aimed at distributional estimation, employing various forecasting horizons and evaluation metrics. For more details
- [Short-term & Long-term Forecasting Benchmarking](./docs/benchmark/README.md)
- [Evaluating Time Series Foundation Models](./docs/benchmark/FOUNDATION_MODEL.md)
## Documentation :open_book:
For detailed information on configuration parameters and model customization, please refer to the [documentation](./docs/documentation/README.md).
- To print the full pipeline configuration to a file:
```bash
python run.py --print_config > config/pipeline_config.yaml
```
## Acknowledgement 🌟
Special thanks to the following repositories for their open-sourced code bases and datasets.
### Tools/Packages
- [GluonTS](https://github.com/awslabs/gluonts)
- [PyTorch-TS](https://github.com/zalandoresearch/pytorch-ts)
- [TSLib](https://github.com/libts/tslib)
- [NeuralForecast](https://github.com/Nixtla/neuralforecast)
### Official Implementations
**Classical Time-series Models**
- [Autoformer](https://github.com/thuml/Autoformer)
- [N-HiTS](https://github.com/cchallu/n-hits)
- [NLinear, DLinear](https://github.com/cure-lab/LTSF-Linear)
- [TimesNet](https://github.com/thuml/Time-Series-Library)
- [RevIN](https://github.com/ts-kim/RevIN)
- [PatchTST](https://github.com/yuqinie98/PatchTST)
- [iTransformer](https://github.com/thuml/iTransformer)
- [GRU NVP, GRU MAF, Trans MAF, TimeGrad](https://github.com/zalandoresearch/pytorch-ts/tree/master)
- [CSDI](https://github.com/ermongroup/CSDI)
- [TSDiff](https://github.com/amazon-science/unconditional-time-series-diffusion)
**Time-series Foundation Models**
- [MOIRAI](https://github.com/SalesforceAIResearch/uni2ts)
- [Chronos](https://github.com/amazon-science/chronos-forecasting)
- [Lag-Llama](https://github.com/time-series-foundation-models/lag-llama)
- [TimesFM](https://github.com/google-research/timesfm)
- [Timer](https://github.com/thuml/Large-Time-Series-Model)
- [UniTS](https://github.com/mims-harvard/UniTS)
- [ForecastPFN](https://github.com/abacusai/ForecastPFN)
- [TTM](https://github.com/ibm-granite/granite-tsfm)
## Citing ProbTS :beers:
If you have used ProbTS for research or production, please cite it as follows.
```tex
@inproceedings{zhang2024probts,
title={{ProbTS}: Benchmarking Point and Distributional Forecasting across Diverse Prediction Horizons},
author={Zhang, Jiawen and Wen, Xumeng and Zhang, Zhenwei and Zheng, Shun and Li, Jia and Bian, Jiang},
booktitle={NeurIPS Datasets and Benchmarks Track},
year={2024}
}
```
================================================
FILE: SECURITY.md
================================================
<!-- BEGIN MICROSOFT SECURITY.MD V0.0.9 BLOCK -->
## Security
Microsoft takes the security of our software products and services seriously, which includes all source code repositories managed through our GitHub organizations, which include [Microsoft](https://github.com/Microsoft), [Azure](https://github.com/Azure), [DotNet](https://github.com/dotnet), [AspNet](https://github.com/aspnet) and [Xamarin](https://github.com/xamarin).
If you believe you have found a security vulnerability in any Microsoft-owned repository that meets [Microsoft's definition of a security vulnerability](https://aka.ms/security.md/definition), please report it to us as described below.
## Reporting Security Issues
**Please do not report security vulnerabilities through public GitHub issues.**
Instead, please report them to the Microsoft Security Response Center (MSRC) at [https://msrc.microsoft.com/create-report](https://aka.ms/security.md/msrc/create-report).
If you prefer to submit without logging in, send email to [secure@microsoft.com](mailto:secure@microsoft.com). If possible, encrypt your message with our PGP key; please download it from the [Microsoft Security Response Center PGP Key page](https://aka.ms/security.md/msrc/pgp).
You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Additional information can be found at [microsoft.com/msrc](https://www.microsoft.com/msrc).
Please include the requested information listed below (as much as you can provide) to help us better understand the nature and scope of the possible issue:
* Type of issue (e.g. buffer overflow, SQL injection, cross-site scripting, etc.)
* Full paths of source file(s) related to the manifestation of the issue
* The location of the affected source code (tag/branch/commit or direct URL)
* Any special configuration required to reproduce the issue
* Step-by-step instructions to reproduce the issue
* Proof-of-concept or exploit code (if possible)
* Impact of the issue, including how an attacker might exploit the issue
This information will help us triage your report more quickly.
If you are reporting for a bug bounty, more complete reports can contribute to a higher bounty award. Please visit our [Microsoft Bug Bounty Program](https://aka.ms/security.md/msrc/bounty) page for more details about our active programs.
## Preferred Languages
We prefer all communications to be in English.
## Policy
Microsoft follows the principle of [Coordinated Vulnerability Disclosure](https://aka.ms/security.md/cvd).
<!-- END MICROSOFT SECURITY.MD BLOCK -->
================================================
FILE: checkpoints/README.md
================================================
# Checkpoints for Foundation Models
For full reproducibility, we provide the checkpoints for some foundation models as of the paper completion date.
Download the checkpoints from [Google Drive](https://drive.google.com/drive/folders/1FaCk9Lj9KZGEO09gehNqC4fbTj4wnN8j?usp=sharing) with:
```bash
# By downloading, you agree to the terms of the original license agreements.
sh scripts/prepare_checkpoints.sh # in root directory
```
You can also download the newest checkpoints from the following repositories:
- For `Timer`, download the checkpoints from its [official repository](https://github.com/thuml/Large-Time-Series-Model?tab=readme-ov-file#code-for-fine-tuning) ([Google Drive](https://drive.google.com/drive/folders/15oaiAl4OO5gFqZMJD2lOtX2fxHbpgcU8) or [Tsinghua Cloud](https://cloud.tsinghua.edu.cn/d/235e6bfcf5fa440bb119/)) under the folder `./checkpoints/timer/Timer_67M_UTSD_4G.pt`.
- For `ForecastPFN`, download the checkpoints from its [official repository](https://github.com/abacusai/ForecastPFN#installation-) ([Google Drive](https://drive.google.com/file/d/1acp5thS7I4g_6Gw40wNFGnU1Sx14z0cU/view)) under the folder `./checkpoints/ForecastPFN/saved_weights`.
- For `UniTS`, download the checkpoints `units_x128_pretrain_checkpoint.pth` from its [official repository](https://github.com/mims-harvard/UniTS/releases/tag/ckpt) under the folder `./checkpoints/units/units_x128_pretrain_checkpoint.pth`.
- For `Lag-Llama`, download the checkpoints `lag-llama.ckpt` from its [huggingface repository](https://huggingface.co/time-series-foundation-models/Lag-Llama/tree/main) under the folder `./checkpoints/lag-llama/lag-llama.ckpt`.
- For other models, they can be automatically downloaded from huggingface during the first run.
<center>
| **Model** | **HuggingFace** |
| --- | --- |
| `MOIRAI` | [Link](https://huggingface.co/Salesforce/moirai-1.0-R-small) |
| `Chronos` | [Link](https://huggingface.co/amazon/chronos-t5-large) |
| `TinyTimeMixer` | [Link](https://huggingface.co/ibm-granite/granite-timeseries-ttm-v1) |
| `TimesFM` | [Link](https://huggingface.co/google/timesfm-1.0-200m) |
</center>
================================================
FILE: config/default/autoformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
# num_sanity_val_steps: 0
# gradient_clip_algorithm: 'norm'
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.Autoformer
init_args:
moving_avg: 25
factor: 1
n_heads: 8
activation: 'gelu'
e_layers: 2
d_layers: 1
output_attention: false
d_ff: 512
f_hidden_size: 512
embed: 'timeF'
use_lags: false
use_feat_idx_emb: false
use_time_feat: true
feat_idx_emb_dim: 1
num_samples: 1
learning_rate: 1e-3
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # none, standard, scaling
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/default/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/default/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/default/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 40
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 40
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
scaler: identity # identity, standard, temporal
split_val: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 7
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/itransformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.iTransformer
init_args:
factor: 1
n_heads: 8
activation: 'gelu'
e_layers: 2
output_attention: false
f_hidden_size: 256
d_ff: 256
label_len: 48
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 1
learning_rate: 1e-4
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # none, standard, scaling
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/default/linear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 30
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.LinearForecaster
init_args:
individual: false
use_lags: true
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/mean.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.MeanForecaster
init_args:
mode: global
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/moderntcn.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.ModernTCN
init_args:
ffn_ratio: 1
patch_size: 8
patch_stride: 4
num_blocks: [1]
large_size: [51]
dims: [64, 64, 64, 64]
dropout: 0.3
kernel_size: 3
small_size: [5]
use_multi_scale: false
small_kernel_merged: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/default/naive.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.NaiveForecaster
learning_rate: 0.001
quantiles_num: 10
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/nhits.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.NHiTS
init_args:
n_blocks: [1,1,1]
hidden_size: 512
pooling_mode: 'max'
interpolation_mode: 'linear'
activation: 'ReLU'
initialization: 'lecun_normal'
batch_normalization: false
shared_weights: false
naive_level:
dropout: 0
n_layers: 2
use_lags: false
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/nlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.NLinear
init_args:
individual: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 3
patch_len: 6
dropout: 0.1
f_hidden_size: 32
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: false
optimizer_config:
class_name: torch.optim.Adam
init_args:
weight_decay: 0
lr_scheduler_config:
class_name: torch.optim.lr_scheduler.OneCycleLR
init_args:
max_lr: 0.0001
steps_per_epoch: 100
pct_start: 0.3
epochs: 50
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
scaler: identity # identity, standard, temporal
split_val: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 32
dropout: 0.1
f_hidden_size: 40
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 32
enc_num_heads: 8
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
scaler: identity # identity, standard, temporal
split_val: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 16
num_heads: 4
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/default/tsdiff.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
check_val_every_n_epoch: 1
default_root_dir: ./results
accumulate_grad_batches: 1
gradient_clip_val: 0.5
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TSDiffCond
init_args:
timesteps: 100
hidden_dim: 64
step_emb: 128
num_residual_blocks: 3
dropout: 0.0
mode: diag # diag, nplr
measure: diag # 'diag', 'diag-lin', 'diag-inv', or 'diag-legs' for diag
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: false
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: temporal # identity, standard, temporal
context_length: 336
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/default/tsmixer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TSMixer
init_args:
num_blocks: 6
dropout_rate: 0.7
ff_dim: 64
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/ltsf/electricity_ltsf/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 3
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 64
emb_feature_dim: 8
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 64
beta_start: 0.001
beta_end: 0.5
sample_size: 16
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
scaler: standard # identity, standard, temporal
split_val: true
batch_size: 4
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/electricity_ltsf/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 200
log_every_n_steps: 1
accumulate_grad_batches: 2
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinearEncoder
init_args:
individual: true
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/electricity_ltsf/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 128
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 64
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/electricity_ltsf/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 128
n_layers: 3
n_heads: 16
fc_dropout: 0.2
head_dropout: 0
individual: false
num_samples: 100
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/electricity_ltsf/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 128
enc_num_layers: 3
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/etth1/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/etth1/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: true
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.005
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/etth1/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 4
hidden_size: 64
n_hidden: 3
batch_norm: false
conditional_length: 100
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/ltsf/etth1/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.3
f_hidden_size: 16
n_layers: 3
n_heads: 4
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/etth1/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 128
enc_num_layers: 3
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/etth2/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/etth2/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.05
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/etth2/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
n_blocks: 2
hidden_size: 128
n_hidden: 3
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
path: /home/covpreduser/Blob/v-jiawezhang/data/all_datasets/
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/etth2/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.3
f_hidden_size: 16
d_ff: 128
n_layers: 3
n_heads: 4
fc_dropout: 0.2
head_dropout: 0
individual: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/etth2/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/ettm1/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/ettm1/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: true
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/ettm1/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 4
hidden_size: 64
n_hidden: 3
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/ettm1/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 128
n_layers: 3
n_heads: 16
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/ettm1/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 128
enc_num_layers: 3
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/ettm2/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/ettm2/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/ettm2/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
n_blocks: 2
hidden_size: 128
n_hidden: 3
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/ettm2/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 128
n_layers: 3
n_heads: 16
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/ettm2/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 64
enc_num_layers: 2
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/exchange_ltsf/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/exchange_ltsf/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: true
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.0005
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/exchange_ltsf/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 128
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 128
n_hidden: 3
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/exchange_ltsf/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 16
n_layers: 3
n_heads: 4
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/exchange_ltsf/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/illness_ltsf/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: illness_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/illness_ltsf/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: illness_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 36
prediction_length: 36
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/illness_ltsf/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
n_blocks: 4
hidden_size: 128
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: illness_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 36
prediction_length: 36
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/illness_ltsf/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 2
patch_len: 24
dropout: 0.3
f_hidden_size: 16
n_layers: 3
n_heads: 4
fc_dropout: 0.3
head_dropout: 0
individual: true
learning_rate: 0.0025
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: illness_ltsf
path: /home/covpreduser/Blob/v-jiawezhang/data/all_datasets/
split_val: true
scaler: standard # identity, standard, temporal
context_length: 36
prediction_length: 36
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/illness_ltsf/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 64
enc_num_layers: 2
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: illness_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 36
prediction_length: 36
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/traffic_ltsf/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 3
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 64
emb_feature_dim: 8
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 64
beta_start: 0.001
beta_end: 0.5
sample_size: 16
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/ltsf/traffic_ltsf/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
accumulate_grad_batches: 4
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.05
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/traffic_ltsf/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 128
enc_num_layers: 3
enc_dropout: 0.1
n_blocks: 4
hidden_size: 128
n_hidden: 3
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/traffic_ltsf/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 300
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 3
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 128
n_layers: 3
n_heads: 16
fc_dropout: 0.2
head_dropout: 0
individual: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/traffic_ltsf/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 128
enc_num_layers: 3
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/weather_ltsf/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/ltsf/weather_ltsf/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
accumulate_grad_batches: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 25
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/weather_ltsf/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
n_blocks: 4
hidden_size: 128
n_hidden: 3
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/ltsf/weather_ltsf/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 8
patch_len: 16
dropout: 0.2
f_hidden_size: 128
n_layers: 3
n_heads: 16
fc_dropout: 0.2
head_dropout: 0
individual: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/ltsf/weather_ltsf/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 200
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: identity # identity, standard, temporal
context_length: 96
prediction_length: 96
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/m4/m4_daily/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 32
emb_feature_dim: 4
channels: 16
n_layers: 4
num_heads: 4
num_steps: 50
diffusion_embedding_dim: 32
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_daily
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_daily/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_daily
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_daily/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 100
dequantize: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_daily
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_daily/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 2
patch_len: 6
dropout: 0.3
f_hidden_size: 32
d_ff: 128
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_daily
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 128
num_workers: 8
================================================
FILE: config/m4/m4_daily/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 50
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_daily
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_weekly/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 32
emb_feature_dim: 4
channels: 16
n_layers: 4
num_heads: 4
num_steps: 50
diffusion_embedding_dim: 32
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_weekly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_weekly/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_weekly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_weekly/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 100
dequantize: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_weekly
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m4_weekly/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 3
patch_len: 6
dropout: 0.3
f_hidden_size: 32
d_ff: 128
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_weekly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 128
num_workers: 8
================================================
FILE: config/m4/m4_weekly/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 50
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m4_weekly
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m5/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 32
emb_feature_dim: 4
channels: 16
n_layers: 4
num_heads: 4
num_steps: 50
diffusion_embedding_dim: 32
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m5
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m5/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m5
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 256
num_workers: 8
================================================
FILE: config/m4/m5/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 100
dequantize: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m5
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/m5/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 2
patch_len: 4
dropout: 0.3
f_hidden_size: 64
d_ff: 128
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m5
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 128
num_workers: 8
================================================
FILE: config/m4/m5/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 30
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 50
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: m5
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 512
num_workers: 8
================================================
FILE: config/m4/tourism_monthly/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 32
emb_feature_dim: 4
channels: 16
n_layers: 4
num_heads: 4
num_steps: 50
diffusion_embedding_dim: 32
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: tourism_monthly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/tourism_monthly/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: tourism_monthly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/tourism_monthly/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 2
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 100
dequantize: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: tourism_monthly
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/m4/tourism_monthly/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 2
patch_len: 6
dropout: 0.3
f_hidden_size: 64
d_ff: 128
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: tourism_monthly
context_length_factor: 3
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 1
test_batch_size: 128
num_workers: 8
================================================
FILE: config/m4/tourism_monthly/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 2
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 50
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 64
enc_num_layers: 4
enc_dropout: 0.1
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: tourism_monthly
context_length_factor: 3
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/multi_hor/autoformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
# num_sanity_val_steps: 0
# gradient_clip_algorithm: 'norm'
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.Autoformer
init_args:
moving_avg: 25
factor: 1
n_heads: 8
activation: 'gelu'
e_layers: 2
d_layers: 1
output_attention: false
d_ff: 512
f_hidden_size: 512
embed: 'timeF'
use_lags: false
use_feat_idx_emb: false
use_time_feat: true
feat_idx_emb_dim: 1
num_samples: 1
learning_rate: 1e-3
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 24-96-192-336-720-1024
train_ctx_len: 96
train_pred_len_list: 720
val_ctx_len: 96
val_pred_len_list: 720
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/multi_hor/elastst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.ElasTST
init_args:
l_patch_size: '8_16_32'
dropout: 0.0
f_hidden_size: 256
d_inner: 256
t_layers: 2
v_layers: 0
n_heads: 8
d_v: 64
d_k: 64
structured_mask: true
rotate: true
rope_theta_init: 'exp'
learnable_rope: true
min_period: 1
max_period: 1000
addv: false
bin_att: false
learn_tem_emb: false
learning_rate: 0.001
quantiles_num: 20
sampling_weight_scheme: random
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 96
prediction_length: 24-96-192-336-720-1024
train_ctx_len: 96
train_pred_len_list: 720
val_ctx_len: 96
val_pred_len_list: 720
continuous_sample: false
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/pipeline_config.yaml
================================================
# lightning.pytorch==2.3.0dev
seed_everything: true
trainer:
accelerator: auto
strategy: auto
devices: auto
num_nodes: 1
precision: null
logger: null
callbacks: null
fast_dev_run: false
max_epochs: null
min_epochs: null
max_steps: -1
min_steps: null
max_time: null
limit_train_batches: null
limit_val_batches: null
limit_test_batches: null
limit_predict_batches: null
overfit_batches: 0.0
val_check_interval: null
check_val_every_n_epoch: 1
num_sanity_val_steps: null
log_every_n_steps: null
enable_checkpointing: null
enable_progress_bar: null
enable_model_summary: null
accumulate_grad_batches: 1
gradient_clip_val: null
gradient_clip_algorithm: null
deterministic: null
benchmark: null
inference_mode: true
use_distributed_sampler: true
profiler: null
detect_anomaly: false
barebones: false
plugins: null
sync_batchnorm: false
reload_dataloaders_every_n_epochs: 0
default_root_dir: null
model:
forecaster: null
num_samples: 100
learning_rate: 0.001
quantiles_num: 10
load_from_ckpt: null
data:
data_manager: null
batch_size: 64
test_batch_size: 8
num_workers: 8
================================================
FILE: config/stsf/electricity/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/stsf/electricity/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: true
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/electricity/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 40
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 40
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 2
patch_len: 4
dropout: 0.1
f_hidden_size: 64
n_layers: 4
n_heads: 8
fc_dropout: 0.1
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 64
dropout: 0.1
f_hidden_size: 64
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 32
enc_num_heads: 8
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/electricity/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 32
num_heads: 8
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/stsf/exchange/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/exchange/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 40
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 40
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 3
patch_len: 6
dropout: 0.1
f_hidden_size: 32
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 64
dropout: 0.1
f_hidden_size: 64
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 16
enc_num_heads: 8
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/exchange/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 32
num_heads: 8
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 800
log_every_n_steps: 1
check_val_every_n_epoch: 2
default_root_dir: ./results
accumulate_grad_batches: 8
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 128
emb_feature_dim: 16
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 128
beta_start: 0.001
beta_end: 0.5
sample_size: 64
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/stsf/solar/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
learning_rate: 0.01
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/solar/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 40
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 40
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 3
patch_len: 6
dropout: 0.1
f_hidden_size: 32
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: true
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 16
dropout: 0.1
f_hidden_size: 16
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 32
enc_num_heads: 8
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: false
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/solar/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 16
num_heads: 4
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/traffic/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
check_val_every_n_epoch: 3
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 64
emb_feature_dim: 8
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 64
beta_start: 0.001
beta_end: 0.5
sample_size: 16
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/stsf/traffic/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 128
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 128
enc_dropout: 0.3
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 128
enc_num_layers: 2
enc_dropout: 0.3
n_blocks: 4
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 1
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 3
patch_len: 6
dropout: 0.1
f_hidden_size: 32
n_layers: 3
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: false
num_samples: 100
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/traffic/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 16
dropout: 0.1
f_hidden_size: 16
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/traffic/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 128
enc_num_heads: 4
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: false
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/traffic/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 32
num_heads: 8
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: traffic_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/wiki/csdi.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
check_val_every_n_epoch: 3
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.CSDI
init_args:
emb_time_dim: 64
emb_feature_dim: 8
channels: 64
n_layers: 4
num_heads: 8
num_steps: 50
diffusion_embedding_dim: 64
beta_start: 0.001
beta_end: 0.5
sample_size: 16
linear_trans: false
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
feat_idx_emb_dim: 1
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 8
test_batch_size: 8
num_workers: 8
================================================
FILE: config/stsf/wiki/dlinear.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.DLinear
init_args:
individual: false
kernel_size: 3
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 32
test_batch_size: 32
num_workers: 8
================================================
FILE: config/stsf/wiki/gru.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.GRUForecaster
init_args:
f_hidden_size: 40
num_layers: 2
dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/gru_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_MAF
init_args:
enc_num_layers: 2
enc_hidden_size: 40
enc_dropout: 0.1
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/gru_nvp.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.GRU_NVP
init_args:
enc_hidden_size: 40
enc_num_layers: 2
enc_dropout: 0.1
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/patchtst.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 400
log_every_n_steps: 1
default_root_dir: ./results
accumulate_grad_batches: 4
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.PatchTST
init_args:
stride: 4
patch_len: 8
dropout: 0.1
f_hidden_size: 32
n_layers: 2
n_heads: 8
fc_dropout: 0.2
head_dropout: 0
individual: false
num_samples: 100
learning_rate: 0.0001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/stsf/wiki/timegrad.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.TimeGrad
init_args:
loss_type: l2
diff_steps: 100
beta_end: 0.1
beta_schedule: linear
conditional_length: 100
enc_hidden_size: 128
enc_num_layers: 4
enc_dropout: 0.1
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/timesnet.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TimesNet
init_args:
n_layers: 2
num_kernels: 6
top_k: 5
d_ff: 32
dropout: 0.1
f_hidden_size: 32
use_lags: false
use_feat_idx_emb: false
use_time_feat: false
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/trans_maf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Trans_MAF
init_args:
enc_hidden_size: 128
enc_num_heads: 4
enc_num_encoder_layers: 2
enc_num_decoder_layers: 2
enc_dim_feedforward_scale: 4
enc_dropout: 0.1
enc_activation: gelu
n_blocks: 3
hidden_size: 100
n_hidden: 2
batch_norm: true
conditional_length: 200
dequantize: true
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
use_scaling: true
num_samples: 100
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: identity # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/stsf/wiki/transformer.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 1
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 50
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.TransformerForecaster
init_args:
f_hidden_size: 32
num_heads: 8
num_encoder_layers: 3
num_decoder_layers: 3
dim_feedforward_scale: 4
dropout: 0.1
activation: gelu
use_lags: true
use_feat_idx_emb: true
use_time_feat: true
feat_idx_emb_dim: 1
learning_rate: 0.001
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: wiki2000_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/chronos.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Chronos
init_args:
model_size: base # tiny, mini, small, base, large
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
batch_size: 16
test_batch_size: 16
num_workers: 8
================================================
FILE: config/tsfm/forecastpfn.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.point_forecaster.ForecastPFN
init_args:
label_len: 48
ckpt_path: ./checkpoints/ForecastPFN/saved_weights
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: standard # identity, standard, temporal
timeenc: 2
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/lag_llama.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.LagLlama
init_args:
use_rope_scaling: true
ckpt_path: ./checkpoints/lag-llama/lag-llama.ckpt
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
timeenc: 2
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/electricity_ltsf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: 128
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 5000
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/electricity_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: 64
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: true
context_length: 3800 # maximum history length
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/etth1.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: 64
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 5000
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/etth2.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: 64
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 5000
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/ettm1.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: 64
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: standard # identity, standard, temporal
context_length: 5000
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/ettm2.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: 128
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: standard # identity, standard, temporal
context_length: 5000
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/exchange_rate_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: 128
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 5000
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/solar_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
var_specific_norm: false
context_length: 5000
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_5000/weather_ltsf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: 128
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: true
context_length: 5000
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/electricity_ltsf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_ltsf
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 4
test_batch_size: 4
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/electricity_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: 64
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: electricity_nips
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: true
context_length: 96
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/etth1.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth1
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/etth2.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: etth2
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/ettm1.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm1
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/ettm2.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: ettm2
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/exchange_rate_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: exchange_rate_nips
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: true
context_length: 96
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/solar_nips.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: solar_nips
split_val: true
scaler: identity # identity, standard, temporal
var_specific_norm: false
context_length: 96
auto_search: true
batch_size: 1
test_batch_size: 1
num_workers: 8
================================================
FILE: config/tsfm/moirai/context_96/weather_ltsf.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 1
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: M
patch_size: auto
model_size: base
scaling: true
num_samples: 100
quantiles_num: 20
data:
data_manager:
class_path: probts.data.data_manager.DataManager
init_args:
dataset: weather_ltsf
split_val: true
scaler: standard # identity, standard, temporal
var_specific_norm: true
context_length: 96
auto_search: true
batch_size: 64
test_batch_size: 64
num_workers: 8
================================================
FILE: config/tsfm/moirai.yaml
================================================
# lightning==2.3.0.dev0
seed_everything: 0
trainer:
accelerator: gpu
devices: 1
strategy: auto
max_epochs: 40
use_distributed_sampler: false
limit_train_batches: 100
log_every_n_steps: 1
default_root_dir: ./results
model:
forecaster:
class_path: probts.model.forecaster.prob_forecaster.Moirai
init_args:
variate_mode: S
patch_size: aut
gitextract_33gmype6/
├── .gitignore
├── .gitmodules
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README.md
├── SECURITY.md
├── checkpoints/
│ └── README.md
├── config/
│ ├── default/
│ │ ├── autoformer.yaml
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru.yaml
│ │ ├── gru_maf.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── itransformer.yaml
│ │ ├── linear.yaml
│ │ ├── mean.yaml
│ │ ├── moderntcn.yaml
│ │ ├── naive.yaml
│ │ ├── nhits.yaml
│ │ ├── nlinear.yaml
│ │ ├── patchtst.yaml
│ │ ├── timegrad.yaml
│ │ ├── timesnet.yaml
│ │ ├── trans_maf.yaml
│ │ ├── transformer.yaml
│ │ ├── tsdiff.yaml
│ │ └── tsmixer.yaml
│ ├── ltsf/
│ │ ├── electricity_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── etth1/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── etth2/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── ettm1/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── ettm2/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── exchange_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── illness_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── traffic_ltsf/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ └── weather_ltsf/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ └── timegrad.yaml
│ ├── m4/
│ │ ├── m4_daily/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── m4_weekly/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ ├── m5/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ └── timegrad.yaml
│ │ └── tourism_monthly/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ └── timegrad.yaml
│ ├── multi_hor/
│ │ ├── autoformer.yaml
│ │ └── elastst.yaml
│ ├── pipeline_config.yaml
│ ├── stsf/
│ │ ├── electricity/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── exchange/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── solar/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ ├── traffic/
│ │ │ ├── csdi.yaml
│ │ │ ├── dlinear.yaml
│ │ │ ├── gru.yaml
│ │ │ ├── gru_maf.yaml
│ │ │ ├── gru_nvp.yaml
│ │ │ ├── patchtst.yaml
│ │ │ ├── timegrad.yaml
│ │ │ ├── timesnet.yaml
│ │ │ ├── trans_maf.yaml
│ │ │ └── transformer.yaml
│ │ └── wiki/
│ │ ├── csdi.yaml
│ │ ├── dlinear.yaml
│ │ ├── gru.yaml
│ │ ├── gru_maf.yaml
│ │ ├── gru_nvp.yaml
│ │ ├── patchtst.yaml
│ │ ├── timegrad.yaml
│ │ ├── timesnet.yaml
│ │ ├── trans_maf.yaml
│ │ └── transformer.yaml
│ └── tsfm/
│ ├── chronos.yaml
│ ├── forecastpfn.yaml
│ ├── lag_llama.yaml
│ ├── moirai/
│ │ ├── context_5000/
│ │ │ ├── electricity_ltsf.yaml
│ │ │ ├── electricity_nips.yaml
│ │ │ ├── etth1.yaml
│ │ │ ├── etth2.yaml
│ │ │ ├── ettm1.yaml
│ │ │ ├── ettm2.yaml
│ │ │ ├── exchange_rate_nips.yaml
│ │ │ ├── solar_nips.yaml
│ │ │ └── weather_ltsf.yaml
│ │ └── context_96/
│ │ ├── electricity_ltsf.yaml
│ │ ├── electricity_nips.yaml
│ │ ├── etth1.yaml
│ │ ├── etth2.yaml
│ │ ├── ettm1.yaml
│ │ ├── ettm2.yaml
│ │ ├── exchange_rate_nips.yaml
│ │ ├── solar_nips.yaml
│ │ └── weather_ltsf.yaml
│ ├── moirai.yaml
│ ├── time_moe.yaml
│ ├── timer.yaml
│ ├── timesfm.yaml
│ ├── tinytimemixer.yaml
│ └── units.yaml
├── datasets/
│ └── .gitignore
├── docs/
│ ├── benchmark/
│ │ ├── README.md
│ │ ├── foundation_model/
│ │ │ ├── README.md
│ │ │ ├── chronos.md
│ │ │ ├── forecastpfn.md
│ │ │ ├── lag-llama.md
│ │ │ ├── moirai.md
│ │ │ ├── timer.md
│ │ │ ├── timesfm.md
│ │ │ ├── ttm.md
│ │ │ └── units.md
│ │ └── supervised_model/
│ │ └── README.md
│ └── documentation/
│ ├── Gift_eval.md
│ └── README.md
├── exps/
│ └── .gitignore
├── notebook/
│ └── data_characteristics.ipynb
├── probts/
│ ├── __init__.py
│ ├── callbacks/
│ │ ├── __init__.py
│ │ ├── memory_callback.py
│ │ └── time_callback.py
│ ├── data/
│ │ ├── __init__.py
│ │ ├── data_manager.py
│ │ ├── data_module.py
│ │ ├── data_utils/
│ │ │ ├── data_scaler.py
│ │ │ ├── data_utils.py
│ │ │ ├── get_datasets.py
│ │ │ └── time_features.py
│ │ ├── data_wrapper.py
│ │ └── datasets/
│ │ ├── gift_eval_datasets.py
│ │ ├── multi_horizon_datasets.py
│ │ └── single_horizon_datasets.py
│ ├── model/
│ │ ├── __init__.py
│ │ ├── forecast_module.py
│ │ ├── forecaster/
│ │ │ ├── __init__.py
│ │ │ ├── forecaster.py
│ │ │ ├── point_forecaster/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── autoformer.py
│ │ │ │ ├── dlinear.py
│ │ │ │ ├── elastst.py
│ │ │ │ ├── forecastpfn.py
│ │ │ │ ├── gru.py
│ │ │ │ ├── itransformer.py
│ │ │ │ ├── linear.py
│ │ │ │ ├── mean.py
│ │ │ │ ├── moderntcn.py
│ │ │ │ ├── naive.py
│ │ │ │ ├── nhits.py
│ │ │ │ ├── nlinear.py
│ │ │ │ ├── patchtst.py
│ │ │ │ ├── time_moe.py
│ │ │ │ ├── timer.py
│ │ │ │ ├── timesfm.py
│ │ │ │ ├── timesnet.py
│ │ │ │ ├── tinytimemixer.py
│ │ │ │ ├── transformer.py
│ │ │ │ ├── tsmixer.py
│ │ │ │ └── units.py
│ │ │ └── prob_forecaster/
│ │ │ ├── __init__.py
│ │ │ ├── chronos.py
│ │ │ ├── csdi.py
│ │ │ ├── gru_maf.py
│ │ │ ├── gru_nvp.py
│ │ │ ├── lag_llama.py
│ │ │ ├── moirai.py
│ │ │ ├── timegrad.py
│ │ │ ├── trans_maf.py
│ │ │ └── tsdiff.py
│ │ └── nn/
│ │ ├── __init__.py
│ │ ├── arch/
│ │ │ ├── AutoformerModule/
│ │ │ │ ├── AutoCorrelation.py
│ │ │ │ └── Autoformer_EncDec.py
│ │ │ ├── ChronosModule/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── chronos.py
│ │ │ │ ├── chronos_bolt.py
│ │ │ │ ├── loss.py
│ │ │ │ └── utils.py
│ │ │ ├── Conv_Blocks.py
│ │ │ ├── ElasTSTModule/
│ │ │ │ ├── ElasTST_backbone.py
│ │ │ │ ├── Layers.py
│ │ │ │ ├── Modules.py
│ │ │ │ ├── SubLayers.py
│ │ │ │ ├── TRoPE.py
│ │ │ │ └── __init__.py
│ │ │ ├── ModernTCN_backbone.py
│ │ │ ├── Moirai_backbone.py
│ │ │ ├── PatchTSTModule/
│ │ │ │ ├── PatchTST_backbone.py
│ │ │ │ └── PatchTST_layers.py
│ │ │ ├── RevIN.py
│ │ │ ├── S4/
│ │ │ │ ├── s4.py
│ │ │ │ └── s4_backbones.py
│ │ │ ├── TSMixer_layers.py
│ │ │ ├── TimesFMModule/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── patched_decoder.py
│ │ │ │ ├── pytorch_patched_decoder.py
│ │ │ │ ├── timesfm_base.py
│ │ │ │ ├── timesfm_jax.py
│ │ │ │ ├── timesfm_torch.py
│ │ │ │ └── xreg_lib.py
│ │ │ ├── TransformerModule/
│ │ │ │ ├── Embed.py
│ │ │ │ ├── SelfAttention_Family.py
│ │ │ │ └── Transformer_EncDec.py
│ │ │ ├── __init__.py
│ │ │ └── decomp.py
│ │ └── prob/
│ │ ├── MAF.py
│ │ ├── RealNVP.py
│ │ ├── __init__.py
│ │ ├── diffusion_layers.py
│ │ ├── flow_model.py
│ │ └── gaussian_diffusion.py
│ └── utils/
│ ├── __init__.py
│ ├── download_datasets.py
│ ├── evaluator.py
│ ├── masking.py
│ ├── metrics.py
│ ├── position_emb.py
│ ├── save_utils.py
│ └── utils.py
├── pyproject.toml
├── run.py
├── run.sh
└── scripts/
├── prepare_datasets.sh
├── prepare_tsfm_checkpoints.sh
├── reproduce_ltsf_results.sh
├── reproduce_stsf_results.sh
├── reproduce_tsfm_results.sh
├── run_elastst.sh
└── run_varied_hor_training.sh
SYMBOL INDEX (1066 symbols across 88 files)
FILE: probts/callbacks/memory_callback.py
function byte2gb (line 10) | def byte2gb(x):
class MemoryTrace (line 14) | class MemoryTrace:
method __init__ (line 15) | def __init__(self):
method cpu_mem_used (line 27) | def cpu_mem_used(self):
method peak_monitor_func (line 31) | def peak_monitor_func(self):
method __exit__ (line 40) | def __exit__(self, *exc):
class MemoryCallback (line 60) | class MemoryCallback(Callback):
method __init__ (line 64) | def __init__(self):
method update_memory_summary (line 71) | def update_memory_summary(self, key, memtrace):
method on_train_epoch_start (line 80) | def on_train_epoch_start(
method on_train_epoch_end (line 89) | def on_train_epoch_end(
method on_validation_epoch_start (line 99) | def on_validation_epoch_start(
method on_validation_epoch_end (line 108) | def on_validation_epoch_end(
method on_test_epoch_start (line 118) | def on_test_epoch_start(
method on_test_epoch_end (line 127) | def on_test_epoch_end(
FILE: probts/callbacks/time_callback.py
class TimeCallback (line 9) | class TimeCallback(Callback):
method __init__ (line 13) | def __init__(self):
method on_train_batch_start (line 20) | def on_train_batch_start(
method on_train_batch_end (line 26) | def on_train_batch_end(
method on_validation_batch_start (line 32) | def on_validation_batch_start(
method on_validation_batch_end (line 43) | def on_validation_batch_end(
method on_test_batch_start (line 55) | def on_test_batch_start(
method on_test_batch_end (line 66) | def on_test_batch_end(
FILE: probts/data/data_manager.py
class DataManager (line 30) | class DataManager:
method __init__ (line 31) | def __init__(
method _configure_scaler (line 167) | def _configure_scaler(self, scaler_type: str):
method _load_gift_eval_dataset (line 175) | def _load_gift_eval_dataset(self):
method _load_short_term_dataset (line 199) | def _load_short_term_dataset(self):
method _set_meta_parameters (line 211) | def _set_meta_parameters(self, target_dim, freq, prediction_length):
method _process_context_and_prediction_lengths (line 221) | def _process_context_and_prediction_lengths(self):
method _load_long_term_dataset (line 239) | def _load_long_term_dataset(self):
method _set_meta_parameters_from_raw (line 255) | def _set_meta_parameters_from_raw(self, data_size):
method prepare_dataset (line 276) | def prepare_dataset(self):
method _prepare_multi_horizon_datasets (line 311) | def _prepare_multi_horizon_datasets(self, group_val_set, group_test_set):
method _prepare_single_horizon_datasets (line 350) | def _prepare_single_horizon_datasets(self, group_val_set, group_test_s...
method prepare_STSF_dataset (line 377) | def prepare_STSF_dataset(self, dataset: str):
method _print_configurations (line 427) | def _print_configurations(self):
method is_gift_eval (line 437) | def is_gift_eval(self) -> bool:
method is_univar_dataset (line 441) | def is_univar_dataset(self) -> bool:
FILE: probts/data/data_module.py
class EmptyDataset (line 8) | class EmptyDataset(Dataset):
method __len__ (line 9) | def __len__(self):
method __getitem__ (line 12) | def __getitem__(self, idx):
class ProbTSDataModule (line 15) | class ProbTSDataModule(pl.LightningDataModule):
method __init__ (line 19) | def __init__(
method train_dataloader (line 37) | def train_dataloader(self):
method val_dataloader (line 55) | def val_dataloader(self):
method test_dataloader (line 66) | def test_dataloader(self):
method predict_dataloader (line 72) | def predict_dataloader(self):
method combine_dataloader (line 75) | def combine_dataloader(self, dataset_dict):
method train_collate_fn (line 83) | def train_collate_fn(self, batch):
FILE: probts/data/data_utils/data_scaler.py
class Scaler (line 12) | class Scaler:
method __init__ (line 13) | def __init__(self):
method fit (line 16) | def fit(self, values):
method transform (line 19) | def transform(self, values):
method fit_transform (line 22) | def fit_transform(self, values):
method inverse_transform (line 25) | def inverse_transform(self, values):
class StandardScaler (line 29) | class StandardScaler(Scaler):
method __init__ (line 30) | def __init__(
method fit (line 53) | def fit(self, values):
method transform (line 67) | def transform(self, values):
method fit_transform (line 74) | def fit_transform(self, values):
method inverse_transform (line 78) | def inverse_transform(self, values):
class TemporalScaler (line 87) | class TemporalScaler(Scaler):
method __init__ (line 88) | def __init__(
method fit (line 109) | def fit(
method transform (line 159) | def transform(self, data):
method fit_transform (line 162) | def fit_transform(self, data, observed_indicator=None):
method inverse_transform (line 166) | def inverse_transform(self, data):
class IdentityScaler (line 170) | class IdentityScaler(Scaler):
method __init__ (line 174) | def __init__(self, time_first: bool = True):
method fit (line 178) | def fit(self, data):
method transform (line 181) | def transform(self, data):
method inverse_transform (line 184) | def inverse_transform(self, data):
class InstanceNorm (line 187) | class InstanceNorm(nn.Module):
method __init__ (line 188) | def __init__(self, eps=1e-5):
method forward (line 195) | def forward(self, x, mode:str):
method _get_statistics (line 204) | def _get_statistics(self, x):
method _normalize (line 209) | def _normalize(self, x):
method _denormalize (line 214) | def _denormalize(self, x):
FILE: probts/data/data_utils/data_utils.py
function split_train_val (line 11) | def split_train_val(train_set, num_test_windows, context_length, predict...
function truncate_test (line 69) | def truncate_test(test_set, context_length, prediction_length, freq):
function get_rolling_test (line 98) | def get_rolling_test(stage, test_set, border_begin_idx, border_end_idx, ...
function get_rolling_test_of_gift_eval (line 131) | def get_rolling_test_of_gift_eval(dataset, prediction_length, windows):
function df_to_mvds (line 173) | def df_to_mvds(df, freq='H'):
function convert_monash_data_to_dataframe (line 192) | def convert_monash_data_to_dataframe(
function monash_format_convert (line 336) | def monash_format_convert(loaded_data, frequency, multivariate):
FILE: probts/data/data_utils/get_datasets.py
function get_dataset_info (line 16) | def get_dataset_info(dataset, data_path=None, freq=None):
function get_dataset_borders (line 49) | def get_dataset_borders(dataset, data_size, train_ratio=0.7, test_ratio=...
function load_dataset (line 81) | def load_dataset(root_path, data_path,freq='h', timeenc=1, multivariate=...
FILE: probts/data/data_utils/time_features.py
class TimeFeature (line 21) | class TimeFeature:
method __init__ (line 22) | def __init__(self):
method __call__ (line 25) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
method __repr__ (line 28) | def __repr__(self):
class SecondOfMinute (line 32) | class SecondOfMinute(TimeFeature):
method __call__ (line 35) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class MinuteOfHour (line 39) | class MinuteOfHour(TimeFeature):
method __call__ (line 42) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class HourOfDay (line 46) | class HourOfDay(TimeFeature):
method __call__ (line 49) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class DayOfWeek (line 53) | class DayOfWeek(TimeFeature):
method __call__ (line 56) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class DayOfMonth (line 60) | class DayOfMonth(TimeFeature):
method __call__ (line 63) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class DayOfYear (line 67) | class DayOfYear(TimeFeature):
method __call__ (line 70) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class MonthOfYear (line 74) | class MonthOfYear(TimeFeature):
method __call__ (line 77) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
class WeekOfYear (line 81) | class WeekOfYear(TimeFeature):
method __call__ (line 84) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
function time_features_from_frequency_str (line 88) | def time_features_from_frequency_str(freq_str: str) -> List[TimeFeature]:
function time_features (line 145) | def time_features(dates, freq='h'):
class FourierDateFeatures (line 149) | class FourierDateFeatures(TimeFeature):
method __init__ (line 150) | def __init__(self, freq: str) -> None:
method __call__ (line 168) | def __call__(self, index: pd.DatetimeIndex) -> np.ndarray:
function norm_freq_str (line 175) | def norm_freq_str(freq_str: str) -> str:
function fourier_time_features_from_frequency (line 189) | def fourier_time_features_from_frequency(freq_str: str) -> List[TimeFeat...
function get_lags (line 211) | def get_lags(freq_str:str):
function target_transformation_length (line 251) | def target_transformation_length(
class AddCustomizedTimeFeatures (line 257) | class AddCustomizedTimeFeatures(MapTransformation):
method __init__ (line 280) | def __init__(
method map_transform (line 296) | def map_transform(self, data: DataEntry, is_train: bool) -> DataEntry:
FILE: probts/data/data_wrapper.py
class ProbTSBatchData (line 3) | class ProbTSBatchData:
method __init__ (line 15) | def __init__(self, data_dict, device):
method _ensure_all_inputs_present (line 34) | def _ensure_all_inputs_present(self):
method _set_device (line 40) | def _set_device(self, device):
method _expand_dimensions (line 47) | def _expand_dimensions(self):
method _process_padding (line 53) | def _process_padding(self):
FILE: probts/data/datasets/gift_eval_datasets.py
class Term (line 71) | class Term(Enum):
method multiplier (line 77) | def multiplier(self) -> int:
function itemize_start (line 86) | def itemize_start(data_entry: DataEntry) -> DataEntry:
class MultivariateToUnivariate (line 91) | class MultivariateToUnivariate(Transformation):
method __init__ (line 92) | def __init__(self, field):
method __call__ (line 95) | def __call__(
class GiftEvalDataset (line 107) | class GiftEvalDataset:
method __init__ (line 108) | def __init__(
method gluonts_dataset (line 126) | def gluonts_dataset(self):
method prediction_length (line 139) | def prediction_length(self) -> int:
method freq (line 147) | def freq(self) -> str:
method target_dim (line 151) | def target_dim(self) -> int:
method target_ndim (line 159) | def target_ndim(self) -> int:
method past_feat_dynamic_real_dim (line 163) | def past_feat_dynamic_real_dim(self) -> int:
method windows (line 181) | def windows(self) -> int:
method _min_series_length (line 188) | def _min_series_length(self) -> int:
method sum_series_length (line 200) | def sum_series_length(self) -> int:
method training_dataset (line 210) | def training_dataset(self) -> TrainingDataset:
method validation_dataset (line 217) | def validation_dataset(self) -> TrainingDataset:
method test_dataset (line 224) | def test_dataset(self) -> TrainingDataset:
method test_data (line 234) | def test_data(self) -> TestData:
FILE: probts/data/datasets/multi_horizon_datasets.py
class MultiHorizonDataset (line 42) | class MultiHorizonDataset():
method __init__ (line 69) | def __init__(
method get_sampler (line 98) | def get_sampler(self):
method create_transformation (line 140) | def create_transformation(self, data_stamp=None, pred_len=None) -> Tra...
method create_instance_splitter (line 207) | def create_instance_splitter(self, mode: str, pred_len=None, auto_sear...
method get_iter_dataset (line 277) | def get_iter_dataset(self, dataset: Dataset, mode: str, data_stamp=Non...
class MultiHorizonSplitter (line 322) | class MultiHorizonSplitter(FlatMapTransformation):
method __init__ (line 366) | def __init__(
method _past (line 401) | def _past(self, col_name):
method _future (line 404) | def _future(self, col_name):
method _split_array (line 407) | def _split_array(
method _split_instance (line 426) | def _split_instance(self, entry: DataEntry, idx: int, is_train) -> Dat...
method flatmap_transform (line 466) | def flatmap_transform(
FILE: probts/data/datasets/single_horizon_datasets.py
class SingleHorizonDataset (line 34) | class SingleHorizonDataset():
method __init__ (line 51) | def __init__(
method get_sampler (line 71) | def get_sampler(self):
method create_transformation (line 95) | def create_transformation(self, data_stamp=None) -> Transformation:
method create_instance_splitter (line 152) | def create_instance_splitter(self, mode: str, auto_search=False):
method get_iter_dataset (line 201) | def get_iter_dataset(self, dataset: Dataset, mode: str, data_stamp=Non...
class TransformedIterableDataset (line 243) | class TransformedIterableDataset(IterableDataset):
method __init__ (line 256) | def __init__(
method __iter__ (line 270) | def __iter__(self):
FILE: probts/model/forecast_module.py
function get_weights (line 16) | def get_weights(sampling_weight_scheme, max_hor):
class ProbTSForecastModule (line 33) | class ProbTSForecastModule(pl.LightningModule):
method __init__ (line 34) | def __init__(
method load_from_checkpoint (line 72) | def load_from_checkpoint(self, checkpoint_path, scaler=None, learning_...
method training_forward (line 76) | def training_forward(self, batch_data):
method training_step (line 88) | def training_step(self, batch, batch_idx):
method evaluate (line 94) | def evaluate(self, batch, stage='',dataloader_idx=None):
method validation_step (line 135) | def validation_step(self, batch, batch_idx, dataloader_idx=None):
method on_validation_epoch_start (line 140) | def on_validation_epoch_start(self):
method on_validation_epoch_end (line 145) | def on_validation_epoch_end(self):
method test_step (line 149) | def test_step(self, batch, batch_idx, dataloader_idx=None):
method on_test_epoch_start (line 153) | def on_test_epoch_start(self):
method on_test_epoch_end (line 160) | def on_test_epoch_end(self):
method predict_step (line 171) | def predict_step(self, batch, batch_idx):
method configure_optimizers (line 176) | def configure_optimizers(self):
FILE: probts/model/forecaster/forecaster.py
class Forecaster (line 9) | class Forecaster(nn.Module):
method __init__ (line 10) | def __init__(
method name (line 74) | def name(self):
method get_input_size (line 77) | def get_input_size(self):
method get_lags (line 85) | def get_lags(self, sequence, lags_list, lags_length=1):
method get_input_sequence (line 102) | def get_input_sequence(
method get_input_feat_idx_emb (line 128) | def get_input_feat_idx_emb(self, target_dimension_indicator, input_len...
method get_input_time_feat (line 138) | def get_input_time_feat(
method get_inputs (line 153) | def get_inputs(self, batch_data, mode):
method get_scale (line 172) | def get_scale(self, batch_data):
method get_weighted_loss (line 178) | def get_weighted_loss(self, batch_data, loss):
method loss (line 184) | def loss(self, batch_data):
method forecast (line 187) | def forecast(self, batch_data=None, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/autoformer.py
class Autoformer (line 19) | class Autoformer(Forecaster):
method __init__ (line 20) | def __init__(
method forward (line 97) | def forward(self, inputs, pred_len, enc_self_mask=None, dec_self_mask=...
method loss (line 128) | def loss(self, batch_data):
method forecast (line 137) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/dlinear.py
class DLinear (line 16) | class DLinear(Forecaster):
method __init__ (line 17) | def __init__(
method encoder (line 49) | def encoder(self, inputs):
method loss (line 68) | def loss(self, batch_data):
method forecast (line 77) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/elastst.py
class ElasTST (line 9) | class ElasTST(Forecaster):
method __init__ (line 10) | def __init__(
method forward (line 136) | def forward(self, batch_data, pred_len, dataset_name=None):
method loss (line 165) | def loss(self, batch_data, reduce='none'):
method forecast (line 180) | def forecast(self, batch_data, num_samples=None):
method check_divisibility (line 186) | def check_divisibility(self, pred_len, patch_size):
method get_weighted_loss (line 192) | def get_weighted_loss(self, observed_values, loss, reduce='mean'):
FILE: probts/model/forecaster/point_forecaster/forecastpfn.py
function smape (line 23) | def smape(y_true, y_pred):
class ForecastPFN (line 42) | class ForecastPFN(Forecaster):
method __init__ (line 43) | def __init__(
method _ForecastPFN_time_features (line 57) | def _ForecastPFN_time_features(self, x_mark_enc: np.ndarray, x_mark_de...
method _process_tuple (line 84) | def _process_tuple(self, x, x_mark, y_mark, horizon):
method _process_batch (line 135) | def _process_batch(self, batch_x, batch_y, batch_x_mark, batch_y_mark):
method forecast (line 143) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/gru.py
class GRUForecaster (line 9) | class GRUForecaster(Forecaster):
method __init__ (line 10) | def __init__(
method loss (line 30) | def loss(self, batch_data):
method forecast (line 40) | def forecast(self, batch_data, num_samples=None):
method encode (line 64) | def encode(self, batch_data):
method decode (line 69) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/point_forecaster/itransformer.py
class iTransformer (line 18) | class iTransformer(Forecaster):
method __init__ (line 19) | def __init__(
method forward (line 61) | def forward(self, inputs):
method forecast (line 100) | def forecast(self, batch_data, num_samples=None):
method loss (line 106) | def loss(self, batch_data):
FILE: probts/model/forecaster/point_forecaster/linear.py
class LinearForecaster (line 17) | class LinearForecaster(Forecaster):
method __init__ (line 18) | def __init__(
method forward (line 35) | def forward(self, x):
method forecast (line 45) | def forecast(self, batch_data, num_samples=None):
method loss (line 50) | def loss(self, batch_data):
FILE: probts/model/forecaster/point_forecaster/mean.py
class MeanForecaster (line 6) | class MeanForecaster(Forecaster):
method __init__ (line 7) | def __init__(
method name (line 19) | def name(self):
method forecast (line 22) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/moderntcn.py
class ModernTCN (line 18) | class ModernTCN(Forecaster):
method __init__ (line 19) | def __init__(
method encoder (line 95) | def encoder(self, x, te=None):
method loss (line 114) | def loss(self, batch_data):
method forecast (line 124) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/naive.py
class NaiveForecaster (line 6) | class NaiveForecaster(Forecaster):
method __init__ (line 7) | def __init__(
method forecast (line 15) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/nhits.py
class StaticFeaturesEncoder (line 23) | class StaticFeaturesEncoder(nn.Module):
method __init__ (line 24) | def __init__(self, in_features, out_features):
method forward (line 29) | def forward(self, x):
class IdentityBasis (line 34) | class IdentityBasis(nn.Module):
method __init__ (line 35) | def __init__(self, backcast_size: int, forecast_size: int, interpolati...
method forward (line 42) | def forward(
function init_weights (line 74) | def init_weights(module, initialization):
class NHiTSBlock (line 95) | class NHiTSBlock(nn.Module):
method __init__ (line 100) | def __init__(
method forward (line 176) | def forward(
class NHiTS (line 210) | class NHiTS(Forecaster):
method __init__ (line 211) | def __init__(
method create_stack (line 320) | def create_stack(
method encoder (line 388) | def encoder(self, encoder_y, encoder_x_t, decoder_x_t):
method get_cov (line 412) | def get_cov(self, inputs):
method loss (line 447) | def loss(self, batch_data):
method forecast (line 461) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/nlinear.py
class NLinear (line 16) | class NLinear(Forecaster):
method __init__ (line 17) | def __init__(
method forward (line 40) | def forward(self, inputs):
method loss (line 52) | def loss(self, batch_data):
method forecast (line 62) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/patchtst.py
class PatchTST (line 20) | class PatchTST(Forecaster):
method __init__ (line 21) | def __init__(
method forward (line 100) | def forward(self, x):
method loss (line 114) | def loss(self, batch_data):
method forecast (line 123) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/time_moe.py
class TimeMoE (line 20) | class TimeMoE(Forecaster):
method __init__ (line 21) | def __init__(
method forecast (line 60) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/timer.py
class Model (line 18) | class Model(nn.Module):
method __init__ (line 23) | def __init__(self, ckpt_path):
method forward (line 32) | def forward(self, x_enc, x_mark_enc, x_dec, x_mark_dec, mask=None):
class Timer (line 36) | class Timer(Forecaster):
method __init__ (line 37) | def __init__(
method forecast (line 57) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/timesfm.py
class TimesFM (line 19) | class TimesFM(Forecaster):
method __init__ (line 20) | def __init__(
method forecast (line 85) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/timesnet.py
function FFT_for_Period (line 20) | def FFT_for_Period(x, k=2):
class TimesBlock (line 32) | class TimesBlock(nn.Module):
method __init__ (line 33) | def __init__(self, context_length, prediction_length, top_k, d_model, ...
method forward (line 47) | def forward(self, x):
class TimesNet (line 82) | class TimesNet(Forecaster):
method __init__ (line 83) | def __init__(
method forward (line 120) | def forward(self, x_enc, x_mark_enc=None):
method loss (line 148) | def loss(self, batch_data):
method forecast (line 159) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/tinytimemixer.py
class TinyTimeMixer (line 16) | class TinyTimeMixer(Forecaster):
method __init__ (line 24) | def __init__(
method forecast (line 47) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/transformer.py
class TransformerForecaster (line 8) | class TransformerForecaster(Forecaster):
method __init__ (line 9) | def __init__(
method loss (line 43) | def loss(self, batch_data):
method forecast (line 63) | def forecast(self, batch_data, num_samples=None):
method encode (line 87) | def encode(self, batch_data):
method decode (line 93) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/point_forecaster/tsmixer.py
class TSMixer (line 24) | class TSMixer(Forecaster):
method __init__ (line 48) | def __init__(
method _build_mixer (line 98) | def _build_mixer(
method forward (line 123) | def forward(self, x_hist: torch.Tensor) -> torch.Tensor:
method loss (line 140) | def loss(self, batch_data):
method forecast (line 148) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/point_forecaster/units.py
function calculate_unfold_output_length (line 22) | def calculate_unfold_output_length(input_length, size, step):
class CrossAttention (line 28) | class CrossAttention(nn.Module):
method __init__ (line 29) | def __init__(
method forward (line 59) | def forward(self, x, query=None):
class DynamicLinear (line 88) | class DynamicLinear(nn.Module):
method __init__ (line 93) | def __init__(self, in_features=None, out_features=None, fixed_in=0, bi...
method reset_parameters (line 104) | def reset_parameters(self):
method forward (line 110) | def forward(self, x, out_features):
class DynamicLinearMlp (line 131) | class DynamicLinearMlp(nn.Module):
method __init__ (line 132) | def __init__(
method dynamic_linear (line 167) | def dynamic_linear(self, x, prefix_seq_len):
method split_dynamic_linear (line 176) | def split_dynamic_linear(self, x, prefix_seq_len):
method forward (line 181) | def forward(self, x, prefix_seq_len, dim=2):
class LearnablePositionalEmbedding (line 196) | class LearnablePositionalEmbedding(nn.Module):
method __init__ (line 197) | def __init__(self, d_model, max_len=5000):
method forward (line 215) | def forward(self, x, offset=0):
class SeqAttention (line 219) | class SeqAttention(nn.Module):
method __init__ (line 221) | def __init__(
method forward (line 244) | def forward(self, x, attn_mask=None):
class VarAttention (line 261) | class VarAttention(nn.Module):
method __init__ (line 263) | def __init__(
method forward (line 285) | def forward(self, x):
class GateLayer (line 309) | class GateLayer(nn.Module):
method __init__ (line 310) | def __init__(self, dim, init_values=1e-5, inplace=False):
method forward (line 315) | def forward(self, x):
class SeqAttBlock (line 320) | class SeqAttBlock(nn.Module):
method __init__ (line 322) | def __init__(
method forward (line 351) | def forward(self, x, attn_mask):
class VarAttBlock (line 364) | class VarAttBlock(nn.Module):
method __init__ (line 366) | def __init__(
method forward (line 394) | def forward(self, x):
class MLPBlock (line 399) | class MLPBlock(nn.Module):
method __init__ (line 401) | def __init__(
method forward (line 434) | def forward(self, x, prefix_seq_len=None):
class BasicBlock (line 444) | class BasicBlock(nn.Module):
method __init__ (line 445) | def __init__(
method forward (line 476) | def forward(self, x, prefix_seq_len, attn_mask):
class PatchEmbedding (line 483) | class PatchEmbedding(nn.Module):
method __init__ (line 484) | def __init__(self, d_model, patch_len, stride, padding, dropout):
method forward (line 493) | def forward(self, x):
class CLSHead (line 501) | class CLSHead(nn.Module):
method __init__ (line 502) | def __init__(self, d_model, head_dropout=0):
method forward (line 513) | def forward(self, x, category_token=None, return_feature=False):
class ForecastHead (line 532) | class ForecastHead(nn.Module):
method __init__ (line 533) | def __init__(self, d_model, patch_len, stride, pad, head_dropout=0, pr...
method forward (line 550) | def forward(self, x_full, pred_len, token_len):
class Model (line 571) | class Model(nn.Module):
method __init__ (line 576) | def __init__(self, args, configs_list, pretrain=False):
method tokenize (line 669) | def tokenize(self, x, mask=None):
method prepare_prompt (line 692) | def prepare_prompt(self, x, n_vars, prefix_prompt, task_prompt, task_p...
method mark2token (line 738) | def mark2token(self, x_mark):
method backbone (line 745) | def backbone(self, x, prefix_len, seq_len):
method forecast (line 752) | def forecast(self, x, x_mark, task_id):
method classification (line 779) | def classification(self, x, x_mark, task_id):
method imputation (line 800) | def imputation(self, x, x_mark, mask, task_id):
method anomaly_detection (line 823) | def anomaly_detection(self, x, x_mark, task_id):
method random_masking (line 845) | def random_masking(self, x, min_mask_ratio, max_mask_ratio):
method right_masking (line 876) | def right_masking(self, x, min_mask_ratio, max_mask_ratio):
method choose_masking (line 892) | def choose_masking(self, x, right_prob, min_mask_ratio, max_mask_ratio):
method get_mask_seq (line 899) | def get_mask_seq(self, mask, seq_len):
method pretraining (line 911) | def pretraining(self, x, x_mark, task_id, enable_mask=False):
method forward (line 977) | def forward(self, x_enc, x_mark_enc, x_dec=None, x_mark_dec=None,
class UniTS (line 1001) | class UniTS(Forecaster):
method __init__ (line 1002) | def __init__(
method generate_units_default_args (line 1035) | def generate_units_default_args(self, dataset_name='ETTh1'):
method forecast (line 1088) | def forecast(self, batch_data, pred_len=None, dataset_name=None, *args...
FILE: probts/model/forecaster/prob_forecaster/chronos.py
class Chronos (line 18) | class Chronos(Forecaster):
method __init__ (line 19) | def __init__(
method forecast (line 47) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/prob_forecaster/csdi.py
class CSDI (line 19) | class CSDI(Forecaster):
method __init__ (line 20) | def __init__(
method time_embedding (line 70) | def time_embedding(self, pos, device, d_model=128):
method set_input_to_diffmodel (line 80) | def set_input_to_diffmodel(self, noisy_data, observed_data, cond_mask):
method get_masks (line 86) | def get_masks(self, batch_data):
method get_side_info (line 94) | def get_side_info(self, observed_data, cond_mask, target_dimension_ind...
method loss (line 113) | def loss(self, batch_data, observed_tp=None):
method forecast (line 164) | def forecast(self, batch_data, num_samples):
method sample (line 173) | def sample(self, observed_data, cond_mask, side_info, n_samples):
FILE: probts/model/forecaster/prob_forecaster/gru_maf.py
class GRU_MAF (line 20) | class GRU_MAF(Forecaster):
method __init__ (line 21) | def __init__(
method loss (line 55) | def loss(self, batch_data):
method forecast (line 69) | def forecast(self, batch_data, num_samples=None):
method encode (line 106) | def encode(self, batch_data):
method decode (line 111) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/prob_forecaster/gru_nvp.py
class GRU_NVP (line 20) | class GRU_NVP(Forecaster):
method __init__ (line 21) | def __init__(
method loss (line 55) | def loss(self, batch_data):
method forecast (line 69) | def forecast(self, batch_data, num_samples=None):
method encode (line 106) | def encode(self, batch_data):
method decode (line 111) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/prob_forecaster/lag_llama.py
class LagLlama (line 20) | class LagLlama(Forecaster):
method __init__ (line 21) | def __init__(
method forecast (line 77) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/prob_forecaster/moirai.py
class Moirai (line 18) | class Moirai(Forecaster):
method __init__ (line 19) | def __init__(
method forecast (line 48) | def forecast(self, batch_data, num_samples=None):
FILE: probts/model/forecaster/prob_forecaster/timegrad.py
class TimeGrad (line 20) | class TimeGrad(Forecaster):
method __init__ (line 21) | def __init__(
method loss (line 53) | def loss(self, batch_data):
method forecast (line 67) | def forecast(self, batch_data, num_samples=None):
method encode (line 104) | def encode(self, batch_data):
method decode (line 109) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/prob_forecaster/trans_maf.py
class Trans_MAF (line 20) | class Trans_MAF(Forecaster):
method __init__ (line 21) | def __init__(
method loss (line 69) | def loss(self, batch_data):
method forecast (line 91) | def forecast(self, batch_data, num_samples=None):
method encode (line 128) | def encode(self, batch_data):
method decode (line 134) | def decode(self, batch_data, states=None):
FILE: probts/model/forecaster/prob_forecaster/tsdiff.py
function linear_beta_schedule (line 21) | def linear_beta_schedule(timesteps):
class TSDiffCond (line 27) | class TSDiffCond(Forecaster):
method __init__ (line 28) | def __init__(
method _extract_features (line 80) | def _extract_features(self, batch_data):
method q_sample (line 96) | def q_sample(self, x_start, t, noise=None):
method p_losses (line 112) | def p_losses(
method p_sample (line 142) | def p_sample(self, x, t, t_index, features=None):
method step (line 163) | def step(self, x, t, features, loss_mask):
method loss (line 187) | def loss(self, batch_data):
method forecast (line 203) | def forecast(self, batch_data, num_samples):
method sample (line 218) | def sample(self, observation, observation_mask, n_samples, features=No...
FILE: probts/model/nn/arch/AutoformerModule/AutoCorrelation.py
class AutoCorrelation (line 6) | class AutoCorrelation(nn.Module):
method __init__ (line 13) | def __init__(self, mask_flag=True, factor=1, scale=None, attention_dro...
method time_delay_agg_training (line 21) | def time_delay_agg_training(self, values, corr):
method time_delay_agg_inference (line 45) | def time_delay_agg_inference(self, values, corr):
method time_delay_agg_full (line 73) | def time_delay_agg_full(self, values, corr):
method forward (line 98) | def forward(self, queries, keys, values, attn_mask):
class AutoCorrelationLayer (line 127) | class AutoCorrelationLayer(nn.Module):
method __init__ (line 128) | def __init__(self, correlation, d_model, n_heads, d_keys=None,
method forward (line 142) | def forward(self, queries, keys, values, attn_mask):
FILE: probts/model/nn/arch/AutoformerModule/Autoformer_EncDec.py
class my_Layernorm (line 6) | class my_Layernorm(nn.Module):
method __init__ (line 10) | def __init__(self, channels):
method forward (line 14) | def forward(self, x):
class moving_avg (line 20) | class moving_avg(nn.Module):
method __init__ (line 24) | def __init__(self, kernel_size, stride):
method forward (line 29) | def forward(self, x):
class series_decomp (line 39) | class series_decomp(nn.Module):
method __init__ (line 43) | def __init__(self, kernel_size):
method forward (line 47) | def forward(self, x):
class EncoderLayer (line 53) | class EncoderLayer(nn.Module):
method __init__ (line 57) | def __init__(self, attention, d_model, d_ff=None, moving_avg=25, dropo...
method forward (line 68) | def forward(self, x, attn_mask=None):
class Encoder (line 82) | class Encoder(nn.Module):
method __init__ (line 86) | def __init__(self, attn_layers, conv_layers=None, norm_layer=None):
method forward (line 92) | def forward(self, x, attn_mask=None):
class DecoderLayer (line 112) | class DecoderLayer(nn.Module):
method __init__ (line 116) | def __init__(self, self_attention, cross_attention, d_model, c_out, d_...
method forward (line 132) | def forward(self, x, cross, x_mask=None, cross_mask=None):
class Decoder (line 153) | class Decoder(nn.Module):
method __init__ (line 157) | def __init__(self, layers, norm_layer=None, projection=None):
method forward (line 163) | def forward(self, x, cross, x_mask=None, cross_mask=None, trend=None):
FILE: probts/model/nn/arch/ChronosModule/base.py
class ForecastType (line 20) | class ForecastType(Enum):
class PipelineRegistry (line 25) | class PipelineRegistry(type):
method __new__ (line 28) | def __new__(cls, name, bases, attrs):
class BaseChronosPipeline (line 37) | class BaseChronosPipeline(metaclass=PipelineRegistry):
method __init__ (line 41) | def __init__(self, inner_model: "PreTrainedModel"):
method _prepare_and_validate_context (line 51) | def _prepare_and_validate_context(
method predict (line 63) | def predict(
method predict_quantiles (line 92) | def predict_quantiles(
method from_pretrained (line 128) | def from_pretrained(
FILE: probts/model/nn/arch/ChronosModule/chronos.py
class ChronosConfig (line 30) | class ChronosConfig:
method __post_init__ (line 51) | def __post_init__(self):
method create_tokenizer (line 57) | def create_tokenizer(self) -> "ChronosTokenizer":
class ChronosTokenizer (line 62) | class ChronosTokenizer:
method context_input_transform (line 71) | def context_input_transform(
method label_input_transform (line 103) | def label_input_transform(self, label: torch.Tensor, tokenizer_state: ...
method output_transform (line 134) | def output_transform(
class MeanScaleUniformBins (line 159) | class MeanScaleUniformBins(ChronosTokenizer):
method __init__ (line 160) | def __init__(
method _input_transform (line 178) | def _input_transform(
method _append_eos_token (line 208) | def _append_eos_token(
method context_input_transform (line 219) | def context_input_transform(
method label_input_transform (line 236) | def label_input_transform(
method output_transform (line 251) | def output_transform(
class ChronosModel (line 263) | class ChronosModel(nn.Module):
method __init__ (line 276) | def __init__(self, config: ChronosConfig, model: PreTrainedModel) -> N...
method device (line 282) | def device(self):
method encode (line 285) | def encode(
method forward (line 315) | def forward(
class ChronosPipeline (line 376) | class ChronosPipeline(BaseChronosPipeline):
method __init__ (line 396) | def __init__(self, tokenizer, model):
method _prepare_and_validate_context (line 402) | def _prepare_and_validate_context(
method embed (line 415) | def embed(
method predict (line 450) | def predict( # type: ignore[override]
method predict_quantiles (line 539) | def predict_quantiles(
method from_pretrained (line 573) | def from_pretrained(cls, *args, **kwargs):
FILE: probts/model/nn/arch/ChronosModule/chronos_bolt.py
class ChronosBoltConfig (line 32) | class ChronosBoltConfig:
class ChronosBoltOutput (line 42) | class ChronosBoltOutput(ModelOutput):
class Patch (line 49) | class Patch(nn.Module):
method __init__ (line 50) | def __init__(self, patch_size: int, patch_stride: int) -> None:
method forward (line 55) | def forward(self, x: torch.Tensor) -> torch.Tensor:
class InstanceNorm (line 72) | class InstanceNorm(nn.Module):
method __init__ (line 77) | def __init__(self, eps: float = 1e-5) -> None:
method forward (line 81) | def forward(
method inverse (line 97) | def inverse(
class ResidualBlock (line 104) | class ResidualBlock(nn.Module):
method __init__ (line 105) | def __init__(
method forward (line 126) | def forward(self, x: torch.Tensor):
class ChronosBoltModelForForecasting (line 138) | class ChronosBoltModelForForecasting(T5PreTrainedModel):
method __init__ (line 146) | def __init__(self, config: T5Config):
method _init_weights (line 206) | def _init_weights(self, module):
method encode (line 242) | def encode(
method forward (line 304) | def forward(
method _init_decoder (line 381) | def _init_decoder(self, config):
method decode (line 388) | def decode(
class ChronosBoltPipeline (line 427) | class ChronosBoltPipeline(BaseChronosPipeline):
method __init__ (line 431) | def __init__(self, model: ChronosBoltModelForForecasting):
method quantiles (line 436) | def quantiles(self) -> List[float]:
method embed (line 440) | def embed(
method predict (line 479) | def predict( # type: ignore[override]
method predict_quantiles (line 565) | def predict_quantiles(
method from_pretrained (line 620) | def from_pretrained(cls, *args, **kwargs):
FILE: probts/model/nn/arch/ChronosModule/loss.py
class LabelSmoother (line 6) | class LabelSmoother:
method __call__ (line 20) | def __call__(self, model_output, labels):
FILE: probts/model/nn/arch/ChronosModule/utils.py
function left_pad_and_stack_1D (line 10) | def left_pad_and_stack_1D(tensors: List[torch.Tensor]) -> torch.Tensor:
FILE: probts/model/nn/arch/Conv_Blocks.py
class Inception_Block_V1 (line 5) | class Inception_Block_V1(nn.Module):
method __init__ (line 6) | def __init__(self, in_channels, out_channels, num_kernels=6, init_weig...
method _initialize_weights (line 18) | def _initialize_weights(self):
method forward (line 25) | def forward(self, x):
class Inception_Block_V2 (line 33) | class Inception_Block_V2(nn.Module):
method __init__ (line 34) | def __init__(self, in_channels, out_channels, num_kernels=6, init_weig...
method _initialize_weights (line 48) | def _initialize_weights(self):
method forward (line 55) | def forward(self, x):
FILE: probts/model/nn/arch/ElasTSTModule/ElasTST_backbone.py
class ElasTST_backbone (line 14) | class ElasTST_backbone(nn.Module):
method __init__ (line 15) | def __init__(self,
method get_patch_num (line 92) | def get_patch_num(self, dim_size, len_size, l_patch_size):
method forward (line 98) | def forward(self, past_target, future_placeholder, past_observed_value...
class DoublyAtt (line 154) | class DoublyAtt(nn.Module):
method __init__ (line 155) | def __init__(self, d_model,n_layers, d_inner, n_heads, d_k, d_v, dropout,
method forward (line 194) | def forward(self, x, past_value_indicator, observed_indicator) -> Tensor:
class MLP_FinalLayer (line 202) | class MLP_FinalLayer(nn.Module):
method __init__ (line 206) | def __init__(self, hidden_size, l_patch_size, k_patch_size, out_channe...
method forward (line 212) | def forward(self, x):
class TimePatchEmbed (line 217) | class TimePatchEmbed(nn.Module):
method __init__ (line 220) | def __init__(
method forward (line 252) | def forward(self, x, future_mask, obv_mask):
FILE: probts/model/nn/arch/ElasTSTModule/Layers.py
function get_attn_key_pad_mask_K (line 10) | def get_attn_key_pad_mask_K(past_value_indicator, observed_indicator , t...
class EncoderLayer (line 27) | class EncoderLayer(nn.Module):
method __init__ (line 30) | def __init__(self, d_model, d_inner, n_head, d_k, d_v, dropout=0.1,
method forward (line 55) | def forward(self, input, past_value_indicator=None, observed_indicator...
FILE: probts/model/nn/arch/ElasTSTModule/Modules.py
class ScaledDotProductAttention (line 7) | class ScaledDotProductAttention(nn.Module):
method __init__ (line 10) | def __init__(self, temperature, attn_dropout=0.2):
method forward (line 16) | def forward(self, q, k, v, mask=None):
class ScaledDotProductAttention_bias (line 31) | class ScaledDotProductAttention_bias(nn.Module):
method __init__ (line 33) | def __init__(self, d_model, n_head, d_k, d_v, temperature,
method forward (line 56) | def forward(self, q, k, v, mask):
class Attention (line 100) | class Attention(nn.Module):
method __init__ (line 102) | def __init__(self, hin_d, d_model):
method forward (line 108) | def forward(self, x, mask=None, mask_value=-1e30):
FILE: probts/model/nn/arch/ElasTSTModule/SubLayers.py
class MultiHeadAttention_tem_bias (line 8) | class MultiHeadAttention_tem_bias(nn.Module):
method __init__ (line 11) | def __init__(self, n_head, d_model, d_k, d_v, dropout=0.1, rotate=Fals...
method forward (line 27) | def forward(self, q, k, v, mask=None):
class MultiHeadAttention_type_bias (line 38) | class MultiHeadAttention_type_bias(nn.Module):
method __init__ (line 41) | def __init__(self, n_head, d_model, d_k, d_v, dropout=0.1, rotate=Fals...
method forward (line 52) | def forward(self, q, k, v, mask=None):
class PositionwiseFeedForward (line 61) | class PositionwiseFeedForward(nn.Module):
method __init__ (line 64) | def __init__(self, d_in, d_hid, dropout=0.1):
method forward (line 70) | def forward(self, x):
FILE: probts/model/nn/arch/ElasTSTModule/TRoPE.py
class RotaryEmbedding (line 8) | class RotaryEmbedding(nn.Module):
method __init__ (line 9) | def __init__(self, dim: int, seq_len: int, base: float = 10000.0, lear...
method forward (line 34) | def forward(self, xq: torch.Tensor, xk: torch.Tensor, xv: torch.Tensor):
function get_linear_period (line 56) | def get_linear_period(min_period, max_period, dim):
function get_exp_period (line 63) | def get_exp_period(min_period, max_period, dim):
function precompute_freqs_cis (line 72) | def precompute_freqs_cis(dim: int, seq_len: int, theta: float = 10000.0):
function apply_rotary_emb (line 84) | def apply_rotary_emb(
FILE: probts/model/nn/arch/ModernTCN_backbone.py
class Flatten_Head (line 8) | class Flatten_Head(nn.Module):
method __init__ (line 9) | def __init__(self, individual, n_vars, nf, target_window, head_dropout...
method forward (line 28) | def forward(self, x): # x: [bs x nvars x d_model x patch_num]
class LayerNorm (line 43) | class LayerNorm(nn.Module):
method __init__ (line 44) | def __init__(self, channels, eps=1e-6, data_format="channels_last"):
method forward (line 48) | def forward(self, x):
function get_conv1d (line 57) | def get_conv1d(in_channels, out_channels, kernel_size, stride, padding, ...
function get_bn (line 62) | def get_bn(channels):
function conv_bn (line 65) | def conv_bn(in_channels, out_channels, kernel_size, stride, padding, gro...
function fuse_bn (line 74) | def fuse_bn(conv, bn):
class ReparamLargeKernelConv (line 86) | class ReparamLargeKernelConv(nn.Module):
method __init__ (line 88) | def __init__(self, in_channels, out_channels, kernel_size,
method forward (line 110) | def forward(self, inputs):
method PaddingTwoEdge1d (line 121) | def PaddingTwoEdge1d(self,x,pad_length_left,pad_length_right,pad_value...
method get_equivalent_kernel_bias (line 134) | def get_equivalent_kernel_bias(self):
method merge_kernel (line 147) | def merge_kernel(self):
class Block (line 160) | class Block(nn.Module):
method __init__ (line 161) | def __init__(self, large_size, small_size, dmodel, dff, nvars, small_k...
method forward (line 188) | def forward(self,x):
class Stage (line 217) | class Stage(nn.Module):
method __init__ (line 218) | def __init__(self, ffn_ratio, num_blocks, large_size, small_size, dmod...
method forward (line 230) | def forward(self, x):
class ModernTCNModel (line 238) | class ModernTCNModel(nn.Module):
method __init__ (line 239) | def __init__(self,patch_size,patch_stride, stem_ratio, downsample_rati...
method up_sample (line 335) | def up_sample(self, x, upsample_ratio):
method forward_feature (line 339) | def forward_feature(self, x, te=None):
method forward (line 363) | def forward(self, x, te=None):
method structural_reparam (line 379) | def structural_reparam(self):
FILE: probts/model/nn/arch/Moirai_backbone.py
class SampleNLLLoss (line 29) | class SampleNLLLoss(_PackedNLLLoss):
method reduce_loss (line 30) | def reduce_loss(
class MoiraiBackbone (line 57) | class MoiraiBackbone(L.LightningModule):
method __init__ (line 58) | def __init__(
method hparams_context (line 80) | def hparams_context(
method past_length (line 106) | def past_length(self) -> int:
method context_token_length (line 113) | def context_token_length(self, patch_size: int) -> int:
method prediction_token_length (line 116) | def prediction_token_length(self, patch_size) -> int:
method max_patch_size (line 120) | def max_patch_size(self) -> int:
method forward (line 123) | def forward(
method _val_loss (line 176) | def _val_loss(
method _get_distr (line 222) | def _get_distr(
method _patched_seq_pad (line 256) | def _patched_seq_pad(
method _generate_time_id (line 273) | def _generate_time_id(
method _convert (line 304) | def _convert(
method _format_preds (line 501) | def _format_preds(
FILE: probts/model/nn/arch/PatchTSTModule/PatchTST_backbone.py
class PatchTST_backbone (line 24) | class PatchTST_backbone(nn.Module):
method __init__ (line 25) | def __init__(self, c_in:int, context_window:int, target_window:int, pa...
method forward (line 68) | def forward(self, z): ...
method create_pretrain_head (line 92) | def create_pretrain_head(self, head_nf, vars, dropout):
class Flatten_Head (line 98) | class Flatten_Head(nn.Module):
method __init__ (line 99) | def __init__(self, individual, n_vars, nf, target_window, head_dropout...
method forward (line 118) | def forward(self, x): # x: [bs x nvars...
class TSTiEncoder (line 136) | class TSTiEncoder(nn.Module): #i means channel-independent
method __init__ (line 137) | def __init__(self, c_in, patch_num, patch_len, max_seq_len=1024,
method forward (line 165) | def forward(self, x) -> Tensor: ...
class TSTEncoder (line 185) | class TSTEncoder(nn.Module):
method __init__ (line 186) | def __init__(self, q_len, d_model, n_heads, d_k=None, d_v=None, d_ff=N...
method forward (line 197) | def forward(self, src:Tensor, key_padding_mask:Optional[Tensor]=None, ...
class TSTEncoderLayer (line 209) | class TSTEncoderLayer(nn.Module):
method __init__ (line 210) | def __init__(self, q_len, d_model, n_heads, d_k=None, d_v=None, d_ff=2...
method forward (line 245) | def forward(self, src:Tensor, prev:Optional[Tensor]=None, key_padding_...
class _MultiheadAttention (line 280) | class _MultiheadAttention(nn.Module):
method __init__ (line 281) | def __init__(self, d_model, n_heads, d_k=None, d_v=None, res_attention...
method forward (line 306) | def forward(self, Q:Tensor, K:Optional[Tensor]=None, V:Optional[Tensor...
class _ScaledDotProductAttention (line 333) | class _ScaledDotProductAttention(nn.Module):
method __init__ (line 338) | def __init__(self, d_model, n_heads, attn_dropout=0., res_attention=Fa...
method forward (line 345) | def forward(self, q:Tensor, k:Tensor, v:Tensor, prev:Optional[Tensor]=...
FILE: probts/model/nn/arch/PatchTSTModule/PatchTST_layers.py
class Transpose (line 15) | class Transpose(nn.Module):
method __init__ (line 16) | def __init__(self, *dims, contiguous=False):
method forward (line 19) | def forward(self, x):
function get_activation_fn (line 24) | def get_activation_fn(activation):
class moving_avg (line 33) | class moving_avg(nn.Module):
method __init__ (line 37) | def __init__(self, kernel_size, stride):
method forward (line 42) | def forward(self, x):
class series_decomp (line 52) | class series_decomp(nn.Module):
method __init__ (line 56) | def __init__(self, kernel_size):
method forward (line 60) | def forward(self, x):
function PositionalEncoding (line 69) | def PositionalEncoding(q_len, d_model, normalize=True):
function Coord2dPosEncoding (line 82) | def Coord2dPosEncoding(q_len, d_model, exponential=False, normalize=True...
function Coord1dPosEncoding (line 97) | def Coord1dPosEncoding(q_len, exponential=False, normalize=True):
function positional_encoding (line 104) | def positional_encoding(pe, learn_pe, q_len, d_model):
FILE: probts/model/nn/arch/RevIN.py
class RevIN (line 12) | class RevIN(nn.Module):
method __init__ (line 13) | def __init__(self, num_features: int, eps=1e-5, affine=True, subtract_...
method forward (line 27) | def forward(self, x, mode:str):
method _init_params (line 36) | def _init_params(self):
method _get_statistics (line 41) | def _get_statistics(self, x):
method _normalize (line 49) | def _normalize(self, x):
method _denormalize (line 60) | def _denormalize(self, x):
FILE: probts/model/nn/arch/S4/s4.py
function get_logger (line 18) | def get_logger(name=__name__, level=logging.INFO) -> logging.Logger:
function _broadcast_dims (line 60) | def _broadcast_dims(*tensors):
function cauchy_conj (line 68) | def cauchy_conj(v, z, w):
function log_vandermonde (line 92) | def log_vandermonde(v, x, L):
function log_vandermonde_transpose (line 114) | def log_vandermonde_transpose(u, v, x, L):
function cauchy_naive (line 154) | def cauchy_naive(v, z, w):
function log_vandermonde (line 170) | def log_vandermonde(v, x, L):
function log_vandermonde_transpose (line 184) | def log_vandermonde_transpose(u, v, x, L):
function _conj (line 197) | def _conj(x):
function _resolve_conj (line 205) | def _resolve_conj(x):
function _resolve_conj (line 210) | def _resolve_conj(x):
function Activation (line 217) | def Activation(activation=None, dim=-1):
function LinearActivation (line 238) | def LinearActivation(
class DropoutNd (line 261) | class DropoutNd(nn.Module):
method __init__ (line 262) | def __init__(self, p: float = 0.5, tie=True, transposed=True):
method forward (line 277) | def forward(self, X):
function power (line 296) | def power(L, A, v=None):
function transition (line 345) | def transition(measure, N):
function rank_correction (line 412) | def rank_correction(measure, N, rank=1, dtype=torch.float):
function nplr (line 449) | def nplr(measure, N, rank=1, dtype=torch.float, diagonalize_precision=Tr...
function dplr (line 518) | def dplr(
function ssm (line 595) | def ssm(measure, N, R, H, **ssm_args):
function combination (line 628) | def combination(measures, N, R, S, **ssm_args):
class OptimModule (line 650) | class OptimModule(nn.Module):
method register (line 653) | def register(self, name, tensor, lr=None):
class SSKernelNPLR (line 667) | class SSKernelNPLR(OptimModule):
method _setup_C (line 671) | def _setup_C(self, L):
method _omega (line 707) | def _omega(self, L, dtype, device, cache=True):
method __init__ (line 731) | def __init__(
method _w_init (line 811) | def _w_init(self, w_real):
method _w (line 828) | def _w(self):
method forward (line 845) | def forward(self, state=None, rate=1.0, L=None):
method _setup_linear (line 981) | def _setup_linear(self):
method _step_state_linear (line 1022) | def _step_state_linear(self, u=None, state=None):
method _setup_state (line 1078) | def _setup_state(self):
method _step_state (line 1101) | def _step_state(self, u, state):
method _setup_step (line 1108) | def _setup_step(self, mode="dense"):
method default_state (line 1157) | def default_state(self, *batch_shape):
method step (line 1199) | def step(self, u, state):
class SSKernelDiag (line 1210) | class SSKernelDiag(OptimModule):
method __init__ (line 1213) | def __init__(
method _A_init (line 1254) | def _A_init(self, A_real):
method _A (line 1271) | def _A(self):
method forward (line 1289) | def forward(self, L, state=None, rate=1.0, u=None):
method _setup_step (line 1368) | def _setup_step(self):
method default_state (line 1390) | def default_state(self, *batch_shape):
method step (line 1397) | def step(self, u, state):
method forward_state (line 1404) | def forward_state(self, u, state):
class SSKernel (line 1413) | class SSKernel(nn.Module):
method __init__ (line 1423) | def __init__(
method forward (line 1548) | def forward(self, state=None, L=None, rate=1.0):
method forward_state (line 1552) | def forward_state(self, u, state):
method _setup_step (line 1582) | def _setup_step(self, **kwargs):
method step (line 1590) | def step(self, u, state, **kwargs):
method default_state (line 1594) | def default_state(self, *args, **kwargs):
class S4 (line 1598) | class S4(nn.Module):
method __init__ (line 1599) | def __init__(
method forward (line 1725) | def forward(self, u, state=None, rate=1.0, lengths=None, **kwargs):
method setup_step (line 1811) | def setup_step(self, **kwargs):
method step (line 1814) | def step(self, u, state):
method default_state (line 1833) | def default_state(self, *batch_shape, device=None):
method d_output (line 1839) | def d_output(self):
FILE: probts/model/nn/arch/S4/s4_backbones.py
class SinusoidalPositionEmbeddings (line 11) | class SinusoidalPositionEmbeddings(nn.Module):
method __init__ (line 12) | def __init__(self, dim):
method forward (line 16) | def forward(self, time):
class S4Layer (line 28) | class S4Layer(nn.Module):
method __init__ (line 29) | def __init__(
method forward (line 54) | def forward(self, x):
method default_state (line 69) | def default_state(self, *args, **kwargs):
method step (line 72) | def step(self, x, state, **kwargs):
class S4Block (line 83) | class S4Block(nn.Module):
method __init__ (line 84) | def __init__(self, d_model, dropout=0.0, expand=2, num_features=0,mode...
method forward (line 99) | def forward(self, x, t, features=None):
function Conv1dKaiming (line 111) | def Conv1dKaiming(in_channels, out_channels, kernel_size):
class BackboneModel (line 117) | class BackboneModel(nn.Module):
method __init__ (line 118) | def __init__(
method forward (line 168) | def forward(self, input, t, features=None):
FILE: probts/model/nn/arch/TSMixer_layers.py
class TimeBatchNorm2d (line 9) | class TimeBatchNorm2d(nn.BatchNorm1d):
method __init__ (line 21) | def __init__(self, normalized_shape: tuple[int, int]):
method forward (line 34) | def forward(self, x: Tensor) -> Tensor:
class FeatureMixing (line 62) | class FeatureMixing(nn.Module):
method __init__ (line 79) | def __init__(
method forward (line 115) | def forward(self, x: torch.Tensor) -> torch.Tensor:
class ConditionalFeatureMixing (line 139) | class ConditionalFeatureMixing(nn.Module):
method __init__ (line 155) | def __init__(
method forward (line 181) | def forward(
class TimeMixing (line 210) | class TimeMixing(nn.Module):
method __init__ (line 224) | def __init__(
method forward (line 239) | def forward(self, x: torch.Tensor) -> torch.Tensor:
class MixerLayer (line 259) | class MixerLayer(nn.Module):
method __init__ (line 275) | def __init__(
method forward (line 307) | def forward(self, x: torch.Tensor) -> torch.Tensor:
class ConditionalMixerLayer (line 322) | class ConditionalMixerLayer(nn.Module):
method __init__ (line 339) | def __init__(
method forward (line 372) | def forward(self, x: torch.Tensor, x_static: torch.Tensor) -> torch.Te...
function time_to_feature (line 390) | def time_to_feature(x: torch.Tensor) -> torch.Tensor:
FILE: probts/model/nn/arch/TimesFMModule/patched_decoder.py
function _shift_padded_seq (line 61) | def _shift_padded_seq(mask: JTensor, seq: JTensor) -> JTensor:
class ResidualBlock (line 84) | class ResidualBlock(base_layer.BaseLayer):
method setup (line 107) | def setup(self):
method __call__ (line 146) | def __call__(self, inputs: JTensor) -> JTensor:
function _masked_mean_std (line 157) | def _masked_mean_std(inputs: JTensor,
function _create_quantiles (line 206) | def _create_quantiles() -> list[float]:
class PatchedTimeSeriesDecoder (line 211) | class PatchedTimeSeriesDecoder(base_layer.BaseLayer):
method setup (line 242) | def setup(self) -> None:
method transform_decode_state (line 288) | def transform_decode_state(
method _forward_transform (line 293) | def _forward_transform(
method _reverse_transform (line 305) | def _reverse_transform(self, outputs: JTensor,
method _preprocess_input (line 311) | def _preprocess_input(
method _postprocess_output (line 350) | def _postprocess_output(
method __call__ (line 365) | def __call__(self, inputs: NestedMap) -> NestedMap:
method decode (line 399) | def decode(
class PatchedDecoderFinetuneModel (line 480) | class PatchedDecoderFinetuneModel(base_model.BaseModel):
method setup (line 491) | def setup(self) -> None:
method compute_predictions (line 494) | def compute_predictions(self, input_batch: NestedMap) -> NestedMap:
method _quantile_loss (line 513) | def _quantile_loss(self, pred: JTensor, actual: JTensor,
method compute_loss (line 530) | def compute_loss(self, prediction_output: NestedMap,
FILE: probts/model/nn/arch/TimesFMModule/pytorch_patched_decoder.py
function _create_quantiles (line 24) | def _create_quantiles() -> list[float]:
class TimesFMConfig (line 29) | class TimesFMConfig:
function _masked_mean_std (line 62) | def _masked_mean_std(
function _shift_padded_seq (line 122) | def _shift_padded_seq(mask: torch.Tensor, seq: torch.Tensor) -> torch.Te...
function get_large_negative_number (line 156) | def get_large_negative_number(dtype: torch.dtype) -> torch.Tensor:
function apply_mask_to_logits (line 165) | def apply_mask_to_logits(logits: torch.Tensor,
function convert_paddings_to_mask (line 183) | def convert_paddings_to_mask(
function causal_mask (line 201) | def causal_mask(input_t: torch.Tensor) -> torch.Tensor:
function merge_masks (line 221) | def merge_masks(a: torch.Tensor, b: torch.Tensor) -> torch.Tensor:
class ResidualBlock (line 249) | class ResidualBlock(nn.Module):
method __init__ (line 252) | def __init__(
method forward (line 274) | def forward(self, x):
class RMSNorm (line 281) | class RMSNorm(torch.nn.Module):
method __init__ (line 284) | def __init__(
method _norm (line 295) | def _norm(self, x):
method forward (line 298) | def forward(self, x):
class TransformerMLP (line 307) | class TransformerMLP(nn.Module):
method __init__ (line 310) | def __init__(
method forward (line 320) | def forward(self, x, paddings=None):
class TimesFMAttention (line 330) | class TimesFMAttention(nn.Module):
method __init__ (line 333) | def __init__(
method _per_dim_scaling (line 362) | def _per_dim_scaling(self, query: torch.Tensor) -> torch.Tensor:
method forward (line 370) | def forward(
class TimesFMDecoderLayer (line 428) | class TimesFMDecoderLayer(nn.Module):
method __init__ (line 431) | def __init__(
method forward (line 453) | def forward(
class StackedDecoder (line 478) | class StackedDecoder(nn.Module):
method __init__ (line 481) | def __init__(
method forward (line 505) | def forward(
class PositionalEmbedding (line 528) | class PositionalEmbedding(torch.nn.Module):
method __init__ (line 539) | def __init__(
method forward (line 550) | def forward(self, seq_length=None, position=None):
class PatchedTimeSeriesDecoder (line 584) | class PatchedTimeSeriesDecoder(nn.Module):
method __init__ (line 587) | def __init__(self, config: TimesFMConfig):
method _forward_transform (line 614) | def _forward_transform(
method _reverse_transform (line 636) | def _reverse_transform(
method _preprocess_input (line 643) | def _preprocess_input(
method _postprocess_output (line 691) | def _postprocess_output(
method forward (line 708) | def forward(
method decode (line 726) | def decode(
FILE: probts/model/nn/arch/TimesFMModule/timesfm_base.py
function process_group (line 36) | def process_group(key, group, value_name, forecast_context_len):
function moving_average (line 41) | def moving_average(arr, window_size):
function freq_map (line 50) | def freq_map(freq: str):
function strip_leading_nans (line 64) | def strip_leading_nans(arr):
function linear_interpolation (line 80) | def linear_interpolation(arr):
function _normalize (line 115) | def _normalize(batch):
function _renormalize (line 124) | def _renormalize(batch, stats):
class TimesFmHparams (line 129) | class TimesFmHparams:
class TimesFmCheckpoint (line 168) | class TimesFmCheckpoint:
class TimesFmBase (line 189) | class TimesFmBase:
method _logging (line 198) | def _logging(self, s):
method __post_init__ (line 201) | def __post_init__(self) -> None:
method __init__ (line 205) | def __init__(self, hparams: TimesFmHparams,
method load_from_checkpoint (line 237) | def load_from_checkpoint(self, checkpoint: TimesFmCheckpoint) -> None:
method _preprocess (line 241) | def _preprocess(
method _forecast (line 298) | def _forecast(
method forecast (line 331) | def forecast(
method forecast_with_covariates (line 413) | def forecast_with_covariates(
method forecast_on_df (line 626) | def forecast_on_df(
FILE: probts/model/nn/arch/TimesFMModule/timesfm_jax.py
class TimesFmJax (line 41) | class TimesFmJax(timesfm_base.TimesFmBase):
method _get_sample_inputs (line 57) | def _get_sample_inputs(self):
method __post_init__ (line 85) | def __post_init__(self):
method load_from_checkpoint (line 94) | def load_from_checkpoint(
method jit_decode (line 178) | def jit_decode(self):
method _forecast (line 239) | def _forecast(
FILE: probts/model/nn/arch/TimesFMModule/timesfm_torch.py
class TimesFmTorch (line 30) | class TimesFmTorch(timesfm_base.TimesFmBase):
method __post_init__ (line 33) | def __post_init__(self):
method load_from_checkpoint (line 52) | def load_from_checkpoint(
method _forecast (line 72) | def _forecast(
FILE: probts/model/nn/arch/TimesFMModule/xreg_lib.py
function _unnest (line 31) | def _unnest(nested: Sequence[Sequence[Any]]) -> np.ndarray:
function _repeat (line 35) | def _repeat(elements: Iterable[Any], counts: Iterable[int]) -> np.ndarray:
function _to_padded_jax_array (line 42) | def _to_padded_jax_array(x: np.ndarray) -> jax.Array:
class BatchedInContextXRegBase (line 56) | class BatchedInContextXRegBase:
method __init__ (line 81) | def __init__(
method _assert_covariates (line 193) | def _assert_covariates(self, assert_covariate_shapes: bool = False) ->...
method create_covariate_matrix (line 298) | def create_covariate_matrix(
method fit (line 377) | def fit(self) -> Any:
class BatchedInContextXRegLinear (line 381) | class BatchedInContextXRegLinear(BatchedInContextXRegBase):
method fit (line 384) | def fit(
FILE: probts/model/nn/arch/TransformerModule/Embed.py
class PositionalEmbedding (line 5) | class PositionalEmbedding(nn.Module):
method __init__ (line 6) | def __init__(self, d_model, max_len=5000):
method forward (line 22) | def forward(self, x):
class TokenEmbedding (line 26) | class TokenEmbedding(nn.Module):
method __init__ (line 27) | def __init__(self, c_in, d_model):
method forward (line 37) | def forward(self, x):
class FixedEmbedding (line 42) | class FixedEmbedding(nn.Module):
method __init__ (line 43) | def __init__(self, c_in, d_model):
method forward (line 59) | def forward(self, x):
class TemporalEmbedding (line 63) | class TemporalEmbedding(nn.Module):
method __init__ (line 64) | def __init__(self, d_model, embed_type='fixed', freq='h'):
method forward (line 81) | def forward(self, x):
class TimeFeatureEmbedding (line 93) | class TimeFeatureEmbedding(nn.Module):
method __init__ (line 94) | def __init__(self, d_model, embed_type='timeF', freq='h'):
method forward (line 104) | def forward(self, x):
class DataEmbedding (line 108) | class DataEmbedding(nn.Module):
method __init__ (line 109) | def __init__(self, c_in, d_model, embed_type='fixed', freq='h', dropou...
method forward (line 119) | def forward(self, x, x_mark):
class DataEmbedding_wo_pos (line 128) | class DataEmbedding_wo_pos(nn.Module):
method __init__ (line 129) | def __init__(self, c_in, d_model, embed_type='fixed', freq='h', dropou...
method forward (line 139) | def forward(self, x, x_mark):
class PatchEmbedding (line 147) | class PatchEmbedding(nn.Module):
method __init__ (line 148) | def __init__(self, d_model, patch_len, stride, padding, dropout):
method forward (line 164) | def forward(self, x):
class DataEmbedding_inverted (line 176) | class DataEmbedding_inverted(nn.Module):
method __init__ (line 177) | def __init__(self, c_in, d_model, dropout=0.1):
method forward (line 182) | def forward(self, x, x_mark):
FILE: probts/model/nn/arch/TransformerModule/SelfAttention_Family.py
class FlowAttention (line 11) | class FlowAttention(nn.Module):
method __init__ (line 12) | def __init__(self, attention_dropout=0.1):
method kernel_method (line 16) | def kernel_method(self, x):
method forward (line 19) | def forward(self, queries, keys, values, attn_mask, tau=None, delta=No...
class FlashAttention (line 46) | class FlashAttention(nn.Module):
method __init__ (line 47) | def __init__(self, mask_flag=True, factor=5, scale=None, attention_dro...
method flash_attention_forward (line 54) | def flash_attention_forward(self, Q, K, V, mask=None):
method forward (line 127) | def forward(self, queries, keys, values, attn_mask, tau=None, delta=No...
class FullAttention (line 134) | class FullAttention(nn.Module):
method __init__ (line 135) | def __init__(self, mask_flag=True, factor=5, scale=None, attention_dro...
method forward (line 142) | def forward(self, queries, keys, values, attn_mask, tau=None, delta=No...
class ProbAttention (line 165) | class ProbAttention(nn.Module):
method __init__ (line 166) | def __init__(self, mask_flag=True, factor=5, scale=None, attention_dro...
method _prob_QK (line 174) | def _prob_QK(self, Q, K, sample_k, n_top): # n_top: c*ln(L_q)
method _get_initial_context (line 200) | def _get_initial_context(self, V, L_Q):
method _update_context (line 213) | def _update_context(self, context_in, V, scores, index, L_Q, attn_mask):
method forward (line 234) | def forward(self, queries, keys, values, attn_mask, tau=None, delta=No...
class AttentionLayer (line 266) | class AttentionLayer(nn.Module):
method __init__ (line 267) | def __init__(self, attention, d_model, n_heads, d_keys=None,
method forward (line 281) | def forward(self, queries, keys, values, attn_mask, tau=None, delta=No...
class ReformerLayer (line 303) | class ReformerLayer(nn.Module):
method __init__ (line 304) | def __init__(self, attention, d_model, n_heads, d_keys=None,
method fit_length (line 316) | def fit_length(self, queries):
method forward (line 326) | def forward(self, queries, keys, values, attn_mask, tau, delta):
FILE: probts/model/nn/arch/TransformerModule/Transformer_EncDec.py
class ConvLayer (line 5) | class ConvLayer(nn.Module):
method __init__ (line 6) | def __init__(self, c_in):
method forward (line 17) | def forward(self, x):
class EncoderLayer (line 26) | class EncoderLayer(nn.Module):
method __init__ (line 27) | def __init__(self, attention, d_model, d_ff=None, dropout=0.1, activat...
method forward (line 38) | def forward(self, x, attn_mask=None, tau=None, delta=None):
class Encoder (line 53) | class Encoder(nn.Module):
method __init__ (line 54) | def __init__(self, attn_layers, conv_layers=None, norm_layer=None):
method forward (line 60) | def forward(self, x, attn_mask=None, tau=None, delta=None):
class DecoderLayer (line 82) | class DecoderLayer(nn.Module):
method __init__ (line 83) | def __init__(self, self_attention, cross_attention, d_model, d_ff=None,
method forward (line 97) | def forward(self, x, cross, x_mask=None, cross_mask=None, tau=None, de...
class Decoder (line 118) | class Decoder(nn.Module):
method __init__ (line 119) | def __init__(self, layers, norm_layer=None, projection=None):
method forward (line 125) | def forward(self, x, cross, x_mask=None, cross_mask=None, tau=None, de...
FILE: probts/model/nn/arch/decomp.py
class moving_avg (line 4) | class moving_avg(nn.Module):
method __init__ (line 8) | def __init__(self, kernel_size, stride):
method forward (line 13) | def forward(self, x):
class series_decomp (line 23) | class series_decomp(nn.Module):
method __init__ (line 27) | def __init__(self, kernel_size):
method forward (line 31) | def forward(self, x):
FILE: probts/model/nn/prob/MAF.py
function create_masks (line 19) | def create_masks(
class MaskedLinear (line 62) | class MaskedLinear(nn.Linear):
method __init__ (line 65) | def __init__(self, input_size, n_outputs, mask, cond_label_size=None):
method forward (line 76) | def forward(self, x, y=None):
class MADE (line 83) | class MADE(nn.Module):
method __init__ (line 84) | def __init__(
method base_dist (line 136) | def base_dist(self):
method forward (line 139) | def forward(self, x, y=None):
method inverse (line 147) | def inverse(self, u, y=None, sum_log_abs_det_jacobians=None):
method log_prob (line 158) | def log_prob(self, x, y=None):
class MAF (line 163) | class MAF(FlowModel):
method __init__ (line 164) | def __init__(
FILE: probts/model/nn/prob/RealNVP.py
class LinearMaskedCoupling (line 17) | class LinearMaskedCoupling(nn.Module):
method __init__ (line 20) | def __init__(self, input_size, hidden_size, n_hidden, mask, cond_label...
method forward (line 44) | def forward(self, x, y=None):
method inverse (line 67) | def inverse(self, u, y=None):
class RealNVP (line 89) | class RealNVP(FlowModel):
method __init__ (line 90) | def __init__(
FILE: probts/model/nn/prob/diffusion_layers.py
function get_torch_trans (line 17) | def get_torch_trans(heads=8, layers=1, channels=64,linear=False):
function Conv1d_with_init (line 34) | def Conv1d_with_init(in_channels, out_channels, kernel_size):
class DiffusionEmbedding (line 40) | class DiffusionEmbedding(nn.Module):
method __init__ (line 41) | def __init__(self, dim=128, proj_dim=None, max_steps=500):
method forward (line 51) | def forward(self, diffusion_step):
method _build_embedding (line 59) | def _build_embedding(self, dim, max_steps):
class diff_CSDI (line 67) | class diff_CSDI(nn.Module):
method __init__ (line 68) | def __init__(self, channels, diffusion_embedding_dim, side_dim, num_st...
method forward (line 93) | def forward(self, x, cond_info, diffusion_step):
class ResidualBlock (line 118) | class ResidualBlock(nn.Module):
method __init__ (line 119) | def __init__(self, side_dim, channels, diffusion_embedding_dim, nheads...
method forward_time (line 130) | def forward_time(self, y, base_shape):
method forward_feature (line 139) | def forward_feature(self, y, base_shape):
method forward (line 148) | def forward(self, x, cond_info, diffusion_emb):
FILE: probts/model/nn/prob/flow_model.py
class FlowModel (line 15) | class FlowModel(nn.Module):
method __init__ (line 16) | def __init__(self, target_dim, f_hidden_size, conditional_length, dequ...
method base_dist (line 31) | def base_dist(self):
method scale (line 35) | def scale(self):
method scale (line 39) | def scale(self, scale):
method forward (line 42) | def forward(self, x, cond):
method inverse (line 48) | def inverse(self, u, cond):
method log_prob (line 55) | def log_prob(self, x, cond):
method loss (line 61) | def loss(self, x, cond):
method sample (line 64) | def sample(self, sample_shape=torch.Size(), cond=None):
class BatchNorm (line 75) | class BatchNorm(nn.Module):
method __init__ (line 78) | def __init__(self, input_size, momentum=0.9, eps=1e-5):
method forward (line 89) | def forward(self, x, cond_y=None):
method inverse (line 118) | def inverse(self, y, cond_y=None):
class FlowSequential (line 134) | class FlowSequential(nn.Sequential):
method forward (line 137) | def forward(self, x, y):
method inverse (line 144) | def inverse(self, u, y):
FILE: probts/model/nn/prob/gaussian_diffusion.py
function default (line 21) | def default(val, d):
function extract (line 27) | def extract(a, t, x_shape):
function noise_like (line 33) | def noise_like(shape, device, repeat=False):
function cosine_beta_schedule (line 41) | def cosine_beta_schedule(timesteps, s=0.008):
class ResidualBlock (line 54) | class ResidualBlock(nn.Module):
method __init__ (line 55) | def __init__(self, hidden_size, residual_channels, dilation, target_dim):
method forward (line 82) | def forward(self, x, conditioner, diffusion_step):
class CondUpsampler (line 98) | class CondUpsampler(nn.Module):
method __init__ (line 99) | def __init__(self, cond_length, target_dim):
method forward (line 109) | def forward(self, x):
class EpsilonTheta (line 121) | class EpsilonTheta(nn.Module):
method __init__ (line 122) | def __init__(
method forward (line 168) | def forward(self, inputs, time, cond):
class GaussianDiffusion (line 186) | class GaussianDiffusion(nn.Module):
method __init__ (line 187) | def __init__(
method scale (line 288) | def scale(self):
method scale (line 292) | def scale(self, scale):
method q_mean_variance (line 295) | def q_mean_variance(self, x_start, t):
method predict_start_from_noise (line 301) | def predict_start_from_noise(self, x_t, t, noise):
method q_posterior (line 307) | def q_posterior(self, x_start, x_t, t):
method p_mean_variance (line 318) | def p_mean_variance(self, x, cond, t, clip_denoised: bool):
method p_sample (line 332) | def p_sample(self, x, cond, t, clip_denoised=False, repeat_noise=False):
method p_sample_loop (line 343) | def p_sample_loop(self, shape, cond):
method sample (line 356) | def sample(self, sample_shape=torch.Size(), cond=None):
method interpolate (line 369) | def interpolate(self, x1, x2, t=None, lam=0.5):
method q_sample (line 386) | def q_sample(self, x_start, t, noise=None):
method p_losses (line 394) | def p_losses(self, x_start, cond, t, noise=None):
method loss (line 411) | def loss(self, x, cond, *args, **kwargs):
FILE: probts/utils/download_datasets.py
function download_and_extract_zip (line 6) | def download_and_extract_zip(output_path, zip_name='all_datasets'):
function move_files_up_one_level (line 25) | def move_files_up_one_level(directory):
function cleanup_directory (line 42) | def cleanup_directory(directory):
function delete_path (line 52) | def delete_path(path):
function download_datasets_from_kaggle (line 60) | def download_datasets_from_kaggle(output_path):
FILE: probts/utils/evaluator.py
class Evaluator (line 5) | class Evaluator:
method __init__ (line 7) | def __init__(self, quantiles_num=10, smooth=False):
method loss_name (line 12) | def loss_name(self, q):
method weighted_loss_name (line 15) | def weighted_loss_name(self, q):
method coverage_name (line 18) | def coverage_name(self, q):
method get_sequence_metrics (line 21) | def get_sequence_metrics(self, targets, forecasts, seasonal_error=None...
method get_metrics (line 71) | def get_metrics(self, targets, forecasts, seasonal_error=None, samples...
method selected_metrics (line 94) | def selected_metrics(self):
method __call__ (line 97) | def __call__(self, targets, forecasts, past_data, freq, loss_weights=N...
function process_tensor (line 133) | def process_tensor(targets):
FILE: probts/utils/masking.py
class TriangularCausalMask (line 4) | class TriangularCausalMask():
method __init__ (line 5) | def __init__(self, B, L, device="cpu"):
method mask (line 11) | def mask(self):
class ProbMask (line 15) | class ProbMask():
method __init__ (line 16) | def __init__(self, B, H, L, index, scores, device="cpu"):
method mask (line 25) | def mask(self):
FILE: probts/utils/metrics.py
function mse (line 16) | def mse(target: np.ndarray, forecast: np.ndarray) -> float:
function abs_error (line 25) | def abs_error(target: np.ndarray, forecast: np.ndarray) -> float:
function abs_target_sum (line 34) | def abs_target_sum(target) -> float:
function abs_target_mean (line 43) | def abs_target_mean(target) -> float:
function mase (line 52) | def mase(
function calculate_seasonal_error (line 70) | def calculate_seasonal_error(
function mape (line 103) | def mape(target: np.ndarray, forecast: np.ndarray) -> float:
function smape (line 114) | def smape(target: np.ndarray, forecast: np.ndarray) -> float:
function quantile_loss (line 126) | def quantile_loss(target: np.ndarray, forecast: np.ndarray, q: float) ->...
function scaled_quantile_loss (line 134) | def scaled_quantile_loss(target: np.ndarray, forecast: np.ndarray, q: fl...
function coverage (line 137) | def coverage(target: np.ndarray, forecast: np.ndarray) -> float:
FILE: probts/utils/position_emb.py
class Time_Encoder (line 6) | class Time_Encoder(nn.Module):
method __init__ (line 7) | def __init__(self, embed_time):
method forward (line 12) | def forward(self, tt):
function sin_cos_encoding (line 23) | def sin_cos_encoding(B, K, L, embed_dim):
function get_1d_sincos_pos_embed_from_grid (line 41) | def get_1d_sincos_pos_embed_from_grid(embed_dim, pos):
FILE: probts/utils/save_utils.py
function update_metrics (line 11) | def update_metrics(new_metrics: Dict, stage: str, key: str = '', target_...
function calculate_average (line 25) | def calculate_average(metrics_dict: Dict, hor=''):
function calculate_weighted_average (line 35) | def calculate_weighted_average(metrics_dict: Dict, batch_size: list, hor...
function save_point_error (line 41) | def save_point_error(target, predict, input_dict, hor_str):
function load_checkpoint (line 53) | def load_checkpoint(Model, checkpoint_path, scaler=None, learning_rate=N...
function get_hor_str (line 90) | def get_hor_str(prediction_length, dataloader_idx):
function save_exp_summary (line 100) | def save_exp_summary(pl_module, inference=False):
function save_csv (line 129) | def save_csv(save_dict, model, context_length):
FILE: probts/utils/utils.py
function repeat (line 17) | def repeat(tensor: torch.Tensor, n: int, dim: int = 0):
function extract (line 21) | def extract(a, t, x_shape):
function weighted_average (line 28) | def weighted_average(
function convert_to_list (line 61) | def convert_to_list(s):
function find_best_epoch (line 79) | def find_best_epoch(ckpt_folder):
function ensure_list (line 103) | def ensure_list(input_value, default_value=None):
function init_class_helper (line 114) | def init_class_helper(class_name):
FILE: run.py
class ProbTSCli (line 23) | class ProbTSCli(LightningCLI):
method add_arguments_to_parser (line 25) | def add_arguments_to_parser(self, parser):
method init_exp (line 47) | def init_exp(self):
method set_callbacks (line 137) | def set_callbacks(self, callbacks):
method set_fit_mode (line 149) | def set_fit_mode(self):
method set_test_mode (line 156) | def set_test_mode(self):
method run (line 178) | def run(self):
Condensed preview — 299 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,078K chars).
[
{
"path": ".gitignore",
"chars": 3469,
"preview": "# vscode IDE\n.vscode\n\n# Byte-compiled / optimized / DLL files\n__pycache__/\n*.py[cod]\n*$py.class\n\n# C extensions\n*.so\n\n# "
},
{
"path": ".gitmodules",
"chars": 473,
"preview": "[submodule \"submodules/uni2ts\"]\n\tpath = submodules/uni2ts\n\turl = https://github.com/SalesforceAIResearch/uni2ts.git\n[sub"
},
{
"path": "CODE_OF_CONDUCT.md",
"chars": 444,
"preview": "# Microsoft Open Source Code of Conduct\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://op"
},
{
"path": "LICENSE",
"chars": 1141,
"preview": " MIT License\n\n Copyright (c) Microsoft Corporation.\n\n Permission is hereby granted, free of charge, to any pers"
},
{
"path": "README.md",
"chars": 18361,
"preview": "<div align=center> <img src=\"docs/figs/probts_logo.png\" width = 50%/> </div>\n\n# ProbTS: Benchmarking Point and Distribut"
},
{
"path": "SECURITY.md",
"chars": 2656,
"preview": "<!-- BEGIN MICROSOFT SECURITY.MD V0.0.9 BLOCK -->\n\n## Security\n\nMicrosoft takes the security of our software products an"
},
{
"path": "checkpoints/README.md",
"chars": 2128,
"preview": "# Checkpoints for Foundation Models\n\nFor full reproducibility, we provide the checkpoints for some foundation models as "
},
{
"path": "config/default/autoformer.yaml",
"chars": 1040,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/csdi.yaml",
"chars": 1052,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/dlinear.yaml",
"chars": 742,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/gru.yaml",
"chars": 794,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/gru_maf.yaml",
"chars": 974,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/default/gru_nvp.yaml",
"chars": 973,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 7\n u"
},
{
"path": "config/default/itransformer.yaml",
"chars": 939,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/linear.yaml",
"chars": 677,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 30\n "
},
{
"path": "config/default/mean.yaml",
"chars": 648,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/default/moderntcn.yaml",
"chars": 932,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/naive.yaml",
"chars": 615,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/default/nhits.yaml",
"chars": 1039,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/nlinear.yaml",
"chars": 725,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/patchtst.yaml",
"chars": 1108,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/timegrad.yaml",
"chars": 942,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/timesnet.yaml",
"chars": 815,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/trans_maf.yaml",
"chars": 1102,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/transformer.yaml",
"chars": 910,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/tsdiff.yaml",
"chars": 1101,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/default/tsmixer.yaml",
"chars": 867,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/ltsf/electricity_ltsf/csdi.yaml",
"chars": 1055,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/electricity_ltsf/dlinear.yaml",
"chars": 842,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/electricity_ltsf/gru_nvp.yaml",
"chars": 1065,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/electricity_ltsf/patchtst.yaml",
"chars": 913,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/electricity_ltsf/timegrad.yaml",
"chars": 1050,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth1/csdi.yaml",
"chars": 1100,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth1/dlinear.yaml",
"chars": 824,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth1/gru_nvp.yaml",
"chars": 1053,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth1/patchtst.yaml",
"chars": 882,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth1/timegrad.yaml",
"chars": 1039,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth2/csdi.yaml",
"chars": 1100,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth2/dlinear.yaml",
"chars": 824,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth2/gru_nvp.yaml",
"chars": 1120,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth2/patchtst.yaml",
"chars": 899,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/etth2/timegrad.yaml",
"chars": 1038,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm1/csdi.yaml",
"chars": 1100,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm1/dlinear.yaml",
"chars": 825,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm1/gru_nvp.yaml",
"chars": 1053,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm1/patchtst.yaml",
"chars": 884,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm1/timegrad.yaml",
"chars": 1039,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm2/csdi.yaml",
"chars": 1100,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm2/dlinear.yaml",
"chars": 825,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm2/gru_nvp.yaml",
"chars": 1054,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm2/patchtst.yaml",
"chars": 884,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/ettm2/timegrad.yaml",
"chars": 1038,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/exchange_ltsf/csdi.yaml",
"chars": 1108,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/exchange_ltsf/dlinear.yaml",
"chars": 833,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/exchange_ltsf/gru_nvp.yaml",
"chars": 1063,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/exchange_ltsf/patchtst.yaml",
"chars": 890,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/exchange_ltsf/timegrad.yaml",
"chars": 1046,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/illness_ltsf/csdi.yaml",
"chars": 1107,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/illness_ltsf/dlinear.yaml",
"chars": 831,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/illness_ltsf/gru_nvp.yaml",
"chars": 1061,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/illness_ltsf/patchtst.yaml",
"chars": 956,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/illness_ltsf/timegrad.yaml",
"chars": 1045,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/traffic_ltsf/csdi.yaml",
"chars": 1104,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/traffic_ltsf/dlinear.yaml",
"chars": 829,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/traffic_ltsf/gru_nvp.yaml",
"chars": 1061,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/traffic_ltsf/patchtst.yaml",
"chars": 890,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/traffic_ltsf/timegrad.yaml",
"chars": 1046,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/weather_ltsf/csdi.yaml",
"chars": 1107,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/weather_ltsf/dlinear.yaml",
"chars": 833,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/weather_ltsf/gru_nvp.yaml",
"chars": 1061,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/weather_ltsf/patchtst.yaml",
"chars": 892,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/ltsf/weather_ltsf/timegrad.yaml",
"chars": 1045,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_daily/csdi.yaml",
"chars": 1078,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_daily/dlinear.yaml",
"chars": 803,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_daily/gru_nvp.yaml",
"chars": 1035,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_daily/patchtst.yaml",
"chars": 877,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_daily/timegrad.yaml",
"chars": 1048,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_weekly/csdi.yaml",
"chars": 1079,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_weekly/dlinear.yaml",
"chars": 804,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_weekly/gru_nvp.yaml",
"chars": 1036,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_weekly/patchtst.yaml",
"chars": 879,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m4_weekly/timegrad.yaml",
"chars": 1049,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m5/csdi.yaml",
"chars": 1072,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m5/dlinear.yaml",
"chars": 828,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m5/gru_nvp.yaml",
"chars": 1058,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m5/patchtst.yaml",
"chars": 901,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/m5/timegrad.yaml",
"chars": 1044,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 30\n "
},
{
"path": "config/m4/tourism_monthly/csdi.yaml",
"chars": 1085,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/tourism_monthly/dlinear.yaml",
"chars": 810,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/tourism_monthly/gru_nvp.yaml",
"chars": 1042,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/tourism_monthly/patchtst.yaml",
"chars": 885,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/m4/tourism_monthly/timegrad.yaml",
"chars": 1055,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/multi_hor/autoformer.yaml",
"chars": 1219,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/multi_hor/elastst.yaml",
"chars": 1276,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/pipeline_config.yaml",
"chars": 1161,
"preview": "# lightning.pytorch==2.3.0dev\nseed_everything: true\ntrainer:\n accelerator: auto\n strategy: auto\n devices: auto\n num_"
},
{
"path": "config/stsf/electricity/csdi.yaml",
"chars": 1058,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/dlinear.yaml",
"chars": 750,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/gru.yaml",
"chars": 800,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/gru_maf.yaml",
"chars": 982,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/gru_nvp.yaml",
"chars": 982,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/patchtst.yaml",
"chars": 839,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/timegrad.yaml",
"chars": 968,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/timesnet.yaml",
"chars": 821,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/trans_maf.yaml",
"chars": 1109,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/electricity/transformer.yaml",
"chars": 917,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/csdi.yaml",
"chars": 1060,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/dlinear.yaml",
"chars": 753,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/gru.yaml",
"chars": 802,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/gru_maf.yaml",
"chars": 985,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/gru_nvp.yaml",
"chars": 984,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/patchtst.yaml",
"chars": 841,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/timegrad.yaml",
"chars": 970,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/timesnet.yaml",
"chars": 824,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/trans_maf.yaml",
"chars": 1111,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/exchange/transformer.yaml",
"chars": 918,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/csdi.yaml",
"chars": 1052,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/dlinear.yaml",
"chars": 742,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/gru.yaml",
"chars": 794,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/gru_maf.yaml",
"chars": 976,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/gru_nvp.yaml",
"chars": 975,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/patchtst.yaml",
"chars": 833,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/timegrad.yaml",
"chars": 962,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/timesnet.yaml",
"chars": 815,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/trans_maf.yaml",
"chars": 1102,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/solar/transformer.yaml",
"chars": 910,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/csdi.yaml",
"chars": 1051,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/dlinear.yaml",
"chars": 748,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/gru.yaml",
"chars": 797,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/gru_maf.yaml",
"chars": 978,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/gru_nvp.yaml",
"chars": 978,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/patchtst.yaml",
"chars": 855,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/timegrad.yaml",
"chars": 964,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/timesnet.yaml",
"chars": 817,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/trans_maf.yaml",
"chars": 1105,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/traffic/transformer.yaml",
"chars": 912,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/csdi.yaml",
"chars": 1052,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/dlinear.yaml",
"chars": 750,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/gru.yaml",
"chars": 797,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/gru_maf.yaml",
"chars": 978,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/gru_nvp.yaml",
"chars": 978,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/patchtst.yaml",
"chars": 856,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/timegrad.yaml",
"chars": 965,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/timesnet.yaml",
"chars": 818,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/trans_maf.yaml",
"chars": 1105,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/stsf/wiki/transformer.yaml",
"chars": 913,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 1\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 50\n "
},
{
"path": "config/tsfm/chronos.yaml",
"chars": 673,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/forecastpfn.yaml",
"chars": 701,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/lag_llama.yaml",
"chars": 718,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/moirai/context_5000/electricity_ltsf.yaml",
"chars": 788,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/electricity_nips.yaml",
"chars": 812,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/etth1.yaml",
"chars": 747,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/etth2.yaml",
"chars": 747,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/ettm1.yaml",
"chars": 747,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/ettm2.yaml",
"chars": 748,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/exchange_rate_nips.yaml",
"chars": 790,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/solar_nips.yaml",
"chars": 783,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_5000/weather_ltsf.yaml",
"chars": 785,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/electricity_ltsf.yaml",
"chars": 787,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/electricity_nips.yaml",
"chars": 784,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/etth1.yaml",
"chars": 778,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/etth2.yaml",
"chars": 778,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/ettm1.yaml",
"chars": 778,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/ettm2.yaml",
"chars": 778,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/exchange_rate_nips.yaml",
"chars": 788,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/solar_nips.yaml",
"chars": 781,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai/context_96/weather_ltsf.yaml",
"chars": 784,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 1\n u"
},
{
"path": "config/tsfm/moirai.yaml",
"chars": 728,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/time_moe.yaml",
"chars": 712,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/timer.yaml",
"chars": 679,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/timesfm.yaml",
"chars": 685,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/tinytimemixer.yaml",
"chars": 590,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "config/tsfm/units.yaml",
"chars": 692,
"preview": "# lightning==2.3.0.dev0\nseed_everything: 0\ntrainer:\n accelerator: gpu\n devices: 1\n strategy: auto\n max_epochs: 40\n "
},
{
"path": "datasets/.gitignore",
"chars": 13,
"preview": "*\n!.gitignore"
},
{
"path": "docs/benchmark/README.md",
"chars": 1065,
"preview": "# Benchmarking :balance_scale:\n\nAccurate point and distributional forecasts across diverse horizons are crucial for time"
},
{
"path": "docs/benchmark/foundation_model/README.md",
"chars": 5583,
"preview": "# Time Series Foundation Models Benchmarking\n\n- [Time Series Foundation Models Benchmarking](#time-series-foundation-mod"
},
{
"path": "docs/benchmark/foundation_model/chronos.md",
"chars": 1423,
"preview": "# Running Inference with Chronos\n\n[Original Repository](https://github.com/amazon-science/chronos-forecasting) | [Paper]"
},
{
"path": "docs/benchmark/foundation_model/forecastpfn.md",
"chars": 1177,
"preview": "# Running Inference with ForecastPFN\n\n[Original Repository](https://github.com/abacusai/ForecastPFN) | [Paper](https://a"
},
{
"path": "docs/benchmark/foundation_model/lag-llama.md",
"chars": 1213,
"preview": "# Running Inference with Lag-Llama\n\n[Original Repository](https://github.com/time-series-foundation-models/lag-llama) | "
},
{
"path": "docs/benchmark/foundation_model/moirai.md",
"chars": 1309,
"preview": "# Running Inference with MOIRAI\n\n[Original Repository](https://github.com/SalesforceAIResearch/uni2ts) | [Paper](https:/"
},
{
"path": "docs/benchmark/foundation_model/timer.md",
"chars": 1434,
"preview": "# Running Inference with Timer\n\n[Original Repository](https://github.com/thuml/Large-Time-Series-Model) | [Paper](https:"
},
{
"path": "docs/benchmark/foundation_model/timesfm.md",
"chars": 1551,
"preview": "# Running Inference with TimesFM\n\n[Original Repository](https://github.com/google-research/timesfm) | [Paper](https://ar"
},
{
"path": "docs/benchmark/foundation_model/ttm.md",
"chars": 1153,
"preview": "# Running Inference with Tiny Time Mixers\n\n[Original Repository](https://github.com/ibm-granite/granite-tsfm/tree/main/t"
},
{
"path": "docs/benchmark/foundation_model/units.md",
"chars": 1143,
"preview": "# Running Inference with UniTS\n\n[Original Repository](https://github.com/mims-harvard/UniTS) | [Paper](https://arxiv.org"
},
{
"path": "docs/benchmark/supervised_model/README.md",
"chars": 4097,
"preview": "# Supervised Forecasting Models Benchmarking\n\n- [Supervised Forecasting Models Benchmarking](#supervised-forecasting-mod"
},
{
"path": "docs/documentation/Gift_eval.md",
"chars": 1229,
"preview": "\n## How to evaluate the models in ProbTS using the GIFT-EVAL benchmark\n\nLink to the GIFT-EVAL benchmark: [Github Repo](h"
},
{
"path": "docs/documentation/README.md",
"chars": 27914,
"preview": "# Documentation :open_book:\n\n- [Documentation :open\\_book:](#documentation-open_book)\n - [Setup](#setup)\n - [Configura"
},
{
"path": "exps/.gitignore",
"chars": 13,
"preview": "*\n!.gitignore"
},
{
"path": "notebook/data_characteristics.ipynb",
"chars": 19438,
"preview": "{\n \"cells\": [\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"metadata\": {},\n \"outputs\": [],\n \"source\": [\n "
},
{
"path": "probts/__init__.py",
"chars": 61,
"preview": "from .data import *\nfrom .model import *\nfrom .utils import *"
},
{
"path": "probts/callbacks/__init__.py",
"chars": 83,
"preview": "from .memory_callback import MemoryCallback\nfrom .time_callback import TimeCallback"
},
{
"path": "probts/callbacks/memory_callback.py",
"chars": 4598,
"preview": "import gc\nimport threading\nimport psutil\nimport torch\n\nimport lightning.pytorch as pl\nfrom lightning.pytorch.callbacks.c"
},
{
"path": "probts/callbacks/time_callback.py",
"chars": 2351,
"preview": "import time\nfrom typing import Any\n\nimport lightning.pytorch as pl\nfrom lightning.pytorch.utilities.types import STEP_OU"
},
{
"path": "probts/data/__init__.py",
"chars": 94,
"preview": "from .data_module import *\nfrom .data_manager import *\nfrom .data_utils.time_features import *"
},
{
"path": "probts/data/data_manager.py",
"chars": 22039,
"preview": "import torch\nfrom pathlib import Path\nfrom functools import cached_property\n\nfrom gluonts.dataset.repository import data"
},
{
"path": "probts/data/data_module.py",
"chars": 5308,
"preview": "import torch\nimport lightning.pytorch as pl\nfrom torch.utils.data import DataLoader, Dataset\nfrom lightning.pytorch.util"
},
{
"path": "probts/data/data_utils/data_scaler.py",
"chars": 7144,
"preview": "# ---------------------------------------------------------------------------------\n# Portions of this file are derived "
},
{
"path": "probts/data/data_utils/data_utils.py",
"chars": 14493,
"preview": "from copy import deepcopy\nimport math\nimport pandas as pd\nimport numpy as np\nfrom datetime import datetime\nfrom distutil"
},
{
"path": "probts/data/data_utils/get_datasets.py",
"chars": 8146,
"preview": "# ---------------------------------------------------------------------------------\n# Portions of this file are derived "
},
{
"path": "probts/data/data_utils/time_features.py",
"chars": 9064,
"preview": "# ---------------------------------------------------------------------------------\n# Portions of this file are derived "
},
{
"path": "probts/data/data_wrapper.py",
"chars": 2433,
"preview": "import torch\n\nclass ProbTSBatchData:\n input_names_ = [\n 'target_dimension_indicator',\n 'past_time_feat'"
}
]
// ... and 99 more files (download for full content)
About this extraction
This page contains the full source code of the microsoft/ProbTS GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 299 files (998.7 KB), approximately 265.6k tokens, and a symbol index with 1066 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.