J'essaie de comprendre les principales différences entre GBM et XGBOOST. J'ai essayé de le rechercher sur Google, mais je n'ai trouvé aucune bonne réponse expliquant les différences entre les deux algorithmes et expliquant pourquoi xgboost fonctionne presque toujours mieux que GBM. Qu'est-ce qui rend XGBOOST si rapide?
41
Réponses:
Citation de l'auteur de
xgboost
:Edit: Il existe un guide détaillé de xgboost qui montre plus de différences.
Les références
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
la source
En plus de la réponse donnée par Icyblade, les développeurs de xgboost ont apporté un certain nombre d’améliorations importantes des performances de différentes parties de l’implémentation, qui améliorent considérablement la vitesse et l’utilisation de la mémoire:
D'après mon expérience dans l'utilisation de GBM et de xgboost lors de la formation de grands ensembles de données (plus de 5 millions d'enregistrements), l'utilisation de la mémoire (en R) a été considérablement réduite pour le même ensemble de données et il est plus facile d'utiliser plusieurs cœurs pour réduire le temps de formation.
la source
Une différence très importante est la
xgboost
mise en œuvre de DART, la régularisation des abandons pour les arbres de régression .Les références
Rashmi, KV, et Gilad-Bachrach, R. (2015). Dart: Les abandons rencontrent plusieurs arbres de régression additifs. Préimpression arXiv arXiv: 1505.01866.
la source
Je pense que la différence entre l'amplification progressive et le Xgboost réside dans xgboost. L'algorithme se concentre sur la puissance de calcul, en parallélisant la formation d'arborescence que l'on peut voir dans ce blog .
L'amélioration progressive ne met l'accent que sur la variance, mais pas sur le compromis entre les biais, lorsque l'augmentation xg peut également se concentrer sur le facteur de régularisation.
la source
L'implémentation de XGBoost est boguée. Crashed silencieusement lors de l’entraînement sur GPU sous la v 082 . Cela m'est arrivé également sur la version 0.90 , le problème n'a donc pas été résolu jusqu'à présent et le "correctif" fourni dans GitHub ne fonctionnait pas pour moi.
LGBM 2.3.1 fonctionne à merveille, bien que son installation demande un peu plus d'effort. Jusqu'à présent, aucun problème de formation sur GPU.
À propos de XGBoost étant " si rapide ", vous devriez jeter un oeil à ces points de repère .
la source