Blog

Learn About Our Meetup

4500+ Members

[P] baikal: A graph-based functional API for building complex scikit-learn pipelines

[P] baikal: A graph-based functional API for building complex scikit-learn pipelines

Hello everyone.

I’d like to share a project I’ve been working on: https://github.com/alegonz/baikal

baikal is a graph-based, functional API for building complex machine learning pipelines of objects that implement the scikit-learn API.

It aims to make easier the process of building, fitting, predicting with, and querying complex pipelines, while making the code more readable, less verbose and closer to our mental representation of the pipeline.

You can think of it as “scikit-learn meets Keras”. With it you can write a pipeline that looks like this:

Some contrived pipeline for illustrative purposes

with code that looks like this:

x1 = Input() x2 = Input() y_t = Input() y1 = ExtraTreesClassifier()(x1, y_t) y2 = RandomForestClassifier()(x2, y_t) z = PowerTransformer()(x2) z = PCA()(z) y3 = LogisticRegression()(z, y_t) ensemble_features = Stack()([y1, y2, y3]) y = SVC()(ensemble_features, y_t) model = Model([x1, x2], y, y_t) 

A more detailed explanation of the project is in the README, and there are also some examples.

It is available from PyPI if you would like to give it a try (some features are still work-in-progress, though). Any feedback is greatly appreciated 🙂

submitted by /u/algnz
[link] [comments]

Next Meetup

 

Days
:
Hours
:
Minutes
:
Seconds

 

Plug yourself into AI and don't miss a beat

 


Toronto AI is a social and collaborative hub to unite AI innovators of Toronto and surrounding areas. We explore AI technologies in digital art and music, healthcare, marketing, fintech, vr, robotics and more. Toronto AI was founded by Dave MacDonald and Patrick O'Mara.