Skip to main content

MLVerdict

You have a spreadsheet or CSV. One column is the answer you want to predict (price, yes/no, churn, disease, …). You do not want to spend days writing scikit-learn: which problem is this, which metric, which models, how to split, how to explain the winner, how to save it.

MLVerdict does that loop in a few lines. You get a written verdict (“this model, for this reason”) and a file you can use on new rows.

pip install mlverdict

No GitHub clone. No extra files from us. Use your data.

PyPI · Source


What you get (why use this)

Without this library you typically:

  • decide classification vs regression yourself
  • pick a metric (accuracy is often misleading)
  • train models one by one
  • compare notebooks by hand
  • hope you did not leak an ID column
  • rewrite preprocessing when you deploy

With MLVerdict you still bring the CSV + the name of the target column. The library then:

  1. Reads the table
  2. Figures out the problem type (yes/no, many classes, or a number)
  3. Picks a metric that matches that problem
  4. Trains a small set of standard models
  5. Optionally tunes the best ones
  6. Picks a winner with reasons (not a silent guess)
  7. Warns you about traps (IDs, imbalance, “accuracy 80% but never finds the rare class”)
  8. Saves one artifact: cleaning + model together

Work saved: the usual “first serious sklearn project” (days of glue code) becomes minutes of fit + print. You still need decent data. The library does not invent labels or magically fix a useless table.


This is supervised only

You have MLVerdict
A target column (the thing to predict) Yes — this is the product
No target (only clustering / “find groups” / anomaly with no labels) No. That is unsupervised. This version does not do it.

If you are not sure: look at your table. If one column is the answer you want in the future (churn, price, label, …), you are in the right place. Pass that column’s real name to fit.


Use it (your file, your column)

customers.csv and "churn" below are examples.
Replace them with your path and your target name. We do not ship a CSV.

from mlverdict import Verdict

run = Verdict(enable_hpo=True).fit("customers.csv", "churn")
print(run)
Piece Meaning
"customers.csv" Your file. Excel → Save as CSV. Or a pandas DataFrame.
"churn" Your target column. If the column is price, write "price".
print(run) Plain-language result: winner, scores, warnings, what to do next

That is enough for a first run. You do not pick algorithms. You do not clone the repo.

House prices:

run = Verdict().fit("houses.csv", "sale_price")
print(run)

Save the model for later

run.artifact().save("model.joblib")

from mlverdict import ModelArtifact
model = ModelArtifact.load("model.joblib")
model.predict(new_rows)   # new_rows = table without the target column

What the library tries (you do not choose)

Users should not have to know these names. They are listed so you know we are not hiding a random mystery model.

For normal tables (rows and columns), these families are the usual first try in industry. MLVerdict trains the ones that fit your problem and picks one with evidence:

  • linear models (Logistic Regression or Ridge)
  • tree models (Random Forest, Extra Trees)
  • sklearn gradient boosting (HistGradientBoosting)
  • XGBoost / LightGBM / CatBoost only if you installed them

You do not import them. You do not tune them unless you turn HPO on (enable_hpo=True). The printout tells you which one won and why.


Optional: you have no CSV yet

Only then run the demo. It creates a fake table and runs the same API. Normal users skip this.

pip install mlverdict
git clone https://github.com/siva1252/ml_lib.git
cd ml_lib
python examples/quickstart.py

git clone is not required to use the library. It is only for the demo script, reading source, or running tests.


Optional: developers / tests

git clone https://github.com/siva1252/ml_lib.git
cd ml_lib
pip install -e ".[dev]"
pytest

License

MIT. See LICENSE.

Metadata

Release files for mlverdict 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mlverdict 0.1.2
File Size Uploaded
mlverdict-0.1.2.tar.gz 60.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mlverdict 0.1.2
File Interpreter ABI Platform
mlverdict-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 129.7 kB

Release files / mlverdict-0.1.2.tar.gz

Download URL mlverdict-0.1.2.tar.gz
Size 60.9 kB
Tags Source
SHA-256 checksum
How to use checksums
6746e1ff35a2e7061bf3762343015886ea2390defee62431f4ec4cf05d409119
BLAKE2b-256 checksum
How to use checksums
191adda12d3681e093127bed37a4896a63429eb215e17a327395cce3f95ac815
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / mlverdict-0.1.2-py3-none-any.whl

Download URL mlverdict-0.1.2-py3-none-any.whl
Size 68.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6c7a613c80ef8a76fd1f5a7e0057e099e1207ed6dff8a67fa2cf0aba7fd3d7d6
BLAKE2b-256 checksum
How to use checksums
7a4132700778dd82095e26783b0fb77720a8613b7b3d902b4875b340d05064a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release history Release notifications | RSS feed

0.2.1

2 release files

0.2.0

2 release files

0.1.3

2 release files

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page