Floresta aleatória

Floresta aleatória ou florestas de decisão aleatórias são um método de aprendizagem de conjunto para classificação, regressão e outras tarefas que funcionam criando uma infinidade de árvores de decisão durante o treinamento. Para tarefas de classificação, a saída da floresta aleatória é a classe selecionada pela maioria das árvores. Para tarefas de regressão, a saída é a média das previsões das árvores.[1][2] As florestas aleatórias corrigem o hábito das árvores de decisão de se ajustarem excessivamente ao seu conjunto de treinamento.[3]:352

O primeiro algoritmo para floresta de decisão aleatória foi criado em 1995 por Tin Kam Ho[4] usando o método do subespaço aleatório,[5] que, na formulação de Ho, é uma forma de implementar a abordagem de "discriminação estocástica" para classificação proposta por Eugene Kleinberg.[6][7][8]

Uma extensão do algoritmo foi desenvolvida por Leo Breiman[9] e Adele Cutler,[10] que registraram[11] "Random Forests" como marca registrada em 2006 (Desde 2019 , de propriedade da Minitab, Inc.).[12] A extensão combina a ideia de "bagging" de Breiman e a seleção aleatória de recursos, introduzida primeiro por Ho[13] e depois independentemente por Amit e Geman[14] para construir uma coleção de árvores de decisão com variância controlada.

História

O método geral de florestas de decisão aleatórias foi proposto pela primeira vez por Salzberg e Heath em 1993,[15] com um método que usava um algoritmo de árvore de decisão aleatória para criar múltiplas árvores e então combiná-las usando votação majoritária. Esta ideia foi desenvolvida posteriormente por Ho em 1995.[16] Ho estabeleceu que florestas de árvores que se dividem com hiperplanos oblíquos podem ganhar precisão à medida que crescem sem sofrer com overtraining, desde que as florestas sejam restringidas aleatoriamente para serem sensíveis apenas a dimensões de recursos selecionados. Um trabalho subsequente na mesma linha[17] concluiu que outros métodos de divisão se comportam de forma semelhante, desde que sejam forçados aleatoriamente a serem insensíveis a algumas dimensões de características. Essa observação de que um classificador mais complexo (uma floresta maior) se torna mais preciso quase monotonicamente contrasta fortemente com a crença comum de que a complexidade de um classificador só pode crescer até um certo nível de precisão antes de ser prejudicada pelo overfitting. A explicação da resistência do método ao overtraining pode ser encontrada na teoria de discriminação estocástica de Kleinberg.[18][19][20]

O desenvolvimento inicial da noção de florestas aleatórias de Breiman foi influenciado pelo trabalho de Amit e Geman[21] que introduziram a ideia de pesquisar um subconjunto aleatório das decisões disponíveis ao dividir um nó, no contexto do crescimento de uma única árvore. A ideia de seleção aleatória de subespaços de Ho[22] também foi influente no projeto de florestas aleatórias. Este método cria uma floresta de árvores e introduz variação entre as árvores projetando os dados de treinamento em um subespaço escolhido aleatoriamente antes de ajustar cada árvore ou cada nó. Finalmente, a ideia de otimização de nós aleatórios, onde a decisão em cada nó é selecionada por um procedimento aleatório, em vez de uma otimização determinística, foi introduzida pela primeira vez por Thomas G. Dietterich.[23]

A introdução adequada de florestas aleatórias foi feita em um artigo de Leo Breiman.[24] Este artigo descreve um método de construção de uma floresta de árvores não correlacionadas usando um procedimento semelhante ao CART, combinado com otimização de nós aleatórios e bagging. Além disso, este artigo combina vários ingredientes, alguns já conhecidos e outros novos, que formam a base da prática moderna de florestas aleatórias, em particular:

  1. Usando o erro fora da bolsa como uma estimativa do erro de generalização.
  2. Medindo a importância de variáveis por meio de permutação.

O relatório também oferece o primeiro resultado teórico para florestas aleatórias na forma de um limite para o erro de generalização que depende da força das árvores na floresta e de sua correlação.

