Gradient boosting

Machine Learning cu modele bazate pe arbori în R

Sandro Raabe

Data Scientist

Recapitulare: boosting

  • Utilizează învățători slabi (ex. arbori de decizie cu o singură divizare) care performează ușor mai bine decât șansa
  • Agregă acești învățători slabi și filtrează predicțiile corecte
  • Gestionează observațiile dificile rămase la fiecare pas

 

  • AdaBoost: primul algoritm popular de boosting
  • Gradient Boosting: îmbunătățire a AdaBoost
Machine Learning cu modele bazate pe arbori în R

Comparație

Adaboost
  • Utilizează cioturi de decizie ca învățători slabi
  • Atribuie ponderi observațiilor:
    • Pondere mare pentru observațiile dificile
    • Pondere mică pentru predicțiile corecte
Gradient boosting
  • Utilizează arbori de decizie mici ca învățători slabi
  • Funcție de pierdere în loc de ponderi
  • Optimizarea funcției de pierdere prin coborâre pe gradient
Machine Learning cu modele bazate pe arbori în R

Avantaje și dezavantaje ale boosting-ului

 

Avantaje

  • Printre cele mai performante modele de machine learning
  • Opțiune bună pentru date dezechilibrate

 

Dezavantaje

  • Predispus la supraajustare
  • Antrenarea poate fi lentă (în funcție de hiperparametrul learning rate)
  • Mulți hiperparametri de ajustat
Machine Learning cu modele bazate pe arbori în R

Hiperparametri pentru gradient boosting

Cunoscut din arborii de decizie simpli
  • min_n: numărul minim de puncte de date dintr-un nod necesar pentru a continua divizarea
  • tree_depth: adâncimea maximă a arborelui / numărul de divizări
Cunoscut din păduri aleatoare și arbori cu bagging:
  • sample_size: volumul de date expus rutinei de ajustare
  • trees: numărul de arbori din ansamblu
Machine Learning cu modele bazate pe arbori în R

Hiperparametri pentru gradient boosting

Cunoscut din păduri aleatoare:
  • mtry: numărul de predictori eșantionați aleatoriu la fiecare divizare
Specific arborilor îmbunătățiți:
  • learn_rate: rata de adaptare a algoritmului de boosting de la o iterație la alta
  • loss_reduction: reducerea funcției de pierdere necesară pentru a continua divizarea
  • stop_iter: numărul de iterații fără îmbunătățire înainte de oprire
Machine Learning cu modele bazate pe arbori în R

Să exersăm!

Machine Learning cu modele bazate pe arbori în R

Preparing Video For Download...