Regressao Linear
Regressao Linear
Regressao Linear
Carlos Gomes
Escola Secundária de Amarante
[email protected]
Resumo
problema que consiste na determinação da recta que melhor se ajusta a uma dada nuvem de n pontos (xi , yi )
O é tradicionalmente tratado como o problema de encontrar os parâmetros a e b da equação y = ax + b que
n
d2i , em que os di são as diferenças entre os valores observados e os valores teóricos,
P
minimizam a soma S =
i=1
isto é, di = yi − mxi − b (veja-se [3]). Este procedimento é normalmente realizado (nas escolas) com recurso a
uma calculadora científica (gráfica) ou software da moda (GeoGebra, por exemplo), ficando os estudantes com a
tarefa aborrecida de introduzir números em listas e obter como recompensa uma equação que utilizam para fazer
previsões num dado contexto. O que aqui se trata é de mostrar o grande valor didático deste problema, mobilizando
conhecimentos que os alunos detêm para aclarar, do ponto de vista geométrico, o que está em causa em todo este
processo “obscuro” que decorre nos bastidores da tecnologia.
1 A geometria do problema
Sejam (x1 , y1 ), (x2 , y2 ), . . . , (xn , yn ) os dados observados (nuvem de pontos na Figura 1). Para a determinação do
parâmetro a (declive da recta), seria “simpático” que a nuvem tivesse o seu centro de massa na origem do referencial,
isto é, no ponto de coordenadas (0, 0). Isto porque libertar-nos-íamos do parâmetro b da equação da recta, o que parece
reduzir a dificuldade do problema, pois, nesta condições, o modelo associado à recta de regressão seria y = ax. Mas
para fazer com que o centro de massa da nuvem se desloque para a origem, é suficiente efectuarmos uma translação
de toda a nuvem de pontos segundo o vector (−x, −y), ou seja, basta subtrairmos o centro de gravidade (x, y) a todos
os pontos da nuvem. Obtém-se assim uma nova nuvem de pontos da forma (xi − x, yi − y) cujo centro de gravidade
é (0, 0).
Fazendo xi − x = x̃i e yi − y = y˜i , a nuvem sobre a qual o trabalho prossegue será x̃i , y˜i , (i = 1, 2, . . . , n), cuja
recta de regressão tem o mesmo declive que a recta de regressão da nuvem original, em consequência da translação
efetuada.
y = ax
. +b ..
...
.........
•..........
..
(x̄, ȳ) ... .
.... • ỹ = ax̃
......
......
......
•
...
........ ....
.........
...... ..
..
......... .....
. ....
•..........
.......
. .. .. ...◦. ..
• ........•. ....
...
. . . .
• ..
...
. ...... •
.... ....
..
...
....... .
.. ..◦....................
..... • .
. . ..
• ........•.. . .................
.... . .....
. .. . .... .....
.....
..
. .. . ...
..
... (x̃¯, ỹ¯)
...
......... •
.
.......
Figura 1: Translação da nuvem de pontos.
A nova nuvem é constituída por pontos da forma x̃i , y˜i e os pontos da forma x̃i , ax̃i (i = 1, 2, . . . , n) são os pontos
1
sobre a recta ỹ = ax̃. caso a correlação fosse perfeita. Os n vectores ~ui = x̃i , ax̃i determinados por estes pontos
1 Veja no apêndice como se pode obter a a partir desta modificação do problema
1
são colineares. Mas aqui, uma mudança de dimensão vai tornar o trabalho mais simples: se em vez de considerarmos
estes n vectores de dimensão 2 utilizarmos os dados organizados em vectores de dimensão n, temos o seguinte:
~i =
x˜1 , x˜2 , . . . , x˜n
~j =
ax˜1 , ax˜2 , . . . , ax˜n
e
~u = y˜1 , y˜2 , . . . , y˜n
~j
= ax˜1 , ax˜2 , . . . , ax˜n
= a x˜1 , x˜2 , . . . , x˜n
= a~i (1)
Para além do mais, o escalar a em (1) é precisamente o declive da recta procurada! Assim, determinar a será equivalente
a determinar (algo sobre) ~j, agora num espaço de dimensão n.
...........................
... . ...
...... ...........
.......
.......
. . ... .
.... ... ... ....
...... .
.. ...... . .... ..
.
~u ..... .....
......
...
.
.
.. ... ...
.... ...
..... ...
..... ... ..
..
..
....
. .... ......
......
.
.
.
. ~u − ~j ...
.
.
.
.
.
...
..
...... .. .... ...
........... .
. . ..
.
....
...
.
.
..... ....
.. θ .. ......... ...
.
.
.
. .. ..
.......................................................................................................................................................................................................................
.
... .
.
.. ..
~j
~i
Figura 2: Vetores num espaço de dimensão n
Repare-se que ~u − ~j = y˜1 − ax˜1 , . . . , y˜n − ax˜n não é mais do que o vector dos resíduos, isto é, o vector cujas
componentes são as diferenças entre os dados observados e os dados teóricos da nova nuvem. Ora, o que nós queremos
é que k~u − ~jk seja mínima. Isto só acontecerá se ~u − ~j for normal a ~i (como sugere a figura 2). Para que tal aconteça,
~j tem de ser a projecção de ~u sobre ~i. Logo, o produto escalar de ~u − ~j com ~i tem de ser nulo, retirando-se desta
condição o valor do multiplicador a, que é o declive da recta de regressão:
~u − ~j · ~i = ~j = a~i, de (1)
0
~u − a~i · ~i =
0
~u · ~i − a~i · ~i = ~i · ~i = k~ik2
0
~u · ~i
a = 2 (2)
k~ik
Depois de se calcular a através de (2), a determinação do parâmetro b é um simples exercício: dado que (x̄, ȳ) pertence
à recta procurada, ele terá de satisfazer a condição y = ax + b. Daqui se retira que b = ȳ − ax̄.
2 Exemplo
∼Temperatura v ∼Pluviosidade v
Temperatura Pluviosidade ~i ~u
11.3 122
-5.4875 64.375
12.0 108
-4.7875 50.375
13.5 101
-3.2875 43.375
15.2 54
-1.5875 -3.625
17.6 44
0.8125 -13.625
20.0 22
3.2125 -35.625
22.2 4
5.4125 -53.625
22.5 6
5.7125 -51.625
2
Neste exemplo, o centróide da nuvem de pontos é (x̄, ȳ) = (16.7875, 57.625). Os vectores ~u e ~i são as colunas da
tabela da direita, depois de efectuada a translação da nuvem original: são vectores num espaço de dimensão 8.
De acordo com as conclusões da secção anterior, os parâmetros da equação da recta de regressão y = ax + b podem
ser calculados do seguinte modo:
~u · ~i
a = 2
k~ik
−1441.9375
a ≈
139.26875
a ≈ −10.35363281
• Por que razão a correlação entre as variáveis é tanto mais forte quanto mais próximo de −1 e de 1 se encontra
o coeficiente? Não seria razoável pensarmos que quanto mais próximo de zero mais forte será a correlação, uma
vez que ele mede o grau de proximidade dos dados em relação à recta?!
Repare-se que o coeficiente de correlação2 , sendo uma medida do alinhamento dos dados, deve estar relacionado com
o “grau de colinearidade” entre os vectores ~u e ~i, referentes aos dados transladados. E uma forma natural de o fazer
é estudando o ângulo θ que ~u e ~i formam entre si (ver figura 2).3 Assim, θ poderia ser usado com legitimidade como
medida do grau de alinhamento dos dados, ou seja, como coeficiente de correlação. O diagrama que se segue resume
a variação deste coeficiente de correlação.
Nula
90o
Fraca....................... .......................Fraca
.
........ . . ...........
........ ......
..........
................. ..........................
.....
.......... . .......
..... ......
..... ......
..... .....
..
...... .....
....
..... ...
..
..... .
. ....... .
.... ... ....... ..
.
..
.
....
.
− + ....
...
...
...
.. .......... .
............ .....
....
~u · ~i
Visto que cos θ = , θ pode ser obtido através de
k~uk k~ik
!
~u · ~i
θ = arccos (3)
k~uk k~ik
2 A correlação não depende da nuvem que se considera, uma vez que a operação de translação efectuada à nuvem inicial garante a manutenção
das relações entre os dados observados e os teóricos.
3 Em tudo o que se segue pode-se substituir a unidade grau por rad
3
Na literatura sobre o assunto, θ é substituído pelo seu cosseno, e assim se compreende a sua variação:
0o ≤ θ ≤ 180o
−1 ≤ cos θ ≤ 1
~u · ~i
−1 ≤ ≤1
k~uk k~ik
~u · ~i
r = cos θ =
k~uk k~ik
A Apêndice
Depois da translação dos dados, o objectivo será, agora, minimizar a soma
n
X
S= e2i (ei = ỹi − ax̃i )
i=1
Resolvendo em ordem a a:
n
P
n n n ỹi x̃i
X X X ~u · ~i
ỹi x̃i − ax̃2i = 0 ⇒ x̃2i = 0 ⇒ a = i=1
ỹi x̃i − a n ≡ 2
x̃2i k~ik
P
i=1 i=1 i=1
i=1
Referências
[1] Steve Simon
http://www.pmean.com/10/LeastSquares.html, visualizado em 15.08.2019.
[2] José Martínez Salas. Elementos de Matematicas, 6.a edición, págs 177-190.
[3] Helena Ribeiro,Maria Alice Martins, Rui Santos. A regressão linear simples no ensino secundário. Gazeta de
Matemática da SPM, no 168, pág. no 42, Novembro 2012.