Skip to main content

labs - a dask-distributed experiments manager

Project description

Introduction

Labs helps create and define (config file), execute (scale with Dask) and save (artifacts, results, metadata) experiments. It's main purpose is to execute ML experiments, but can be used for other use cases.

Labs is using Dask delayed lazy API for distributed computation. Additionally, Scikit-Learn is also used in the [Searcher] module.

Disclaimer: Labs is currently experimental and for my own personal use.

Key concepts:

  • [Experiment Design] - a user defined experiment. The [Experiment Design] is being expressed by a func, which will be executed by an [Experimenter/s].

  • [Experiment] - a combination of hyper parameters to be tested while running [Experiment Design].

  • [Experiment Run] - using the [Experiment Configuration] and [Experiment Design], numerous [Experiments] will be executed. The [Experiment Run] will output best [Experiment] (best hyper parameters combination).

  • [Experiment Configuration] - sets of configurations which will define the [Experiments] to be executed in Experiment Run.

  • [LabManager] - running all the [Experiments Configurations] as defined in a config file. A [LabManager] can perform numerous [Experiment Configuration] and [Experiment Design]

  • [Experimenter] - an entity which perform the tuning/experimenting process.

  • [Searcher] - an entity used by an [Experimenter] to create the [Experiments] in Experiment Run. Example Searchers: Grid Search, Random Sampling, Bayesian Search (with the great skopt package). The [Searcher] use the defined space in [Experiment Configuration].

1. Installation process

pip install labs

2. Docs

(Documentation is not completed yet)

  1. Quick Start
  2. Experimenters
  3. Searchers
  4. LabManager
  5. Live Reporting
  6. Configs
  7. Suggested Steps

3. Future

Currently, the project is very new and not completed.

The project need more development to support distributed computation options. The future plan is to use Dask rich and developed ecosystem, for simple and fast development of distributed computation options.

Future developments:

  • pytest testing.
  • Flow options - checkpoint saving, time caps, delta improvement and more.
  • Docker support.
  • Kubernetes support.
  • Experiments Artifact saved in cloud storage options.
  • MLFlow interaction.

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

labs-0.0.4.tar.gz (14.3 kB view details)

Uploaded Source

File details

Details for the file labs-0.0.4.tar.gz.

File metadata

  • Download URL: labs-0.0.4.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.9

File hashes

Hashes for labs-0.0.4.tar.gz
Algorithm Hash digest
SHA256 b4224182b43792096fe34a7b9d3ce6a6bc54ff102e20b80657db19c869451a89
MD5 e1d7f76e8e27d4862d20f23929394c64
BLAKE2b-256 c3f9c51a9f340c06eaee58b762790e63258487634149d8c65a34bd094426ab29

See more details on using hashes here.

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