Skip to main content

A framework for conducting machine learning experiments in python

Project description

What is MLXP?

MLXP (Machine Learning eXperimentalist for Python) package is an open-source Python framework for managing multiple experiments with a flexible option structure from launching, and logging to querying results.

A full documentation along with a tutorial is available in MLXPs project page. A presentation of MLXP can also be found in the companion paper.

Key functionalities

  1. Launching several jobs automatically using hydra and hierarchical configs by adding a single decorator to the main task function.

  2. Logging outputs (metrics, artifacts, checkpoints) of a job in a uniquely assigned directory along with all metadata and configuration options to reproduce the experiment.

  3. Code version management by automatically generating a deployment version of the code based on the latest git commit.

  4. Submitting jobs to a cluster using a job scheduler.

  5. Exploiting the results of several experiments by easily reading, querying, grouping, and aggregating the output of several jobs.

Installing MLXP

You can install MLXP in a virtualenv/conda environment where pip is installed (check which pip):

Stable release

$ pip install MLXP

Main branch

$ pip install git+https://github.com/inria-thoth/mlxp@master#egg=mlxp

Requirements

Requirements

hydra-core

omegaconf

tinydb

setuptools

PyYAML

pandas

ply

dill

GitPython

Documentation

A full documentation is available in the MLXP’s official documentation website. See the following pages for more detailled information:

Quick start guide: for a simple example of how to use MLXP. Tutorial: to get a better understanding of all functionalities provided by MLXP. Documentation: for detailed documentation.

How to cite

If you use MLXP in your research, please cite the following paper:

@Misc{Arbel2023MLXP,
  author = {Michael Arbel, Alexandre Zouaoui},
  title = {MLXP: A framework for conducting replicable Machine Learning eXperiments in Python},
  howpublished = {arXiv preprint arXiv:2402.13831},
  year = {2024},
  url = {https://arxiv.org/abs/2402.13831}
}

Acknowledgments

License

MLXP is distributed under MIT license.

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

mlxp-1.0.1.tar.gz (44.3 kB view details)

Uploaded Source

Built Distribution

MLXP-1.0.1-py3-none-any.whl (48.8 kB view details)

Uploaded Python 3

File details

Details for the file mlxp-1.0.1.tar.gz.

File metadata

  • Download URL: mlxp-1.0.1.tar.gz
  • Upload date:
  • Size: 44.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for mlxp-1.0.1.tar.gz
Algorithm Hash digest
SHA256 c80ebaca5d4e0e53ce9bbe5ee3b907006ac73d5acc22b8b0ac5fbbce1f51d695
MD5 79cce578d684438e1fc7243dd6632da3
BLAKE2b-256 413890c78e2cf1ce6906b1c7ea2df315e9fd009f9f3dd0411b4d7b39c0d54da1

See more details on using hashes here.

File details

Details for the file MLXP-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: MLXP-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 48.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for MLXP-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 75815a441d78f17163d5faf4cda5d2d17bf5472f655f7a588af601bc36982d87
MD5 ba3736fdaf9d71400093fe0c01ed91b9
BLAKE2b-256 09ee2c3a590439a490ef2a3d44c059107bbca99c085e4c2eed101831fde5847e

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