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
[ML] Ensure we have sufficient resolution when we reinitialise component models #2167
Conversation
…rter windows are available
In the case of 30 minute periodicity being detected first, then 24 hour periodicity being detected later, is the effect of this PR that we'll opt not to model the 24 hour periodicity at all if doing so would ruin the modelling of the 30 minute periodic pattern? |
No. We simply are more careful about which windows will trigger us to reinitialise components. In particular, we will only consider reinitialising a component if we have sufficient resolution. There is a tradeoff here since the current models will contain bias due to averaging over the unmodelled components. Either way it'll rectify, but I think it probably makes sense to keep the current model if we can't do a good job of reinitialising it on the principle of least surprise. Here are the results in a prototypical example, from the unit test I added, with blue actual and red model predictions (note the second one is more zoomed but they both cover the detection of the daily periodicity, it just isn't as clear in the second case because there is no reinitialisation issue). before after |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
…ent models (elastic#2167) When we retest if a modelled seasonal component is still appropriate or may contain bias we now require higher resolution if shorter time windows are available. This is important because if the time series has a mixture of fast and slow seasonality we will detect the fast seasonality first and then potentially reinitialise it when we detect the slow seasonality. We should only do this if the window provides us with sufficient resolution to initialise it properly. Closes elastic#2166.
…ent models (elastic#2167) When we retest if a modelled seasonal component is still appropriate or may contain bias we now require higher resolution if shorter time windows are available. This is important because if the time series has a mixture of fast and slow seasonality we will detect the fast seasonality first and then potentially reinitialise it when we detect the slow seasonality. We should only do this if the window provides us with sufficient resolution to initialise it properly. Closes elastic#2166.
When we retest if a modelled seasonal component is still appropriate or may contain bias we now require higher resolution if shorter time windows are available. This is important because if the time series has a mixture of fast and slow seasonality we will detect the fast seasonality first and then potentially reinitialise it when we detect the slow seasonality. We should only do this if the window provides us with sufficient resolution to initialise it properly.
Closes #2166.