Alura > Cursos de Data Science > Cursos de Data Science > Conteúdos de Data Science > Primeiras aulas do curso Árvores de Decisão: aprofundando em modelos de Machine Learning

Árvores de Decisão: aprofundando em modelos de Machine Learning

Entendendo as Árvores de Decisão - Apresentação

Boas-vindas a esse curso! Eu sou a Thainá e eu vou ser a sua instrutora. Nesse curso nós vamos aprender a construir diversos modelos de machine learning. Esses modelos vão nos ajudar, por exemplo, a dizer se uma transação é considerada uma fraude.

Esses modelos que eu estou falando são árvores de decisão, nós vamos aprender desde as árvores mais simples até algumas árvores mais robustas; como, por exemplo, o Random Force.

E para isso, eu estou mostrando o notebook que nós vamos desenvolver durante nosso curso. Então esse é o projeto, ele vai ser desenvolvido em Python, utilizando o Google Colab, além disso vamos utilizar algumas bibliotecas - como, por exemplo, o Pandas - para manipulação dos dados e também o Scikit-Learn, que é a biblioteca que vamos usar para construir os nossos modelos de machine learning.

Então para fazer esse curso você tem que ter um pouco de conhecimento de Python e também um pouco de conhecimento sobre problemas de classificação. Para ajudar você, nós vamos deixar na descrição do curso como pré-requisitos alguns outros cursos aqui Alura que você pode fazer antes desse curso.

Então eu verei você na próxima aula, onde vamos começar explorando um pouco mais um modelo de machine learning!

Entendendo as Árvores de Decisão - Classificando transações com uma árvore

Nesse vídeo vamos começar entendendo como funciona exatamente uma árvore de decisão. Então, para fazer isso, vamos usar um exemplo de detecção de fraudes, onde eu tenho uma transação e quero saber se ela é uma fraude ou não. Para isso, vamos usar o modelo de machine learning, que é a árvore de decisão e que é um dos modelos que nós conseguimos fazer isso.

Lembrando que isso é um problema de classificação, nós vamos classificar a transação entre sendo ou não uma fraude.

Então para começarmos nós temos essa árvore de decisão. A primeira pergunta que eu tenho é: a transação é no mesmo país do cliente? Se essa transação for no mesmo do cliente, eu continuo a minha classificação pela esquerda, pelo nó “sim”. Se não, eu continuo a minha classificação pela direita e vou continuando respondendo essas perguntas.

Sendo que cada um desses nós vai fazer uma decisão. Ele vai decidir, se a minha transação for no mesmo país do cliente, eu vou para um lado; se não eu vou para um outro. Então dizemos que cada um desses nós faz uma decisão.

Então agora para entendermos um pouco melhor, vamos colocar um exemplo. Eu tenho por exemplo da Maria, ela fez uma transação. Queremos saber de fato se foi a Maria, se não foi uma fraude. Então primeira pergunta é: a transação que foi feita com o cartão da Maria é no mesmo país que a Maria reside? Vamos ver então primeiro se é ou não no mesmo país.

Podemos ver que a Maria reside no Brasil, mas a transação foi feita nos Estados Unidos. Então não, não é no mesmo país da Maria. Continuamos a busca pela direita (não). A próxima pergunta é: o cliente está bloqueado para comprar fora do país?

Então precisamos ver essa informação. A Maria está bloqueada para comprar fora do país ou o cartão dela tem acesso para fazer compras fora do país? É bloqueado, então o cartão dela está bloqueado para comprar fora do país. Ela está bloqueada? Sim, isso significa que vai cair no nó dizendo que essa transação que foi feita é sim uma fraude. Então vamos usar um outro exemplo.

Agora temos a Joana. Primeiramente: a transação no cartão da Joana foi feita no mesmo país que ela reside? Vamos ver essa informação.

E vemos que sim, ela reside no Brasil e a transação foi feita no Brasil também. Então agora vamos continuar pelo lado esquerdo (sim) da árvore. Então a próxima pergunta é: o valor de transação que foi feita no cartão da Joana é menor que R$5.000? Vamos ver qual o valor dessa transação.

R$6400. Não, não é menor que R$5.000, é maior que R$5000. Então vamos para o lado direito (não) do nó. Próxima pergunta: o valor médio de transações que a Joana faz mensalmente é menor que R$2.500? Vamos ver qual é o valor.

