Gradient boosting

Machine Learning com modelos baseados em árvores em R

Sandro Raabe

Data Scientist

Revisão: boosting

  • Usa aprendizes fracos (ex.: árvores de decisão com apenas uma divisão) que vão um pouco além do acaso
  • Soma esses aprendizes fracos e filtra previsões corretas
  • Lida com as observações difíceis restantes a cada etapa

 

  • AdaBoost: primeiro algoritmo de boosting popular
  • Gradient Boosting: melhoria do AdaBoost
Machine Learning com modelos baseados em árvores em R

Comparação

Adaboost
  • Usa decision stumps como aprendizes fracos
  • Atribui pesos às observações:
    • Peso alto para observações difíceis
    • Peso baixo para previsões corretas
Gradient boosting
  • Usa pequenas árvores de decisão como aprendizes fracos
  • Função de perda em vez de pesos
  • Otimiza a função de perda por gradiente descendente
Machine Learning com modelos baseados em árvores em R

Prós e contras do boosting

 

Vantagens

  • Entre os modelos de machine learning com melhor desempenho
  • Boa opção para dados desbalanceados

 

Desvantagens

  • Propenso a overfitting
  • Treinamento pode ser lento (depende do hiperparâmetro learning rate)
  • Muitos hiperparâmetros para ajustar
Machine Learning com modelos baseados em árvores em R

Hiperparâmetros para gradient boosting

Conhecidos de árvores de decisão simples
  • min_n: número mínimo de pontos no nó para permitir nova divisão
  • tree_depth: profundidade máxima da árvore / número de divisões
Conhecidos de random forests e bagging:
  • sample_size: quantidade de dados exposta ao ajuste
  • trees: número de árvores no ensemble
Machine Learning com modelos baseados em árvores em R

Hiperparâmetros para gradient boosting

Conhecidos de random forests:
  • mtry: número de preditores amostrados aleatoriamente a cada divisão
Específicos de boosted trees:
  • learn_rate: taxa em que o algoritmo de boosting se adapta a cada iteração
  • loss_reduction: redução na função de perda exigida para dividir novamente
  • stop_iter: número de iterações sem melhoria antes de parar
Machine Learning com modelos baseados em árvores em R

Vamos praticar!

Machine Learning com modelos baseados em árvores em R

Preparing Video For Download...