O AdaBoost é menos ou mais propenso a sobreajuste?


20

Eu li várias declarações (aparentemente) contraditórias, independentemente de o AdaBoost (ou outras técnicas de reforço) ser menos ou mais propenso a sobreajuste em comparação com outros métodos de aprendizado.

Existem boas razões para acreditar em um ou outro? Se depende, do que depende? Quais são as razões pelas quais o AdaBoost é menos / mais propenso a sobreajuste?


1
Minha intuição é que é mais propenso a sobreajuste do que uma floresta aleatória. No entanto, o algoritmo foi projetado para evitar ajustes excessivos e, geralmente, não parece ser um problema. Não tenho referências para fazer backup disso, mas você pode usar o caretpacote para validar cruzadamente o adaboost, e descobri que ele geralmente generaliza bem.
Zach

Respostas:


17

Como você diz, muita coisa foi discutida sobre esse assunto, e há uma teoria bastante pesada que a acompanha, que devo admitir que nunca entendi completamente. Na minha experiência prática, o AdaBoost é bastante robusto ao sobreajuste, e o LPBoost (Linear Programming Boosting) ainda mais (porque a função objetivo requer uma combinação esparsa de alunos fracos, que é uma forma de controle de capacidade). Os principais fatores que influenciam são:

  • A "força" dos alunos "fracos": se você usar alunos fracos muito simples, como tocos de decisão (árvores de decisão de 1 nível), os algoritmos serão muito menos propensos a superajustes. Sempre que tentei usar alunos fracos mais complicados (como árvores de decisão ou até hiperplanos), descobri que a adaptação excessiva ocorre muito mais rapidamente

  • O nível de ruído nos dados: o AdaBoost é particularmente propenso a sobreajuste em conjuntos de dados ruidosos. Nesta configuração, os formulários regularizados (RegBoost, AdaBoostReg, LPBoost, QPBoost) são preferíveis

  • A dimensionalidade dos dados: sabemos que, em geral, experimentamos o excesso de ajustes em espaços de alta dimensão ("a maldição da dimensionalidade"), e o AdaBoost também pode sofrer a esse respeito, pois é simplesmente uma combinação linear de classificadores que sofrem. do problema. É difícil determinar se é tão propenso quanto outros classificadores.

k


9

Eu concordo com a maioria dos pontos mencionados no comentário do tdc. no entanto, tenho que adicionar e corrigir algumas coisas.

  • Como mostrado no L2Boost de Peter Bühlmann, à medida que o número de alunos fracos (rodadas de reforço) aumenta, o viés converge exponencialmente rápido, enquanto a variação aumenta por magnitudes geometricamente decrescentes, o que significa: Superajustes muito mais lentos que a maioria dos outros métodos.
  • Foi mencionado erroneamente no comentário de Zach que é melhor que a floresta aleatória em termos de super ajuste. Está completamente errado. De fato, de acordo com a teoria (veja o artigo original sobre floresta aleatória de Breiman), a Random Forest é absolutamente imune à super adaptação, desde que seus fracos classificadores não se adaptem aos dados.
  • Diferentemente do que foi mencionado no comentário do tdc, a maioria dos métodos de reforço é altamente sensível ao ruído da rotulagem e pode facilmente superajustar na presença de ruído na rotulagem.
  • Em conjuntos de dados em que as taxas de erro de Bayes estão longe de 0 (ou seja, os recursos não são discriminativos o suficiente), os métodos de aumento também podem facilmente super-ajustar. Como eles tentam reduzir o erro de treinamento a zero, enquanto na realidade até o classificador ideal, ou seja, o classificador Bayes pode atingir uma taxa de erro de 40%, digamos.
  • finalmente, e isso não foi publicado em nenhum lugar (de acordo com o meu conhecimento), existe um tipo de ajuste excessivo no qual o erro de generalização não aumenta à medida que as rodadas de aumento aumentam, mas também não diminui. Isso significa que o algoritmo ficou preso em um ótimo local. Nessa situação, o erro de treinamento diminui constantemente enquanto o erro de teste permanece quase constante. Até agora, nunca consideramos esse fenômeno como uma indicação de ajuste excessivo, mas acredito que é um sinal de ajuste excessivo e, usando alunos fracos mais complexos, (estranho!), Podemos de fato ir contra isso (esse último ponto deve ser considerado com cautela : D)

1
Vale a pena acrescentar a esta resposta que eu possa ter experimentado o último tipo de adaptação excessiva hoje, tanto com o AdaBoost quanto com a Random Forest. Na validação cruzada, o erro de dobra convergiu para uma constante com apenas 20 estimadores de base e depois saltou em torno dessa constante com uma alta variação. Minha suspeita era exatamente a mesma: os algoritmos gananciosos ficaram presos em algum tipo de otimização local. Isso não é uma confirmação do que aconteceu, mas é bom saber que outra pessoa teve o mesmo pensamento.
shadowtalker

@ssdecontrol Você pode compartilhar o que fez? Quero reproduzir os resultados para ter uma compreensão melhor
saurabh agarwal

@saurabhagarwal Eu acho que eu estava trabalhando no Kaggle Titanic projeto
shadowtalker
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.