Tamanho atual da fonte:

Regressão Linear - vídeo aula

Regressão Linear

O exemplo mais simples de aproximação por mínimos quadrados é ajustar uma reta a um conjunto de pares de observação: $(x_{1}, y_{1}), (x_{2}, y_{2}), ... , (x_{n}, y_{n})$. A expressão matemática do ajuste por uma reta é $$ y = a_{0} + a_{1}x + e, $$ onde $a_{0}$ e $a_{1}$ são coeficientes representando a intersecção com o eixo $y$ e a inclinação, respectivamente, e $e$ é o erro ou resíduo entre o modelo e a observação, o qual pode ser representado, depois de se reorganizar a equação acima, por $$ e = y - a_{0} - a_{1}x. $$ Portando, o erro ou resíduo é a discrepância entre o valor verdadeiro de $y$ e o valor aproximado, $a_{0} + a_{1}x$, previsto pela equação linear.



Critérios para o melhor ajuste

Suponha que temos um conjunto de $n$ pontos ($x$,$y$) de uma função e queremos calcular uma reta da forma $y = a_{0} + a_{1}x$ que melhor represente esses pontos.

Para achar os valores dos coeficientes $a_{0}$ e $a_{1}$ que descrevem a reta, poderíamos tentar resolver o sistema:

$$\begin{cases} y_{1} = a_{0} + a_{1}x_{1} \\ y_{2} = a_{0} + a_{1}x_{2} \\ y_{3} = a_{0} + a_{1}x_{3} \\ \vdots \\ y_{n} = a_{0} + a_{1}x_{n} \end{cases} $$

Porém, temos um sistema com $n$ equações e 2 incógnitas (sobredeterminado). Se os pontos não forem colineares, o sistema será impossível.

Dessa forma, como não podemos encontrar uma reta que passe por todos esses pontos, nos resta fazer o melhor ajuste de maneira a achar esses coeficientes.

O ajuste por Mínimos Quadrados é feito de maneira a minimizar a soma dos quadrados dos erros em todos os pontos, ou seja, a diferença entre o $y$ da função original e o $y$ calculado na aproximação. Dessa forma, temos que a soma total dos resíduos é dada por:

$$ \begin{aligned} S_{r} &= \sum_{i=1}^{n} e_i^2 \\ &= \sum_{i=1}^{n} (y_{i,medido} - y_{i,aprox})^2 \\ &= \sum_{i=1}^{n} (y_i - a_0 - a_1x_i)^2. \end{aligned} $$
Para achar os valores de $a_0$ e $a_1$, derivamos a equação acima em relação a cada um dos coeficientes:
$$\frac{\partial S_r}{\partial a_0} = -2\sum (y_i - a_0 - a_1x_i),$$
$$\frac{\partial S_r}{\partial a_1} = -2\sum [(y_i - a_0 - a_1x_i)x_i].$$
Para minimizar esse resíduo, igualamos as derivadas a zero e expandimos as somas:
$$ 0 = \sum y_i - \sum a_0 - \sum a_1x_i, $$
$$0 = \sum y_ix_i - \sum a_0x_i - \sum a_1x_i^2.$$
Manipulando essas equações, temos que
$$a_1 = \frac{n \sum x_iy_i - \sum x_iy_i}{n\sum x_i^2 - (\sum x_i)^2},$$
$$a_0 = \overline{y}- a_1\overline{x}.$$
Podemos expressar esse resultado na forma de um produto matricial: $$ X^TX \hat{a} = X^TY, $$ onde o vetor coluna $\hat{a}$ contém os coeficientes do ajuste $a_0$ e $a_1$ e $X$ é uma matriz de Vandermonde de grau 1, que contém $n$ linhas (número de pontos) e 2 colunas, dada por: $$ X = \begin{bmatrix} 1 & x \\1 & x \\ \vdots & \vdots \\1 & x \end{bmatrix}. $$ De forma alternativa, podemos expressar o resultado como sendo:
$$ \begin{bmatrix} n & \sum x \\ \sum x & \sum x^2 \end{bmatrix} \begin{bmatrix}a_0 \\a_1 \end{bmatrix} = \begin{bmatrix}\sum y \\ \sum xy \end{bmatrix}. $$
Resolvendo o sistema, encontraramos a melhor reta que ajusta os pontos segundo o critério de minimização do erro quadrático.



Exemplo 1

Ajuste uma reta para o conjunto de pontos ($x$,$y$) de uma função dados abaixo.

${x_i}$ ${y_i}$
$1$ $0.5$
$2$ $2.5$
$3$ $2.0$
$4$ $4.0$
$5$ $3.5$
$6$ $6.0$
$7$ $5.5$
Queremos achar uma equação linear da forma $y = a_{0} + a_{1}x$ que melhor se ajusta a esse conjunto de pontos. Podemos utilizar da relação:
$$ \begin{bmatrix} n & \sum x \\ \sum x & \sum x^2 \end{bmatrix} \begin{bmatrix}a_0 \\a_1 \end{bmatrix} = \begin{bmatrix}\sum y \\ \sum xy \end{bmatrix}$$
para encontrar os melhores coeficientes que ajustam essa reta. Assim, temos que:
$n = 7$
$ \sum x = 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28 $
$ \sum x^2 = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 + 6^2 + 7^2 = 140 $
$ \sum y = 0.5 + 2.5 + 2.0 + 4.0 + 3.5 + 6.0 + 5.5 = 24 $
$ \sum xy = 1*0.5 + 2*2.5 + 3*2.0 + 4*4.0 + 5*3.5 + 6*6.0 + 7*5.5 = 119.5 $
Obtemos, então:

