/PyThor

Template for projects in PyTorch powered with PyTorch Lightning, Telegrad and MLflow. Get updates on mobile and streamline PyTorch code for research.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

PyThor

Template for projects in PyTorch powered with PyTorch Lightning + MLflow + Telegrad.

Note: Work in Progress

Features:

  • Get model training updates on your phone on Telegram with the help of Telegrad.

  • Log experiment hyperparameters, metrics and training losses with MLflow.

  • Utilise Pytorch-Lightning to streamline the code and write less boilerplate.

Templates included (planned):

Requirements:

Use requirements.txt to install libraries. Note RDkit requires 'conda install' and is not necessary if you are not going to use the graph neural network example given.

Usage:

  • First clone the repo: git clone https://github.com/nsidn98/PyThor.git
  • Change directory to the repo: cd PyThor
  • Then install all relevant libraries mentioned above.
  • Setup telegram messaging by following the steps here
  • Then run python -W ignore pythor/Networks/Linear/MLP/mlp.py which will run a linear MLP on the MNIST dataset.
  • Check other examples in Networks which include Linear, Convolutional and Graph.
  • For RL algorithms check the RL folder. Note: The algorithms have been segregated according to their types.
  • The MLflow board data will be stored in mlruns. To view the mlflow board run mlflow ui which will open it on local host. This will store all the parameters used in the experiment, the metrics obtained during the experiment. You can add tags to each of the experiment.