Skip to content

Add cap to seasonal period to include decomposition - #4147

Merged
chukarsten merged 10 commits into
mainfrom
4146_cap_period
Apr 18, 2023
Merged

Add cap to seasonal period to include decomposition#4147
chukarsten merged 10 commits into
mainfrom
4146_cap_period

Conversation

@eccabay

@eccabay eccabay commented Apr 13, 2023

Copy link
Copy Markdown
Contributor

Closes #4146

Justification for this change can be found in the issue directly. I ran performance tests, there were no changes as all our test datasets have a period of <1000.

@eccabay eccabay changed the title Add cap to _get_decomposer Add cap to seasonal period to include decomposition Apr 13, 2023
@codecov

codecov Bot commented Apr 13, 2023

Copy link
Copy Markdown

Codecov Report

Merging #4147 (4d54b24) into main (83cfac8) will increase coverage by 0.1%.
The diff coverage is 100.0%.

@@           Coverage Diff           @@
##            main   #4147     +/-   ##
=======================================
+ Coverage   99.7%   99.7%   +0.1%     
=======================================
  Files        349     349             
  Lines      37780   37781      +1     
=======================================
+ Hits       37663   37664      +1     
  Misses       117     117             
Impacted Files Coverage Δ
evalml/tests/pipeline_tests/test_pipeline_utils.py 99.6% <ø> (ø)
evalml/pipelines/utils.py 99.6% <100.0%> (+0.1%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@eccabay
eccabay marked this pull request as ready for review April 13, 2023 17:17

@jeremyliweishih jeremyliweishih left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - lmk if you agree on the test example. I think it would be good to have coverage for this.

Comment thread evalml/pipelines/utils.py Outdated
rel_max_order=order,
)
if seasonal_period is not None:
if seasonal_period is not None and seasonal_period <= 1000:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in the make_pipeline tests can you make sure that the decomposer is not added if the seasonal period is > 1000? I think we can just add a case here by mocking seasonal_period.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking back, I realized I completely forgot about the test_make_pipeline_controls_decomposer_time_series - I added a case in there!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ugh, my only issue with this is the hardcoded 1000 period. Particularly the ramifications for if a user does show up with a super high frequency dataset like the one that triggered this.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very fair. I'll drop it over to be a constant.

@chukarsten
chukarsten enabled auto-merge (squash) April 18, 2023 15:43
@chukarsten
chukarsten merged commit afa1938 into main Apr 18, 2023
@chukarsten
chukarsten deleted the 4146_cap_period branch April 18, 2023 16:11
@chukarsten chukarsten mentioned this pull request Apr 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cap seasonal period for inclusion of STL in search

4 participants