Árvore de decisão: como fazer e importância dentro da ciência de dados

Árvore de decisão: como fazer e importância dentro da ciência de dados

Neste primeiro conteúdo, você verá que existem diferentes modelos de classificação, como a árvore de decisão, sendo os principais os supervisionados – quando dados existentes são previamente rotulados e utilizados de modo que possam servir para o aprendizado do comportamento de novos dados, e não supervisionados – quando não existem variáveis rotuladas para orientar o processo de aprendizagem do algoritmo e o foco reside na obtenção de padrões, a partir dos dados explorados.

Vamos discutir a seguir um dos métodos mais difundidos para a classificação de ocorrências em bases de dados, as árvores de decisão. Uma ferramenta de suporte que uma configuração arbórea de tomada de decisão.

O que é uma árvore de decisão?

A árvore de decisão, ou decision trees, está entre os métodos mais comuns aplicados ao aprendizado de máquina. Tais algoritmos subdividem progressivamente os dados em conjuntos cada vez menores e mais específicos, em termos de seus atributos, até atingirem um tamanho simplificado o bastante para ser rotulado. Para isso é necessário treinar o modelo com dados previamente rotulados, de modo a aplicá-lo a dados novos.

Em geral, uma árvore de decisão é composta por perguntas e respostas booleanas, classificando um indivíduo ou entidade de acordo com o conjunto de respostas obtidas pelo conjunto de perguntas formuladas.


Como montar uma árvore de decisão?

Como exemplificado na figura a seguir, é muito comum construirmos uma árvore de decisão binárias, baseada em respostas como sim/não, ou verdadeiro/falso. Ou seja, você pode criar uma árvore para entender se um estudante é aluno ou não de uma determinada instituição, por exemplo.

Basicamente uma árvore de decisão é composta por um nó inicial (conhecido também como raiz), nós internos, ramos e folhas. A figura a seguir identifica cada um desses termos, sendo possível ainda observar que a cada conjunto de nós internos, uma camada de nível é adicionada à árvore.



Note que os nós internos possuem tanto ramos que chegam a eles quanto ramos que partem deles. As folhas, por sua vez, possuem apenas ramificações que chegam a elas e nenhum ramo partindo delas, o que implica o fim da árvore de decisão e a obtenção de uma classificação final.

As árvores de decisão têm uma interpretação bastante intuitiva, uma vez que o algoritmo começa pelo topo, ou raiz, e vai se ramificando a cada novo nível implementado. Essa classificação ocorre seguidamente até o ponto em que nenhuma outra repartição pode ser definida.

De fato, uma árvore ideal apresentaria uma ramificação perfeita, com apenas uma das folhas contabilizando valores, mas o que temos no cotidiano são ‘impurezas’, ou seja, ramificações que distribuem os valores contabilizados.

Considere a tabela abaixo, nela você pode ver três conjuntos definidos. O conjunto A apresenta apenas um algarismo (1), isso faz dele mais puro que o conjunto B, com dois algarismos diferentes (1, 2) . Que, por sua vez, é mais puro que o conjunto C, com três algarismos diferentes (1, 2, 3).

Uma das formas mais conhecidas de medir a impureza de um ramo é por meio do índice Gini.

Como funciona o índice Gini?

O índice Gini calcula impureza considerando a probabilidade de ocorrência de um evento. A expressão a seguir quantifica essa relação para um número n de classes.

Considerando-se a tabela acima, note que para o conjunto 1, há apenas uma classe, o algarismo 1. Isso faz com que a probabilidade de ocorrência p1=1  e Gini A = 0. Para os conjuntos B e C temos, respectivamente os valores de Gini C =0.66.Gini B =0.44 e



O índice Gini entende a pureza de um sistema como o produto entre a probabilidade de ocorrência pide uma classe n pela probabilidade de não ocorrência 1- pi dessa classe, para um número n de possíveis classes. O resultado dessa soma de produtos de probabilidades para diferentes classes de atributos nos dá uma ideia da pureza de um ramo.

O conceito de entropia dentro de uma árvore de decisão

A entropia é outro conceito adotado na quantificação da impureza em sistemas e em ramos de árvores de decisão. A entropia é uma forma de se quantificar a ocupação de estados em um sistema. Em física, o arranjo que minimiza a energia de um sistema é dito de menor entropia.

Para as árvores de decisão, o arranjo de classes que minimiza a impureza em um ramo é dito de menor entropia. Considerando-se que cada estado tenha a mesma probabilidade de ocorrência, configurações que maximizam a ocupação de estados tendem a acontecer mais. Isso nos diz que a entropia é uma medida da probabilidade de ocorrência de uma configuração e que quanto mais simples o arranjo dos estados, menor a entropia do sistema.

Considerando-se a tabela acima, a expressão a seguir quantifica essa relação para um número n de classes. Note que para o conjunto 1, possui apenas uma classe para definir o estado de ocupação, o algarismo 1. Isso faz com que a probabilidade de ocorrência p1= 1 e Entropia A = 0. Para os conjuntos B e C temos, respectivamente os valores de Entropia B =0.58 e Entropia C =1.


Em termos da organização dos dados em uma estrutura como a árvore de decisão, a entropia mede o nível de aleatoriedade dos ramos. Ramos com contagens unânimes de atributos são mais puros do que níveis divididos e a entropia mede essa “pureza”.

Nesse sentido, um valor baixo de entropia significa um nível baixo de impureza no ramo. Assim, um ramo com decisões muito divididas implica em um sistema menos “puro”, enquanto que um ramo com decisões pouco divididas implica em um sistema mais “puro”.

No contexto da árvore de decisão, quando encontramos um estado mais puro, temos um ganho de informação sobre o sistema, uma vez que, quanto mais unânime um ramo se apresenta, maior é o discernimento que obtemos do sistema. Dessa forma a árvore refina seus ramos nível a nível, optando sempre pelas subdivisões que conduzem às decisões mais unânimes, ou mais puras, possíveis.

A importância das árvores para a ciência de dados

De forma geral, podemos dizer que as árvores de decisão têm a vantagem de serem de fácil leitura e entendimento, um dos poucos modelos interpretáveis em todos os seus níveis, o que a torna muito útil. Ela usa uma lista de atributos e rótulos para seu aprendizado supervisionado e pode ser aplicada como um classificador, um previsor de rótulos.

As árvores de decisão são modelos robustos muito eficientes e quando associadas a um número considerável de outras árvores de decisão, as chamadas florestas de decisão, se tornam uma ferramenta muito potente para a classificação de sistemas.

Aprenda modelos de classificação na Digital House

Na Digital House você aprende sobre as árvores de decisão na teoria e na prática, no nosso curso de Data Science com professores que enfrentam problemas reais de aplicação na ciência de dados, da previsão de datas de maior ocupação em hotéis, a rotatividade de clientes em empresas e cartão de crédito, até a prospecção de novos clientes para uma empresa.

Leia mais no blog DH:

+ Como fazer uma análise de resultados: uma breve introdução

+ O que é data warehouse e quais são suas principais características

+ O dia a dia de um analista de dados: responsabilidades, ferramentas e dúvidas

E aí, já segue a gente no Twitter? Vem pra rede, vamos conversar sobre habilidades digitais! ;)