Ignite Your Networks!#
ignite
is a high-level library to help with training and evaluating neural networks in PyTorch flexibly and transparently.
Click on the image to see complete code
Features#
Less code than pure PyTorch while ensuring maximum control and simplicity
Library approach and no program’s control inversion - Use ignite where and when you need
Extensible API for metrics, experiment managers, and other components
Installation#
From pip:
pip install pytorch-ignite
From conda:
conda install ignite -c pytorch
From source:
pip install git+https://github.com/pytorch/ignite
Nightly releases#
From pip:
pip install --pre pytorch-ignite
From conda (this suggests to install pytorch nightly release instead of stable version as dependency):
conda install ignite -c pytorch-nightly
Docker Images#
Using pre-built images#
Pull a pre-built docker image from our Docker Hub and run it with docker v19.03+.
docker run --gpus all -it -v $PWD:/workspace/project --network=host --shm-size 16G pytorchignite/base:latest
Available pre-built images are :
pytorchignite/base:latest | pytorchignite/hvd-base:latest | pytorchignite/msdp-apex-base:latest
pytorchignite/apex:latest | pytorchignite/hvd-apex:latest
pytorchignite/vision:latest | pytorchignite/hvd-vision:latest | pytorchignite/msdp-apex-vision:latest
pytorchignite/apex-vision:latest | pytorchignite/hvd-apex-vision:latest
pytorchignite/nlp:latest | pytorchignite/hvd-nlp:latest | pytorchignite/msdp-apex-nlp:latest
pytorchignite/apex-nlp:latest | pytorchignite/hvd-apex-nlp:latest
For more details, check out on GitHub.
Documentation#
To get started, please, read Quick start and Concepts.
Library structure#
ignite
: Core of the library, contains an engine for training and evaluating, most of the classic machine learning metrics and a variety of handlers to ease the pain of training and validation of neural networks.ignite.contrib
: The contrib directory contains additional modules that can require extra dependencies. Modules vary from TBPTT engine, various optimisation parameter schedulers, experiment tracking system handlers and a metrics module containing many regression metrics.