-
Notifications
You must be signed in to change notification settings - Fork 486
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
[devops] Upgrade to lightning 2.0 #1514
Conversation
Model Benchmark
\n
Model training plots\n ## Model Training ### PeytonManning ![](https://asset.cml.dev/1d71ab731130716a13ca5609c24d52e4e540dbcd?cml=svg%2Bxml&cache-bypass=3c0b1bd7-0cd7-448a-aa0b-27a9d908b270) ### YosemiteTemps ![](https://asset.cml.dev/25c0d646f1807f399110bf3dd41a6af7b5e4d0bb?cml=svg%2Bxml&cache-bypass=07bc006a-81a4-40cd-a3ea-4902b537b8b9) ### AirPassengers ![](https://asset.cml.dev/85d58e6f0d87f903ddc54d6984086a6e1661dec8?cml=svg%2Bxml&cache-bypass=4a361a46-2823-4af3-8f49-d1143b7be716) ### EnergyPriceDaily ![](https://asset.cml.dev/88a4f18f9122a4b1cfb9ad479dcdb8c1c0883759?cml=svg%2Bxml&cache-bypass=499b3718-3366-4903-a754-8d5a27f5859a) \n |
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.
It seems like the tests are yielding differing metrics - Do you have any idea what might be the cause?
pyproject.toml
Outdated
@@ -16,28 +16,27 @@ classifiers = [ | |||
Homepage = "https://github.com/ourownstory/neural_prophet" | |||
|
|||
[tool.poetry.dependencies] | |||
python = "^3.9" | |||
typing-extensions = "^4.5.0" | |||
python = ">=3.9,<3.12" |
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.
Is there a reason that we are no longer including python 3.12?
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.
I haven't changed that requirement. I'll add it shortly.
@ourownstory Not sure where the differences in the metrics are coming from, but I had to cast some variables to float32 to fix some tests which might caused these differences. |
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.
Looks like two changes to the if-check have unintentional consequences. @MaiBe-ctrl
neuralprophet/configure.py
Outdated
@@ -311,12 +311,12 @@ def __post_init__(self): | |||
self.trend_local_reg = False | |||
|
|||
# If trend_local_reg = True | |||
if self.trend_local_reg == True: | |||
if self.trend_local_reg: |
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.
This change looks wrong - see comment in other PR
neuralprophet/configure.py
Outdated
@@ -398,12 +398,12 @@ def __post_init__(self): | |||
self.seasonality_local_reg = False | |||
|
|||
# If seasonality_local_reg = True | |||
if self.seasonality_local_reg == True: | |||
if self.seasonality_local_reg: |
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.
This also overwrites existing config, which should not happen
neuralprophet/configure.py
Outdated
log.error("trend_local_reg = True. Default trend_local_reg value set to 1") | ||
self.trend_local_reg = 1 | ||
|
||
# If Trend modelling is global. | ||
if self.trend_global_local == "global" and self.trend_local_reg: | ||
if self.trend_global_local == "global" and self.trend_local_reg is True: |
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.
Here, your change was actually correct before:
if self.trend_global_local == "global" and self.trend_local_reg:
neuralprophet/configure.py
Outdated
log.error("seasonality_local_reg = True. Default seasonality_local_reg value set to 1") | ||
self.seasonality_local_reg = 1 | ||
|
||
# If Season modelling is global. | ||
if self.global_local == "global" and self.seasonality_local_reg: | ||
if self.global_local == "global" and self.seasonality_local_reg is True: |
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.
Here, your change was actually correct before:
if self.global_local == "global" and self.seasonality_local_reg:
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1514 +/- ##
==========================================
- Coverage 88.16% 87.46% -0.70%
==========================================
Files 41 41
Lines 5374 5378 +4
==========================================
- Hits 4738 4704 -34
- Misses 636 674 +38 ☔ View full report in Codecov by Sentry. |
I think the difference comes from the potentially changed implementation of the learning rate finder, that now is part of lightning Tuner. |
Upgrade guide
https://lightning.ai/docs/pytorch/latest/upgrade/from_1_9.html