orchardbirds / scikit-lego

missing blocks for sklearn pipelines

Home Page:https://scikit-lego.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build status Documentation Status

scikit-lego

We love scikit learn but very often we find ourselves writing custom transformers, metrics and models. The goal of this project is to attempt to consolidate these into a package that offers code quality/testing. This project is a collaboration between multiple companies in the Netherlands. Note that we're not formally affiliated with the scikit-learn project at all.

Installation

Install scikit-lego via pip with

pip install scikit-lego

Alternatively, to edit and contribute you can fork/clone and run:

$ pip install -e ".[dev]"

Documentation

The documentation can be found here.

Usage

from sklego.transformers import RandomAdder

from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline

...

mod = Pipeline([
    ("scale", StandardScaler()),
    ("random_noise", RandomAdder()),
    ("model", LogisticRegression(solver='lbfgs'))
])

...

New Features

We want to be rather open here in what we accept but we do demand three things before they become added to the project:

  1. any new feature contributes towards a demonstratable real-world usecase
  2. any new feature passes standard unit tests (we have a few for transformers and predictors)
  3. the feature has been discussed in the issue list beforehand

About

missing blocks for sklearn pipelines

https://scikit-lego.readthedocs.io

License:MIT License


Languages

Language:Python 92.7%Language:Jupyter Notebook 7.0%Language:Makefile 0.3%