Refactor training loop from script to class #8
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.
Description
This PR refactors the training loop from a script to a class in order to improve code modularity and maintainability. The training loop, previously located in
src/main.py
, has been moved to a new class calledTrainer
. TheTrainer
class takes the model, optimizer, loss function, and training data loader as parameters and encapsulates the training process.Summary of Changes
Trainer
insrc/main.py
to encapsulate the training loop.train
method of theTrainer
class.src/main.py
to instantiate theTrainer
class and call thetrain
method.Trainer
class insrc/api.py
to ensure compatibility with the existing code.These changes improve code organization and make it easier to maintain and test the training process. The functionality of the existing code in
src/api.py
is preserved, as the trained model is still saved to the same file and loaded by the API.Fixes #6.
🎉 Latest improvements to Sweep:
💡 To get Sweep to edit this pull request, you can: