Skip to main content

Lightweight ML experiment tracker — log, compare and visualize your ML experiments locally

Project description

MLens (pymlens)

MLens is a lightweight ML experiment tracking tool that helps data scientists log, compare, and visualize their model experiments — all running fully locally on your machine.

Installation

pip install pymlens

Why MLens

Managing multiple experiments manually becomes chaotic and time-consuming. After running several models, it becomes difficult to track which model performed best and on which problem. MLens eliminates this problem by automatically recording all your experiments in one place.


Features

  • Easy to use — minimal code changes required
  • Runs fully locally — no cloud, no data leaves your machine
  • Server starts automatically — no manual setup needed
  • Records each experiment and their results automatically
  • Compare model performance visually via Streamlit dashboard
  • Supports vanilla metrics out of the box
  • Preferable for Supervised Learning with Scikit-learn

Requirements

pip install pymlens

All dependencies install automatically.


Usage/Examples

from pymlens import Experiment
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.linear_model import LogisticRegression

x, y = load_iris(return_X_y=True)

with Experiment("Iris_Classification") as exp:
    try:
        xtrain, xval, ytrain, yval = train_test_split(
            x, y, test_size=0.2, random_state=42
        )
        exp.Start_experiment(
            xtrain, ytrain,
            Xtest=xval, ytest=yval,
            model=LogisticRegression()
        )
        exp.Start_experiment(
            xtrain, ytrain,
            Xtest=xval, ytest=yval,
            model=RandomForestClassifier()
        )
    except Exception as e:
        print(f"An error occurred: {e}")
    finally:
        print("Experiment Completed")

View Dashboard

After running experiments, open the dashboard with one command:

python -m pymlens dashboard

Dashboard will open automatically in your browser.


How It Works

  1. Import Experiment and declare an experiment name
  2. Run multiple models inside the same experiment block
  3. MLens automatically tracks accuracy and model details
  4. Open dashboard to compare all experiments visually

Demo

Demo


Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 6


Optimizations

Have suggestions? Join the Discord and share your ideas.


Feedback

Join the Discord community: https://discord.gg/svx4Sfckz


Links

portfolio


Author

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

pymlens-1.1.0.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymlens-1.1.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file pymlens-1.1.0.tar.gz.

File metadata

  • Download URL: pymlens-1.1.0.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for pymlens-1.1.0.tar.gz
Algorithm Hash digest
SHA256 b9a8609a959074193fb671f27938e586de728f6b3ab335ec7a4d462a7e051092
MD5 18c65b189e0653b30b7f00997baa3e65
BLAKE2b-256 0c7d564de7176957c606034d60bea0c17ebc8a62e38067d564e9b4d59b90273d

See more details on using hashes here.

File details

Details for the file pymlens-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: pymlens-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for pymlens-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4e0c24d89357713a764e8d2166c819bb446763294e467f62536b56d0fc949386
MD5 b346e6e91563acc79a05f926f898ee9d
BLAKE2b-256 500ca6836045b42b7ba14a00d2520c8b8d0b45f2edff055b7b6cf9d817202923

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