Construtor de árvore de decisão

Esta calculadora online constrói uma árvore de decisão a partir do conjunto de treino usando a métrica do ganho de informação

A calculadora online abaixo analisa os exemplos do conjunto de treino, então constrói uma árvore de decisão, usando o Ganho de informação como critério de divisão. Se você não tiver certeza do que se trata, leia o pequeno texto sobre árvores de decisão abaixo da calculadora.

Observação: os exemplos de treino devem ser inseridos como lista csv, com ponto e vírgula como separador. A primeira linha é considerada a linha de etiquetas, começando com etiquetas de atributos/características, em seguida a etiqueta de classe. Todas as outras linhas são exemplos. Os dados padrão nesta calculadora são o famoso exemplo de dados para a árvore de decisão "Jogar tênis"

PLANETCALC, Construtor de árvore de decisão

Construtor de árvore de decisão

Árvore de decisão
 

Árvores de decisão

Uma árvore de decisão é uma estrutura estilo fluxograma na qual cada nó interno representa um "teste" em um atributo (ex.: se uma moeda vira em cara ou coroa), cada ramo representa o resultado do teste e cada nó de folha representa uma etiqueta de classe (decisão tomada após computar todos os atributos). Os caminhos da raiz à folha representam as regras de classificação.1

Vamos observar os dados padrão da calculadora.

Os atributos a serem analisados são:

  • Aspecto: Ensolarado/Nublado/Chuvoso
  • Umidade: Alta/Normal
  • Vento: Verdadeiro/Falso
  • Temperatura: Quente/Leve/Frio

A etiqueta de classe é:

  • Jogar: Sim/Não

Logo, ao analisar os atributos um por um, o algoritmo deve efetivamente responder à pergunta: "Devemos jogar tênis?" Portanto, para executar o menor número de etapas possíveis, precisamos escolher o melhor atributo de decisão para cada etapa. Aquela que nos fornece maior informação. Este atributo é usado como primeira divisão. Então, o processo continua até que não seja necessário dividir mais (após a divisão, todas as amostras remanescentes são homogêneas, em outras palavras, poderemos identificar a etiqueta de classe), ou que não haja mais atributos para serem divididos.

A árvore de decisão gerada primeiramente divide o "Aspecto" Se a resposta for "Ensolarado", então ela verifica o atributo "Umidade". Se a resposta for "Alta", então teremos "Não" para "Jogar". Se a resposta for "Normal", então a resposta é "Sim" para "Jogar". Se o "Aspecto" for "Nublado", então teremos "Sim" para "Jogar" imediatamente. Se o "Aspecto" for "Chuvoso", então ela precisará verificar o atributo "Vento". Note que essa árvore de decisão nem precisa verificar o critério "Temperatura"!

Você pode usar diferentes métricas como critério de divisão, por exemplo, Entropia (via Ganho de informação ou Relação de ganho, Índice de Gini, Erro de classificação. Esta calculadora em particular utiliza o Ganho de informação.

Você pode estar pensando que precisamos da árvore de decisão caso precisarmos apenas fornecer a decisão para cada combinação de atributos. Claro que você pode, mas até para este pequeno exemplo, o número total de combinações é de 3*2*2*3=36. Por outro lado, nós usamos apenas um subconjunto de combinações (14 exemplos) para treinar nosso algoritmo (ao construir a árvore de decisão) e agora ele pode classificar todas as demais combinações sem nossa ajuda. Esse é o objetivo do aprendizado automático. É claro, há várias implicações a respeito da não-robustez, sobreajuste, influências, etc., e para maiores informações, você pode checar o artigo sobre Árvore de decisão na Wikipédia.

URL copiado para a área de transferência
PLANETCALC, Construtor de árvore de decisão

Comentários