Skip to main content

minimal deep learning framework

Project description

Nimrod

python pytorch hydra pre-commit

Description

This is a repo with minimal tooling, modules, models and recipes to get easily get started with deep learning training and experimentation with an emphasis on speech, audio and language modeling.

Install

you need python <3.12

pip install slg-nimrod

Usage

Check recipes in recipes/ folder. For instance:

git clone https://github.com/slegroux/nimrod.git
cd nimrod/recipes/images/mnist
python train.py datamodule.num_workers=10 trainer.max_epochs=20 trainer.accelerator='gpu'
head conf/train.yaml

All the parameters of the experiment are editable and read from a .yaml file which details:

  • data and logging directory paths
  • data module with data source path and batching parameters
  • model architecture
  • trainer with hardware acceleration and number of epochs
  • callbacks for early stopping and automatic logging to Wandb

Docker

You might want to use docker containers for reproductible development environment or run your project in the cloud

make container
docker pull slegroux/nimrod
docker run -it --rm -p 8888:8888 slegroux/nimrod /bin/bash

You can also use docker-compose to define services and volumes

cd .devcontainer
docker-compose up
docker-compose down

Develop

pip install -e .

Authors

2023 Sylvain Le Groux sylvain.legroux@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slg_nimrod-0.0.8.tar.gz (45.9 kB view hashes)

Uploaded Source

Built Distribution

slg_nimrod-0.0.8-py3-none-any.whl (62.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page