Apontamentos das aulas
Método dos Mı́nimos Quadrados
Pedro R. S. Antunes (2005)
Em muitas aplicações estamos interessados em obter aproximações de uma dada
função f por uma outra função g em geral mais simples. Uma possibilidade é considerar g ≡ pn , o (único) polinómio de grau menor ou igual a n que interpola f em
n + 1 pontos distintos de um intervalo [a, b]. No entanto, em muitas situações não é
conveniente que a função aproximadora seja uma função interpoladora. Suponhamos
que a função f traduz uma relação fı́sica entre duas grandezas x e f (x). Experimentalmente podemos efectuar medições de f (x) em pontos xi , i = 0, 1, ..., n de
forma a obter um conjunto de dados (x0 , f0 ), (x1 , f1 ),...,(xn , fn ). No entanto, nesse
caso apenas dispomos dos valores fi = f (xi ) + i , i = 0, 1, ..., n, ou seja os valores
fi não correspondem exactamente aos valores f (xi ), pois estão ”contagiados” por
um erro i associado à imprecisão da medição. Ao tentar encontrar uma função
g que constitua uma boa aproximação de f seria inadequado exigir que a função
aproximadora interpolasse esses pontos.
Nesta secção vamos considerar outros tipos de funções aproximadoras para f , sem
a exigência de que elas interpolem f . Uma solução mais adequada será definir uma
base de funções
B = {φ0 (x), φ1 (x), ..., φm (x)}
e tomar para função aproximadora uma combinação linear das funções da base B,
ou seja, definir
g(x) = α0 φ0 (x) + α1 φ1 (x) + ... + αm φm (x).
(1)
Pretendemos que a função g se aproxime ”o mais possı́vel” de f . Assim, vamos
determinar os coeficientes α0 , α1 , ..., αm de forma a que os desvios
di = fi − g(xi ), i = 0, 1, ..., n
sejam tão pequenos quanto possı́vel, segundo algum critério1 . Para isso precisamos
de uma noção de ”distância”, pelo que iremos considerar normas vectoriais. Desi~ f~ e ~g os vectores de Rn+1 com componentes di , fi e gi e escolhendo
gnando por d,
uma norma vectorial k.k, os coeficientes α0 , α1 , ..., αm deverão ser determinados de
1
Se obtivermos di = 0, i = 0, 1, ..., n obtemos um caso de interpolação.
1
modo a que d~ = f~ − ~g seja mı́nima.
Como exemplos de normas de Rn+1 temos
n
X
~
|di | ,
d =
1
~
d
∞
i=0
= max0≤i≤n |di |
" n
# 21
X
~
d2i
d =
ou
2
i=0
A norma que vulgarmente é escolhida neste contexto é a norma k.k2 , pelo que os
parâmetros α0 , α1 , ..., αm são determinados de modo a minimizar
" n
# 21 " n
# 12
X
X
~
(di )2 =
(fi − gi )2 .
d =
2
i=0
i=0
Isto equivale a minimizar a quantidade
n
2 X
~
D=d =
(fi − gi )2
2
(2)
i=0
o que justifica a designação de método dos mı́nimos quadrados.
Um caso em que se aplicam estes conceitos é o da teoria da regressão linear. Em
muitas aplicações de estatı́stica, dada uma lista de pontos tentamos determinar a
recta que melhor se ajusta aos pontos, ou seja, a recta que minimiza a soma dos
quadrados dos desvios di . Isto corresponde a considerar g(x) = α0 φ0 (x) + α1 φ1 (x)
com φ0 (x) = 1 e φ1 (x) = x (Figura 1).
8.5
8
7.5
7
6.5
2.2
2.4
2.6
2.8
3
Figura 1: A recta que, no sentido dos mı́nimos quadrados, melhor se ajusta à lista
de pontos.
2
Exemplo
Consideramos a tabela de valores de uma função f
xi
f (xi )
0
0
1
0.2
2
1
3
5
Vamos determinar a recta g(x) = α0 +α1 x que melhor se ajusta aos pontos da tabela
segundo o critério dos mı́nimos quadrados. Consideramos
3
2 X
D = d~ =
(fi − gi )2
2
(3)
i=0
como função de α0 e α1 . Pretende-se os valores α0 e α1 que tornam D mı́nima.
Assim, vamos impor que
∂D
∂D
=0 e
=0
∂α0
∂α1
Calculando directamente as derivadas parciais a partir da expressão (3) obtemos
3
3
X
X
∂D
∂ 2
=
(fi − α0 − α1 xi ) =
2 (fi − α0 − α1 xi ) × (−1) = 0
∂α0
∂α0
i=0
i=0
Assim
3
3
X
X
∂D
= 0 ⇐⇒
(α0 + α1 xi ) =
fi
∂α0
i=0
i=0
(4)
Da mesma forma
3
3
X
X
∂D
∂ 2
=
(fi − α0 − α1 xi ) =
2 (fi − α0 − α1 xi ) × (−xi ) = 0
∂α1
∂α1
i=0
i=0
pelo que
3
3
X
X
∂D
= 0 ⇐⇒
α0 xi + α1 x2i =
xi fi
∂α1
i=0
i=0
(5)
As relações (4) e (5) conduzem a um sistema linear de duas equações nas duas
incógnitas α0 e α1 . Matricialmente temos
 P3
