Skip to content
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

Refactor training loop from script to class #105

Closed
wants to merge 4 commits into from

Conversation

sweep-nightly[bot]
Copy link

@sweep-nightly sweep-nightly bot commented Oct 24, 2023

Description

This PR refactors the training loop from a script to a class for better organization and reusability. The training loop, which was previously located in src/main.py, has been encapsulated within a new class named MNISTTrainer. The class is responsible for loading and preprocessing the MNIST dataset, defining the PyTorch model, and training the model. It also provides a method to save the trained model to a file.

Summary of Changes

  • Created a new class named MNISTTrainer in src/main.py to encapsulate the training loop.
  • Moved the code for loading and preprocessing the MNIST data into a method named load_data in MNISTTrainer.
  • Moved the code for defining the PyTorch model into a method named define_model in MNISTTrainer.
  • Implemented a new method named train_model in MNISTTrainer to contain the training loop.
  • Created a new method named save_model in MNISTTrainer to save the trained model to a file.
  • Updated the import statement in src/api.py to import the MNISTTrainer class instead of the Net class.
  • Updated the code in src/api.py to use the MNISTTrainer class for loading the data, defining the model, training the model, and saving the model to a file.

Please review and merge this PR. Thank you!

Fixes #6.


🎉 Latest improvements to Sweep:

  • Sweep can now passively improve your repository! Check out Rules to learn more.

💡 To get Sweep to edit this pull request, you can:

  • Comment below, and Sweep can edit the entire PR
  • Comment on a file, Sweep will only modify the commented file
  • Edit the original issue to get Sweep to recreate the PR from scratch

@sweep-nightly
Copy link
Author

sweep-nightly bot commented Oct 24, 2023

Rollback Files For Sweep

  • Rollback changes to src/api.py
  • Rollback changes to src/main.py

@sweep-nightly
Copy link
Author

sweep-nightly bot commented Oct 24, 2023

Apply Sweep Rules to your PR?

  • Apply: All docstrings and comments should be up to date.
  • Apply: Code should be properly formatted and indented.
  • Apply: Variable and function names should be descriptive and follow a consistent naming convention.
  • Apply: Imports should be organized and grouped together.
  • Apply: There should be no unused imports or variables.
  • Apply: Code should be properly commented and include docstrings for functions and classes.

@sweep-nightly sweep-nightly bot added the sweep label Oct 24, 2023
@sweep-nightly sweep-nightly bot closed this Oct 24, 2023
@sweep-nightly sweep-nightly bot deleted the sweep/refactor-training-loop_23 branch October 24, 2023 19:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Sweep: refactor the training loop from a script to a class in main.py
0 participants