CatBoost
lastmod 2026-08-03created 2026-07-316 edits
CatBoost is a high-performance open source library for gradient boosting on decision trees.
CatBoost is an open-source software library developed by Yandex. Among other features, it provides a gradient boosting framework that attempts to solve for categorical features using a permutation-driven alternative to the classical algorithm.
Features
CatBoost has gained popularity compared to other gradient boosting algorithms primarily due to the following features.
- Native handling of categorical features
- Fast GPU training
- Visualizations and tools for model and feature analysis
- Use of oblivious trees or symmetric trees for faster execution
- Ordered boosting to overcome overfitting
History
In 2009, Andrey Gulin developed MatrixNet, a proprietary gradient boosting library used at Yandex to rank search results. Since 2009, MatrixNet has been used in various Yandex projects, including recommendation systems and weather forecasting.
In 2014-2015, Andrey Gulin and a team of researchers started a new project called Tensornet, aimed at solving the problem of "how to work with categorical data". This resulted in several proprietary gradient boosting libraries with different approaches to handling categorical data.
In 2016, the machine learning infrastructure team led by Anna Dorogush started working on gradient boosting at Yandex, including Matrixnet and Tensornet. They implemented and open-sourced the next version of the gradient boosting library, called CatBoost, which supports categorical and text data, GPU training, model analysis, and visualization tools.
CatBoost was open-sourced in July 2017 and is actively developed by Yandex and the open source community.
Applications
- JetBrains uses CatBoost for code completion.
- Cloudflare uses CatBoost for bot detection.
- Careem uses CatBoost to predict the future destinations of rides.
See also
- Decision Tree
- Random Forest
- AdaBoost
- Gradient Boosting Tree (GBT; Korean: 그라디언트 부스팅)
- lightGBM
- XGBoost
- CatBoost
- Korean: 기계 학습 (Machine Learning)
- TabPFN
- Scikit-learn
Favorite site
- About the Catboost model - algorithm, implementation code
- Understanding the key concepts and features of Catboost
- [Recommended] CatBoost - CatBoost: theory, formulas, practical application