Gradientní boosting

Machine Learning with Tree-Based Models in R

Sandro Raabe

Data Scientist

Rekapitulace: boosting

  • Používá slabé učitele (např. rozhodovací stromy pouze s jedním rozdělením), kteří fungují o něco lépe než náhoda
  • Sčítá tyto slabé učitele a odfiltruje správné předpovědi
  • Na každém kroku řeší zbývající obtížná pozorování

 

  • AdaBoost: první populární boostingový algoritmus
  • Gradientní boosting: vylepšení AdaBoostu
Machine Learning with Tree-Based Models in R

Porovnání

Adaboost
  • Používá rozhodovací pahýly jako slabé učitele
  • Přiřazuje váhy pozorováním:
    • Vysoká váha pro obtížná pozorování
    • Nízká váha pro správné předpovědi
Gradientní boosting
  • Používá malé rozhodovací stromy jako slabé učitele
  • Ztrátová funkce místo vah
  • Optimalizace ztrátové funkce pomocí gradientního sestupu
Machine Learning with Tree-Based Models in R

Výhody a nevýhody boostingu

 

Výhody

  • Patří mezi nejlepší modely strojového učení
  • Vhodné pro nevyvážená data

 

Nevýhody

  • Náchylné k přetrénování
  • Trénování může být pomalé (závisí na hyperparametru rychlosti učení)
  • Mnoho ladicích hyperparametrů
Machine Learning with Tree-Based Models in R

Hyperparametry pro gradientní boosting

Známé z jednoduchých rozhodovacích stromů
  • min_n: minimální počet datových bodů v uzlu potřebný k dalšímu rozdělení
  • tree_depth: maximální hloubka stromu / počet rozdělení
Známé z náhodných lesů a baggovaných stromů:
  • sample_size: množství dat předaných do procesu učení
  • trees: počet stromů v souboru
Machine Learning with Tree-Based Models in R

Hyperparametry pro gradientní boosting

Známé z náhodných lesů:
  • mtry: počet prediktorů náhodně vzorkovaných při každém rozdělení
Speciální pro posílené stromy:
  • learn_rate: rychlost přizpůsobení algoritmu mezi iteracemi
  • loss_reduction: snížení ztrátové funkce potřebné k dalšímu rozdělení
  • stop_iter: počet iterací bez zlepšení před zastavením
Machine Learning with Tree-Based Models in R

Pojďme si procvičit!

Machine Learning with Tree-Based Models in R

Preparing Video For Download...