vijaye12 commited on
Commit
527463e
1 Parent(s): d192224

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +23 -44
README.md CHANGED
@@ -55,56 +55,25 @@ getting started [notebook](https://github.com/IBM/tsfm/blob/main/notebooks/hfdem
55
  ## Model Releases (along with the branch name where the models are stored):
56
 
57
 
58
- - **512-96-r2**: Given the last 512 time-points (i.e. context length), this model can forecast up to next 96 time-points (i.e. forecast length)
59
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
60
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: main)
61
- - **1024-96-r2**: Given the last 1024 time-points (i.e. context length), this model can forecast up to next 96 time-points (i.e. forecast length)
62
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
63
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1024-96-r2)
64
-
65
- - **1536-96-r2**: Given the last 1536 time-points (i.e. context length), this model can forecast up to next 96 time-points (i.e. forecast length)
66
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
67
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1536-96-r2)
68
-
69
- - **512-192-r2**: Given the last 512 time-points (i.e. context length), this model can forecast up to next 192 time-points (i.e. forecast length)
70
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
71
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 512-192-r2)
72
-
73
- - **1024-192-r2**: Given the last 1024 time-points (i.e. context length), this model can forecast up to next 192 time-points (i.e. forecast length)
74
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
75
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1024-192-r2)
76
 
77
- - **1536-192-r2**: Given the last 1536 time-points (i.e. context length), this model can forecast up to next 192 time-points (i.e. forecast length)
78
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
79
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1536-192-r2)
80
 
 
 
81
 
82
- - **512-336-r2**: Given the last 512 time-points (i.e. context length), this model can forecast up to next 336 time-points (i.e. forecast length)
83
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
84
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 512-336-r2)
85
-
86
- - **1024-336-r2**: Given the last 1024 time-points (i.e. context length), this model can forecast up to next 336 time-points (i.e. forecast length)
87
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
88
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1024-336-r2)
89
 
90
- - **1536-336-r2**: Given the last 1536 time-points (i.e. context length), this model can forecast up to next 336 time-points (i.e. forecast length)
91
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
92
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1536-336-r2)
93
 
 
 
94
 
95
-
96
- - **512-720-r2**: Given the last 512 time-points (i.e. context length), this model can forecast up to next 720 time-points (i.e. forecast length)
97
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
98
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 512-720-r2)
99
-
100
- - **1024-720-r2**: Given the last 1024 time-points (i.e. context length), this model can forecast up to next 720 time-points (i.e. forecast length)
101
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
102
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1024-720-r2)
103
 
104
- - **1536-720-r2**: Given the last 1536 time-points (i.e. context length), this model can forecast up to next 720 time-points (i.e. forecast length)
105
- in future. This model is pre-trained with a larger pretraining dataset for improved accuracy. Recommended for hourly and minutely
106
- resolutions (Ex. 10 min, 15 min, 1 hour, etc). (branch name: 1536-720-r2)
107
-
108
 
109
  ## Model Capabilities with example scripts
110
 
@@ -118,11 +87,15 @@ The below model scripts can be used for any of the above TTM models. Please upda
118
  - **New Releases (extended features released on October 2024)**
119
  - Finetuning and Forecasting with Exogenous/Control Variables [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/tutorial/ttm_with_exog_tutorial.ipynb)
120
  - Finetuning and Forecasting with static categorical features [Example: To be added soon]
121
- - Rolling Forecasts - Extend forecast lengths beyond 96 via rolling capability [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/hfdemo/ttm_rolling_prediction_getting_started.ipynb)
122
  - Helper scripts for optimal Learning Rate suggestions for Finetuning [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/tutorial/ttm_with_exog_tutorial.ipynb)
123
 
124
  ## Benchmarks
125
 
 
 
 
 
126
  TTM outperforms popular benchmarks such as TimesFM, Moirai, Chronos, Lag-Llama, Moment, GPT4TS, TimeLLM, LLMTime in zero/fewshot forecasting while reducing computational requirements significantly.
127
  Moreover, TTMs are lightweight and can be executed even on CPU-only machines, enhancing usability and fostering wider
