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.4.tar.gz (45.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

MLXP-1.0.4-py3-none-any.whl (49.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mlxp-1.0.4.tar.gz
  • Upload date:
  • Size: 45.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for mlxp-1.0.4.tar.gz
Algorithm Hash digest
SHA256 e2b9ecc057a5b43301fbab2abc08413e052d81e394e957a38df151aa16d75606
MD5 33cab59f0334b97a5f17bd8df6a55777
BLAKE2b-256 727d8a9f7019e936fa5210856436a3d31ef1cea008eb17af10a6fae9818ba072

See more details on using hashes here.

File details

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

File metadata

  • Download URL: MLXP-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 49.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for MLXP-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8d5b79d4457928da030d58ebea8cf37d5c8d210ee9edea2d6c9fe3cebdc49f02
MD5 642603cf816cfd16a8239dbb68814ec8
BLAKE2b-256 b3c4b6eed61e3e8b4fe71466b7267532547b967e02c9e93170fb7b36a6baeb14

See more details on using hashes here.

Supported by

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