Skip to content

Latest commit

 

History

History
34 lines (25 loc) · 1.27 KB

README.md

File metadata and controls

34 lines (25 loc) · 1.27 KB

ELVis (Easy Language-and-VISion)

ELVis is a PyTorch based library that aims to be an extensible tool to implement multi-gpu, mixed-precision Deep Learning experiments using yaml configurable file for clean setup.

Installation

pip install requirements.txt
cd elvis
pip install -e .

Features

  • distributed training
  • mixed-precision training
  • yaml configuration file
  • logging
  • Language-and-Vision architectures

Interfaces

The library offers different interfaces for neural architectures, trainers and data.

  • Trainer: setup the training process from the yaml configuration file
  • Meta-architecture: define the training pipeline for different tasks (e.g., VQA, Retrieval)
  • Model: the specific model to be instantiated and trained for the task. Each model has different interfaces for different tasks. Each interface define how to read and format data for the trainer (e.g., create a sequence for a transformer, resize images for a CNN). Each interface in turn defines two methods:
    • worker_fn: defines the data reading for each worker of the PyTorch's DataLoader
    • collate_fn: defines how to batch data.
  • Dataset: defines the dataset

Diagram

Usage

An example of usage is provided in example folder.