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
Launching several jobs automatically using hydra and hierarchical configs by adding a single decorator to the main task function.
Logging outputs (metrics, artifacts, checkpoints) of a job in a uniquely assigned directory along with all metadata and configuration options to reproduce the experiment.
Code version management by automatically generating a deployment version of the code based on the latest git commit.
Submitting jobs to a cluster using a job scheduler.
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
Juliette Marrie, Romain Ménégaux, Pierre Wolinski and Thomas Ryckeboer provided valuable feedback and suggestions to improve MLXP.
License
MLXP is distributed under MIT license.
Release files for MLXP 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mlxp-1.0.5.tar.gz | 45.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mlxp-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.3 kB
Release files / mlxp-1.0.5.tar.gz
| Download URL | mlxp-1.0.5.tar.gz |
|---|---|
| Size | 45.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
77159aafd0530a5641ca26d1ecb48a9c812ed23a553e9f665a0ea79e833034d3
|
|
BLAKE2b-256 checksum How to use checksums |
e5a74334068fc6ab5582d06dd63f42a07cef43ddd988de1ae3d2b643571f0f5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / mlxp-1.0.5-py3-none-any.whl
| Download URL | mlxp-1.0.5-py3-none-any.whl |
|---|---|
| Size | 49.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2721fbb05161d03e33f61c8a165c24f1b121dd04c99bb9b5a7d2f7dcebb1a08f
|
|
BLAKE2b-256 checksum How to use checksums |
b1889d5b46cd461f570e5db82a059fb1f7e564cf27b7ae0a2282e111eff990c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|