Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Ignite

https://travis-ci.org/pytorch/ignite.svg?branch=master https://github.com/pytorch/ignite/workflows/.github/workflows/unittests.yml/badge.svg?branch=master https://codecov.io/gh/pytorch/ignite/branch/master/graph/badge.svg https://img.shields.io/badge/dynamic/json.svg?label=docs&url=https%3A%2F%2Fpypi.org%2Fpypi%2Fpytorch-ignite%2Fjson&query=%24.info.version&colorB=brightgreen&prefix=v https://anaconda.org/pytorch/ignite/badges/version.svg https://anaconda.org/pytorch/ignite/badges/downloads.svg https://img.shields.io/badge/dynamic/json.svg?label=PyPI&url=https%3A%2F%2Fpypi.org%2Fpypi%2Fpytorch-ignite%2Fjson&query=%24.info.version&colorB=brightgreen&prefix=v https://pepy.tech/badge/pytorch-ignite https://img.shields.io/badge/Optuna-integrated-blue https://img.shields.io/badge/code%20style-black-000000.svg

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:

assets/ignite_vs_bare_pytorch.png

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.

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

Why Ignite?

Ignite’s high 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. This 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.

Documentation

API documentation and an overview of the library can be found here.

Structure

  • ignite: Core of the library, contains an engine for training and evaluating, all 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 contributed by Ignite users. Modules vary from TBPTT engine, various optimisation parameter schedulers, logging handlers and a metrics module containing many regression metrics (ignite.contrib.metrics.regression)!

The code in ignite.contrib is not as fully maintained as the core part of the library. It may change or be removed at any time without notice.

Examples

We provide several examples ported from pytorch/examples using ignite to display how it helps to write compact and full-featured training loops in a few lines of code:

MNIST example

Basic neural network training on MNIST dataset with/without ignite.contrib module:

Distributed CIFAR10 example

Training a small variant of ResNet on CIFAR10 in various configurations: 1) single gpu, 2) single node multiple gpus, 3) multiple nodes and multilple gpus.

Other examples

Notebooks

Reproducible trainings

Inspired by torchvision/references, we provide several reproducible baselines for vision tasks:

Features:

Contributing

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 :)

They use Ignite

See other projects at “Used by”

If your project implements a paper, represents other use-cases not covered in our official tutorials, Kaggle competition’s code or just your code presents interesting results and uses Ignite. We would like to add your project in this list, so please send a PR with brief description of the project.

User feedback

We have created a form for “user feedback”. We appreciate any type of feedback and this is how we would like to see our community:

  • If you like the project and want to say thanks, this the right place.

  • If you do not like something, please, share it with us and we can see how to improve it.

Thank you !

Metadata

Release files for pytorch-ignite 0.4.0.dev20200226

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pytorch-ignite 0.4.0.dev20200226
File Size Uploaded Provenance
pytorch-ignite-0.4.0.dev20200226.tar.gz 82.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pytorch-ignite 0.4.0.dev20200226
File Interpreter ABI Platform
pytorch_ignite-0.4.0.dev20200226-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 203.9 kB

Release files / pytorch-ignite-0.4.0.dev20200226.tar.gz

Download URL pytorch-ignite-0.4.0.dev20200226.tar.gz
Size 82.6 kB
Tags Source
SHA-256 checksum
How to use checksums
db4efca96ce25c45478865ee9291e0c9b7766a158c938d9262b60b5bd5eae6f6
BLAKE2b-256 checksum
How to use checksums
022afeca780cc09f10e463e6f7452b6d89ce91114d933d724f011a2f0312de60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.6

Release files / pytorch_ignite-0.4.0.dev20200226-py2.py3-none-any.whl

Download URL pytorch_ignite-0.4.0.dev20200226-py2.py3-none-any.whl
Size 121.4 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
b7fb20156b1a1e1f47e74f5abe55433461d2a8e25a627a40e28bec13b25e1ea7
BLAKE2b-256 checksum
How to use checksums
75b03ca2e1528125b2a0d7e12ca1bfb0cb8d8d2928444db3a2edadad83a6f64d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.6

Security for pytorch-ignite 0.4.0.dev20200226

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page