Skip to main content

No project description provided

Project description

mlflowgo is a Python package that simplifies and enhances the integration of MLflow with your machine learning workflows. It provides a set of utilities and helper functions to streamline the process of tracking experiments, logging artifacts, and managing machine learning models using MLflow.

Spend your time on evaluating, refining and productionising your models rather than recycling out the same code - grab a tea/coffee and let mlflowgo do the rest.

Features

  • Quickly find an appropriate ML model for your dataset.
  • Log various types of artifacts, such as plots, reports, and data samples.
  • Streamline the tracking of model parameters and metrics.
  • Supports a range of machine learning frameworks and libraries.

Installation

You can install mlflowgo using pip:

pip install mlflowgo

When using mlflowgo, if you receive an error relating to the missing file: libomp.dylib, try running conda install -c conda-forge lightgbm

Classifier models considered by default

Some models do not auto generate SHAP plots due to memory demand and slow calculation time

Model Name Includes SHAP (Y/N)
AdaBoostClassifier N
DecisionTreeClassifier Y
ExtraTreesClassifier Y
GaussianProcessClassifier Y
GradientBoostingClassifier Y
KNeighborsClassifier N
LabelPropagation N
LabelSpreading N
LGBMClassifier Y
LinearDiscriminantAnalysis N
LinearSVC N
LogisticRegression Y
MLPClassifier N
NearestCentroid N
NuSVC Y
PassiveAggressiveClassifier Y
Perceptron Y
QuadraticDiscriminantAnalysis N
RandomForestClassifier Y
RidgeClassifier Y
SGDClassifier Y
SVC N
XGBClassifier Y

Regression models considered by default

Model Name Includes SHAP (Y/N)
AdaBoostRegressor Y
ARDRegression Y
BayesianRidge Y
DecisionTreeRegressor Y
ElasticNet Y
ExtraTreeRegressor Y
ExtraTreesRegressor Y
GammaRegressor Y
GaussianProcessRegressor Y
GradientBoostingRegressor Y
HistGradientBoostingRegressor Y
KNeighborsRegressor Y
HuberRegressor Y
IsotonicRegression Y
Lars Y
Lasso Y
LassoLars Y
LassoLarsIC Y
LGBMRegressor Y
LinearRegression Y
LinearSVR Y
MLPRegressor N
NuSVR Y
OrthogonalMatchingPursuit Y
PassiveAggressiveRegressor Y
PoissonRegressor Y
RandomForestRegressor Y
Ridge Y
SGDRegressor Y
SVR N
TheilSenRegressor Y
TweedieRegressor Y
XGBRegressor Y

Example run 1:

Simple example using the sklearn dataset, in this case we assume some prior knowledge of which model will work best for this dataset.

from mlflowgo.mlflowgo import MLFlowGo
from sklearn.pipeline import Pipeline
from sklearn.ensemble import RandomForestClassifier
from sklearn import datasets
import pandas as pd
import numpy as np

iris = datasets.load_iris()
data = pd.DataFrame(
    data=np.c_[iris['data'],
               iris['target']],
    columns=np.append(iris['feature_names'], ['target'])
)

model = Pipeline(
        [('model', RandomForestClassifier(n_estimators=100))]
    )

We can leverage mlflowgo with:

mlflow_go = MLFlowGo(experiment_name="Iris_Classification_Experiment")

mlflow_go.run_experiment(pipeline=model,
                         X=data.drop(columns=['target']),
                         y=data['target'])

Example run 2

Using the same Iris toy dataset we can run an experiment with mlflowgo without defining any pipelines up front.

iris = datasets.load_iris()
data = pd.DataFrame(
    data=np.c_[iris['data'],
               iris['target']],
    columns=np.append(iris['feature_names'], ['target'])
)

mlflow_go = MLFlowGo(experiment_name="Iris_Classification_Experiment")

mlflow_go.run_experiment(X=data.drop(columns=['target']),
                         y=data['target'])

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

mlflowgo-1.0.2.tar.gz (28.8 kB view details)

Uploaded Source

Built Distribution

mlflowgo-1.0.2-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file mlflowgo-1.0.2.tar.gz.

File metadata

  • Download URL: mlflowgo-1.0.2.tar.gz
  • Upload date:
  • Size: 28.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.6 Darwin/21.6.0

File hashes

Hashes for mlflowgo-1.0.2.tar.gz
Algorithm Hash digest
SHA256 636f8ee55511fe57d44cb678f5d533e95d3c460dc4bf291685b74c7af346e9c3
MD5 6b1f04cf77ff0c92533e68f76094aee0
BLAKE2b-256 0d53204e371adf156b8576ec9f70ca749476f48e4ca963bc57161df9373699f4

See more details on using hashes here.

File details

Details for the file mlflowgo-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: mlflowgo-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 31.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.6 Darwin/21.6.0

File hashes

Hashes for mlflowgo-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 33a9bf428ee1b75bd3a83d84bd18aa1e1a687d4667ffdbe5752fb4582dd156f9
MD5 23cdcfe45a1de45753d6a5df664067da
BLAKE2b-256 73529bb7bf7a12404090bce87ff729dc5d6310f75419a194c8e3d685f1c39424

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page