There is a newer version of this record available.

Software Open Access

datascienceinc/Skater: Enable Interpretability via Rule Extraction(BRL)

Pramit Choudhary; Aaron Kramer; team

Dublin Core Export

<?xml version='1.0' encoding='utf-8'?>
<oai_dc:dc xmlns:dc="" xmlns:oai_dc="" xmlns:xsi="" xsi:schemaLocation="">
  <dc:contributor>Ben Van Dyke</dc:contributor>
  <dc:contributor>Dave Thompson</dc:contributor>
  <dc:creator>Pramit Choudhary</dc:creator>
  <dc:creator>Aaron Kramer</dc:creator>
  <dc:creator> team</dc:creator>
	Skater till now has been an interpretation engine to enable post-hoc model evaluation and interpretation. With this PR Skater starts its journey to support interpretable models. Rule List algorithms are highly popular in the space of Interpretable Models because the trained models are represented as simple decision lists. In the latest release, we enable support for Bayesian Rule Lists(BRL). The probabilistic classifier( estimating P(Y=1|X) for each X ) optimizes the posterior of a Bayesian hierarchical model over the pre-mined rules.

	Usage Example:

	 from skater.core.global_interpretation.interpretable_models.brlc import BRLC
 import pandas as pd
 from sklearn.datasets.mldata import fetch_mldata
 input_df = fetch_mldata("diabetes")
 Xtrain, Xtest, ytrain, ytest = train_test_split(input_df, y, test_size=0.20, random_state=0)

 sbrl_model = BRLC(min_rule_len=1, max_rule_len=10, iterations=10000, n_chains=20, drop_features=True)
 # Train a model, by default discretizer is enabled. So, you wish to exclude features then exclude them using
 # the undiscretize_feature_list parameter
 model =, ytrain, bin_labels="default")

	Other minor bug fixes and documentation update
  <dc:title>datascienceinc/Skater: Enable Interpretability via Rule Extraction(BRL)</dc:title>
All versions This version
Views 642433
Downloads 6521
Data volume 9.1 GB510.1 MB
Unique views 537383
Unique downloads 3413


Cite as