Gradient boosting

Maskininlärning med trädbaserade modeller i R

Sandro Raabe

Data Scientist

Repetition: boosting

  • Använder svaga inlärare (t.ex. beslutsträd med bara en uppdelning) som presterar något bättre än slumpen
  • Summerar dessa svaga inlärare och filtrerar bort korrekta förutsägelser
  • Hanterar kvarvarande svåra observationer i varje steg

 

  • AdaBoost: den första populära boostingalgoritmen
  • Gradient Boosting: en förbättring av AdaBoost
Maskininlärning med trädbaserade modeller i R

Jämförelse

Adaboost
  • Använder beslutsstumpar som svaga inlärare
  • Tilldelar vikter till observationer:
    • Hög vikt för svåra observationer
    • Låg vikt för korrekta förutsägelser
Gradient boosting
  • Använder små beslutsträd som svaga inlärare
  • Förlustfunktion i stället för vikter
  • Optimering av förlustfunktionen via gradientnedstigning
Maskininlärning med trädbaserade modeller i R

För- och nackdelar med boosting

 

Fördelar

  • Tillhör de bäst presterande maskininlärningsmodellerna
  • Bra val för obalanserade data

 

Nackdelar

  • Benägen att överanpassa
  • Träning kan vara långsam (beroende på hyperparametern learning rate)
  • Många hyperparametrar att justera
Maskininlärning med trädbaserade modeller i R

Hyperparametrar för gradient boosting

Kända från enkla beslutsträd
  • min_n: minsta antal datapunkter i en nod som krävs för att dela upp den ytterligare
  • tree_depth: trädets maximala djup / antal uppdelningar
Kända från slumpskogar och baggade träd:
  • sample_size: mängden data som exponeras för träningsrutinen
  • trees: antal träd i ensemblen
Maskininlärning med trädbaserade modeller i R

Hyperparametrar för gradient boosting

Känd från slumpskogar:
  • mtry: antal prediktorer som samplas slumpmässigt vid varje uppdelning
Specifika för boostade träd:
  • learn_rate: hastigheten med vilken boostingalgoritmen anpassar sig från iteration till iteration
  • loss_reduction: den minskning av förlustfunktionen som krävs för att dela upp ytterligare
  • stop_iter: antal iterationer utan förbättring innan träningen avbryts
Maskininlärning med trädbaserade modeller i R

Nu kör vi en övning!

Maskininlärning med trädbaserade modeller i R

Preparing Video For Download...