Skip to main content

Package for interpreting scikit-learn's decision tree and random forest predictions.

Project description

Package for interpreting scikit-learn’s decision tree and random forest predictions. Allows decomposing each prediction into bias and feature contribution components as described in http://blog.datadive.net/interpreting-random-forests/. For a dataset with n features, each prediction on the dataset is decomposed as prediction = bias + feature_1_contribution + ... + feature_n_contribution.

It works on scikit-learn’s

  • DecisionTreeRegressor

  • DecisionTreeClassifier

  • ExtraTreeRegressor

  • ExtraTreeClassifier

  • RandomForestRegressor

  • RandomForestClassifier

  • ExtraTreesRegressor

  • ExtraTreesClassifier

Free software: BSD license

Dependencies

  • scikit-learn 0.17+

Installation

The easiest way to install the package is via pip:

$ pip install treeinterpreter

Usage

from treeinterpreter import treeinterpreter as ti
# fit a scikit-learn's regressor model
rf = RandomForestRegressor()
rf.fit(trainX, trainY)

prediction, bias, contributions = ti.predict(rf, testX)

Prediction is the sum of bias and feature contributions:

assert(numpy.allclose(prediction, bias + np.sum(contributions, axis=1)))
assert(numpy.allclose(rf.predict(testX), bias + np.sum(contributions, axis=1)))

More usage examples at http://blog.datadive.net/random-forest-interpretation-with-scikit-learn/.

History

0.1.0 (2015-07-22)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

treeinterpreter-0.2.3.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

treeinterpreter-0.2.3-py2.py3-none-any.whl (6.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file treeinterpreter-0.2.3.tar.gz.

File metadata

  • Download URL: treeinterpreter-0.2.3.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.6

File hashes

Hashes for treeinterpreter-0.2.3.tar.gz
Algorithm Hash digest
SHA256 da5c24f802f7d072bc457b6e4b289d5ee41961ce33437e8dc439a2cfd9c6d994
MD5 5474dc4baa6c4638551786693a4418c0
BLAKE2b-256 0c42de8d55dd4567699e55fc1901aaf05eab2bb00138374ad045ba7f53ed4596

See more details on using hashes here.

File details

Details for the file treeinterpreter-0.2.3-py2.py3-none-any.whl.

File metadata

  • Download URL: treeinterpreter-0.2.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.6

File hashes

Hashes for treeinterpreter-0.2.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 48660bbddd4577e28655abf0ffb77eb8b8e57d771e32503be56737103aa457a4
MD5 9a4726867b84561216966eb34a61f495
BLAKE2b-256 af19fa8556093f6b8c7374825118e05cf5a99c71262392382c3642ab1fd8a742

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page