O que é floresta aleatória?
Saiba mais sobre o algoritmo de floresta aleatória e como ele pode ajudá-lo a tomar melhores decisões para alcançar os seus objetivos de negócios
Plano de fundo azul e preto
O que é floresta aleatória?

Floresta aleatória é um algoritmo de machine learning comumente usado, com marca registrada por Leo Breiman e Adele Cutler, que combina a saída de várias árvores de decisão para alcançar um único resultado. Sua facilidade de uso e flexibilidade incentivaram a sua adoção, pois lida tanto com problemas de classificação quanto de regressão.

Árvores de decisão

Uma vez que o modelo de floresta aleatória é composto por várias árvores de decisão, seria útil começar por descrever o algoritmo de árvore de decisão resumidamente. As árvores de decisão começam com uma pergunta básica, como "devo navegar?" A partir daí, é possível fazer uma série de perguntas para determinar uma resposta, como "você pode perguntar uma série de perguntas para determinar uma resposta, como "as ondas são de longo período?" ou "o vento está soprando em alto mar?". Essas perguntas formam os nós de decisão na árvore, agindo como um meio de dividir os dados. Cada pergunta ajuda um indivíduo a chegar a uma decisão final, que seria indicada pelo nó folha. Observações que se enquadram nos critérios seguirão a ramificação "Sim" e aquelas que não se enquadram seguirão um caminho alternativo.  As árvores de decisão buscam a melhor divisão para criar subconjuntos de dados e elas são geralmente treinadas por meio do algoritmo de árvore de classificação e regressão (CART). Métricas, como impureza de Gini, ganho de informação ou erro quadrático médio (MSE), podem ser utilizadas para avaliar a qualidade da divisão.  

Esta árvore de decisão é um exemplo de um problema de classificação, em que os rótulo de classe são "navegar" e "não navegar".

Embora as árvores de decisão sejam algoritmos de aprendizado supervisionados comuns, elas podem ser propensas a problemas, como viés e super ajuste. No entanto, quando várias árvores de decisão formam uma combinação no algoritmo de floresta aleatória, elas preveem resultados mais precisos, principalmente quando as árvores individuais não estão correlacionadas entre si.

Métodos de combinação

Os métodos de combinação de aprendizado são compostos por um conjunto de classificadores, por exemplo, árvores de decisão, e suas previsões são agregadas para identificar o resultado mais popular. Os métodos de combinação mais conhecidos são bagging, também conhecido como agregação de bootstrap, e boosting. Em 1996,  Leo Breiman  (link externo à ibm.com) (PDF, 810 KB) apresentou o método de bagging. Neste método, uma amostra aleatória de dados em um conjunto de treinamento é selecionada com uma substituição, significando que os pontos de dados individuais podem ser escolhidos mais de uma vez. Após gerar várias amostras de dados, esses modelos são treinados de forma independente e, de acordo com o tipo de tarefa, como por exemplo, regressão ou classificação, a média ou a maioria dessas previsões geram uma estimativa mais precisa. Essa abordagem é geralmente usada para reduzir a variância dentro de um conjunto de dados ruidoso.

Algoritmo de floresta aleatória

O algoritmo de floresta aleatória é uma extensão do método de bagging, pois utiliza tanto o bagging quanto a aleatoriedade de recursos para criar uma floresta de árvores de decisão não correlacionadas. Aleatoriedade de recursos, também conhecido como bagging de recursos ou "o método de subespaço aleatório" (link externo à ibm.com) (PDF, 121 KB), gera um subconjunto aleatório de recursos, que garante baixa correlação entre as árvores decisão. Esta é uma principal diferença entre árvores de decisão e florestas aleatórias. Enquanto as árvores de decisão consideram todas as possíveis divisões de recursos, as florestas aleatórias selecionam apenas um subconjunto desses recursos.

Se voltarmos ao exemplo de "devo navegar?", as perguntas que posso perguntar para determinar a previsão podem não ser tão abrangentes quanto o conjunto de perguntas de outra pessoa. Considerando todas as potenciais variabilidades nos dados, podemos reduzir o risco de super ajuste, viés e variância geral, resultando em previsões mais precisas.

Produtos em destaque

SPSS Modeler

Como funciona?

Os algoritmos de floresta aleatória possuem três hiperparâmetros principais, os quais devem ser definidos antes do treinamento. Estes incluem o tamanho do nó, o número de árvores e o número de recursos amostrados. A partir daí, o classificador de floresta aleatória pode ser usado para resolver problemas de regressão ou classificação.

