Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can statsforecast detect season_length automatically? #817

Open
wwulfric opened this issue Apr 15, 2024 · 2 comments
Open

Can statsforecast detect season_length automatically? #817

wwulfric opened this issue Apr 15, 2024 · 2 comments

Comments

@wwulfric
Copy link

Description

It seems all models need season_length params. But it's very common that users have no idea about it.

Use case

No response

@AzulGarza
Copy link
Member

@wwulfric, thanks for opening this issue.

@ngupta23 i'm very excited about what we discussed. i thought that we could add different ways to calculate season_length, for example

AutoARIMA(season_length=SeasonalityACF())

and also, for example, based on the frequency

AutoARIMA(season_length=SeasonalityFreq(freq="D"))

and that would allow computing different season lengths based on different scenarios, as well as for hyperparameter tunning xD. currently it is very limited because it only accepts integers hahaha

@ngupta23
Copy link

ngupta23 commented May 6, 2024

@AzulGarza - Yes, we could add various methods that inherit from a SeasonalDetectionBase class.

For reference, in pycaret, I added a lot of setting combinations. Details can be found here.

Some practical considerations for the ACF based approach:

  1. ACF-based methods can sometimes lead to a large season_length value which will make AutoARIMA slow (even the statsforecast version). There should be a way to limit the max season_length to consider when using the ACF based detection.
  2. Order of frequency detection can sometimes be important. In some use cases (e.g. supply chain), if the detected season lengths are 2, 3, 4, 12, users may want to remove the harmonics and consider a season_length of 12. In other cases, they may want to use the high-frequency variant instead (2). These options and flexibility should be provided to the user.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants