CatBoost [ 6 ]はYandexが開発したオープンソースのソフトウェアライブラリです。勾配ブースティングフレームワークを提供し、他の機能の中でも、古典的なアルゴリズムに代わる順列駆動型の方法でカテゴリカル特徴量を解決しようとします。[ 7 ] Linux、Windows、macOSで動作し、 Python [ 8 ] R [ 9 ]で利用可能です。CatBoostを使用して構築されたモデルは、 C++、Java [ 10 ] C#、Rust、Core ML、ONNX、およびPMMLでの予測に使用できます。ソースコードはApache License の下でライセンスされており、GitHub で入手できます。[ 6 ]
InfoWorld誌は2017年にこのライブラリを「最高の機械学習ツール」に選出した。 [ 11 ] TensorFlow、 Pytorch、 XGBoost、その他8つのライブラリと共に
KaggleはCatBoostを世界で最もよく使われている機械学習(ML)フレームワークの1つとして挙げています。2020年の調査では最もよく使われているMLフレームワークのトップ8にランクインし[ 12 ]、2021年の調査では最もよく使われているMLフレームワークのトップ7にランクインしました[ 13 ] 。
CatBoostは、主に以下の特徴により、他の勾配ブースティングアルゴリズムと比較して人気が高まっています[ 15 ]。
2009年、アンドレイ・グリンは、Yandexで検索結果のランキング付けに使用された独自の勾配ブースティングライブラリであるMatrixNetを開発しました。2009年以降、MatrixNetはYandexのレコメンデーションシステムや天気予報など、さまざまなプロジェクトで使用されています。
2014年から2015年にかけて、アンドレイ・グリンは研究者チームと共に、カテゴリデータの扱い方という課題解決を目的としたTensornetという新しいプロジェクトを開始しました。彼らの研究成果として、カテゴリデータの処理方法が異なる複数の独自の勾配ブースティングライブラリが開発されました。
2016年、アンナ・ドログシュ率いる機械学習インフラストラクチャチームは、YandexでMatrixNetやTensorNetを含む勾配ブースティングの開発に着手しました。彼らは、カテゴリデータとテキストデータ、GPUトレーニング、モデル分析、および可視化ツールをサポートする、CatBoostと呼ばれる勾配ブースティングライブラリの次期バージョンを実装し、オープンソース化しました。
CatBoostは2017年7月にオープンソース化され、Yandexとオープンソースコミュニティで活発に開発が進められています。