HYPER DASH: HOW TO MANAGE THE PROGRESS OF YOUR ALGORITHM IN REAL-TIME?
Most of our readers who work with Machine Learning or Deep Learning models daily understand the struggle of peeking at the terminal to check for the completion status of the model training. Models training for hundreds of epochs can take several hours to complete. When you train a deep learning model on Google Colab, you’ll want to know your training progress to proceed further.
The saying, “A watched pot never boils faster,” seems to be relevant in the case of Machine learning or Deep Learning Model Training. Hyper Dash could be a helpful tool for all those situations.
Hyper Dash can monitor model training remotely on i0S, Android, or web URL. You can check the progress, stay informed about significant training changes, and get notified once your training is complete.
You can simultaneously monitor all your models running on different GPUs or TPUs and arrive at the best result. It maintains a log for results and hyper-parameters used, notifying you of the best one completed.
The Hyper Dash Convenience:
· It is fast and user friendly
· Tracks hyper-parameters of the experiments and different functions
· Stores Graph performance metrics in real-time
· It can be viewed remotely on the Web, iOS, and Android without self-hosting (e.g., Tensorboard).
· It saves the print output of the user’s experiment (standard out / error) as a local log file.
· It notifies the user when a long-running experiment is completed.
Implementing Hyper Dash:
· Installations on terminal/jupyter notebook
o It’s an easy to install PyPI package in the python module.
o Next, you have to sign up for the hyper dash account
You can sign-up via mail or GitHub account. And when you log in, you will see the message above on your terminal/jupyter notebook.
· Installation on phone
o Download the mobile application on your phone using Google Play/App store.
Once you have signed in, you can access experiments and their results on your phone.
Implementing real-time tracking for modeling experiments.
First, we import the required libraries. Then we import the dataset to be read and split them for training and testing. After this, we add the target columns as y_train and y_test and drop the target variables from them.
Now, we import the hyper dash library and its required modules. And after that, we define each experiment with an experiment name shown on your phone to identify your experiment uniquely.
We fit the model and test it on the test data set as hygiene. We can also view the confusion matrix of the entire model on our phone once the training is completed. We must add a method called exp.metric() to define our parameters like False Positives, False Negatives, True Positives, and True Negatives of our experiment.
· Steps to use Hyperdash application are as follows-
· Name: It declares the experiment object in each run with the Experiment(name)
· Parameters: It records the value of any hyper-parameter with exp.param(‘name’, value) of the model
· Metrics: It records the value of any metric we wish to see with exp.metric(‘name’, score)
· End: It marks the end of the experiment with exp.end()
An added decorator experiment:
The above experiment will never close without an exp.end() command as it marks the end of the experiment. To avoid this confusion, we can always wrap our entire experiment command in a decorator as follows-
So once you start the modeling, you can track the experiment in real-time on your phone.
Take for instance the following below:
These are experiments from different GPUs. You can select any model to observe the total time taken to run the model. Additionally, you get notified as soon as you complete the model training.
We can see different parameters and logs for every experiment. There is also a chart of confusion matrices with several parameters.
Hyper Dash is a user-friendly application to track your model training. You can use the app with Tensorflow, Pytorch, etc. with compatibility across platforms and notification features for your phone.
HTTP is changing under our feet. HTTP/1.1, our old friend, is being supplemented by the brand new HTTP/2 standard…
The above Blog is written by Anamika Jha, Data Scientist at Affine.