A lightweight library to help with training neural networks in PyTorch.
Ignite is a high-level library to help with training neural networks in PyTorch.
- ignite helps you write compact but full-featured training loops in a few lines of code
- you get a training loop with metrics, early-stopping, model checkpointing and other features without the boilerplate
Below we show a side-by-side comparison of using pure pytorch and using ignite to create a training loop to train and validate your model with occasional checkpointing:
As you can see, the code is more concise and readable with ignite. Furthermore, adding additional metrics, or things like early stopping is a breeze in ignite, but can start to rapidly increase the complexity of your code when “rolling your own” training loop.
pip install pytorch-ignite
conda install ignite -c pytorch
python setup.py install
API documentation and an overview of the library can be found here.
We appreciate all contributions. If you are planning to contribute back bug-fixes, please do so without any further discussion. If you plan to contribute new features, utility functions or extensions, please first open an issue and discuss the feature with us.
Please see the contribution guidelines for more information.
As always, PRs are welcome :)
How does this compare to Torchnet?
Ignite, in spirit is very similar to torchnet (and was inspired by torchnet).
The main differences with torchnet is the level of abstraction for the user. Ignite’s higher level of abstraction assumes less about the type of network (or networks) that you are training, and we require the user to define the closure to be run in the training and validation loop. In contrast to this, torchnet creates this closure internally based on the network and optimizer you pass to it. This higher level of abstraction allows for a great deal more of flexibility, such as co-training multiple models (i.e. GANs) and computing/tracking multiple losses and metrics in your training loop.
Ignite also allows for multiple handlers to be attached to events, and a finer granularity of events in the engine loop.
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||File type||Python version||Upload date||Hashes|
|Filename, size pytorch_ignite_nightly-20190109-py2.py3-none-any.whl (50.3 kB)||File type Wheel||Python version py2.py3||Upload date||Hashes View hashes|
|Filename, size pytorch-ignite-nightly-20190109.tar.gz (28.7 kB)||File type Source||Python version None||Upload date||Hashes View hashes|
Hashes for pytorch_ignite_nightly-20190109-py2.py3-none-any.whl
Hashes for pytorch-ignite-nightly-20190109.tar.gz