$$ \begin{bmatrix} 7 & 28 \\ 28& 140 \end{bmatrix} \begin{bmatrix}a_0 \\a_1 \end{bmatrix} = \begin{bmatrix} 24 \\ 119.5 \end{bmatrix}.$$
Na sintaxe de sistema, $$ \begin{cases} 7a_{0} + 28a_{1} = 24 \\ 28a_{0} + 140a_{1} = 119.5 \end{cases}. $$ Podemos resolver facilmente esse sistema para determinar os valores de $a_0$ e o $a_1$: $$ a_0 = 0.071428 $$ $$ a_1 = 0.839286 $$
Portanto, o ajuste por mínimos quadrados é

$$y = 0.071428 + 0.839286x.$$ A Figura (2) ilustra a reta obtida, bem como os pontos originais.


(Figura 2)

Para obter o resíduo (erro total) cometido, precisamos primeiro obter o $y$ aproximado para cada $x$:

$$ \begin{aligned} y_1 = 0.071428 + 0.839286x_1 \\ &= 0.071428 + 0.839286*1 = 0.91071. \end{aligned} $$
Da mesma forma: $$ y_2 = 1.75000, \\ y_3 = 2.58928, \\ y_4 = 3.42857, \\ y_5 = 4.26785, \\ y_6 = 5.10714, \\ y_7 = 5.94643.. $$ Depois, é só cálcular o somatório do quadrado das diferenças entre cada $y$ medido e os $y$ aproximados:

$$ \begin{aligned} S_{r} &= \sum_{i=1}^{n} e_i^2 \\ &= \sum_{i=1}^{n} (y_{i,medido} - y_{i,aprox})^2 \\ &= (0.5-0.910714)^2 + (2.5 - 1.75)^2 + \\ &\;\;\;\;\; + (5.5-5.94643)^2 \\ &= 2.99106. \end{aligned} $$



Exemplo 2

Use a regressão por mínimos quadrados para ajustar uma reta aos pontos tabelados abaixo:

${x_i}$ ${y_i}$
$6$ $29$
$7$ $21$
$11$ $29$

Devemos resolver um sistema da forma: $$\begin{cases} y_{1} = a_{0} + a_{1}x_{1} \\ y_{2} = a_{0} + a_{1}x_{2} \\ y_{3} = a_{0} + a_{1}x_{3} \\ \vdots \\ y_{n} = a_{0} + a_{1}x_{n} \end{cases} $$ Substituindo os 3 pontos $(x,y)$, ficamos com:

$$\begin{cases} 29 = a_{0} + 6a_{1} \\ 21 = a_{0} + 7a_{1} \\ 29 = a_{0} + 11a_{1} \end{cases} $$ Para encontrar os parâmetros da reta, devemos resolver o sistema: $$ X^TX \hat{a} = X^TY, $$ ou seja,
$$ \begin{bmatrix} 1 & 1 & 1 \\ 6 & 7 & 11 \end{bmatrix} \begin{bmatrix} 1 & 6 \\1 & 7 \\ 1 & 11 \end{bmatrix} \begin{bmatrix} a_0 \\a_1 \end{bmatrix} = \begin{bmatrix} 1 & 1 & 1 \\ 6 & 7 & 11 \end{bmatrix} \begin{bmatrix} 29 \\21 \\29 \end{bmatrix}. $$
Resolvendo esses produtos, chegamos a:
$$ \begin{bmatrix} 3 & 24 \\ 24 & 206 \end{bmatrix} \begin{bmatrix} a_0 \\a_1 \end{bmatrix} = \begin{bmatrix} 79 \\ 640 \end{bmatrix}. $$
Resolvendo esse sistema, achamos que

$$a_0 = 21.7619,$$ $$a_1 = 0.5714.$$
Em consequência, a melhor reta que ajusta esse conjunto de pontos é:

$$y = 21.7619 + 0.5714x.$$
A Figura abaixo ilustra o resultado obtido:



Para calcular o erro quadrático (resíduo) cometido na aproximação, definimos o módulo do erro quadrático $|\vec e|^2 = e^Te$, onde $\vec e$ é o vetor coluna do erro dado pela diferença entre os valores coletados de $y$ e os valores obtidos na aproximação:
$$ \vec e = \begin{bmatrix} 29 \\21 \\29 \end{bmatrix} - \begin{bmatrix} 21.7619 + 0.5714*6 \\21.7619 + 0.5714*7 \\21.7619 + 0.5714*11 \end{bmatrix} = \begin{bmatrix} 29 \\21 \\29 \end{bmatrix} - \begin{bmatrix} 25.1903 \\25.7617 \\28.0473 \end{bmatrix} = \begin{bmatrix} 3.8095 \\-4.7619 \\ 0.9524 \end{bmatrix} $$
Logo, o erro quadrático é dado por
$$ \begin{aligned} |\vec e|^2 &= \begin{bmatrix} 3.8095 &-4.7619 & 0.9524 \end{bmatrix} \begin{bmatrix} 3.8095 \\-4.7619 \\ 0.9524 \end{bmatrix} \\ &= 38.0952. \end{aligned} $$

Exemplo com Geogebra

Considerando a tabela abaixo, encontre a melhor reta que representa o conjunto de pontos.


${y}$ ${x}$
${2}$ ${0.25}$
${3}$ ${2}$
${4}$ ${4}$
${5}$ ${3.35}$
${6}$ ${6}$

Solução:


Exercícios - Regressão Linear

Enunciado