Gradient boosting

Machine Learning met boomgebaseerde modellen in R

Sandro Raabe

Data Scientist

Herhaling: boosting

  • Gebruikt zwakke learners (bv. beslisbomen met één split) die net beter presteren dan toeval
  • Telt deze zwakke learners op en filtert correcte voorspellingen weg
  • Pakt bij elke stap de overgebleven lastige observaties aan

 

  • AdaBoost: eerste populaire boosting-algoritme
  • Gradient Boosting: verbetering op AdaBoost
Machine Learning met boomgebaseerde modellen in R

Vergelijking

Adaboost
  • Gebruikt decision stumps als zwakke learners
  • Geeft gewichten aan observaties:
    • Hoog gewicht voor lastige observaties
    • Laag gewicht voor correcte voorspellingen
Gradient boosting
  • Gebruikt kleine beslisbomen als zwakke learners
  • Verliesfunctie in plaats van gewichten
  • Optimaliseert de verliesfunctie met gradient descent
Machine Learning met boomgebaseerde modellen in R

Voor- en nadelen van boosting

 

Voordelen

  • Behoort tot de best presterende ML-modellen
  • Goede optie voor ongebalanceerde data

 

Nadelen

  • Gevoelig voor overfitting
  • Training kan traag zijn (afhankelijk van de hyperparameter learning rate)
  • Veel hyperparameters om af te stemmen
Machine Learning met boomgebaseerde modellen in R

Hyperparameters voor gradient boosting

Bekend van simpele beslisbomen
  • min_n: minimum aantal datapunten in een node dat nodig is om verder te splitsen
  • tree_depth: maximale diepte van de boom / aantal splits
Bekend van random forests en bagged trees:
  • sample_size: hoeveelheid data die aan de fitroutine wordt blootgesteld
  • trees: aantal bomen in de ensemble
Machine Learning met boomgebaseerde modellen in R

Hyperparameters voor gradient boosting

Bekend van random forests:
  • mtry: aantal voorspellers dat bij elke split willekeurig wordt gekozen
Specifiek voor boosted trees:
  • learn_rate: snelheid waarmee het boosting-algoritme per iteratie bijstuurt
  • loss_reduction: vereiste reductie in de verliesfunctie om verder te splitsen
  • stop_iter: aantal iteraties zonder verbetering vóór stoppen
Machine Learning met boomgebaseerde modellen in R

Laten we oefenen!

Machine Learning met boomgebaseerde modellen in R

Preparing Video For Download...