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?
machine-learning
boosting
blubb
fonte
fonte
caret
pacote para validar cruzadamente o adaboost, e descobri que ele geralmente generaliza bem.Respostas:
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.
fonte
Eu concordo com a maioria dos pontos mencionados no comentário do tdc. no entanto, tenho que adicionar e corrigir algumas coisas.
fonte