I’ve been using Google Colab for a while now, if you haven’t checked it out I suggest doing so. It is a great way to run python notebooks in the cloud, it supports google docs style interactive sharing, and Google even gives you free shared time on a Nvidia K80 GPU for training (at least as of May 2018). I use it whenever I need to train models and don’t want to throw money at the problem Recently I used it for my Sonic Collision Mapping project.
Although colab is great, one of the major downsides is that since you don’t have direct server access, you can’t easily use Tensorboard to monitor & plot training performance. This is where Losswise comes in.
Losswise is an easy to use external service that allows you to track model performance in real time. By installing and setting up the losswise package, you can easily track your model’s training perfomance on the with the losswise dashboard.
Using losswise is pretty straightforward, the only gotcha is that if you are sharing a model you probably don’t want your private Losswise API key saved in the notebook. Instead of hardcoding your Losswise token, it is better to use the python getpass module to accept it as a secret password field.
import getpass
import losswise
losswise.set_api_key(getpass.getpass(‘Enter your losswise API Token '))
After that it’s easy to integrate Losswise into your workflow. For my Sonic Collision Map project I used Keras, so integrating with Losswise was as simple as using their Keras callback module:
# In imports section
from losswise.libs import LosswiseKerasCallback
# In training section
history = model.fit_generator(
# other arguments
callbacks=[
LosswiseKerasCallback(),
# other callbacks
]
)
Even if you are not using Keras, it’s still very easy to use Losswise. If you are interested I suggest checking out their great documentation.
I have also created an example Colab Notebook so you can see it all in action