Uma introdução ao ensacamento no aprendizado de máquina
Quando a relação entre um conjunto de variáveis preditoras e uma variável de resposta é linear, podemos usar métodos como a regressão linear múltipla para modelar a relação entre as variáveis.
Porém, quando a relação é mais complexa, muitas vezes temos que recorrer a métodos não lineares.
Um desses métodos são as árvores de classificação e regressão (geralmente abreviadas como CART), que usam um conjunto de variáveis preditoras para criar árvores de decisão que predizem o valor de uma variável de resposta.
No entanto, a desvantagem dos modelos CART é que eles tendem a sofrer de alta variância . Ou seja, se dividirmos um conjunto de dados em duas metades e aplicarmos uma árvore de decisão a ambas as metades, os resultados poderão ser muito diferentes.
Um método que podemos usar para reduzir a variância dos modelos CART é conhecido como bagging , às vezes chamado de agregação bootstrap .
O que é ensacamento?
Quando criamos uma única árvore de decisão, usamos apenas um conjunto de dados de treinamento para construir o modelo.
No entanto, o ensacamento utiliza o seguinte método:
1. Pegue b amostras inicializadas do conjunto de dados original.
- Lembre-se de que uma amostra bootstrap é uma amostra do conjunto de dados original na qual as observações são feitas com reposição.
2. Crie uma árvore de decisão para cada amostra de bootstrap.
3. Calcule a média das previsões de cada árvore para obter um modelo final.
- Para árvores de regressão, tomamos a média das previsões feitas pelas árvores B.
- Para árvores de classificação, utilizamos a previsão mais comum feita por árvores B.
O bagging pode ser usado com qualquer algoritmo de aprendizado de máquina, mas é particularmente útil para árvores de decisão porque elas inerentemente têm alta variância e o bagging é capaz de reduzir significativamente a variância, resultando em erros de teste reduzidos.
Para aplicar o ensacamento às árvores de decisão, cultivamos árvores individuais em profundidade, sem podá-las. Isso resulta em árvores individuais com alta variância, mas baixo viés. Então, quando tiramos as previsões médias dessas árvores, somos capazes de reduzir a variância.
Na prática, o desempenho ideal é normalmente alcançado com 50 a 500 árvores, mas é possível ajustar milhares de árvores para produzir um modelo final.
Apenas tenha em mente que instalar mais árvores exigirá mais poder computacional, o que pode ou não ser um problema dependendo do tamanho do conjunto de dados.
Estimativa de erros fora da sacola
Acontece que podemos calcular o erro de teste de um modelo ensacado sem depender da validação cruzada k-fold .
A razão é que cada amostra de bootstrap pode conter aproximadamente 2/3 das observações do conjunto de dados original. O terço restante das observações não utilizadas para ajustar a árvore ensacada são chamadas de observações fora do saco (OOB) .
Podemos prever o valor da i-ésima observação no conjunto de dados original obtendo a previsão média de cada uma das árvores nas quais essa observação era OOB.
Podemos usar esta abordagem para fazer uma previsão para todas as n observações no conjunto de dados original e assim calcular uma taxa de erro, que é uma estimativa válida do erro de teste.
A vantagem de usar esta abordagem para estimar o erro do teste é que ela é muito mais rápida do que a validação cruzada k-fold, especialmente quando o conjunto de dados é grande.
Compreendendo a importância dos preditores
Lembre-se que uma das vantagens das árvores de decisão é que elas são fáceis de interpretar e visualizar.
Quando, em vez disso, usamos o bagging, não somos mais capazes de interpretar ou visualizar uma árvore individual, pois o modelo final empacotado é o resultado da média de muitas árvores diferentes. Ganhamos precisão de previsão em detrimento da interpretabilidade.
No entanto, ainda podemos entender a importância de cada variável preditora calculando a redução total no RSS (soma residual dos quadrados) devido à distribuição sobre um determinado preditor, calculada a média de todas as árvores B. Quanto maior o valor, mais importante é o preditor.
Da mesma forma, para modelos de classificação, podemos calcular a redução total do índice de Gini devido à distribuição sobre um determinado preditor, calculada a média de todas as árvores B. Quanto maior o valor, mais importante é o preditor.
Portanto, embora não possamos interpretar exatamente um modelo geral final, ainda podemos ter uma ideia da importância de cada variável preditora ao prever a resposta.
Vá além do ensacamento
A vantagem do bagging é que ele geralmente proporciona uma melhoria na taxa de erro de teste em comparação com uma única árvore de decisão.
A desvantagem é que as previsões da coleta de árvores ensacadas podem ser altamente correlacionadas se houver um preditor muito forte no conjunto de dados.
Nesse caso, a maioria ou todas as árvores ensacadas usarão esse preditor para a primeira divisão, resultando em árvores semelhantes entre si e com previsões altamente correlacionadas.
Uma maneira de contornar esse problema é usar florestas aleatórias, que usam um método semelhante ao ensacamento, mas são capazes de produzir árvores decoradas, o que muitas vezes leva a taxas de erro de teste mais baixas.
Você pode ler uma introdução simples às florestas aleatórias aqui .
Recursos adicionais
Uma introdução às árvores de classificação e regressão
Como realizar o ensacamento em R (passo a passo)