Existe uma estratégia para escolher o número de árvores em um GBM? Especificamente, o ntrees
argumento em R
's gbm
função.
Não vejo por que você não deve definir ntrees
o valor mais alto possível. Percebi que um número maior de árvores reduz claramente a variabilidade dos resultados de vários GBMs. Eu não acho que um número alto de árvores levaria a sobreajuste.
Alguma ideia?
fonte
Este é o guia de trabalho para aumentar as árvores de regressão de Elith et al .: http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2656.2008.01390.x/full Muito útil!
Você deve pelo menos usar 1000 árvores. Até onde eu entendi, você deve usar a combinação de taxa de aprendizado, complexidade e número de árvores que obtém o erro preditivo mínimo. Valores menores da taxa de aprendizado levam a um risco maior de treinamento para o mesmo número de iterações, enquanto cada iteração reduz o risco de treinamento. Se o número de árvores for grande o suficiente, o risco poderá ser arbitrariamente pequeno (veja: Hastie et al., 2001, "Os Elementos de Aprendizagem Estatística, Mineração de Dados, Inferência e Previsão" ).
fonte
Como é comum em alguns algoritmos de aprendizado de máquina, o Boosting está sujeito ao trade-off de variação de polarização em relação ao número de árvores. Em termos gerais, essa troca diz a você que: (i) os modelos fracos tendem a ter alto viés e baixa variação: são muito rígidos para capturar variabilidade no conjunto de dados de treinamento, portanto, também não terão bom desempenho no conjunto de testes (teste alto erro) (ii) modelos muito fortes tendem a ter um viés baixo e uma alta variação: são muito flexíveis e superestimam o conjunto de treinamento; portanto, no conjunto de teste (como os pontos de dados são diferentes do conjunto de treinamento), eles também não terão bom desempenho (erro de teste alto)
O conceito de Impulsionar árvores é começar com árvores rasas (modelos fracos) e continuar adicionando mais árvores rasas que tentam corrigir as fragilidades das árvores anteriores. À medida que você faz esse processo, o erro de teste tende a diminuir (porque o modelo geral fica mais flexível / poderoso). No entanto, se você adicionar muitas dessas árvores, começará a sobrescrever os dados de treinamento e, portanto, o erro de teste aumentará. A validação cruzada ajuda a encontrar o ponto ideal
fonte