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[update] , 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:
- Usando o erro fora da bolsa como uma estimativa do erro de generalização.
- 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
- ↑ 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
- ↑ 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
- ↑ Predefinição:ElemStatLearn
- ↑ 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
- ↑ 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
- ↑ Kleinberg E (1990). «Stochastic Discrimination» (PDF). Annals of Mathematics and Artificial Intelligence. 1 (1–4): 207–239. CiteSeerX 10.1.1.25.6750. doi:10.1007/BF01531079. Cópia arquivada (PDF) em 18 de janeiro de 2018
- ↑ 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/1032181157
- ↑ 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.4131. doi:10.1109/34.857004. Cópia arquivada (PDF) em 18 de janeiro de 2018
- ↑ Breiman L (2001). «Random Forests». Machine Learning. 45 (1): 5–32. Bibcode:2001MachL..45....5B. doi:10.1023/A:1010933404324
- ↑ Liaw, Andy (16 de outubro de 2012). «Documentation for R package randomForest» (PDF). Consultado em 15 de março de 2013
- ↑ U.S. trademark registration number 3185828, registered 2006/12/19.
- ↑ «RANDOM FORESTS Trademark of Health Care Productivity, Inc. - Registration Number 3185828 - Serial Number 78642027 :: Justia Trademarks»
- ↑ 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
- ↑ Amit Y, Geman D (1997). «Shape quantization and recognition with randomized trees» (PDF). Neural Computation. 9 (7): 1545–1588. CiteSeerX 10.1.1.57.6069. 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
- ↑ 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.
- ↑ 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
- ↑ 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
- ↑ Kleinberg E (1990). «Stochastic Discrimination» (PDF). Annals of Mathematics and Artificial Intelligence. 1 (1–4): 207–239. CiteSeerX 10.1.1.25.6750. doi:10.1007/BF01531079. Cópia arquivada (PDF) em 18 de janeiro de 2018
- ↑ 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/1032181157
- ↑ 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.4131. doi:10.1109/34.857004. Cópia arquivada (PDF) em 18 de janeiro de 2018
- ↑ Amit Y, Geman D (1997). «Shape quantization and recognition with randomized trees» (PDF). Neural Computation. 9 (7): 1545–1588. CiteSeerX 10.1.1.57.6069. 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
- ↑ 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
- ↑ 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:1007607513941
- ↑ Breiman L (2001). «Random Forests». Machine Learning. 45 (1): 5–32. Bibcode:2001MachL..45....5B. doi:10.1023/A:1010933404324