Skip to content

fbenites/sklearn-hierarchical-classification

 
 

Repository files navigation

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 progress_wrapper parameter set to tqdm_notebook:

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.

Testing

Install hamcrest and pytest: pip install PyHamcrest pytest

Further Reading

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

About

Hierarchical classification module based on scikit-learn's interfaces

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.0%
  • Shell 2.0%