TensorFlow Decision Forests (TF-DF) is a library to train, run and
interpret decision forest
models (e.g., Random Forests, Gradient Boosted Trees) in TensorFlow. TF-DF
supports classification, regression and ranking.
TF-DF is powered by
Yggdrasil Decision Forest
(YDF, a library to train and use decision forests in C++, JavaScript, CLI,
and Go. TF-DF models are
compatible
with YDF' models, and vice versa.
Tensorflow Decision Forests is available on Linux and Mac. Windows users can use
the library through WSL+Linux.
Usage example
A minimal end-to-end run looks as follows:
import tensorflow_decision_forests as tfdf
import pandas as pd
train_df = pd.read_csv("project/train.csv")
test_df = pd.read_csv("project/test.csv")
train_ds = tfdf.keras.pd_dataframe_to_tf_dataset(train_df, label="my_label")
test_ds = tfdf.keras.pd_dataframe_to_tf_dataset(test_df, label="my_label")
model = tfdf.keras.RandomForestModel()
model.fit(train_ds)
model.summary()
model.evaluate(test_ds)
model.save("project/model")
Google I/O Presentation
Documentation & Resources
The following resources are available:
Installation
To install TensorFlow Decision Forests, run:
pip3 install tensorflow_decision_forests --upgrade
See the installation page for more details,
troubleshooting and alternative installation solutions.
Contributing
Contributions to TensorFlow Decision Forests and Yggdrasil Decision Forests are
welcome. If you want to contribute, make sure to review the
developer manual and
contribution guidelines.
Citation
If you us Tensorflow Decision Forests in a scientific publication, please cite
the following paper:
Yggdrasil Decision Forests: A Fast and Extensible Decision Forests Library.
Bibtex
@inproceedings{GBBSP23,
author = {Mathieu Guillame{-}Bert and
Sebastian Bruch and
Richard Stotz and
Jan Pfeifer},
title = {Yggdrasil Decision Forests: {A} Fast and Extensible Decision Forests
Library},
booktitle = {Proceedings of the 29th {ACM} {SIGKDD} Conference on Knowledge Discovery
and Data Mining, {KDD} 2023, Long Beach, CA, USA, August 6-10, 2023},
pages = {4068--4077},
year = {2023},
url = {https://doi.org/10.1145/3580305.3599933},
doi = {10.1145/3580305.3599933},
}
Raw
Yggdrasil Decision Forests: A Fast and Extensible Decision Forests Library,
Guillame-Bert et al., KDD 2023: 4068-4077. doi:10.1145/3580305.3599933
Contact
You can contact the core development team at
decision-forests-contact@google.com.
Credits
TensorFlow Decision Forests was developed by:
- Mathieu Guillame-Bert (gbm AT google DOT com)
- Jan Pfeifer (janpf AT google DOT com)
- Richard Stotz (richardstotz AT google DOT com)
- Sebastian Bruch (sebastian AT bruch DOT io)
- Arvind Srinivasan (arvnd AT google DOT com)
License
Apache License 2.0