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