{"id":50256095,"url":"https://github.com/nanobiostructuresrg/melite","last_synced_at":"2026-05-27T06:01:44.871Z","repository":{"id":360312227,"uuid":"982432405","full_name":"NanoBiostructuresRG/melite","owner":"NanoBiostructuresRG","description":"MELITE is a tabular classification benchmarking toolkit for model selection, repeated stratified cross-validation, final model export, and artifact-based inference.","archived":false,"fork":false,"pushed_at":"2026-05-26T06:06:46.000Z","size":277,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-26T06:26:17.467Z","etag":null,"topics":["benchmarking","random-forest-classifier","support-vector-classifier","xgboost-classifier"],"latest_commit_sha":null,"homepage":"https://nanobiostructuresrg.github.io/melite/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NanoBiostructuresRG.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-12T21:57:30.000Z","updated_at":"2026-05-26T06:03:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/NanoBiostructuresRG/melite","commit_stats":null,"previous_names":["nanobiostructuresrg/mosaic","nanobiostructuresrg/melite"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/NanoBiostructuresRG/melite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NanoBiostructuresRG%2Fmelite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NanoBiostructuresRG%2Fmelite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NanoBiostructuresRG%2Fmelite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NanoBiostructuresRG%2Fmelite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NanoBiostructuresRG","download_url":"https://codeload.github.com/NanoBiostructuresRG/melite/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NanoBiostructuresRG%2Fmelite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33553127,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["benchmarking","random-forest-classifier","support-vector-classifier","xgboost-classifier"],"created_at":"2026-05-27T06:01:39.703Z","updated_at":"2026-05-27T06:01:44.316Z","avatar_url":"https://github.com/NanoBiostructuresRG.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MELITE: Multi-model Evaluation and Learning for Inference-ready Tabular Experiments\n\n[![CI](https://github.com/NanoBiostructuresRG/melite/actions/workflows/ci.yml/badge.svg)](https://github.com/NanoBiostructuresRG/melite/actions/workflows/ci.yml)\n[![License: LGPL v3](https://img.shields.io/badge/License-LGPL_v3-blue.svg)](LICENSE)\n[![Version](https://img.shields.io/badge/version-v0.1.11-blue.svg)]()\n[![Python](https://img.shields.io/badge/python-3.11%20%7C%203.12-blue)]()\n\n**MELITE** is a pre-stable Python toolkit for tabular classification\nbenchmarking, model selection, repeated stratified cross-validation, final\nmodel export, and artifact-based inference.\n\nMELITE is tabular at the modeling level. The learning algorithms consume\nnumeric `X` and `y` arrays, so the feature matrix may come from PCA, UMAP,\nfingerprints, descriptors, clinical variables, experimental measurements,\nindustrial features, or manually selected numeric features.\n\n## Project Identity\n\n```text\nProject: MELITE\nPyPI distribution: melite\nImport package: melite\nCLI: melite\nVersion: 0.2.0\nLicense: LGPL-3.0-or-later\nStatus: alpha / pre-stable\n```\n\n## Documentation\n\nThe live documentation is published at:\n\nhttps://nanobiostructuresrg.github.io/melite/\n\nKey pages:\n\n- [Installation](https://nanobiostructuresrg.github.io/melite/installation/)\n- [Quick Start](https://nanobiostructuresrg.github.io/melite/quickstart/)\n- [CLI Reference](https://nanobiostructuresrg.github.io/melite/cli/)\n- [Configuration](https://nanobiostructuresrg.github.io/melite/configuration/)\n- [API Reference](https://nanobiostructuresrg.github.io/melite/api/)\n\n## Installation\n\nAfter PyPI publication:\n\n```bash\npython -m pip install melite\n```\n\nFor local development:\n\n```bash\ngit clone https://github.com/NanoBiostructuresRG/melite.git\ncd melite\npython -m pip install -e .\n```\n\nFor development and documentation tools:\n\n```bash\npython -m pip install -e \".[dev]\"\npython -m pip install -e \".[docs]\"\n```\n\n## Quick Start\n\nRun a fast smoke benchmark with the bundled synthetic example dataset:\n\n```bash\nmelite run --smoke --config examples/example_config.toml\n```\n\nExport a selected model artifact:\n\n```bash\nmelite export --row 0 --csv examples/output/results.csv --outdir examples/output/\n```\n\nRun artifact-based inference:\n\n```python\nimport numpy as np\nfrom melite import predict\n\nX_new = np.load(\"examples/sample_PCA70.npz\")[\"X\"]\nresult = predict(\"examples/output/Model_SVC_sample_pca70.pkl\", X_new)\nprint(result[\"predictions\"])\nprint(result[\"probabilities\"])\n```\n\n## Scope\n\n| MELITE does | MELITE does not |\n|-------------|-----------------|\n| Accept prepared `X` and `y` arrays. | Generate fingerprints. |\n| Benchmark SVC, Random Forest, and XGBoost classifiers. | Process SMILES. |\n| Select the best row by F1-macro. | Generate PCA or UMAP reductions from raw data. |\n| Export a final retrained `.pkl` model. | Act as a general AutoML framework. |\n| Run artifact-based inference through `predict()`. | Promise a stable 1.0 API yet. |\n| Handle any numeric tabular matrix. | Generate or validate domain-specific descriptors. |\n\nDatasets are registered as concrete tabular matrix candidates under\n`[datasets.\u003cdataset_id\u003e]`. The `dataset_id` is user-defined and is used in\n`results.csv`, figures, and exported model filenames.\n\n```toml\n[datasets.morgan_r2_2048]\npath = \"data/morgan_r2_2048.npz\"\nlabel_path = \"raw/labels.npy\"\nfamily = \"fingerprints\"\nmethod = \"Morgan\"\nvariant = \"r2_2048\"\n\n[datasets.rdkit_descriptors]\npath = \"data/rdkit_descriptors.npz\"\nlabel_path = \"raw/labels.npy\"\nfamily = \"descriptors\"\nmethod = \"RDKit\"\n\n[datasets.pca85]\npath = \"data/PCA85.npz\"\nlabel_path = \"raw/labels.npy\"\nfamily = \"dimensionality\"\nmethod = \"PCA\"\nlevel = 85\n```\n\nEach registered dataset must define `path` and `label_path`. Optional metadata\nfields are `family`, `method`, `variant`, `level`, and `description`; they are\nreported for traceability and do not drive special-case model execution.\nRegistered datasets are loaded strictly: missing files, missing `X`, non-2D or\nnon-numeric `X`, length mismatches, and embedded `y` mismatches fail the run.\nLegacy `[benchmark].reduction_types` and `levels` configs are still accepted\nand are normalized into equivalent dataset entries such as `PCA70` and `UMAP90`.\n    \n## CLI\n\n```bash\nmelite --help\nmelite run --help\nmelite export --help\nmelite --version\n```\n\nCommon commands:\n\n```bash\nmelite run\nmelite run --smoke\nmelite run --config my_config.toml\nmelite export --row 0\nmelite export --config my_config.toml --row 0\nmelite export --row 0 --force\n```\n\n## Public API\n\n```python\nfrom melite import Config\nfrom melite import load_datasets\nfrom melite import plot_cv_distributions\nfrom melite import predict\nfrom melite import __version__\n```\n\nModules not listed above are importable directly but are not part of the public\ncontract and may change before 0.2.0.\n\n## Input Format\n\n```text\nraw/labels.npy          \u003c- target vector y, shape (n_samples,)\ndata/morgan_r2_2048.npz \u003c- required key: X, optional key: y\ndata/rdkit_descriptors.npz\ndata/PCA85.npz\ndata/UMAP90.npz\n```\n\nEach `.npz` file must contain an `X` array. If an embedded `y` array is present,\nMELITE validates it against the configured `label_path`.\n\n## Outputs\n\n```text\noutput/\n|-- results.txt\n|-- results.csv\n|-- Model_\u003cmodel\u003e_\u003cdataset\u003e.pkl\n`-- figures/\n    `-- \u003cmodel\u003e_\u003cdataset\u003e.png\n```\n\nLocal inputs and generated artifacts such as `raw/`, `data/`, `output/`,\n`.pkl`, and `.joblib` files are intentionally ignored by Git.\n\n## Validation\n\nThe current `dev/v0.2.0` branch targets:\n\n```bash\npython -m pytest tests/ -v --basetemp=.review_pytest_tmp -o cache_dir=.review_pytest_cache\nmkdocs build --strict\npython -m build\npython -m twine check dist/*\nmelite --help\nmelite run --help\nmelite export --help\nmelite --version\n```\n\n## Citation\n\nIf you use MELITE in your research, please cite it using the metadata in\n[CITATION.cff](CITATION.cff).\n\n```text\nContreras-Torres, F. F., \u0026 Murrieta, A. C. (2026). MELITE: Multi-model\nEvaluation and Learning for Inference-ready Tabular Experiments (0.1.11).\nTecnologico de Monterrey. https://github.com/NanoBiostructuresRG/melite\n```\n\n## Authors\n\nDeveloped by **Flavio F. Contreras-Torres**\n\nTecnologico de Monterrey\n\nCo-author: **Ana C. Murrieta**\n\nTecnologico de Monterrey\n\n## License\n\nThis project is licensed under the terms of the\n[GNU Lesser General Public License v3.0 or later](LICENSE).\n\nSPDX identifier: `LGPL-3.0-or-later`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnanobiostructuresrg%2Fmelite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnanobiostructuresrg%2Fmelite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnanobiostructuresrg%2Fmelite/lists"}