[QUESTION] Specifying forecast horizon for cross validation
- Dominant language
- Python
- Stars
- 20.4k
- Forks
- 4.6k
- Avg merge
- 19h 52m
- Merged PRs (30d)
- 1
Description
I have some high frequency data where I have a data point coming every 5 minutes.
Now, I am interested in obtaining performance metrics where I need to see how it performs when I predict one day, one week and one month in advance.
I am struggling to figure out how I should setup the cross validation. So, if I do something like:
```
df_cv = perform_cross_validation(initial='730 days',
period='35 days',
horizon='1 days')
```
So, if I understand correctly, I can get the performance metric for the day in advance, using something like:
`model.compute_performance_metrics(df_cv, rolling_window=1)`
as this would use all the data to compute the metric for that day.
To see how this performs one week in advance, do I need to something like:
```
df_cv = perform_cross_validation(initial='730 days',
period='35 days',
horizon='8 days')
```
and then filter out the data points for the last day and compute the performance metric on that filtered data frame and do something similar for one month in advance?
I wonder if there is a better way to do this as I am running CV 3 times. Another thing I thought about was something like:
```
df_cv = model.perform_cross_validation(initial='730 days',
period='35 days',
horizon='31 days')
```
and then filter out the relevant days and compute the metrics on that. However, I wonder if I am using this correctly and if there is a better way to do this from within Prophet?
Contributor guide
Assessment
This issue has not been assessed yet.