Реализация байесовских деревьев аддитивной регрессии (BART) в JAX.
Если вы не знаете, что такое BART, но знаете XGBoost, считайте BART своего рода байесовским XGBoost. bartz заставляет BART работать так же быстро, как XGBoost.
BART — это метод непараметрической байесовской регрессии. Учитывая обучающие предикторы
Этот модуль Python предоставляет реализацию BART, работающую на графическом процессоре, для более быстрой обработки больших наборов данных. Это также хорошо для процессора. Большинство других реализаций BART предназначены для R и работают только на процессоре.
На процессоре bartz работает со скоростью dbarts (самая быстрая реализация, которую я знаю), если n > 20 000, но использует 1/20 памяти. На графическом процессоре надбавка за скорость зависит от размера выборки; это удобно для ЦП только для n > 10 000. Максимальное ускорение в настоящее время составляет 200 раз на Nvidia A100 и при наличии не менее 2 000 000 наблюдений.
Этот блокнот Colab запускает bartz с n = 100 000 наблюдений, p = 1000 предикторов, 10 000 деревьев, для 1000 итераций MCMC за 5 минут.
Статья: Петрилло (2024 г.), «Очень быстрые деревья байесовской аддитивной регрессии на графическом процессоре», arXiv:2410.23244.
Чтобы напрямую указать программное обеспечение, включая конкретную версию, используйте zenodo.