# Yggdrasil Decision Forests: A Fast and Extensible Decision Forests Library

arXiv: https://arxiv.org/abs/2212.02934 · HTML: https://mlsanity.com/paper/2212.02934/

## Key facts

- Cited by 13 papers in the map (data through 14 Oct 2026).
- Builds on 9 of its 38 references that are in the map.
- First posted on arXiv 6 Dec 2022.

## Builds on (most cited first, 9 of 9)

- [XGBoost: A Scalable Tree Boosting System](https://mlsanity.com/paper/1603.02754/) (2016)
- [OpenML: networked science in machine learning](https://mlsanity.com/paper/1407.7722/) (2014)
- [Neural Oblivious Decision Ensembles for Deep Learning on Tabular Data](https://mlsanity.com/paper/1909.06312/) (2019)
- [ranger: A Fast Implementation of Random Forests for High Dimensional Data in C++ and R](https://mlsanity.com/paper/1508.04409/) (2015)
- [Sparse Projection Oblique Randomer Forests](https://mlsanity.com/paper/1506.03410/) (2015)
- [Learning Representations for Axis-Aligned Decision Forests through Input Perturbation](https://mlsanity.com/paper/2007.14761/) (2020)
- [TF Boosted Trees: A scalable TensorFlow based framework for gradient boosting](https://mlsanity.com/paper/1710.11555/) (2017)
- [Exact Distributed Training: Random Forest with Billions of Examples](https://mlsanity.com/paper/1804.06755/) (2018)
- [Modeling Text with Decision Forests using Categorical-Set Splits](https://mlsanity.com/paper/2009.09991/) (2020)

## Built on by (most cited first, 13 of 13)

- [A Comparison of Decision Forest Inference Platforms from A Database Perspective](https://mlsanity.com/paper/2302.04430/) (2023)
- [Local-Global Methods for Generalised Solar Irradiance Forecasting](https://mlsanity.com/paper/2303.06010/) (2023)
- [A Bring-Your-Own-Model Approach for ML-Driven Storage Placement in Warehouse-Scale Computers](https://mlsanity.com/paper/2501.05651/) (2025)
- [Is it Bigger than a Breadbox: Efficient Cardinality Estimation for Real World Workloads](https://mlsanity.com/paper/2510.03386/) (2025)
- [Boosting gets full Attention for Relational Learning](https://mlsanity.com/paper/2402.14926/) (2024)
- [Relationships are Complicated! An Analysis of Relationships Between Datasets on the Web](https://mlsanity.com/paper/2408.14636/) (2024)
- [Development of an Edge Resilient ML Ensemble to Tolerate ICS Adversarial Attacks](https://mlsanity.com/paper/2409.18244/) (2024)
- [ALF: Advertiser Large Foundation Model for Multi-Modal Advertiser Understanding](https://mlsanity.com/paper/2504.18785/) (2025)
- [Classification of Cattle Behavior and Detection of Heat (Estrus) using Sensor Data](https://mlsanity.com/paper/2506.16380/) (2025)
- [InferF: Declarative Factorization of AI/ML Inferences over Joins](https://mlsanity.com/paper/2511.20489/) (2025)
- [Vectorized Dynamic Histograms for Sparse Oblique Forests](https://mlsanity.com/paper/2603.00326/) (2026)
- [Fuzzy Accuracy Compensates for Label Subjectivity in Classification of Skin Tone Using Wearable Photoplethysmography Signals](https://mlsanity.com/paper/2608.18969/) (2026)
- [TreeWalker: Partial Evaluation for Grouped Tree-Ensemble Inference](https://mlsanity.com/paper/2610.03939/) (2026)

## Abstract (arXiv)

Yggdrasil Decision Forests is a library for the training, serving and interpretation of decision forest models, targeted both at research and production work, implemented in C++, and available in C++, command line interface, Python (under the name TensorFlow Decision Forests), JavaScript, Go, and Google Sheets (under the name Simple ML for Sheets). The library has been developed organically since 2018 following a set of four design principles applicable to machine learning libraries and frameworks: simplicity of use, safety of use, modularity and high-level abstraction, and integration with other machine learning libraries. In this paper, we describe those principles in detail and present how they have been used to guide the design of the library. We then showcase the use of our library on a set of classical machine learning problems. Finally, we report a benchmark comparing our library to related solutions.
