Machine learning regression off-the-shelf
Project description
Machine learning regression (mlregression)
Machine Learning Regression (mlregrresion) is an off-the-shelf implementation fitting and tuning the most popular ML methods (provided by scikit-learn)
Additionally, please contact the authors below if you find any bugs or have any suggestions for improvement. Thank you!
Author: Nicolaj Søndergaard Mühlbach (n.muhlbach at gmail dot com, muhlbach at mit dot edu)
Code dependencies
This code has the following dependencies:
- Python 3.6+
- numpy 1.19+
- pandas 1.3+
- scikit-learn 1+
- xgboost 1.3+
- lightgbm 3.2+
Usage
We demonstrate the use of mlregression below, using random forests, xgboost, and lightGBM as underlying regressors.
#------------------------------------------------------------------------------
# Libraries
#------------------------------------------------------------------------------
# Standard
from sklearn.datasets import make_regression
from sklearn.model_selection import train_test_split
# This library
from mlregression.mlreg import MLRegressor
from mlregression.mlreg import RF
from mlregression.estimator.boosting import XGBRegressor, LGBMegressor
#------------------------------------------------------------------------------
# Data
#------------------------------------------------------------------------------
# Generate data
X, y = make_regression(n_samples=500,
n_features=10,
n_informative=5,
n_targets=1,
bias=0.0,
coef=False,
random_state=1991)
X_train, X_test, y_train, y_test = train_test_split(X, y)
#------------------------------------------------------------------------------
# Main use of MLRegressor
#------------------------------------------------------------------------------
# Instantiate model and specify the underlying regressor by a string
mlreg = MLRegressor(estimator="RandomForestRegressor",
max_n_models=2)
# Fit
mlreg.fit(X=X_train, y=y_train)
# Predict
y_hat = mlreg.predict(X=X_test)
# Access all the usual attributes
mlreg.best_score_
mlreg.best_estimator_
# Compute the score
mlreg.score(X=X_test,y=y_test)
#------------------------------------------------------------------------------
# RF
#------------------------------------------------------------------------------
# Instantiate model
rf = RF(max_n_models=2)
# Fit
rf.fit(X=X_train, y=y_train)
# Predict and score
rf.score(X=X_test, y=y_test)
#------------------------------------------------------------------------------
# XGBoost
#------------------------------------------------------------------------------
# Instantiate model
xgb = MLRegressor(estimator=XGBRegressor(),
max_n_models=2)
# Fit
xgb.fit(X=X_train, y=y_train)
# Predict and score
xgb.score(X=X_test, y=y_test)
#------------------------------------------------------------------------------
# LightGBM
#------------------------------------------------------------------------------
# Instantiate model
lgbm = MLRegressor(estimator=LGBMegressor(),
max_n_models=2)
# Fit
lgbm.fit(X=X_train, y=y_train)
# Predict and score
lgbm.score(X=X_test, y=y_test)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mlregression-0.0.8.tar.gz
.
File metadata
- Download URL: mlregression-0.0.8.tar.gz
- Upload date:
- Size: 18.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01ddf6b7d6181f7cc16d8e2a7cc01cd154024ee1ad21f6240ac624a8f510c99f |
|
MD5 | d72d1ac850544a0fced5c11dcd84b916 |
|
BLAKE2b-256 | 85a6fc56cd5fcffd50e2df5e53234e93c9c781a24f059f9f19180222c0440d73 |
File details
Details for the file mlregression-0.0.8-py3-none-any.whl
.
File metadata
- Download URL: mlregression-0.0.8-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7434d5bdd69c473ad1b78b4b6a5c08ce9cfa86dbcffc5d5f685ccb4044553190 |
|
MD5 | a4f3b2e489654cfb435d29c4747abde6 |
|
BLAKE2b-256 | 59fd42194145bf596bf4453d1b148985448deb7bdd89e59a66e3be71d32bf248 |