XGBoost использует метод аддитивного обучения, в котором он моделирует остатки предыдущей модели.
Это последовательное, хотя, как это делается для параллельных вычислений?
Ответ 1
Xgboost не запускает несколько деревьев параллельно, как вы отметили, вам нужно предсказания после каждого дерева для обновления градиентов.
Скорее, он распараллеливает в одном дереве мое использование openMP для создания ветвей независимо.
Чтобы наблюдать это, создайте гигантский набор данных и запустите с n_rounds = 1. Вы увидите все ваши ядра, стреляющие по одному дереву. Вот почему он так быстро-хорошо спроектирован.