Referências

  1. Ho, Tin Kam (1995). Random Decision Forests (PDF). Proceedings of the 3rd International Conference on Document Analysis and Recognition, Montreal, QC, 14–16 August 1995. pp. 278–282. Consultado em 5 de junho de 2016. Cópia arquivada (PDF) em 17 de abril de 2016 
  2. Ho TK (1998). «The Random Subspace Method for Constructing Decision Forests» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 20 (8): 832–844. doi:10.1109/34.709601 
  3. Predefinição:ElemStatLearn
  4. Ho, Tin Kam (1995). Random Decision Forests (PDF). Proceedings of the 3rd International Conference on Document Analysis and Recognition, Montreal, QC, 14–16 August 1995. pp. 278–282. Consultado em 5 de junho de 2016. Cópia arquivada (PDF) em 17 de abril de 2016 
  5. Ho TK (1998). «The Random Subspace Method for Constructing Decision Forests» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 20 (8): 832–844. doi:10.1109/34.709601 
  6. Kleinberg E (1990). «Stochastic Discrimination» (PDF). Annals of Mathematics and Artificial Intelligence. 1 (1–4): 207–239. CiteSeerX 10.1.1.25.6750Acessível livremente. doi:10.1007/BF01531079. Cópia arquivada (PDF) em 18 de janeiro de 2018 
  7. Kleinberg E (1996). «An Overtraining-Resistant Stochastic Modeling Method for Pattern Recognition». Annals of Statistics. 24 (6): 2319–2349. MR 1425956. doi:10.1214/aos/1032181157Acessível livremente 
  8. Kleinberg E (2000). «On the Algorithmic Implementation of Stochastic Discrimination» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 22 (5): 473–490. CiteSeerX 10.1.1.33.4131Acessível livremente. doi:10.1109/34.857004. Cópia arquivada (PDF) em 18 de janeiro de 2018 
  9. Breiman L (2001). «Random Forests». Machine Learning. 45 (1): 5–32. Bibcode:2001MachL..45....5B. doi:10.1023/A:1010933404324Acessível livremente 
  10. Liaw, Andy (16 de outubro de 2012). «Documentation for R package randomForest» (PDF). Consultado em 15 de março de 2013 
  11. U.S. trademark registration number 3185828, registered 2006/12/19.
  12. «RANDOM FORESTS Trademark of Health Care Productivity, Inc. - Registration Number 3185828 - Serial Number 78642027 :: Justia Trademarks» 
  13. Ho, Tin Kam (1995). Random Decision Forests (PDF). Proceedings of the 3rd International Conference on Document Analysis and Recognition, Montreal, QC, 14–16 August 1995. pp. 278–282. Consultado em 5 de junho de 2016. Cópia arquivada (PDF) em 17 de abril de 2016 
  14. Amit Y, Geman D (1997). «Shape quantization and recognition with randomized trees» (PDF). Neural Computation. 9 (7): 1545–1588. CiteSeerX 10.1.1.57.6069Acessível livremente. doi:10.1162/neco.1997.9.7.1545. Consultado em 1 de abril de 2008. Cópia arquivada (PDF) em 5 de fevereiro de 2018 
  15. Heath, D., Kasif, S. and Salzberg, S. (1993). k-DT: A multi-tree learning method. In Proceedings of the Second Intl. Workshop on Multistrategy Learning, pp. 138-149.
  16. Ho, Tin Kam (1995). Random Decision Forests (PDF). Proceedings of the 3rd International Conference on Document Analysis and Recognition, Montreal, QC, 14–16 August 1995. pp. 278–282. Consultado em 5 de junho de 2016. Cópia arquivada (PDF) em 17 de abril de 2016 
  17. Ho TK (1998). «The Random Subspace Method for Constructing Decision Forests» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 20 (8): 832–844. doi:10.1109/34.709601 
  18. Kleinberg E (1990). «Stochastic Discrimination» (PDF). Annals of Mathematics and Artificial Intelligence. 1 (1–4): 207–239. CiteSeerX 10.1.1.25.6750Acessível livremente. doi:10.1007/BF01531079. Cópia arquivada (PDF) em 18 de janeiro de 2018 
  19. Kleinberg E (1996). «An Overtraining-Resistant Stochastic Modeling Method for Pattern Recognition». Annals of Statistics. 24 (6): 2319–2349. MR 1425956. doi:10.1214/aos/1032181157Acessível livremente 
  20. Kleinberg E (2000). «On the Algorithmic Implementation of Stochastic Discrimination» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 22 (5): 473–490. CiteSeerX 10.1.1.33.4131Acessível livremente. doi:10.1109/34.857004. Cópia arquivada (PDF) em 18 de janeiro de 2018 
  21. Amit Y, Geman D (1997). «Shape quantization and recognition with randomized trees» (PDF). Neural Computation. 9 (7): 1545–1588. CiteSeerX 10.1.1.57.6069Acessível livremente. doi:10.1162/neco.1997.9.7.1545. Consultado em 1 de abril de 2008. Cópia arquivada (PDF) em 5 de fevereiro de 2018 
  22. Ho TK (1998). «The Random Subspace Method for Constructing Decision Forests» (PDF). IEEE Transactions on Pattern Analysis and Machine Intelligence. 20 (8): 832–844. doi:10.1109/34.709601 
  23. Dietterich, Thomas (2000). «An Experimental Comparison of Three Methods for Constructing Ensembles of Decision Trees: Bagging, Boosting, and Randomization». Machine Learning. 40 (2): 139–157. doi:10.1023/A:1007607513941Acessível livremente 
  24. Breiman L (2001). «Random Forests». Machine Learning. 45 (1): 5–32. Bibcode:2001MachL..45....5B. doi:10.1023/A:1010933404324Acessível livremente