-
Notifications
You must be signed in to change notification settings - Fork 992
Enhance fine-tuning capabilities for foundation models #3003
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
Merged
Merged
Changes from all commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
f3df7f0
feat: experiment finetuning compatibility with peft
Kurokabe 76158c9
fix: properly set the model device and dtype
Kurokabe 94a71b4
fix: remove peft as a darts dependency
Kurokabe 9057acb
wip: add transform callback for foundation model fine-tuning
Kurokabe 34b08c1
fix: make lora finetuning work
Kurokabe eeb93b4
fix: improve callbacks to allow only saving the adapter
Kurokabe 7fb10d6
Merge remote-tracking branch 'origin/master' into finetuning
Kurokabe 76a8efa
feat: modify foundation model to integrate full and partial fine-tuning
Kurokabe 8f7ef24
test: add unit tests for fine-tuning
Kurokabe 260de97
documentation: update example notebook on finetuning
Kurokabe a20c943
documentation: update changelog
Kurokabe a568a3d
fix: update on_save_checkpoint of lora callback to avoid potential OO…
Kurokabe 7c813c8
Merge branch 'master' into finetuning
dennisbader 6fb2138
remove FoundationPLModule and enable finetuning for TorchForecastingM…
Kurokabe 45ff4ae
Merge branch 'master' into finetuning
dennisbader 01706ee
feat: use fnmatch instead of startswith for finetuning arguments
Kurokabe 66fa1b2
doc: update example notebook to demonstrate finetuning for pytorch mo…
Kurokabe 7b2c657
rename _setup_fine_tuning to _setup_finetuning and update notebook to…
Kurokabe b5a6c19
update unit test for foundation model with the new fine tuning logic
Kurokabe 13fc4ab
Modify Chronos to use quantiles by default when fine-tuning
Kurokabe f38cfc8
Merge branch 'master' into finetuning
dennisbader 9021e20
rename example notebook and add it to tests and docs
dennisbader 9736f21
some refactoring
dennisbader 0f77ac6
training specific quantile loss for foundation models and tests
dennisbader 9987a02
update docs
dennisbader f93a217
update changelog entry
dennisbader 70169ef
update notebook
dennisbader 2891d0f
update notebook p2
dennisbader eb433c7
update notebook
dennisbader b68cebd
better test coverage
dennisbader File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
For fine-tuning the foundation models, we should make sure that during training we use a
QuantileRegression(quantiles)with allquantilesthat the original weights were trained on.The user should still be able specify some different quantiles when creating the model with
likelihood=QuantileRegression(other_quantiles). These quantile will only be used for prediction.