i=0

P3
i=0
1
P3
xi
P3
i=0
xi
2
i=0 xi
 
α0

 P3
i=0
= 
 
α1
P3
i=0
3
fi


xi fi
e substituindo os valores obtemos
4 6
6 14
α0
α1
=
6.2
17.2
⇒
α0
α1
=
−0.82
1.58
pelo que a recta que melhor se ajusta aos pontos da tabela, segundo o critério dos
mı́nimos quadrados é g(x) = −0.82 + 1.58x.
Na Figura 2 apresentamos dois possı́veis ajustamentos de uma recta aos pontos
da tabela. No primeiro caso consideramos uma recta arbitrária; no segundo caso
temos o melhor ajustamento, no sentido dos mı́nimos quadrados. No primeiro caso
obtivémos D ≈ 6157.1, no segundo D ≈ 3.95 um valor inferior como seria de esperar.
5
5
d3
d3
4
4
3
3
2
d2
d2
2
1
d1
1
d1
d0
d0
0.5
1
1.5
2
2.5
0.5
1
1.5
2
2.5
3
3
Figura 2: dois possı́veis ajustamentos por uma recta
Caso Geral - As equações normais
Consideramos agora o caso geral de obter uma função da forma (1) onde os coeficientes α0 , α1 , ..., αm são obtidos de forma a minimizar a função
n
2 X
~
D=d =
(fi − gi )2
2
i=0
pelo que é natural impor as condições
∂D
= 0, j = 0, 1, ..., n.
∂αj
Assim obtemos
4
(6)
n
X
∂D
=
2 (fi − α0 φ0 (xi ) − ... − αm φm (xi )) × (−φ0 (xi )) = 0
∂α0
i=0
n
X
∂D
=
2 (fi − α0 φ0 (xi ) − ... − αm φm (xi )) × (−φ1 (xi )) = 0
∂α1
i=0
.
.
.
.
.
.
n
X
∂D
=
2 (fi − α0 φ0 (xi ) − ... − αm φm (xi )) × (−φm (xi )) = 0
∂αm
i=0
e passando para o membro direito os termos que dependem dos valores fi obtemos
α0
α0
n
X
φ0 (xi )φ0 (xi ) + α1
n
X
φ0 (xi )φ1 (xi ) + ... + αm
φ0 (xi )φm (xi ) =
n
X
i=0
i=0
i=0
i=0
n
X
n
X
n
X
n
X
φ1 (xi )φ0 (xi ) + α1
i=0
φ1 (xi )φ1 (xi ) + ... + αm
i=0
n
X
i=0
φm (xi )φ0 (xi ) + α1
n
X
φ1 (xi )φm (xi ) =
i=0
.
.
.
α0
n
X
fi φ0 (xi )
fi φ1 (xi )
i=0
.
.
.
φm (xi )φ1 (xi ) + ... + αm
i=0
n
X
φm (xi )φm (xi ) =
i=0
n
X
fi φm (xi )
i=0
Chegamos assim a um sistema linear de m + 1 equações nas m + 1 incógnitas
α0 , α1 , ..., αm a que se chama sistema de equações normais ou sistema normal.
Vamos definir os vectores de Rn+1
φ~0 = [φ0 (x0 ), ..., φ0 (xn )]T ; φ~1 = [φ1 (x0 ), ..., φ1 (xn )]T ; ... ; φ~m = [φm (x0 ), ..., φm (xn )]T .
P
Podemos agora reparar que, por exemplo o termo ni=0 φ0 (xi )φ1 (xi ) não é mais do
que o produto interno2 (usual) de Rn+1 dos vectores φ~0 e φ~1 . Assim o sistema de
2
dados dois vectores ~u, ~v ∈ Rn+1 definimos o produto interno h~u, ~v i =
5
Pn
i=0
ui vi
equações normais toma a forma
D
D
E
φ~0 , φ~1
E D
E
D
 φ~ , φ~
