Live training loss plot in Jupyter Notebook for Keras, PyTorch and others.
Live Loss Plot
Don't train deep learning models blindfolded! Be impatient and look at each epoch of your training!
A live training loss plot in Jupyter Notebook for Keras, PyTorch and other frameworks. An open source Python package by Piotr Migdał, and others. Open for collaboration! (Some tasks are as simple as writing code docstrings, so - no excuses! :))
from livelossplot.keras import PlotLossesCallback model.fit(X_train, Y_train, epochs=10, validation_data=(X_test, Y_test), callbacks=[PlotLossesCallback()], verbose=0)
So remember, log your loss!
- (The most FA)Q: Why not TensorBoard?
- A: Jupyter Notebook compatibility (for exploration and teaching). Simplicity of use.
To install this verson from PyPI, type:
pip install livelossplot
To get the newest one from this repo (note that we are in the alpha stage, so there may be frequent updates), type:
pip install git+git://github.com/stared/livelossplot.git
Look at notebook files with full working examples:
- keras.ipynb - a Keras callback
- minimal.ipynb - a bare API, to use anywhere
- pytorch.ipynb - a bare API, as applied to PyTorch
- 2d_prediction_maps.ipynb - example of custom plots - 2d prediction maps (0.4.1+)
- pytoune.ipynb - a PyToune callback (PyToune is a Keras-like framework for PyTorch)
- torchbearer.ipynb - an example using the built in functionality from torchbearer (torchbearer is a model fitting library for PyTorch)
- neptune-minimal-terminal.py - a Neptune.ML Python script (so far the only way to use livelossplot outside of Jupyter)
- neptune-minimal-jupyter.ipynb - a Neptune.ML Jupyter Notebook integration
Text logs are easy, but it's easy to miss the most crucial information: is it learning, doing nothing or overfitting?
Visual feedback allows us to keep track of the training process. Now there is one for Jupyter.
If you want to get serious - use TensorBoard or even better - Neptune - Machine Learning Lab (as it allows to compare between models, in a Kaggle leaderboard style). Or, well use
target='neptune'. Now these are included as well!
But what if you just want to train a small model in Jupyter Notebook? Here is a way to do so, using
livelossplot as a plug&play component.
It started as this gist. Since it went popular, I decided to rewrite it as a package.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|livelossplot-0.4.1-py3-none-any.whl (13.2 kB) Copy SHA256 hash SHA256||Wheel||py3|
|livelossplot-0.4.1.tar.gz (8.3 kB) Copy SHA256 hash SHA256||Source||None|