A Unified Approach to Extract Interpretable Rules from Tree Ensembles via Integer Programming

Lorenzo Bonasera, Emilio Carrizosa
6/30/2024
math.OCcs.LG

No confident code implementation found for this paper.

Abstract

Tree ensembles are very popular machine learning models, known for their effectiveness in supervised classification and regression tasks. Their performance derives from aggregating predictions of multiple decision trees, which are renowned for their interpretability properties. However, tree ensemble models do not reliably exhibit interpretable output. Our work aims to extract an optimized list of rules from a trained tree ensemble, providing the user with a condensed, interpretable model that retains most of the predictive power of the full model. Our approach consists of solving a set partitioning problem formulated through Integer Programming. The proposed method works with either tabular or time series data, for both classification and regression tasks, and its flexible formulation can include any arbitrary loss or regularization functions. Our extensive computational experiments offer statistically significant evidence that our method is competitive with other rule extraction methods in terms of predictive performance and fidelity towards the tree ensemble. Moreover, we empirically show that the proposed method effectively extracts interpretable rules from tree ensemble that are designed for time series data.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{bonasera2024unified,
  title  = {A Unified Approach to Extract Interpretable Rules from Tree Ensembles via Integer Programming},
  author = {Lorenzo Bonasera and Emilio Carrizosa},
  year   = {2024},
  eprint = {2407.00843},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2407.00843v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2407.00843.svg)](https://codeofpaper.com/paper/2407.00843)

Discussion