FAQ

We answer some of the simple and frequently asked questions about the framework below. If you think of any other question that should be in this list, send a mail to one of the maintainers, and it will be added here.

What it is…

  • This framework is used to simplify the exploration, development, and testing of models that you create yourself, or that you import from other libraries or frameworks.
  • This framework is used to enforce good reproducibility standards for your experiments via the use of global configuration files, checkpoints, and logs.
  • This framework is used to easily swap, split, scale, combine, and augment datasets used in your experiments.
  • This framework can help you fine-tune, debug, measure, visualize, and understand the behavior of your models more easily.

What it is NOT

  • This framework is NOT used to obtain off-the-shelf solutions. In most cases, you will have to put in some work by at least modifying a pre-existing configuration file to get a solution for a new task (e.g. image classification, segmentation, …).
  • This framework is NOT a model (or model architecture) zoo. By design, importing models for training from 3rd-party packages is easy, and so is importing a model architecture from a local Python file. However, due to the fast-paced nature of deep learning, we do not plan to keep a repository of “state-of-the-art” models in the framework.

What it supports…

  • PyTorch. For now, the entire backend is based on the design patterns, interfaces, and concepts of the PyTorch library ([more info]).
  • Image classification, segmentation, object detection, super-resolution, and generic regression tasks. More types of tasks are planned in the future. Users can also implement their own task interfaces and trainers to support custom scenarios if needed (e.g. for multi-task learning).
  • Live evaluation and monitoring of predefined metrics. The framework implements [several types of metrics], but custom metrics can also be defined and evaluated at run time.
  • Data augmentation. The framework implements basic [transformation operations and wrappers] for large augmentation libraries such as albumentations ([more info]).
  • Model fine-tuning and exportation. Models obtained from the torchvision package ([more info]) or pre-trained using the framework can be loaded and fine-tuned directly for any compatible task. They can also be exported in PyTorch-JIT/ONNX format for external inference.
  • Tensorboard. Event logs are generated using tensorboardX ([more info]) and may contain plots, visualizations, histograms, graph module trees and more.

How do I…

This section is still a work in progress; see the use case examples [here] for a list of code snippets and tutorials on how to use the framework. For high-level documentation, refer to the [user guide].