COREMat Framework
COREMat (COmputable REgression for Materials) is a Python framework for automated machine learning on tabular materials-science datasets — alloy research, materials-property prediction, and similar regression workloads. It automates the full workflow behind a single configuration: data ingestion, preprocessing, nested-CV training with hyperparameter optimisation, iterative feature selection, SHAP-based explainability, OOF/Hold-out evaluation, and interactive HTML reporting. The model registry ships 65 algorithm variants (gradient boosting, kernel methods, linear models, neural nets, foundation models) behind a unified ModelSpec interface.
What You Get
Every trained model gets a self-contained, interactive HTML report — open it in a browser, no server or notebook required. Excerpt of what's inside:
| Section | What it shows |
|---|---|
| Comparison Leaderboard | All models in a run ranked by weighted Skill Score (OOF, switchable to Hold-out Test) |
| Actual vs. Predicted | Square scatter with color-by-feature and linear/log axis toggle |
| Residuals & Error Distribution | Residuals-vs-Predicted scatter, ECDF/histogram error analysis |
| Round Trajectory | Feature-selection score and feature count per round |
| SHAP / Feature Importance | Per-round SHAP summary plots and contribution bars |
| Model Parameters | Curated hyperparameters and preprocessing policy |
Every report is built post-hoc from persisted per-round predictions — re-opening a report never re-runs a model.
Installation
Requirements: Python >= 3.12, < 3.13
From PyPI (recommended — available from the first public release):
pip install coremat
# or with uv:
uv pip install coremat
From the Uni Rostock GitLab Registry (alternative, requires GitLab account):
uv pip install git+https://gitlab.uni-rostock.de/cs1302/coremat.git@main
Developers (editable install):
git clone https://gitlab.uni-rostock.de/cs1302/coremat.git
cd coremat
uv venv && uv sync
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
TabPFN Authentication
TabPFN models require a free PriorLabs account. Set up once after installation:
coremat auth tabpfn
Getting Started
The documentation (mkdocs) is the single source of truth for usage — it covers the full quick-start walkthrough, sample data generation, and the resulting artifact layout. Start at docs/index.md or the Walkthrough — the end-to-end tour in Python, each step with a copy-paste YAML equivalent.
Documentation
| Document | Description |
|---|---|
| docs/index.md | Quick-start walkthrough and installation |
| docs/cli_guide.md | Full CLI reference — all commands, options, and examples |
| docs/api.md | Public API reference — exported symbols and usage |
| docs/reference/models/index.md | All 36 registered models with preprocessing policies |
| docs/architecture.md | Layer model, module responsibilities, dependency graph |
| docs/development.md | Dev setup, reproducibility guide, contribution notes |
| docs/reference/metrics/ | Metric definitions — formula, worked example, and when to use each |
| docs/verbose_levels.md | Logging verbosity levels and output examples |
Building the docs
uv add mkdocs mkdocs-material
uv run -m mkdocs serve # local preview at http://127.0.0.1:8000, live-reloads on edit
uv run -m mkdocs build --strict --site-dir /tmp/site # artifact build; --strict turns broken links/nav into errors
The pages CI job runs the same --strict build as a documentation lint — GitLab
Pages is not hosted on this instance, so nothing is deployed automatically.
Publishing the built site/ output anywhere remains a manual step until a
hosting target is chosen (see the CI/CD section in docs/development.md).
Citing COREMat
If you use COREMat in your research, please cite it. Machine-readable citation
metadata is provided in CITATION.cff at the root of this
repository.
Acknowledgements
This project was developed using an agentic AI-assisted workflow with Claude Code by Anthropic.
Metadata
Release files for coremat 0.22.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| coremat-0.22.0.tar.gz | 4.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| coremat-0.22.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.8 MB
Release files / coremat-0.22.0.tar.gz
| Download URL | coremat-0.22.0.tar.gz |
|---|---|
| Size | 4.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
779416921a8b3f3a74b38c0332703b71d2bd2408bb8c5ff43bb47207f0b14876
|
|
BLAKE2b-256 checksum How to use checksums |
a81f7f895214a55f1da820007d6d38d521623242b33ea87780bb03b29bb52558
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / coremat-0.22.0-py3-none-any.whl
| Download URL | coremat-0.22.0-py3-none-any.whl |
|---|---|
| Size | 2.8 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3264872a5a5abfe339404a0d643b17cf11dccac1abac6c2eed175fb0d423294e
|
|
BLAKE2b-256 checksum How to use checksums |
66feff666f1660d276d20f002c293ca16b64942b19e1bc7330188812b105524c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|