Optimal Sparse Decision Trees

by   Xiyang Hu, et al.

Decision tree algorithms have been among the most popular algorithms for interpretable (transparent) machine learning since the early 1980's. The problem that has plagued decision tree algorithms since their inception is their lack of optimality, or lack of guarantees of closeness to optimality: decision tree algorithms are often greedy or myopic, and sometimes produce unquestionably suboptimal models. Hardness of decision tree optimization is both a theoretical and practical obstacle, and even careful mathematical programming approaches have not been able to solve these problems efficiently. This work introduces the first practical algorithm for optimal decision trees for binary variables. The algorithm is a co-design of analytical bounds that reduce the search space and modern systems techniques, including data structures and a custom bit-vector library. We highlight possible steps to improving the scalability and speed of future generations of this algorithm based on insights from our theory and experiments.


page 1

page 2

page 3

page 4


Generalized Optimal Sparse Decision Trees

Decision tree optimization is notoriously difficult from a computational...

MurTree: Optimal Classification Trees via Dynamic Programming and Search

Decision tree learning is a widely used approach in machine learning, fa...

Scheduling optimization of parallel linear algebra algorithms using Supervised Learning

Linear algebra algorithms are used widely in a variety of domains, e.g m...

On the Optimality of Trees Generated by ID3

Since its inception in the 1980s, ID3 has become one of the most success...

bsnsing: A decision tree induction method based on recursive optimal boolean rule composition

This paper proposes a new mixed-integer programming (MIP) formulation to...

Learning Optimal Decision Trees from Large Datasets

Inferring a decision tree from a given dataset is one of the classic pro...

A cautionary tale on fitting decision trees to data from additive models: generalization lower bounds

Decision trees are important both as interpretable models amenable to hi...

Code Repositories


Optimal Sparse Decision Trees

view repo