• Docs >
  • Ignite Your Networks!
Shortcuts

Ignite Your Networks!

ignite is a high-level library to help with training and evaluating neural networks in PyTorch flexibly and transparently.

https://raw.githubusercontent.com/pytorch/ignite/master/assets/tldr/pytorch-ignite-teaser.gif

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, see here.

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.