LION

LION (Learned Iterative Optimization Networks) is a PyTorch library for learned reconstruction in tomography and other inverse problems, for research. It stays close to plain torch: its models are torch modules, its operators torch functions, its solvers torch training loops, and any piece can be your own.

Around that, it keeps what research needs to be repeated:

  • experiments that fix the geometry, noise and data of a problem;

  • records saved with every model: the data it saw, how it was trained, the software it ran on;

  • evaluation and comparison of methods on the same test data, with checks that the comparison is fair;

  • publishing a trained model as a package anyone can load, test or train again.

Where to start

  • Install it: see the README.

  • Learn it: the tutorials build LION up one piece at a time, from the CT operator to publishing a model.

  • See it run: the example scripts are complete trainings, one feature each.

  • See what’s there: Methods in LION, the kinds of learned reconstruction and every method LION has, with its paper.

  • Look something up: the API reference, from the docstrings.

  • Change LION: the developer guide: how it is built, one training followed through the code, and what a new piece needs.