-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
[WIP] Hypertuner class #3160
[WIP] Hypertuner class #3160
Conversation
@SkafteNicki please wait a week... we need to finish refactors. We can decide if it's before or after 0.9 then and if it stays here or bolts |
@williamFalcon completly fine with me, whatever makes most sense for the project :] |
@SkafteNicki does it support user-defined callbacks to be used when calling |
Based on discussion the tuner class is being dropped for now, instead we will refactor tuner methods into a |
Anyway, GREAT work on this PR! ❤️ |
So with the new datamodule, is there no way to tune batch_size? I was really excited by the Hypertuner class in this thread, so am a little bummed this is closed for now. For my current workflow, I tried to pass in trainer.tune(lightningmodule, datamodule) with auto_scale_batch_size. It tries to scale the batch size, (incorrectly) succeeds with every attempt, until it finds the batch_size of 2^26 (after 25 trials). Which it tries to then fit and fails. I looked into why this was happening and realized that datamodule isn't actually looked at by the scale_batch_size function in training_tricks.py. |
@awaelchli Updated to master and works well. Great stuff, thanks!!! |
What does this PR do?
This is redo of PR #1998. The last PR was too big land because it was a major refactoring, so I will try to split into more manageable pieces.
This PR is basically how the core structure of the
HyperTuner
class should look. It does not implement any functionalities yet. After this, I plan on 3 follow up PRs, one for each of the features that theHyperTuner
class will include:suggested_num_workers()
method? #2196) (already have some code, just need to polish for the new api)Tagging for input: @Borda , @awaelchli , @justusschock
Question: We have informed user that from v0.9 no more API changes would happen (before v1.0). This is a somewhat big API change, so to keep that promise, I see two options:
Before submitting
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