R$ 1.500. Sim, é menor, então consideramos como fraude a transação feita no cartão da Joana. Sim, é menor que R$2.500 e é como fraude. Agora temos mais um exemplo.

Agora temos o José. A transação feita no cartão do José é no mesmo país que ele reside?

Sim, ele reside no Brasil e a transação também foi feita no Brasil. Agora a próxima pergunta: o valor da transação é menor que R$5.000? Então vamos ver o valor da transação... R$4400, então sim. Agora vamos para um outro caminho, continuamos pela esquerda (sim), pois é menor que R$5.000.

E a próxima pergunta: A última transação foi feita a menos de 1 minuto? Quantos minutos faz? 190 minutos, então não, foi há mais de um minuto. Então nós temos que a transação do José não é uma fraude.

Vimos que uma das vantagens da árvore de decisão que podemos ver, é que conseguimos entender esse fluxo. Vemos se a transação foi no mesmo país do cliente ou se a transação não foi no mesmo país.

Se a Maria mora no Brasil e fizeram uma compra lá nos Estados Unidos e o banco viu que o cartão dela estava bloqueado para comprar fora do Brasil e que ela não deveria ter feito essa transação; ela não avisou que ela foi fazer uma viagem para fora do Brasil e que talvez iria usar o cartão. Então ela não tinha essa autorização.

Então faz sentido que o banco bloqueie o cartão dela. Nós conseguimos entender esse fluxo, faz um sentido, conseguimos entender como essas ações foram tomadas. Essa é uma grande vantagem da árvore de decisão.

Porque em alguns outros modelos, entre chegarmos no ponto dessa classificação da transação de ser fraude ou não, ao invés de termos essa árvore de decisão que conseguimos entender os fluxos, às vezes temos um grande ponto de interrogação e não conseguimos entender direito o passo a passo que levou a uma decisão final.

Então essa é uma das grandes vantagens da árvore de decisão. A partir daqui nós vamos entender um pouco sobre como construímos essa árvore de decisão.

Entendendo as Árvores de Decisão - Primeiros passos para construir uma árvore

Vamos aprender agora a construir uma árvore de decisão. Primeiro vamos ver o que precisamos para construir essa árvore. Então a primeira coisa que precisamos são dados rotulados.

transaçãopaísvalorfraude
1SIMR$ 3000.00NÃO
2NÃO$ 3500.00SIM
3SIMR$ 5600.00NÃO
4SIMR$ 100.00SIM
5NÃO$ 100.00NÃO

Na imagem temos como exemplo cinco transações, elas já estão classificadas como sendo ou não sendo fraude. Temos como exemplo simples, para mostrar como que vamos construir essa árvore, mas na verdade, geralmente na vida real nós teríamos várias transações, por exemplo, milhares de transações.

E outra coisa que vamos usar e que estão dentro dos nossos dados são atributo. Nesse caso temos dois atributos, outros tipos de dados que também em exemplos reais podemos ter vários, nesse caso temos dois para exemplificar: país e valor.

O país é o que vai nos dizer se o cliente reside no mesmo país que a transação foi feita, como vimos anteriormente no exemplo. O valor é o valor da transação. O que mais nós precisamos para construirmos a nossa árvore, além dos dados? O algoritmo que vai construir a nossa árvore!

Então o algoritmo mais popular e mais clássico para construir árvore de decisão é chamado de CART, que em português seria “árvore de classificação e regressão”. Podemos ver que vamos construir uma árvore de decisão utilizando um algoritmo que também é chamado de árvore de classificação e regressão, mas na verdade temos o algoritmo CART, que vai gerar o modelo que é a árvore.

Mas no dia a dia os dois são chamados de árvore também. O primeiro passo para construirmos a árvore é definirmos qual será o nó raiz da nossa árvore. Para criarmos esse nó raiz, temos que escolher um daqueles dois atributos que vimos: ou valor ou país. Nós vamos usar aqui aquele atributo que vai classificar melhor a nossa árvore e que vai dividir melhor a nossa árvore.

Em seguida nós vamos aprender como faremos essa divisão.

Sobre o curso Árvores de Decisão: aprofundando em modelos de Machine Learning

O curso Árvores de Decisão: aprofundando em modelos de Machine Learning possui 144 minutos de vídeos, em um total de 44 atividades. Gostou? Conheça nossos outros cursos de Data Science em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Data Science acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas