This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

A Geometria da Regressão Linear

Carlos Gomes
Escola Secundária de Amarante
[email protected]
Resumo

A regressão linear é um tema normalmente explorado (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 que decorre nos “bastidores” da tecnologia.

1 A geometria do problema

O problema que consiste na determinação da recta que melhor se ajusta a uma dada nuvem de nn pontos (xi,yi)(x_{i},y_{i}) é tradicionalmente tratado como o problema de encontrar os parâmetros aa e bb da equação y=ax+by=ax+b que minimizam a soma S=i=1ndi2S=\sum\limits_{i=1}^{n}{d_{i}^{2}}, em que os did_{i} são as diferenças entre os valores observados e os valores do modelo, isto é, di=yiaxibd_{i}=y_{i}-ax_{i}-b (veja-se [3]).

Sejam (x1,y1),(x2,y2),,(xn,yn)({x_{1},y_{1}}),\;({x_{2},y_{2}}),\;\ldots\;,({x_{n},y_{n}}) os dados observados (nuvem de pontos na Figura 1). Para a determinação do parâmetro aa (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)({0,0}). Isto porque libertar-nos-íamos do parâmetro bb 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=axy=ax. 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¯)({-\overline{x},-\overline{y}}), ou seja, basta subtrairmos o centro de massa (x¯,y¯)({\overline{x},\overline{y}}) a todos os pontos da nuvem. Obtém-se assim uma nova nuvem de pontos da forma (xix¯,yiy¯)({x_{i}-\overline{x},y_{i}-\overline{y}}) cujo centro de massa é (0,0)({0,0}).

Fazendo xix¯=x~ix_{i}-\overline{x}=\tilde{x}_{i} e yiy¯=y~iy_{i}-\overline{y}=\tilde{y}_{i}, a nuvem sobre a qual o trabalho prossegue será (x~i,y~i)\left(\tilde{x}_{i},\tilde{y}_{i}\right), com i=1,2,,ni=1,2,\ldots,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.

Refer to caption
Figura 1: Translação da nuvem de pontos.

A nova nuvem é constituída por pontos da forma (x~i,y~i)\left(\tilde{x}_{i},\tilde{y}_{i}\right) e os pontos da forma (x~i,ax~i)\left(\tilde{x}_{i},a\tilde{x}_{i}\right), i=1,2,,ni=1,2,\ldots,n, são os pontos sobre a recta y~=ax~\tilde{y}=a\tilde{x}, que coincidiriam com os primeiros caso a correlação fosse perfeita. Os nn vectores ui=(x~i,ax~i)\vec{u}_{i}=\left(\tilde{x}_{i},a\tilde{x}_{i}\right) determinados por estes pontos são colineares. Mas aqui, uma mudança de dimensão vai tornar o trabalho mais simples: em vez de considerarmos estes nn vectores de dimensão 2, utilizamos os dados organizados em vectores de dimensão n\bm{n}:

i\displaystyle{\vec{i}} =(x~1,x~2,,x~n),\displaystyle=\left(\tilde{x}_{1},\tilde{x}_{2},\;\ldots\;,\tilde{x}_{n}\right),
j\displaystyle{\vec{j}} =(ax~1,ax~2,,ax~n),\displaystyle=\left(a\tilde{x}_{1},a\tilde{x}_{2},\;\ldots\;,a\tilde{x}_{n}\right),
e\displaystyle e
u\displaystyle{\vec{u}} =(y~1,y~2,,y~n).\displaystyle=\left(\tilde{y}_{1},\tilde{y}_{2},\;\ldots\;,\tilde{y}_{n}\right).

Os vectores i{\vec{i}} e j{\vec{j}} são colineares:

j=(ax~1,ax~2,,ax~n)=a(x~1,x~2,,x~n)=ai.\begin{split}\vec{j}&=\left(a\tilde{x}_{1},a\tilde{x}_{2},\;\ldots\;,a\tilde{x}_{n}\right)\\ &=a\left(\tilde{x}_{1},\tilde{x}_{2},\;\ldots\;,\tilde{x}_{n}\right)\\ &=a\,{\vec{i}}\,.\end{split} (1)

Para além do mais, o escalar aa em (1) é precisamente o declive da recta procurada! Assim, determinar aa será equivalente a determinar (algo sobre) j{\vec{j}}, agora num espaço de dimensão n\bm{n}111Veja o Apêndice no final do artigo para melhor clarificação. .

\beginpicture
\setcoordinatesystem

units < 0.9mm, 0.9mm> \setplotareax from 0 to 55, y from 0 to 35 \arrow< 3mm> [ .2679492, .7279404] from 0 0 to 55 0 \arrow< 3mm> [ .2679492, .7279404] from 0 0 to 36.86184 25.81094 \arrow< 3mm> [ .2679492, .7279404] from 0 0 to 36.86184 0 \arrow< 3mm> [ .2679492, .7279404] from 36.86184 0 to 36.86184 25.81094 \circulararc35 degrees from 8 0 center at 0 0 u\vec{u}at 15.43092 15.90547 i\vec{i}at 38 -8 j\vec{j}at 18.43092 -4 uj{\vec{u}}-{\vec{j}}at 43.5 9.90547 θ\thetaat 10.49089 3.307764 \setdashes\plot29 0 35.84238 22.93614 / \plot45 0 37.61839 22.95497 /

Figura 2: Vetores num espaço de dimensão nn

Repare-se que uj=(y1~ax1~,,yn~axn~){\vec{u}}-{\vec{j}}=\left({\tilde{y_{1}}-a\tilde{x_{1}},\;\ldots\;,\tilde{y_{n}}-a\tilde{x_{n}}}\right) 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 se pretende é que a norma (ou distância) uj\|{{\vec{u}}-{\vec{j}}}\| seja mínima. Isto só acontecerá se uj{\vec{u}}-{\vec{j}} for normal a i{\vec{i}} (como sugere a figura 2). Para que tal aconteça, j{\vec{j}} tem de ser a projecção de u{\vec{u}} sobre i{\vec{i}}. Logo, o produto escalar de uj{\vec{u}}-{\vec{j}} com i{\vec{i}} tem de ser nulo, retirando-se desta condição o valor do multiplicador aa, declive da recta de regressão:

(uj)i\displaystyle\left({\vec{u}}-{\vec{j}}\,\right)\cdot{\vec{i}} =0\displaystyle=0
(uai)i\displaystyle\Leftrightarrow\left({\vec{u}}-a\,{\vec{i}}\,\right)\cdot{\vec{i}} =0(j=ai,de(1))\displaystyle=0\quad\left(\vec{j}=a\,\vec{i},\;de\;(\ref{colinear})\right)
uiaii\displaystyle\Leftrightarrow{\vec{u}}\cdot{\vec{i}}-a\,{\vec{i}}\cdot{\vec{i}} =0\displaystyle=0
a\displaystyle\Leftrightarrow a =uii2(ii=i2).\displaystyle=\dfrac{{\vec{u}}\cdot{\vec{i}}}{{\|\vec{i}\|}^{2}}\quad\left({\vec{i}}\cdot{\vec{i}}={\|\vec{i}\|}^{2}\right)\,. (2)

Depois de se calcular aa através de (1), a determinação do parâmetro bb é um simples exercício: dado que (x¯,y¯)({\bar{x},\bar{y}}) pertence à recta procurada, ele terá de satisfazer a condição y=ax+by=ax+b. Daqui se retira que b=y¯ax¯b=\bar{y}-a\bar{x}.

2 Exemplos de aplicação

Exemplo 1

Vejamos a aplicação destes resultados a um exercício típico de um manual escolar.

Existirá alguma relação entre a temperatura e a quantidade de chuva que cai em Amarante? Para responder a esta pergunta vamos comparar num gráfico de dispersão as temperaturas médias (ºC) dos vários meses do ano com a pluviosidade média (mm).

Temperatura Pluviosidade
11.3 122
12.0 108
13.5 101
15.2 54
17.6 44
20.0 22
22.2 4
22.5 6
21.3 29
18.3 80
14.2 102
11.6 107
\simTemperatura\;\backsim \simPluviosidade\;\backsim
i\vec{i} u\vec{u}
-5.3417 57.0833
-4.6417 43.0833
-3.1417 36.0833
-1.4417 -10.917
0.9583 -20.9167
3.3583 -42.9167
5.5583 -60.9167
5.8583 -58.9167
4.6583 -35.9167
1.6583 15.08333
-2.4417 37.08333
-5.0417 42.08333