~
~
φ
,
φ
1
1
 1 0
 D .... E D ... E

φ~m , φ~0
φ~m , φ~1
φ~0 , φ~0
E
...
D
φ~0 , φ~m
E 
D
E
...
φ~1 , φ~m 

... D ... E 

...
φ~m , φ~m

α0
 α1 


 ...  =


 ... 
αm
D
f~, φ~0
E
E
D
 f~, φ~ 
1 

 D ... E 


f~, φ~m
(7)
Podemos facilmente ver que a matriz do sistema é simétrica, pois por comutatividade
do produto em R
D
n
n
E X
D
E
X
φ~k , φ~j =
φk (xi )φj (xi ) =
φj (xi )φk (xi ) = φ~j , φ~k .
i=0
i=0
Prova-se que se a funções φ0 (x), φ1 (x), ..., φm (x) forem linearmente independentes,
então o sistema tem uma solução única, precisamente a função g que minimiza D.
Exemplo
Se considerarmos a aproximação através de funções polinomiais temos como funções
base φ0 (x) = 1; φ1 (x) = x; ... ; φm (x) = xm e o sistema de equações normais (7)
toma a forma

n+1

 Pn

 i=0 xi


 ....


Pn m
i=0 xi
Pn
i=0
xi
Pn
2
i=0 xi
...
Pn
i=0
xm+1
i
...
...
Pn
i=0
Pn
m+1
i=0 xi
...
...
xm
i
...
Pn
i=0
x2m
i
 









α0





 α1 



=


 ... 




αm
 Pn
i=0
fi




 Pn


 i=0 xi fi 
.





...




