Я пытаюсь понять ключевые различия между GBM и XGBOOST. Я пытался найти его в Google, но не смог найти хороших ответов, объясняющих различия между двумя алгоритмами и почему xgboost почти всегда работает лучше, чем GBM. Что делает XGBOOST таким быстрым?
41
Ответы:
Цитата от автора
xgboost
:Изменить: есть подробное руководство по xgboost, которое показывает больше различий.
Ссылки
https://www.quora.com/What-is-the-difference-between-the-R-gbm-gradient-boosting-machine-and-xgboost-extreme-gradient-boosting
https://xgboost.readthedocs.io/en/latest/tutorials/model.html
источник
В дополнение к ответу, данному Icyblade, разработчики xgboost внесли ряд важных улучшений производительности в различные части реализации, которые имеют большое значение в скорости и использовании памяти:
Исходя из моего опыта использования GBM и xgboost при обучении больших наборов данных (более 5 миллионов записей), я испытал значительно меньшее использование памяти (в R) для одного и того же набора данных и обнаружил, что проще использовать несколько ядер для сокращения времени обучения.
источник
Одно очень важное отличие заключается в
xgboost
реализации DART, регуляризации отсева для деревьев регрессии .Ссылки
Rashmi, KV & Gilad-Bachrach, R. (2015). Дарт: Выпадения встречаются с множеством аддитивных деревьев регрессии. Препринт arXiv arXiv: 1505.01866.
источник
Я думаю, что разница между повышением градиента и Xgboost заключается в xgboost, алгоритм концентрируется на вычислительной мощности, распараллеливая формирование дерева, которое можно увидеть в этом блоге .
Повышение градиента фокусируется только на дисперсии, но не на компромиссе между смещением, тогда как повышение xg также может фокусироваться на факторе регуляризации.
источник
Реализация XGBoost глючит. Сбой молча при обучении на GPU на v 082 . Это также случилось со мной в версии 0.90 , поэтому проблема до сих пор не решена, и исправление, предоставленное в GitHub, не сработало для меня.
LGBM 2.3.1 работает как брелок из коробки, хотя для его установки требуется немного больше усилий. Пока что нет проблем с обучением на GPU.
О том, что XGBoost « так быстр », вы должны взглянуть на эти тесты .
источник