Neste exemplo, a tabela da esquerda é dada e a da direita foi calculada por nós. O centro de massa da nuvem de pontos é (x¯,y¯)=(16.6417,64.9167)(\bar{x},\bar{y})=(16.6417,64.9167). Os vectores u\vec{u} e i\vec{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 12.

De acordo com as conclusões da secção anterior, os parâmetros da equação da recta de regressão y=ax+by=ax+b podem ser calculados do seguinte modo:
a\displaystyle a =uii2\displaystyle=\frac{\vec{u}\cdot\vec{i}}{{\|\vec{i}\|}^{2}} 1895.4583195.2692\displaystyle\approx\frac{-1895.4583}{195.2692} 9.7069,\displaystyle\approx-9.7069\,, b\displaystyle b =y¯ax¯\displaystyle=\bar{y}-a\bar{x} 64.9167+9.7069×16.6417\displaystyle\approx 64.9167+9.7069\times 16.6417 226.4557.\displaystyle\approx 226.4557\,. Assim, y9.7069x+226.4557y\approx-9.7069x+226.4557 será a equação da recta de regressão e, com ela, podemos fazer estimativas no contexto do problema.

Note-se que o produto escalar de dois vectores de dimensão nn não é mais do que a soma dos produtos das correspondentes componentes desses vectores (uma generalização do que se faz para n=2n=2 ou n=3n=3 na disciplina de Matemática A no Ensino Secundário), ou seja, se a=(a1,a2,,an)\vec{a}=\left(a_{1},a_{2},\cdots,a_{n}\right) e b=(b1,b2,,bn)\vec{b}=\left(b_{1},b_{2},\cdots,b_{n}\right),

ab=a1×b1+a2×b2++an×bn=i=1nai×bi.\vec{a}\cdot\vec{b}=a_{1}\times b_{1}+a_{2}\times b_{2}+\cdots+a_{n}\times b_{n}=\sum_{i=1}^{n}{a_{i}\times b_{i}}\;\text{.}

Também a norma de um vector de dimensão nn é uma generalização da norma de vectores em 2 e 3 dimensões, isto é,

a=a12+a22++an2=i=1nai2.\lVert\vec{a}\rVert=\sqrt{{a_{1}}^{2}+{a_{2}}^{2}+\cdots+{a_{n}}^{2}}=\sqrt{\sum_{i=1}^{n}{a_{i}}^{2}}\;\;\text{.}

Assim, no presente exemplo, ui\vec{u}\cdot\vec{i} corresponde a efectuar a soma dos produtos dos elementos correspondentes de cada linha da tabela da direita.

Exemplo 2222Para quem quiser criar uma lição no Geogebra Classroom com este exemplo, seguir para https://www.geogebra.org/m/ncpffvne

Neste exemplo, aplicaremos os conceitos anteriores à construção de um modelo linear do número de infetados pelo novo coronavírus em função do tempo decorrido no período de 8 a 31 de maio. Aqui, o centro de massa é dado pelas coordenadas do ponto (x¯,y¯)=(11.5,29648.583)(\bar{x},\bar{y})=(11.5,29648.583) e os vetores i\vec{i} e u\vec{u} habitam um espaço de dimensão 24 (colunas da tabela da direita).

Nº de dias Nº de infetados
67 27268
68 27406
69 27581
70 27679
71 27913
\cdots \cdots
87 31596
88 31946
89 32203
90 32500
\simNº de dias\sim \simNº de infetados\sim
i\vec{i} u\vec{u}
-11.5 -2380.583
-10.5 -2242.583
-9.5 -2067.583
-8.5 -1969.583
-7.5 -1735.583
\cdots \cdots
8.5 1947.417
9.5 2297.417
10.5 2554.417
11.5 2851.417

O produto escalar é ui261980\vec{u}\cdot\vec{i}\simeq 261980 (soma dos produtos dos elementos de cada linha da tabela da direita). O quadrado da norma do vector i\vec{i} (quadrância de i\vec{i}) é i2=1150{\|\vec{i}\|}^{2}=1150.

[Uncaptioned image]

Assim, com a=2619801150227.809a=\frac{261980}{1150}\simeq 227.809 e b=y¯ax¯11765.601b=\bar{y}-a\bar{x}\simeq 11765.601, obtemos a equação da reta mostrada na figura acima.

3 Coeficiente de correlação linear

O coeficiente de correlação é uma medida que pretende determinar o grau de alinhamento dos dados. Sobre ele costumam ser colocadas duas questões:

  • Por que razão varia no intervalo [1,1][-1,1]?

  • Por que razão a correlação entre as variáveis é tanto mais forte quanto mais próximo de 1-1 ou de 11 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ção, sendo uma medida do alinhamento dos dados, deve estar relacionado com o “grau de colinearidade” entre os vectores u\vec{u} e i\vec{i}, referentes aos dados transladados 333A 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.. E uma forma natural de medir este “grau de colinearidade” é estudar o ângulo θ\theta que u\vec{u} e i\vec{i} formam entre si (ver figura 2).444Em tudo o que se segue pode-se substituir a unidade grau por rad Assim, θ\theta poderia ser usado com legitimidade como medida do grau de alinhamento dos dados, ou seja, como coeficiente de correlação. O diagrama da figura 3 resume a variação deste coeficiente de correlação.

\beginpicture
\setcoordinatesystem

units < .3333333mm, .3333333mm> \setplotareax from -20 to 200, y from -15 to 98 \circulararc180 degrees from 150 0 center at 90 0 \plot168 0 12 -0.00000682 / \circulararc-20 degrees from 155.7785 23.94141 center at 90 0 \arrow<1.5mm> [0.5, 1] from 159.9929 .9999856 to 160 0 \circulararc20.00001 degrees from 24.22152 23.94142 center at 90 0 \arrow<1.5mm> [0.5, 1] from 20.00714 .9999839 to 20 -0.00000612 \circulararc23 degrees from 119.5833 63.44155 center at 90 0 \arrow<1.5mm> [0.5, 1] from 93.44209 69.91532 to 92.44296 69.95736 \circulararc-23.00001 degrees from 60.41672 63.44154 center at 90 0 \arrow<1.5mm> [0.5, 1] from 86.55791 69.91532 to 87.55704 69.95736 \setdashes\plot90 0 163.296 26.67757 / \putrulefrom 90 0 to 90 78 \plot90 0 16.70398 26.67758 / 0o0^{o}at 176 1 180o180^{o}at 1 .9999948 90o90^{o}at 92 85 Nulaat 90 94 Totalat 172 -8 Totalat 6 -8.000006 Forteat 171.296 14.67757 Forteat 8.703979 15.67758 Fracaat 115.9642 75.69201 Fracaat 64.03577 75.692 ++at 110 28 -at 70 28

Figura 3: Coeficiente de correlação θ\theta

Visto que cosθ=uiui,\displaystyle{\cos\theta=\frac{\vec{u}\cdot\vec{i}}{{\|\vec{u}\|}\,{\|\vec{i}\|}}\;,} θ\theta pode ser obtido através de

θ=arccos(uiui).\theta=\arccos\Bigg{(}\frac{\vec{u}\cdot\vec{i}}{{\|\vec{u}\|}\,{\|\vec{i}\|}}\Bigg{)}. (3)

No exemplo 1 da secção anterior, o coeficiente de correlação θ\theta é

θ=arccos(uiui)=arccos(1895.4583143.7391×13.9739)=160.68o(forteNegativa?).\theta=\arccos\left(\frac{\vec{u}\cdot\vec{i}}{{\|\vec{u}\|}\,{\|\vec{i}\|}}\right)=\arccos\left(\frac{-1895.4583}{143.7391\times 13.9739}\right)=160.68^{o}\;(forte\;Negativa?).

e no segundo exemplo, θ=arccos(261980262579.265)=arccos(0.998)3.62º\theta=\arccos\left(\dfrac{261980}{262579.265}\right)=\arccos(0.998)\simeq 3.62º (Muito forte, positiva?).

No entanto, na literatura sobre o assunto, θ\theta é convenientemente substituído pelo seu cosseno (porquê?), e assim se compreende a sua variação tal como encontramos nos manuais:

0oθ180o1cosθ11uiui1.0^{o}\leq{}\theta\leq{}180^{o}\Rightarrow-1\leq{}\cos\theta\leq{}1\Leftrightarrow-1\leq{}\displaystyle{\small\frac{\vec{u}\cdot\vec{i}}{{\|\vec{u}\|}\,{\|\vec{i}\|}}}\leq{}1.

Uma fórmula que normalmente acompanha os manuais para determinar o valor do coeficiente de correlação, rr, é

r=i=1nxiyi(i=1nxi)(i=1nyi)n(i=1nxi2(i=1nxi)2n)(i=1nyi2(i=1nyi)2n).\displaystyle{r=\frac{{\sum_{i=1}^{n}{x_{i}y_{i}-\frac{{\left({\sum_{i=1}^{n}x_{i}}\right)\left({\sum_{i=1}^{n}y_{i}}\right)}}{n}}}}{{\sqrt{\left({\sum_{i=1}^{n}{x_{i}^{2}}-\frac{{\left({\sum_{i=1}^{n}x_{i}}\right)^{2}}}{n}}\right)\left({\sum_{i=1}^{n}{y_{i}^{2}}-\frac{{\left({\sum_{i=1}^{n}y_{i}}\right)^{2}}}{n}}\right)}}}}\,. (4)

Sendo (4) equivalente a

r=i=1n(xix¯)(yiy¯)i=1n(xix¯)2i=1n(yiy¯)2,r=\frac{\sum_{i=1}^{n}(x_{i}-\bar{x})(y_{i}-\bar{y})}{\sqrt{\sum_{i=1}^{n}(x_{i}-\bar{x})^{2}}\sqrt{\sum_{i=1}^{n}(y_{i}-\bar{y})^{2}}}\,,

fica estabelecida a igualdade

r=uiui=cosθ.\displaystyle{r=\frac{\vec{u}\cdot\vec{i}}{{\|\vec{u}\|}\,{\|\vec{i}\|}}}=\cos\theta\,.

4 Apêndice

A interpretação geométrica que se explora neste texto tem como elemento essencial a translação da nuvem de pontos original para uma nuvem de pontos com centro de massa na origem do referencial. Esta operação faz com que as seguintes condições se verifiquem

i=1nx~i=0ei=1ny~i=0.\sum_{i=1}^{n}{\widetilde{x}_{i}}=0\quad\text{e}\quad\sum_{i=1}^{n}{\widetilde{y}_{i}}=0\;\text{.}

Reescrevendo-as, ficamos com

i=1nx~i=0\displaystyle\sum_{i=1}^{n}{\widetilde{x}_{i}}=0 1×x~1+1×x~2++1×x~n=0\displaystyle\Leftrightarrow 1\times\widetilde{x}_{1}+1\times\widetilde{x}_{2}+\cdots+1\times\widetilde{x}_{n}=0
wi=0\displaystyle\Leftrightarrow\boxed{\vec{w}\cdot\vec{i}=0}
e
i=1ny~i=0\displaystyle\sum_{i=1}^{n}{\widetilde{y}_{i}}=0 1×y~1+1×y~2++1×y~n=0\displaystyle\Leftrightarrow 1\times\widetilde{y}_{1}+1\times\widetilde{y}_{2}+\cdots+1\times\widetilde{y}_{n}=0
wu=0,\displaystyle\Leftrightarrow\boxed{\vec{w}\cdot\vec{u}=0}\;\text{,}

que, do ponto de vista geométrico, permitem afirmar que os vectores i\vec{i} e u\vec{u} (e, consequentemente, j\vec{j}) são perpendiculares ao vector unitário w=(1,1,,1)\vec{w}=\left(1,1,\cdots,1\right). Assim, i\vec{i}, j\vec{j} e u\vec{u} habitam o hiperplano de dimensão n1n-1, normal ao vector unitário w\vec{w}. Este facto não altera a argumentação seguida pois no hiperplano de dimensão n1n-1 continuamos a querer reduzir ao mínimo a norma de uj\vec{u}-\vec{j} e a condição continua a ser a ortogonalidade deste vector a j\vec{j}. No caso em que a amostra observada é constituída apenas por dois pontos, i\vec{i}, j\vec{j} e u\vec{u} são colineares e a correlação é perfeita, como seria de esperar555Para a situação em que n=3n=3, pode manipular e descarregar a animação GeoGebra em
https://www.geogebra.org/m/muxygsbz
.

5 Conclusão

Ao longo dos anos, o tema da regressão linear tem sido tratado nas nossas escolas, quase exclusivamente, como uma manipulação de fórmulas, à qual a tecnologia veio retirar algum desse desprazer salvando, por um lado, os alunos dos cálculos fastidiosos, mas atirando-os, por outro, para uma cegueira determinada pela calculadora gráfica. O que aqui se quis mostrar foi que essas abordagens tradicionais ao tema podem, com enormes vantagens, serem substituídas por uma abordagem geométrica sólida, coerente e palpável, em que a única novidade (mas não surpresa) reside na generalização de conceitos de geometria analítica a espaços de dimensão superior a três. Para além disso, abre também espaço à compreensão dos “bastidores” da calculadora gráfica, permitindo que os alunos olhem para ela como uma biblioteca de algoritmos que podem compreender e até criar.

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.ª 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, nº 168, pág. nº 42, Novembro 2012.