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.5.tar.gz (45.1 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.5-py3-none-any.whl (49.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mlxp-1.0.5.tar.gz
  • Upload date:
  • Size: 45.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mlxp-1.0.5.tar.gz
Algorithm Hash digest
SHA256 77159aafd0530a5641ca26d1ecb48a9c812ed23a553e9f665a0ea79e833034d3
MD5 eeae3e94b38c455c8c9453c83d0839fc
BLAKE2b-256 e5a74334068fc6ab5582d06dd63f42a07cef43ddd988de1ae3d2b643571f0f5b

See more details on using hashes here.

File details

Details for the file mlxp-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: mlxp-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 49.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mlxp-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2721fbb05161d03e33f61c8a165c24f1b121dd04c99bb9b5a7d2f7dcebb1a08f
MD5 2728f6728f755fb7c8c6cecbb135b121
BLAKE2b-256 b1889d5b46cd461f570e5db82a059fb1f7e564cf27b7ae0a2282e111eff990c3

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