scikit-learn addon to operate on set/"group"-based features

Overview

Travis

skl-groups

skl-groups is a package to perform machine learning on sets (or "groups") of features in Python. It extends the scikit-learn library with support for either transforming sets into feature vectors that can be operated on with standard scikit-learn constructs or obtaining pairwise similarity/etc matrices that can be turned into kernels for use in scikit-learn.

For an introduction to the package, why you might want to use it, and how to do so, check out the documentation.

skl-groups is still in fairly early development. The precursor package, py-sdm, is still somewhat easier to use for some tasks (though it has less functionality and less documentation); skl-groups will hopefully match it in the next few weeks. Feel free to get in touch ([email protected]) if you're interested.

Installation

Full instructions are in the documentation, but the short version is to do:

$ conda install -c dougal -c r skl-groups

if you use conda, or:

$ pip install skl-groups

if not. If you pip install and want to use the kNN divergence estimator, you'll need to install either cyflann or the regular pyflann bindings to FLANN, and you'll want a version of FLANN with OpenMP support.

A much faster version of the kNN estimator is enabled by the skl-groups-accel package, which you can get via:

$ pip install skl-groups-accel

It requires cyflann and a working C compiler with OpenMP support (i.e. gcc, not clang).

Owner
Danica J. Sutherland
Machine learning professor.
Danica J. Sutherland
A scikit-learn-compatible Python implementation of ReBATE, a suite of Relief-based feature selection algorithms for Machine Learning.

Master status: Development status: Package information: scikit-rebate This package includes a scikit-learn-compatible Python implementation of ReBATE,

Epistasis Lab at UPenn 374 Dec 15, 2022
a feature engineering wrapper for sklearn

Few Few is a Feature Engineering Wrapper for scikit-learn. Few looks for a set of feature transformations that work best with a specified machine lear

William La Cava 47 Nov 18, 2022
An open source python library for automated feature engineering

"One of the holy grails of machine learning is to automate more and more of the feature engineering process." ― Pedro Domingos, A Few Useful Things to

alteryx 6.4k Jan 05, 2023
Python implementations of the Boruta all-relevant feature selection method.

boruta_py This project hosts Python implementations of the Boruta all-relevant feature selection method. Related blog post How to install Install with

1.2k Jan 04, 2023
Automatic extraction of relevant features from time series:

tsfresh This repository contains the TSFRESH python package. The abbreviation stands for "Time Series Feature extraction based on scalable hypothesis

Blue Yonder GmbH 7k Jan 03, 2023
A sklearn-compatible Python implementation of Multifactor Dimensionality Reduction (MDR) for feature construction.

Master status: Development status: Package information: MDR A scikit-learn-compatible Python implementation of Multifactor Dimensionality Reduction (M

Epistasis Lab at UPenn 122 Jul 06, 2022
A fast xgboost feature selection algorithm

BoostARoota A Fast XGBoost Feature Selection Algorithm (plus other sklearn tree-based classifiers) Why Create Another Algorithm? Automated processes l

Chase DeHan 187 Dec 22, 2022
open-source feature selection repository in python

scikit-feature Feature selection repository scikit-feature in Python. scikit-feature is an open-source feature selection repository in Python develope

Jundong Li 1.3k Jan 05, 2023
scikit-learn addon to operate on set/"group"-based features

skl-groups skl-groups is a package to perform machine learning on sets (or "groups") of features in Python. It extends the scikit-learn library with s

Danica J. Sutherland 41 Apr 06, 2022
A set of tools for creating and testing machine learning features, with a scikit-learn compatible API

Feature Forge This library provides a set of tools that can be useful in many machine learning applications (classification, clustering, regression, e

Machinalis 380 Nov 05, 2022