# 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. As florestas aleatórias corrigem o hábito das árvores de decisão de se ajustarem excessivamente ao seu conjunto de treinamento.$^{:352}$
O primeiro algoritmo para floresta de decisão aleatória foi criado em 1995 por Tin Kam Ho usando o método do subespaço aleatório, que, na formulação de Ho, é uma forma de implementar a abordagem de "discriminação estocástica" para classificação proposta por Eugene Kleinberg.
Uma extensão do algoritmo foi desenvolvida por Leo Breiman e Adele Cutler, que registraram "Random Forests" como marca registrada em 2006 (Desde 2019 , de propriedade da Minitab, Inc.). A extensão combina a ideia de "bagging" de Breiman e a seleção aleatória de recursos, introduzida primeiro por Ho e depois independentemente por Amit e Geman 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, 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. 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 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.
O desenvolvimento inicial da noção de florestas aleatórias de Breiman foi influenciado pelo trabalho de Amit e Geman 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 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.
A introdução adequada de florestas aleatórias foi feita em um artigo de Leo Breiman. 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.