Compreendendo o Modelo de Árvore de Regressão

Introdução ao Modelo de Árvore de Regressão sem fórmulas, equações e afirmações científicas

Este artigo é destinado a explicar o modelo de Machine Learningo de máquina de árvore de regressão, sem a necessidade de conhecimento aprofundado ou um diploma de Ciência da Computação/Matemática para entendê-lo.

Como um dos modelos de aprendizado de máquina mais usados, uma árvore de decisão geralmente é usada para fins de classificação. No entanto, também pode ser usado para prever valores numéricos contínuos.

Árvore de Regressão

Exemplo

Suponha que temos um grupo de alunos do ensino fundamental que foram pesquisados para perguntar quantas horas eles geralmente gastam com estudos toda semana, e então temos o seguinte conjunto de dados associando-se com suas notas de exame.

notas exames x horas de estudo

Bem, parece ideal porque sabemos que os resultados do exame não devem ser afetados apenas pelo tempo de estudo, mas também por outros fatores. Estamos apenas usando-o para demonstrar o modelo de árvore de regressão. Outra coisa importante é que os dados definitivamente não são lineares como mostrado na figura abaixo.

Dividir um nó (Fazer um ramo)

O que significa um ramo?

Como mostra a figura abaixo, a linha vertical vermelha (Hora do Estudo = 3,1) divide os dados na região esquerda e na região direita.

Para cada um da esquerda e da direita, podemos calcular a média de todos os pontos de dados com suas “Pontuações”. A média para os 7 pontos esquerdos é de 15,96, enquanto a média para a direita 16 pontos é de 87,65.

Suponha que nós vamos fazer um ramo como este, então:

  • Cada aluno que estudar menos de 3,1 horas será previsto com as notas 15,96
  • Cada aluno que estudar maior ou igual a 3,1 horas será previsto com as notas 87,6

Portanto, acabamos com a árvore como acima mostrado.

No entanto, como podemos decidir a condição dividida? Em outras palavras, por que dividimos usando o valor entre o 7º e o 8º, mas não o 8º e o 9º ou outros? Existem 24 valores para que tenhamos 23 candidatos de diferentes condições divididas.

O critério básico é o seguinte:

Cometa o menor erro para cada divisão

Medição do erro

Obviamente, quando prevemos as marcas usando a árvore acima, há definitivamente “erros”. Por exemplo, de acordo com o conjunto de dados, um aluno que estuda 0,5 horas por semana com apenas 1,4 pontos (como mostrado abaixo). No entanto, nossa árvore de regressão atual prevê que pontos de 15,96.

Então, o erro é a diferença entre os dois valores, o previsto e o observado. Isso é 15,96–1,4=14,56. Na figura abaixo, todas as linhas pontilhadas cinza são os “erros”.

Então, como decidir a melhor condição de divisão? Basicamente, vamos tentar todas as possibilidades que podem dividir o conjunto de dados da seguinte forma, e então pegar aquele com menos erro.

Se você prestar atenção ao GIF acima, você verá que o “erro total” será o menor quando dividirmos entre o 7º e o 8º pontos.

O erro total é o valor quadrado da diferença entre as marcas reais e as marcas preditivas (médias) de modo que seja um número muito grande.

Continue dividindo

Após a divisão anterior usando a condição “Hora de Estudo < 3.1”, temos duas filiais. A da esquerda tem 7 amostras e a direita tem 17 amostras

A mesma lógica que foi mostrada acima será aplicada às amostras esquerdas e à direita separadamente para que possamos ter a melhor divisão nas amostras esquerdas e nas amostras certas da seguinte forma:

Agora é muito melhor!

Problema de Overfitting

No entanto, você notou que há um problema?

Vamos dar uma olhada na figura acima. podemos continuar dividindo o segundo ramo que tem 2 amostras com a média de 43,8. Então, acabamos com mais dois ramos.

  • Quando o horário de estudo é entre 2,3 e 2,7, prevê-se que um aluno tenha notas 61,7
  • Quando o horário de estudo é entre 2,7 e 3,1, prevê-se que um aluno tenha notas 25,9

Se validarmos a árvore usando nosso conjunto de dados (a seguir), descobriremos que o erro dessas duas amostras é ZERO!

Mas espere, algo está errado. Parece que nosso modelo de Árvore de Regressão acha que os alunos que estudam um pouco mais de horas terão notas mais baixas. Isso não faz sentido!

Isso é porque nosso conjunto de dados original não é perfeito. Também acontece na prática.

Afinal, não podemos dizer que as notas do exame dos alunos só resultam de suas horas de estudo.

Por exemplo, alguns alunos podem ser muito inteligentes e não precisam passar tantas horas quanto outros para obter as mesmas notas.

Neste caso, nosso modelo é perfeitamente equipado com nosso conjunto de dados de treinamento, mas falhará na prática. Esse é o chamado “overfitting”.

Teoricamente, um modelo de aprendizado de máquina da Árvore de Decisão, seja para classificação ou regressão, pode alcançar 100% de precisão nos dados de treinamento. Basta fazer com que a árvore tenha um grande número de galhos e cada ramo tem apenas 1 amostra, isso vai atingir a precisão de 100%. No entanto, tal árvore é inútil na prática. Precisamos evitar o problema de excesso de adaptação.

Evitar problemas de overfitting

Limitar a profundidade da árvore

Se olharmos para a árvore que produzimos acima, podemos facilmente definir a “profundidade” da árvore. Basicamente, a raiz da árvore será a profundidade = 0, e o próximo nível após a divisão será a profundidade = 1, e assim por diante.

Portanto, podemos limitar a profundidade da árvore, digamos que a profundidade máxima é de 2, para reduzir o problema de sobrejustia. Então, a construção da árvore vai parar aqui porque chegamos à profundidade máxima.

Limitar o número de amostras na folha

Suponhamos que limitemos que o número de amostras deve ser maior que 5, devemos então acabar com uma árvore da seguinte forma.

Na árvore de regressão acima, não temos nó de folha com menos de 5 amostras. Além disso, note-se que o primeiro nó de folha com 7 amostras e marcas médias = 15,96 NÃO será dividido porque sabemos que a partir de exemplos anteriores um dos ramos terá apenas 2 amostras após a divisão.

Na prática, os dois métodos de redução do problema de overfittin podem ser utilizados em conjunto.

Resumo

Obrigado.

São Paulo — Composing a repository of books (I bought), courses (I took), authors (I follow) & blogs (the direct ones) for my own understanding.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store