Pn m
i=0 xi fi
(8)
Voltemos ao exemplo ilustrado na Figura 1. Para uma dada lista de pontos pretendemos adequar um polinómio. Na Figura 1 considerámos um polinómio de grau 1.
Vamos agora considerar ajustamentos por polinómios de grau superior. Na Figura 3
calculámos pelo método dos mı́nimos quadrados os polinómios de grau 8 e de grau
12 que melhor se ajustam aos pontos apresentados. Para cada um dos exemplos
calculámos D e obtivémos respectivamente no caso de polinómios de grau 1, 8 e 12
os valores D1 ≈ 0.21, D8 ≈ 0.1 e D12 = 0. Observamos que quando consideramos
polinómios de grau superior, na verdade o que estamos a fazer é aumentar o número
6
de funções base φj e consequentemente ”alargar” o conjunto de funções que podem
ser geradas pela base de funções. Sobre cada conjunto de funções base, a aproximação dos mı́nimos quadrados é aquela que minimiza o valor de D. Assim basta
pensar que se tivermos dois conjuntos A, B ⊂ R, então
A ⊆ B ⇒ min(A) ≥ min(B)
para concluir que aumentar o número de funções de base, em geral diminui o valor de
D. No caso em que consideramos polinómios de grau n + 1, obtemos exactamente o
polinómio interpolador e nesse caso D = 0 (Figura 3). No entanto como é visı́vel no
segundo gráfico da Figura 3 o polinónimo interpolador apresenta grandes oscilações
nos extremos do intervalo o que indicia que considerar ajustamento por polinómios
de grau elevado, em geral, não será uma boa estratégia.
8.5
8
8
6
7.5
4
7
2
6.5
2.2
2.2
2.4
2.6
2.8
2.4
2.6
2.8
3
3
Figura 3: dois possı́veis ajustamentos (respect.) por polinómios de grau 8 e grau 12.
Exercı́cio
Consideremos a tabela de valores obtidos numa dada experiência
xi
fi
-2
0
-1
0
0
1
1
3
2
7
Determine a função da forma g(x) = α0 x + α1 x2 que melhor se ajusta aos pontos
da tabela segundo o critério dos mı́nimos quadrados.
Resolução
Neste caso temos as funções de base φ0 (x) = x e φ1 (x) = x2 e o sistema de equações
normais (7) toma a forma
 P4
2
i=0 xi

P4
3
i=0 xi
P4
3
i=0 xi
P4
4
i=0 xi
 
α0

 P4
i=0 xi fi
= 
 
α1
7
P4
2
i=0 xi fi


e substituindo os valores obtemos

10
0

 
α0
34

17
α1


α0
⇒ 
= 
 
0

31
 17 

10
= 
α1
31
34

pelo que a função que melhor se ajusta aos pontos da tabela, segundo o critério dos
x + 31
x2 . Na Figura 4 representamos os pontos da
mı́nimos quadrados é g(x) = 17
10
34
tabela e função g obtida.
6
4
2
-2
-1
1
2
Figura 4: A função da forma g(x) = α0 x + α1 x2 que se melhor se ajusta aos pontos.
Exercı́cio
Consideremos o conjunto de pontos {x0 , x1 , x2 , x3 , x4 } = {−2, −1, 0, 1, 2}. Calcule
minα0 ,α1 ∈R
!
4
X
x2i − α0 − α1 xi
2
(9)
i=0
Resolução
Podemos resolver este problema usando a teoria do método dos mı́nimos quadrados.
De facto se definirmos f (x) = x2 e g(x) = α0 + α1 x temos
minα0 ,α1 ∈R
4
X
!
x2i
− α0 − α1 xi
2
= minα0 ,α1 ∈R
i=0
4
X
i=0
Assim, para uma dada função g o somatório
D=
4
X
(f (xi ) − g(xi ))2
i=0
8
!
2
(f (xi ) − g(xi ))
(10)
é a soma dos quadrados dos desvios de g à função f nos pontos xi . Já vimos que
D tem o valor mı́nimo quando g é aproximação dada pelo método dos mı́nimos
quadrados. Assim
!
4
X
minα0 ,α1 ∈R
(f (xi ) − g(xi ))2
i=0
é atingido nos valores α0 e α1 que são solução do sistema de equações normais.
Definimos a tabela de valores
xi
fi
-2
4
-1
1
0
0
1
1
2
4
Pretendemos agora determinar a função da forma g(x) = α0 + α1 x que melhor se
ajusta aos pontos da tabela segundo o critério dos mı́nimos quadrados. Neste caso
o sistema de equações normais (8) toma a forma
5 0
0 10
α0
α1
=
10
0
⇒
α0
α1
2
=
0
e portanto g(x) = 2. Assim
minα0 ,α1 ∈R
4
X
!
(f (xi ) − g(xi ))2
=
4
X
i=0
(fi − 2)2 = 14
i=0
Na Figura 5 apresentamos a função g e os pontos da tabela.
4
3
2
1
-2
-1
1
2
Figura 5: A função da forma g(x) = α0 + α1 x que se melhor se ajusta aos pontos.
9
Download

Método dos M´ınimos Quadrados