128
  adoption in resource-constrained environments. For more details, refer to our [paper](https://arxiv.org/pdf/2401.03955.pdf).
@@ -130,6 +103,12 @@ adoption in resource-constrained environments. For more details, refer to our [p
130
  - TTM-E referred in the paper maps to the 1024 context models.
131
  - TTM-A referred in the paper maps to the 1536 context models.
132
 
 
 
 
 
 
 
133
 
134
  ## Recommended Use
135
  1. Users have to externally standard scale their data independently for every channel before feeding it to the model (Refer to [TSP](https://github.com/IBM/tsfm/blob/main/tsfm_public/toolkit/time_series_preprocessor.py), our data processing utility for data scaling.)
 
55
  ## Model Releases (along with the branch name where the models are stored):
56
 
57
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
 
 
 
 
59
 
60
+ - **512-96-r2**: Given the last 512 time-points (i.e. context length), this model can forecast up to the next 96 time-points (i.e. forecast length)
61
+ in future. (branch name: main)
62
 
63
+ - **1024-96-r2**: Given the last 1024 time-points (i.e. context length), this model can forecast up to the next 96 time-points (i.e. forecast length)
64
+ in future. (branch name: 1024-96-r2) [[Benchmarks]]
 
 
 
 
 
65
 
66
+ - **1536-96-r2**: Given the last 1536 time-points (i.e. context length), this model can forecast up to the next 96 time-points (i.e. forecast length)
67
+ in future. (branch name: 1536-96-r2)
 
68
 
69
+ - Likewise, we have models released for forecast lengths up to 720 timepoints. The branch names for these are as follows: `512-192-r2`, `1024-192-r2`, `1536-192-r2`, `512-336-r2`,
70
+ `512-336-r2`, `1024-336-r2`, `1536-336-r2`, `512-720-r2`, `1024-720-r2`, `1536-720-r2`
71
 
72
+ - Please use the [[get_model]](https://github.com/ibm-granite/granite-tsfm/blob/main/tsfm_public/toolkit/get_model.py) utility to automatically select the required model based on your input context length and forecast length requirement.
73
+
74
+ - We currently allow 3 context lengths (512, 1024 and 1536) and 4 forecast lengths (96, 192, 336, 720). Users need to provide one of the 3 allowed context lengths as input.
75
+ but can provide any forecast lengths up to 720 in get_model() to get the required model.
 
 
 
 
76
 
 
 
 
 
77
 
78
  ## Model Capabilities with example scripts
79
 
 
87
  - **New Releases (extended features released on October 2024)**
88
  - Finetuning and Forecasting with Exogenous/Control Variables [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/tutorial/ttm_with_exog_tutorial.ipynb)
89
  - Finetuning and Forecasting with static categorical features [Example: To be added soon]
90
+ - Rolling Forecasts - Extend forecast lengths via rolling capability. Rolling beyond 2*forecast_length is not recommended. [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/hfdemo/ttm_rolling_prediction_getting_started.ipynb)
91
  - Helper scripts for optimal Learning Rate suggestions for Finetuning [[Example]](https://github.com/ibm-granite/granite-tsfm/blob/main/notebooks/tutorial/ttm_with_exog_tutorial.ipynb)
92
 
93
  ## Benchmarks
94
 
95
+ <p align="center" width="100%">
96
+ <img src="benchmarks.webp" width="600">
97
+ </p>
98
+
99
  TTM outperforms popular benchmarks such as TimesFM, Moirai, Chronos, Lag-Llama, Moment, GPT4TS, TimeLLM, LLMTime in zero/fewshot forecasting while reducing computational requirements significantly.
100
  Moreover, TTMs are lightweight and can be executed even on CPU-only machines, enhancing usability and fostering wider
101
  adoption in resource-constrained environments. For more details, refer to our [paper](https://arxiv.org/pdf/2401.03955.pdf).
 
103
  - TTM-E referred in the paper maps to the 1024 context models.
104
  - TTM-A referred in the paper maps to the 1536 context models.
105
 
106
+ Please note that the Granite TTM models are pre-trained exclusively on datasets
107
+ with clear commercial-use licenses that are approved by our legal team. As a result, the pre-training dataset used in this release differs slightly from the one used in the research
108
+ paper, which may lead to minor variations in model performance as compared to the published results. Please refer to our paper for more details.
109
+
110
+ **Benchmarking Scripts: [here](https://github.com/ibm-granite/granite-tsfm/tree/main/notebooks/hfdemo/tinytimemixer/full_benchmarking)**
111
+
112
 
113
  ## Recommended Use
114
  1. Users have to externally standard scale their data independently for every channel before feeding it to the model (Refer to [TSP](https://github.com/IBM/tsfm/blob/main/tsfm_public/toolkit/time_series_preprocessor.py), our data processing utility for data scaling.)