achennu / sklearn-hierarchical-classification

Hierarchical classification module based on scikit-learn's interfaces

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sklearn-hierarchical-classification

CircleCI

Hierarchical classification module based on scikit-learn's interfaces and conventions.

See the GitHub Pages hosted documentation here.

Installation

To install, simply install this package via pip into your desired virtualenv, e.g:

pip install sklearn-hierarchical-classification

Usage

See examples/ for usage examples.

Jupyter notebooks

Support for interactive development is built in to the HierarchicalClassifier class. This will enable progress bars (using the excellent tqdm library) in various places during training and may otherwise enable more visibility into the classifier which is useful during interactive use. To enable this make sure widget extensions are enabled by running:

jupyter nbextension enable --py --sys-prefix widgetsnbextension

You can then instantiate a classifier with the interactive=True flag set:

clf = HierarchicalClassifier(
    base_estimator=svm.LinearSVC(),
    class_hierarchy=class_hierarchy,
    progress_wrapper=tqdm_notebook,
)

Documentation

Auto-generated documentation is provided via sphinx. To build / view:

$ cd docs/
$ make html
$ open build/html/index.html

Documentation is published to GitHub pages from the gh-pages branch. If you are a contributor and need to update documentation, a good starting point for getting setup is this tutorial.

Further Reading

this module is heavily influenced by the following previous work and papers:

About

Hierarchical classification module based on scikit-learn's interfaces

License:Apache License 2.0


Languages

Language:Python 97.5%Language:Shell 2.5%