O algoritmo de floresta aleatória é composto por uma coleção de árvores de decisão, sendo que cada árvore na combinação é composta por uma amostra de dados extraída de um conjunto de treinamento com substituição, chamada de amostra bootstrap. Dessa amostra de treinamento, um terço dela é separado como dados de teste, conhecida como amostra out-of-bag (OOB), a qual iremos abordar mais tarde. Outra instância de aleatoriedade é então injetada por meio do bagging de recursos, incluindo mais diversidade ao conjunto de dados e reduzindo a correlação entre as árvores de decisão. Dependendo do tipo de problema, a determinação da previsão irá variar. Para uma tarefa de regressão, as árvores de decisão individuais terão suas médias calculadas, e para uma tarefa de classificação, um voto da maioria, ou seja, a variável categórica mais frequente, produzirá a classe prevista. Por fim, a amostra OOB é então utilizada para validação cruzada, finalizando esse previsão.

Benefícios e desafios da floresta aleatória

Existem uma série de vantagens e desafios importantes que o algoritmo de floresta aleatória apresenta quando usado para problemas de classificação ou regressão. Alguns destes incluem:

Principais benefícios

  • Risco reduzido de super ajuste:  as árvores de decisão correm o risco de super ajuste uma vez que tendem a ajustar firmemente todas as amostras dentro dos dados de treinamento. No entanto, quando há um número robusto de árvores de decisão em uma floresta aleatória, o classificador não fará o super ajuste do modelo, pois fazer a média das árvores não correlacionadas diminui a variância geral e o erro de predição.
  • Oferece flexibilidade:  uma vez que a floresta aleatória pode lidar tanto com tarefas de regressão quanto de classificação com um alta grau de precisão, ela é um método popular entre os cientistas de dados. O bagging de recursos também faz do classificador de floresta aleatória uma ferramenta eficaz para estimar valores omissos, pois mantém precisão quando uma parte dos dados está omisso.
  • Fácil de determinar a importância de variáveis:  a floresta aleatória facilita avaliar a importância de variáveis, ou a contribuição delas, para o modelo. Existem algumas maneiras de avaliar a importância de variáveis. A importância de Gini e a diminuição média na impureza (MDI) são geralmente usadas para medir o quanto a precisão do modelo diminui quando uma determinada variável é excluída. No entanto, a importância da permutação, também conhecida como diminuição média na precisão (MDA), é outra medida de importância. A MDA identifica a diminuição média na precisão ao aleatoriamente permutar os valores da variável em amostras OOB.

Principais desafios

  • Processo demorado: uma vez que algoritmos de floresta aleatória podem manipular grandes conjuntos de dados, eles podem fornecer predições mais precisas, mas podem ser lentos ao processar dados uma vez que estão calculando dados para cada árvore de decisão individual.
  • Requer mais recursos: como as florestas aleatórias processam grandes conjuntos de dados, elas precisarão de mais recursos para armazenar esses dados.
  • Mais complexo: a predição de uma única árvore de decisão é mais fácil de interpretar quando comparada a uma floresta delas.
Aplicativos da floresta aleatória

O algoritmo de floresta aleatória foi aplicado em uma série de setores, permitindo-lhes tomar melhores decisões de negócios. Alguns dos casos de uso mais comuns incluem:

  • Finanças: é um algoritmo preferencial sobre os outros, pois reduz o tempo gasto com gerenciamento de dados e tarefas de pré-processamento. Ele pode ser utilizado para avaliar clientes com alto risco de crédito, para detectar fraude e problemas de opção de precificação.
  • Assistência médica:  o algoritmo de floresta aleatória tem aplicativos dentro da  biologia computacional  (link externo à ibm.com) (PDF, 737 KB), permitindo que os médicos abordem problemas como classificação de expressões de gene, descoberta de biomarcadores e anotação de sequência. Como resultado, os médicos podem fazer estimativas em torno a reações a medicamentos específicos.
  • E-commerce: pode ser utilizado para mecanismos de recomendação para fins de venda cruzada.
Soluções relacionadas
SPSS Modeler

O IBM SPSS Modeler oferece análise preditiva para ajudá-lo a descobrir padrões de dados, obter precisão preditiva e melhorar a tomada de decisão.

Conheça o SPSS Modeler
Recursos Ferramenta de arrastar e soltar de ciência de dados do IBM SPSS Modeler

Saiba como organizações em todo o mundo usam o SPSS Modeler para preparação e descoberta de dados, análise preditiva, gerenciamento e implementação de modelos e ML para monetizar ativos de dados.

Redes neurais inspiradas em florestas aleatórias

Saiba como uma rede neural cuidadosamente projetada com uma estrutura de floresta aleatória pode ter melhor capacidade de generalização.

Dê o próximo passo

O IBM SPSS Modeler é um conjunto de ferramentas de mineração de dados que permite desenvolver modelos preditivos para implementá-los em operações de negócios. Projetado em torno do modelo CRISP-DM padrão do setor, o IBM SPSS Modeler suporta todo o processo de mineração de dados, desde o processamento de dados até melhores resultados de negócios.

Teste o IBM SPSS Modeler hoje