Skip to main content

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.

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

If you're not sure about the file name format, learn more about wheel file names.

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.

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

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