Vamos voltar ao exemplo que usamos para introduzir o paradigma de programação orientada por dados. No conjunto de dados, tínhamos informações sobre a metragem quadrada dos imóveis e seus preços, e a nossa tarefa era estabelecer a conexão entre esses valores para que pudéssemos estimar preços para novos imóveis.

Para simplificar, vamos ter um conjunto de treino que contém 10 instâncias, que estão apresentadas na tabela abaixo:

 Metragem quadrada (m2) Preços Imobiliários  (1000€)
43 60
25 32.1
66 88.4
80 111.4
105 120.32
70 72.1
40 46.3
85 90.1
84 99.6
102 139.2

Também podemos exibir essas imagens graficamente. Ao longo do eixo x, definiremos os valores da metragem quadrada, ao longo do eixo y os valores dos preços dos imóveis e marcaremos os pares de valores com círculos azuis.


Vamos escolher para o modelo uma função que relacione a metragem quadrada dos imóveis x e os preços dos imóveis y com a equação \(y = β_0 + β_1x\), onde \(β_0\) e \(β_1\) representam parâmetros desconhecidos. Este é o chamado  modelo linear , e como o usamos para resolver o problema da regressão, também o chamamos de modelo de regressão linear . Note que esta é na verdade a equação de uma reta \(y = kx + n\), onde o declive é denotado por \(β_1\) e a ordenada na origem é denotado por \(β_0\). A motivação para a introdução deste modelo reside no facto de os pontos seguirem a bissetriz dos quadrantes ímpares, talvez ligeiramente abaixo.

Esta seção é emparelhada com Jupyter Volume 05-1-linear_regression.ipynb . Para acompanhar o conteúdo, clique no link e, em seguida, no botão  para abrir o conteúdo no Google Colab . Se você estiver visualizando os blocos de anotações no se dispositivo, localize o bloco de anotações com o mesmo nome entre os conteúdos e execute-o.

A sua tarefa é carregar o conjunto de dados imobiliários no bloco de anotações complementar e selecionar os valores dos parâmetros \(β_0\) e \(β_1\) que considera que melhor correspondem a esses dados. Pode ajustá-los movendo os controles deslizantes para a esquerda e para a direita. Lembre-se dos valores que escolheu e das ideias que o guiaram ao determinar os parâmetros.

Provavelmente já tentou obter o valor mais perto possível dos pontos dados e faz o menor número de desvios possível. Certamente ficou igualmente satisfeito com algumas escolhas de parâmetros, enquanto algumas foram menos boas. E do ponto de vista da aprendizagem automática, tentamos encontrar os valores dos parâmetros \(β_0\) e \(β_1\) para os quais cometemos o menor erro, mas temos que definir exatamente qual é o erro realmente. Veja como vamos fazê-lo.

Suponha que os valores selecionados sejam \(β_0= 6.3\) e \(β_1= 1.02\). Agora vamos expandir a tabela de dados com uma coluna com os valores calculados por este modelo de regressão linear para os valores de quadratura que temos. Do ângulo do modelo, representamo-los com o tamanho x.

 Metragem quadrada
(m2)

Preços Imobiliários
(1000€)
Preço do modelo
\(y = 6.3 + 1.02x\)
(1000€)
43 60 50.16
25 32.1 31.8
66 88.4 73.62
80 111.4 87.9
105 120.32 113.4
70 72.1 77.7
40 46.3 47.1
85 90.1 93
84 99.6 91.98
102 139.2 110.34

A diferença entre os valores esperados (conhecidos no conjunto de dados) e os valores que calculamos (lembre-se de chamá-los de previsões) é um erro. Agora vamos calcular todos os erros e registá-los na tabela.

 Metragem quadrada
(m2)

Preços Imobiliários
(1000€)
Preço do modelo
\(y = 6.3 + 1.02x\)
(1000€)
Erro de modelo
43 60 50.16 9.84
25 32.1 31.8 0.3
66 88.4 73.62 14.78
80 111.4 87.9 2.53
105 120.32 113.4 6.92
70 72.1 77.7 -5.6
40 46.3 47.1 -0.8
85 90.1 93 -2.9
84 99.6 91.98 7.62
102 139.2 110.34 28.86

Para facilitar o acompanhamento do comportamento dos erros, na imagem abaixo, seus valores são mostrados por linhas pontilhadas azuis.

Para se ter uma ideia do erro total do modelo, é imprudente adicionar os erros individuais, uma vez que alguns valores de erro são positivos e alguns valores são negativos. Portanto, podemos elevá-los ao quadrado e somá-los - isso vai dar-nos informações mais fortes sobre o tamanho do erro, independentemente de ser positivo ou negativo. Se dividirmos a soma resultante pelo número de instâncias no conjunto, vamos ter uma ideia do erro médio do modelo. No nosso caso, é: \((9.84^ 2  + 0.32^2 + 14.782^2 + 23.52^2 + 6.92^2 + (-5.6)^ 2  + (-0.8)^ 2  + (-2.9)^ 2  + 7.62^2 + 28.86^2)/10 = 184.687\)

 O erro do modelo de regressão linear calculado desta forma é chamado de erro quadrado médio  (MSE). Para valores fixos dos parâmetros \(β_0\) e \(β_1\), o procedimento de cálculo que descrevemos pode ser abreviado pela fórmula \(\frac{1}{N}\sum\limits_{i = 1}^{N}(yi −(β_0+ β_1x_i))^2\). Nele, os pares \((x i,yi)\) correspondem às instâncias individuais, à metragem quadrada das propriedades xi e seus preços yi, e o número n indica o número total de instâncias. São 10 no nosso caso. A expressão figurada na soma representa a diferença entre o yi esperado e os valores calculados \(β_0+ β_1x_i\).

O quadrado do erro é o erro que sempre emparelhamos com o modelo de regressão linear, e que queremos minimizar o máximo possível, escolhendo os parâmetros rulex \(β_0\) e \(β_1\). A partir da experiência de definir os parâmetros, verificou que esta não é uma tarefa muito fácil. Felizmente, existem técnicas matemáticas que podem nos ajudar com isso. Para descobrir como fazer isso, vamos passar para a próxima lição sobre descida de gradiente.

 

 

Last modified: Saturday, 21 June 2025, 10:42 PM