Google Classroom

Aula 12 · 27/10 (ter) · Módulo 3 · laboratório

Projeções

Nesta aula você estuda o produto interno de dois vetores u e v de ℝn, o escalar uTv, também chamado de produto escalar, e, com ele, a ortogonalidade de vetores e de subespaços. Você estuda também a projeção ortogonal de um vetor b sobre um subespaço: o vetor p do subespaço mais próximo de b, caracterizado pela condição de que o erro e = b − p seja ortogonal ao subespaço. Na bancada, você projeta b sobre uma reta de ℝ2 e sobre um plano de ℝ3, resolve as equações normais, o sistema linear cuja solução fornece a projeção, e ajusta uma reta a pontos que você mesmo arrasta, pelo método dos mínimos quadrados.

Modo da bancada

Projeção sobre a reta gerada por a

O vetor a (em roxo), a reta gerada por a (em cinza), o vetor b (em vermelho), a projeção p de b sobre a reta (em azul) e o erro e = b − p (em âmbar). Um arco na origem marca o ângulo θ entre a e b. Arraste as pontas de a e de b. Quando a opção Palpite λa sobre a reta, do painel O que mostrar, está marcada, um ponto preto marca a ponta de um múltiplo de a, o vetor λa para um escalar λ; arrastar esse ponto muda só o escalar λ.

A matriz P aplicada ao plano

A matriz de projeção P sobre a reta gerada por a leva cada vetor de ℝ2 no vetor dessa reta mais próximo dele. A reta gerada por a, em azul-claro, é o espaço das colunas C(P), e a reta tracejada é o espaço nulo N(P). A figura cinza é uma casa, um retângulo com telhado triangular, formada por pontos. O vetor posição de um ponto é a seta que vai da origem até ele, e a imagem por P de um ponto é o ponto cujo vetor posição é P vezes o vetor posição do ponto original. Os segmentos tracejados ligam cada canto da casa à sua imagem por P, e a imagem da casa inteira é o segmento azul de traço grosso sobre a reta. Com a opção Mostrar a projeção p e o erro e marcada, o ponto azul marca a ponta de Pb, a projeção do vetor b. Arraste a casa, a e b.

Exemplos

Vetores [a | b]

A primeira coluna é o vetor a, e a segunda, o vetor b. As entradas podem ser inteiros, frações como 3/2 ou decimais como 0,5.

O que mostrar

Pelo teclado: clique numa figura e use as setas; a barra de espaço alterna o ponto que se move. Nas figuras de ℝ3, as setas giram a vista quando nenhum ponto está selecionado.

Em dimensão n

Ajuste de polinômios a medições

O tempo de execução de um programa foi medido para m tamanhos de entrada distintos, t1, …, tm, em milhares de itens. Os tempos medidos, em segundos, são y1, …, ym e formam o vetor b = (y1, …, ym)T de ℝm. Um polinômio de grau no máximo k na variável t se escreve q(t) = x0 + x1t + ⋯ + xktk, e os seus k + 1 coeficientes formam o vetor x = (x0, …, xk)T. Seja A a matriz m × (k + 1) cuja linha i é (1, ti, …, tik). A coordenada i de Ax é q(ti), e o sistema Ax = b corresponde a exigir que o polinômio passe por todas as medições. Para k + 1 ≤ m, as colunas de A são LI, e o espaço das colunas C(A) é um subespaço de ℝm de dimensão k + 1. O ajuste de mínimos quadrados de grau k é o polinômio cujos coeficientes formam a solução de mínimos quadrados x̂ de Ax = b. Os seus valores nos m tamanhos formam a projeção ortogonal p = Ax̂ de b sobre C(A).

Medições e o polinômio de grau k

Erro em função do grau k

Para cada grau k, os m erros verticais do ajuste formam o vetor e = b − p, e a raiz quadrada da média dos seus quadrados é ‖e‖/√m. As barras mostram essa medida, o erro nas medições usadas no ajuste. A linha vermelha mostra a mesma medida calculada com 120 medições novas, que não foram usadas no ajuste: a raiz quadrada da média dos quadrados das diferenças entre esses tempos e os valores do polinômio. Clique numa barra para escolher o grau.

A matriz de projeção P

O erro e = b − p

O erro e = b − p é a diferença entre o vetor b dos tempos medidos e a projeção p, o vetor dos valores do polinômio ajustado nos tamanhos medidos. O quadro mostra uma barra para cada coordenada ei, o erro vertical da medição i.

Medições

Modelo: grau k

O que mostrar

Os coeficientes x̂ do polinômio ajustado são a solução das equações normais ATAx̂ = ATb. Para calculá-los, a página não resolve essas equações: ela usa a fatoração A = QR, estudada na Aula 13. Em aritmética exata, o resultado é o mesmo; em ponto flutuante, esse método costuma acumular menos erro de arredondamento.

Conceitos da aula

Produto interno, projeções e mínimos quadrados

Uma guia por conceito, cada um com a definição, um exemplo resolvido e o lugar da bancada em que ele aparece. A notação é a do livro-texto (seções 3.1 a 3.3).

O produto interno associa a dois vetores de ℝn um escalar. Com ele se definem o comprimento de um vetor, o ângulo entre dois vetores e a ortogonalidade.

Produto interno e comprimento

Definição

Sejam u = (u1, …, un)T e v = (v1, …, vn)T vetores de ℝn. O produto interno de u e v, também chamado de produto escalar, é o escalar

uTv = u1v1 + u2v2 + ⋯ + unvn.

O comprimento (ou norma) de v é ‖v‖ = √(vTv) = √(v12 + ⋯ + vn2). Um vetor de comprimento 1 é um vetor unitário.

Para quaisquer u, v, w ∈ ℝn e quaisquer λ, μ ∈ ℝ, valem:

  1. uTv = vTu (simetria);
  2. (λu + μw)Tv = λ(uTv) + μ(wTv) (linearidade);
  3. vTv ≥ 0, e vTv = 0 se, e somente se, v = 0.

Da simetria e da linearidade, (λv)T(λv) = λ2vTv; logo ‖λv‖ = |λ| ‖v‖ para todo λ ∈ ℝ. Em particular, para v ≠ 0, o vetor v/‖v‖ é unitário.

Vetores ortogonais e ângulo

Definição

Dois vetores u, v ∈ ℝn são ortogonais (ou perpendiculares), e escrevemos u ⟂ v, se uTv = 0. O vetor nulo é ortogonal a todo vetor.

Teorema

Para quaisquer u, v ∈ ℝn, vale u ⟂ v se, e somente se, ‖u + v‖2 = ‖u‖2 + ‖v‖2 (teorema de Pitágoras).

De fato, pela simetria e pela linearidade, ‖u + v‖2 = (u + v)T(u + v) = ‖u‖2 + 2uTv + ‖v‖2, e essa soma é igual a ‖u‖2 + ‖v‖2 se, e somente se, uTv = 0.

Para u ≠ 0 e v ≠ 0, a desigualdade de Cauchy-Schwarz, |uTv| ≤ ‖u‖ ‖v‖, demonstrada na guia Projeção sobre uma reta, garante que o quociente uTv / (‖u‖ ‖v‖) está entre −1 e 1. O ângulo entre u e v é o único θ, com 0° ≤ θ ≤ 180°, tal que

cos θ = uTv / (‖u‖ ‖v‖).

Pela definição, dois vetores não nulos são ortogonais se, e somente se, cos θ = 0, isto é, θ = 90°. Se uTv > 0, o ângulo é agudo, e se uTv < 0, ele é obtuso. Em ℝ2 e em ℝ3, θ é o ângulo da geometria: basta comparar a lei dos cossenos com a igualdade ‖u − v‖2 = ‖u‖2 + ‖v‖2 − 2uTv, que é a conta acima com −v no lugar de v.

Em sistemas de busca, uma consulta e um documento podem ser representados por vetores de contagens: fixada uma lista de palavras, a coordenada i de cada vetor é o número de vezes que a palavra i da lista aparece no texto. O cosseno do ângulo entre os dois vetores é usado como medida da semelhança entre os textos. Ele não muda quando um dos vetores é multiplicado por um escalar positivo: um documento formado por duas cópias de um texto tem o vetor de contagens multiplicado por 2 e o mesmo cosseno.

Exemplo

Para u = (1, 2, 2)T e v = (2, −2, 1)T:

uTv = 1·2 + 2·(−2) + 2·1 = 0,

‖u‖ = √(1 + 4 + 4) = 3,

‖v‖ = √(4 + 4 + 1) = 3,

‖u + v‖2 = ‖(3, 0, 3)T‖2 = 18 = 32 + 32.

Os vetores u e v são ortogonais, e a última linha confirma o teorema de Pitágoras. Já os vetores a = (2, 1)T e b = (1, 3)T têm aTb = 5, ‖a‖ = √5 e ‖b‖ = √10. O ângulo θ entre eles satisfaz cos θ = 5/√50 = √2/2; logo θ = 45°.

Na bancada: no modo Projeção sobre uma reta, a leitura abaixo do quadro Projeção sobre a reta gerada por a mostra, para os vetores a e b desenhados no quadro, os produtos internos aTb e aTa e o ângulo θ entre a e b. No painel Exemplos, escolha Consulta e documento, Ângulo obtuso e b ortogonal a a.

A definição de ortogonalidade se estende de vetores para subespaços. Os quatro subespaços fundamentais de uma matriz, estudados na Aula 9, formam dois pares de subespaços ortogonais, e cada subespaço de um par é o complemento ortogonal do outro.

Subespaços ortogonais e complemento ortogonal

Definição

Dois subespaços V e W de ℝn são ortogonais, e escrevemos V ⟂ W, se vTw = 0 para todo v ∈ V e todo w ∈ W. O complemento ortogonal de um subespaço V de ℝn é o conjunto dos vetores de ℝn ortogonais a todos os vetores de V. Ele se escreve V⊥:

V⊥ = {w ∈ ℝn : vTw = 0 para todo v ∈ V}.

V⊥ é um subespaço de ℝn. Ele contém o vetor nulo, pois vT0 = 0 para todo v ∈ V. Se u, w ∈ V⊥ e λ ∈ ℝ, então, para todo v ∈ V, vT(u + w) = vTu + vTw = 0 e vT(λu) = λvTu = 0. Logo u + w e λu pertencem a V⊥.

Se V é o espaço gerado por v1, …, vℓ, basta testar esses vetores: w ∈ V⊥ se, e somente se, v1Tw = ⋯ = vℓTw = 0. De fato, se w ∈ V⊥, então vjTw = 0 para cada j, pois cada vj pertence a V. Reciprocamente, se esses produtos internos são nulos, todo v ∈ V se escreve como v = λ1v1 + ⋯ + λℓvℓ e satisfaz vTw = λ1v1Tw + ⋯ + λℓvℓTw = 0.

Dois subespaços ortogonais só têm o vetor nulo em comum: se v pertence aos dois, então vTv = 0, e logo v = 0.

Exemplo

Em ℝ3, seja V a reta gerada por (1, 2, 2)T. Pelo que vimos, um vetor w = (w1, w2, w3)T pertence a V⊥ se, e somente se, é ortogonal a (1, 2, 2)T:

V⊥ = {w ∈ ℝ3 : w1 + 2w2 + 2w3 = 0}.

Esse conjunto é um plano que passa pela origem. Ele contém, por exemplo, (2, −2, 1)T, o vetor ortogonal a (1, 2, 2)T do exemplo da guia Produto interno.

Os subespaços fundamentais

Teorema

Seja A uma matriz m × n. Em ℝn, o espaço nulo N(A) é o complemento ortogonal do espaço das linhas C(AT); em ℝm, o espaço nulo à esquerda N(AT) é o complemento ortogonal do espaço das colunas C(A):

N(A) = C(AT)⊥,

N(AT) = C(A)⊥.

Por quê. Para x ∈ ℝn, a coordenada i de Ax é o produto interno de x com o vetor de ℝn formado pelas entradas da linha i de A. Logo Ax = 0 se, e somente se, x é ortogonal a todas as linhas de A, que geram C(AT). Pelo que vimos acima, isso equivale a x ∈ C(AT)⊥. A segunda igualdade é a primeira aplicada a AT, cujas linhas são as colunas de A.

Se A tem posto r, as dimensões somam n e m: dim C(AT) + dim N(A) = r + (n − r) = n e dim C(A) + dim N(AT) = r + (m − r) = m. Na guia Projeção sobre um subespaço, o teorema reaparece assim: se as colunas de A são LI, cada b ∈ ℝm é a soma b = p + e da sua projeção p sobre C(A), que pertence a C(A), com o erro e = b − p, que pertence a N(AT).

Exemplo

Para a matriz de uma linha A = 122, de tamanho 1 × 3, o espaço das linhas C(AT) é a reta gerada por (1, 2, 2)T, e o espaço nulo N(A), formado pelos vetores x = (x1, x2, x3)T com x1 + 2x2 + 2x3 = 0, é o plano V⊥ do exemplo acima. As dimensões são 1 e 2, e 1 + 2 = 3.

Na bancada: no modo Projeção sobre uma reta, o quadro A matriz P aplicada ao plano mostra a matriz de projeção P sobre a reta gerada pelo vetor a, definida na guia Projeção sobre uma reta. Ele desenha a reta C(P), que é a reta gerada por a, e a reta tracejada N(P). Como P é simétrica, C(PT) = C(P), e o teorema diz que N(P) é o complemento ortogonal da reta gerada por a: arraste a e veja as duas retas continuarem ortogonais. No modo Projeção sobre um plano, em que A é a matriz de colunas a1 e a2, o vetor b do exemplo b = (−2, −2, 2)T pertence a N(AT), e a projeção de b é o vetor nulo.

Projetar um vetor b sobre uma reta que passa pela origem é encontrar o vetor da reta mais próximo de b, que se escreve p. Esse vetor é determinado pela condição de que o erro e = b − p seja ortogonal à reta.

A fórmula da projeção

Teorema

Sejam a, b ∈ ℝn, com a ≠ 0, e seja ger{a} = {λa : λ ∈ ℝ} a reta gerada por a. Seja x̂ o escalar

x̂ = aTb / aTa.

O vetor p = x̂a é o único vetor da reta para o qual o erro e = b − p é ortogonal a a. Ele é a projeção ortogonal de b sobre a reta e é o vetor da reta mais próximo de b: ‖b − λa‖ > ‖b − p‖ para todo λ ≠ x̂.

Por quê. A demonstração tem três passos.

  1. Para cada λ ∈ ℝ, aT(b − λa) = aTb − λaTa. Como a ≠ 0, temos aTa > 0, e essa expressão se anula somente para λ = aTb / aTa = x̂. Logo p = x̂a é o único vetor da reta com erro ortogonal a a.
  2. Para todo λ ∈ ℝ, vale b − λa = e + (x̂ − λ)a, e os vetores e e (x̂ − λ)a são ortogonais, pois aTe = 0. Pelo teorema de Pitágoras, ‖b − λa‖2 = ‖e‖2 + (x̂ − λ)2‖a‖2, que é maior que ‖e‖2 sempre que λ ≠ x̂.
  3. Com λ = 0, a igualdade do passo 2 fica ‖b‖2 = ‖e‖2 + x̂2‖a‖2, e x̂2‖a‖2 = (aTb)2/‖a‖2. Como ‖e‖2 ≥ 0, vale (aTb)2 ≤ ‖a‖2‖b‖2, isto é, |aTb| ≤ ‖a‖ ‖b‖. Essa é a desigualdade de Cauchy-Schwarz. Ela também vale com a = 0, pois então os dois lados são nulos.

A matriz de projeção sobre uma reta

Como x̂ é um escalar, p = x̂a = a(aTb)/(aTa) = (aaT/aTa)b. Assim, p = Pb para todo b ∈ ℝn, com a matriz n × n

P = aaT / aTa,

que se chama matriz de projeção sobre a reta gerada por a. Ela é simétrica, pois (aaT)T = aaT. A coluna j de aaT é o produto da coordenada j de a pelo vetor a, e pelo menos uma coordenada de a não é nula. Logo o espaço das colunas C(P) é a reta gerada por a, e P tem posto 1. Além disso, P2 = a(aTa)aT/(aTa)2 = P: como Pb já pertence à reta, a projeção de Pb é o próprio Pb. Por fim, Pb = 0 se, e somente se, aTb = 0; logo o espaço nulo N(P) é o complemento ortogonal da reta gerada por a.

Exemplo

Com a = (2, 1)T e b = (1, 3)T:

aTb = 2·1 + 1·3 = 5,

aTa = 22 + 12 = 5,

x̂ = 5/5 = 1,

p = 1·(2, 1)T = (2, 1)T,

e = b − p = (−1, 2)T.

De fato, aTe = −2 + 2 = 0. A matriz de projeção é

P = 4/52/52/51/5,

e Pb = (4/5 + 6/5, 2/5 + 3/5)T = (2, 1)T = p.

Na bancada: no modo Projeção sobre uma reta, arraste a e b no quadro Projeção sobre a reta gerada por a. Marque Palpite λa sobre a reta no painel O que mostrar e arraste o ponto preto, que marca a ponta do palpite λa, um múltiplo de a: a distância ‖b − λa‖, na leitura abaixo do quadro, é mínima quando o segmento tracejado até b fica ortogonal à reta. O quadro A matriz P aplicada ao plano mostra P, P2 e a imagem por P da figura de uma casa.

Para projetar um vetor b de ℝm sobre um subespaço de ℝm, escrevemos o subespaço como o espaço das colunas C(A) de uma matriz A cujas colunas são LI. A condição continua a mesma: a projeção p é o vetor do subespaço para o qual o erro e = b − p é ortogonal ao subespaço.

As equações normais

Teorema

Seja A uma matriz m × n com colunas a1, …, an linearmente independentes, e seja b ∈ ℝm. Então ATA é invertível, e o sistema

ATAx̂ = ATb

de incógnita x̂ ∈ ℝn, chamado de equações normais, tem uma única solução. O vetor p = Ax̂ é a projeção ortogonal de b sobre C(A): o erro e = b − p pertence a N(AT) = C(A)⊥, e p é o vetor de C(A) mais próximo de b, isto é, ‖b − Ax‖ > ‖b − p‖ para todo x ≠ x̂.

Por quê. A demonstração tem três passos.

  1. A matriz ATA, de tamanho n × n, é invertível. Se ATAx = 0, então ‖Ax‖2 = xTATAx = 0, logo Ax = 0 e, como as colunas de A são LI, x = 0. Assim, a única solução de ATAx = 0 é x = 0, e a matriz quadrada ATA é invertível. Em particular, as equações normais têm uma única solução x̂.
  2. Como x̂ resolve as equações normais, AT(b − Ax̂) = 0, isto é, a1Te = ⋯ = anTe = 0. O erro e é ortogonal a cada coluna de A e, portanto, a C(A), pela guia Subespaços ortogonais. Logo e ∈ N(AT) = C(A)⊥. Reciprocamente, se b − Ax é ortogonal a C(A), então AT(b − Ax) = 0, e x resolve as equações normais.
  3. Para todo x ∈ ℝn, vale b − Ax = e + A(x̂ − x), e o vetor A(x̂ − x) pertence a C(A); logo é ortogonal a e. Pelo teorema de Pitágoras, ‖b − Ax‖2 = ‖e‖2 + ‖A(x̂ − x)‖2. Se x ≠ x̂, então A(x̂ − x) ≠ 0, porque as colunas de A são LI, e ‖b − Ax‖2 > ‖e‖2.

A matriz de projeção

Como ATA é invertível, x̂ = (ATA)−1ATb, e a projeção é p = Ax̂ = A(ATA)−1ATb. Assim, p = Pb para todo b ∈ ℝm, com a matriz m × m

P = A(ATA)−1AT,

que se chama matriz de projeção sobre C(A). Quando A tem uma única coluna a, a matriz ATA = aTa é 1 × 1, isto é, um escalar, e P é a matriz aaT/aTa da guia Projeção sobre uma reta. A matriz P satisfaz

P2 = P   e   PT = P.

De fato, P2 = A(ATA)−1(ATA)(ATA)−1AT = P. Como ATA é simétrica, ((ATA)−1)T = ((ATA)T)−1 = (ATA)−1, e logo PT = A((ATA)−1)TAT = P. Com a identidade I de tamanho m × m, o erro é e = b − Pb = (I − P)b.

Não se pode simplificar P para I escrevendo (ATA)−1 = A−1(AT)−1: essa igualdade só faz sentido quando A é quadrada e invertível. Nesse caso, C(A) = ℝm e, de fato, P = I. Quando A tem menos colunas do que linhas, C(A) não é ℝm, e P ≠ I.

Exemplo

Com as colunas a1 = (1, 1, 1)T e a2 = (0, 1, 2)T e com b = (6, 0, 0)T:

ATA = 3335,

ATb = (6, 0)T.

Com x̂ = (x̂1, x̂2)T, as equações normais são 3x̂1 + 3x̂2 = 6 e 3x̂1 + 5x̂2 = 0, com solução x̂ = (5, −3)T. Então

p = 5a1 − 3a2 = (5, 2, −1)T,

e = b − p = (1, −2, 1)T,

e de fato a1Te = 1 − 2 + 1 = 0 e a2Te = 0 − 2 + 2 = 0.

Na bancada: no modo Projeção sobre um plano, o quadro Projeção sobre o plano C(A) desenha as colunas a1 e a2 de A, o plano C(A), o vetor b, a projeção p e o erro e, e o quadro Vista de perfil mostra o plano de lado. O quadro Equações normais mostra ATA, ATb, x̂ e P em frações exatas. Nos exemplos Colunas quase paralelas e Colunas paralelas, do painel Exemplos, veja o que acontece quando o ângulo entre as colunas é pequeno e quando as colunas são LD.

Quando o sistema Ax = b não tem solução, procuramos um vetor x para o qual Ax fique o mais próximo possível de b. É o método dos mínimos quadrados, usado para ajustar retas e curvas a medições.

Solução de mínimos quadrados

Definição

Sejam A uma matriz m × n e b ∈ ℝm. Um vetor x̂ ∈ ℝn é uma solução de mínimos quadrados de Ax = b se ‖b − Ax̂‖2 ≤ ‖b − Ax‖2 para todo x ∈ ℝn, isto é, se x̂ minimiza a soma dos quadrados das coordenadas de b − Ax:

‖b − Ax‖2 = (b1 − (Ax)1)2 + ⋯

+ (bm − (Ax)m)2.

Teorema

Se as colunas de A são LI, o sistema Ax = b tem uma única solução de mínimos quadrados: a solução x̂ das equações normais ATAx̂ = ATb. O vetor Ax̂ = p é a projeção de b sobre C(A), e o menor valor de ‖b − Ax‖2 é ‖e‖2, com e = b − p.

É o teorema da guia Projeção sobre um subespaço: o conjunto dos vetores Ax, com x ∈ ℝn, é C(A), e minimizar ‖b − Ax‖ é encontrar o vetor de C(A) mais próximo de b. Se b ∈ C(A), as soluções de mínimos quadrados são as soluções de Ax = b, e e = 0.

Quando as colunas de A são LD, a projeção p de b sobre C(A) ainda existe: basta aplicar o teorema à matriz formada pelas colunas pivô de A, que são LI e geram C(A). Mas ATA não é invertível, pois ATAx = 0 para todo x ∈ N(A), e N(A) tem vetores não nulos. As soluções das equações normais são exatamente os vetores x̂ com Ax̂ = p, pois a equação AT(b − Ax̂) = 0 diz que b − Ax̂ é ortogonal a C(A). Elas são infinitas e diferem entre si por vetores de N(A).

A reta de mínimos quadrados

Dados m pontos (t1, y1), …, (tm, ym), procuramos uma reta não vertical, que se escreve y = C + Dt, com coeficientes C e D. Exigir que ela passe por todos os pontos dá o sistema C + Dti = yi, para i = 1, …, m. Esse sistema é Ax = b, com a matriz A de colunas (1, …, 1)T e (t1, …, tm)T, o vetor das incógnitas x = (C, D)T e b = (y1, …, ym)T. Com mais de dois pontos, em geral, ele não tem solução.

O erro vertical do ponto i é a diferença entre o valor medido yi e o valor da reta no mesmo ti; ele se escreve ei = yi − (C + Dti). A soma dos quadrados dos erros verticais se escreve E(C, D):

E(C, D) = e12 + ⋯ + em2 = ‖b − Ax‖2.

A reta de mínimos quadrados é a que torna E(C, D) mínima. Os erros são verticais porque a reta prevê y a partir de t. A distância perpendicular de um ponto à reta não entra na conta.

As colunas de A são LI se, e somente se, os ti não são todos iguais. De fato, se todos os ti são iguais a um mesmo valor t0, a segunda coluna é t0 vezes a primeira. Reciprocamente, se λ(1, …, 1)T + μ(t1, …, tm)T = 0 com λ e μ não ambos nulos, então μ ≠ 0, pois μ = 0 daria λ = 0. Logo todos os ti valem −λ/μ.

Para escrever as equações normais, usamos as somas Σti = t1 + ⋯ + tm, Σti2 = t12 + ⋯ + tm2, Σyi = y1 + ⋯ + ym e Σtiyi = t1y1 + ⋯ + tmym. Com elas, as equações normais ATAx̂ = ATb, de incógnita x̂ = (C, D)T, ficam

mΣtiΣtiΣti2 CD = ΣyiΣtiyi

Quando os ti não são todos iguais, esse sistema tem uma única solução. As duas equações são as condições ∂E/∂C = 0 e ∂E/∂D = 0 do Cálculo: ∂E/∂C = −2(e1 + ⋯ + em) e ∂E/∂D = −2(t1e1 + ⋯ + tmem), e igualar essas derivadas a zero dá as duas linhas do sistema.

Exemplo

Para os pontos (0, 6), (1, 0) e (2, 0), as equações normais são

3C + 3D = 6,

3C + 5D = 0,

com solução C = 5 e D = −3: a reta é y = 5 − 3t. Os erros verticais são 6 − 5 = 1, 0 − 2 = −2 e 0 − (−1) = 1, e

E(5, −3) = 12 + (−2)2 + 12 = 6.

Nenhuma reta tem soma menor; a reta y = 2, por exemplo, tem E(2, 0) = 42 + (−2)2 + (−2)2 = 24. São as contas do exemplo da guia Projeção sobre um subespaço, com a1 = (1, 1, 1)T, a2 = (0, 1, 2)T e b = (6, 0, 0)T: a projeção p = (5, 2, −1)T reúne as alturas da reta em t = 0, 1 e 2.

Na bancada: no modo Mínimos quadrados, arraste os pontos e as duas alças pretas da sua reta no quadro Pontos e retas; cada quadrado desenhado tem área igual ao quadrado de um erro vertical. O quadro Curvas de nível de E(C, D) representa cada reta por um ponto (C, D), e o quadro Soma dos quadrados e equações normais resolve as equações normais em frações exatas. Com três pontos, o botão Ver b em ℝ3, no painel Pontos (t, y), leva o problema ao modo Projeção sobre um plano.

Trocar a reta por um polinômio de grau maior acrescenta colunas à matriz A. Com isso, o erro nas medições usadas no ajuste nunca aumenta, mas o polinômio ajustado pode se afastar da função que gerou as medições, entre elas e fora do intervalo em que elas foram feitas.

Polinômios de grau no máximo k

Um polinômio de grau no máximo k na variável t se escreve q(t) = x0 + x1t + ⋯ + xktk. Para ajustá-lo a m medições (t1, y1), …, (tm, ym), o sistema Ax = b tem a matriz A de linhas (1, ti, ti2, …, tik), o vetor das incógnitas x = (x0, …, xk)T e b = (y1, …, ym)T. A coordenada i de Ax é q(ti). Com k = 1, é o sistema da reta de mínimos quadrados, com x0 = C e x1 = D.

Teorema

Se t1, …, tm são distintos e k + 1 ≤ m, as k + 1 colunas de A são LI, e C(A) tem dimensão k + 1. Seja p a projeção de b sobre C(A), e seja e = b − p o erro do ajuste de grau k. Para k + 1 < m, o comprimento ‖e‖ do ajuste de grau k + 1 não é maior que o do ajuste de grau k. Com k + 1 = m, o erro é nulo.

Por quê. São três afirmações.

  1. Colunas LI: se Ax = 0, o polinômio q de coeficientes x se anula nos m valores distintos ti. Um polinômio não nulo de grau no máximo k tem no máximo k raízes, e k < m. Logo q é o polinômio nulo, e x = 0.
  2. O erro não aumenta: a matriz do grau k + 1 é a do grau k com mais uma coluna, (t1k+1, …, tmk+1)T. Logo o espaço das colunas do grau k + 1 contém o do grau k. A projeção p obtida com grau k pertence, então, ao subespaço maior, e o vetor desse subespaço mais próximo de b está a uma distância de b menor ou igual a ‖b − p‖.
  3. Erro nulo: com k + 1 = m, a matriz A é quadrada e tem colunas LI; logo é invertível, C(A) = ℝm e p = b. O polinômio passa por todas as medições.

Um erro pequeno nas medições do ajuste não garante que o polinômio fique perto da função que gerou as medições. Suponha que cada medição seja o valor dessa função somado a um ruído, um valor aleatório. Com k perto de m − 1, o polinômio passa perto de cada medição, ruído incluído, e costuma oscilar entre medições vizinhas. Então o erro em medições novas, que não foram usadas no ajuste, pode ser bem maior que o erro nas medições do ajuste. Esse fenômeno se chama sobreajuste.

O traço de uma matriz quadrada é a soma das entradas da diagonal. O traço da matriz de projeção P = A(ATA)−1AT, da guia Projeção sobre um subespaço, é k + 1, a dimensão de C(A). De fato, para quaisquer matrizes X e Y tais que X tem tantas linhas quanto Y tem colunas e tantas colunas quanto Y tem linhas, vale traço(XY) = traço(YX). Com X = A e Y = (ATA)−1AT, temos traço P = traço((ATA)−1ATA) = traço I = k + 1, pois aqui I é a identidade (k + 1) × (k + 1).

Exemplo

Com grau k = 0, o polinômio é a constante x0, e A tem uma única coluna, a = (1, …, 1)T. Para três medições, com b = (2, 3, 7)T, a fórmula da guia Projeção sobre uma reta dá

x̂ = aTb / aTa = (2 + 3 + 7)/3 = 4,

p = (4, 4, 4)T,

e = b − p = (−2, −1, 3)T.

A constante de mínimos quadrados é a média das medições, e os erros somam zero. A matriz P = aaT/3 tem todas as entradas iguais a 1/3, e traço P = 1 = k + 1.

Na bancada: na parte Em dimensão n, escolha o programa e o número m de medições no painel Medições e o grau no controle Grau k do polinômio, ou clique numa barra do quadro Erro em função do grau k. O quadro A matriz de projeção P mostra P como mapa de cores, com o traço na leitura abaixo dele, e o quadro O erro e = b − p mostra o erro de cada medição.

Para pensar

Se b já pertence a C(A), o que dão as equações normais?

As soluções de Ax = b. Se Aw = b para algum vetor w, então ATAw = ATb, e w resolve as equações normais ATAx̂ = ATb. Quando as colunas de A são LI, essas equações têm uma única solução, e logo x̂ = w. A projeção de b sobre C(A) é p = Ax̂ = b, e o erro e = b − p é nulo: o método dos mínimos quadrados não muda a resposta de um sistema que já tem solução.

Em ℝ3, sejam V o plano dos vetores com a terceira coordenada nula e W o plano dos vetores com a segunda coordenada nula. Os subespaços V e W são ortogonais?

Não. O vetor v = (1, 0, 0)T pertence a V e a W, e vTv = 1 ≠ 0, mas dois subespaços ortogonais só têm em comum o vetor nulo. O complemento ortogonal de V é a reta gerada por (0, 0, 1)T: V é gerado por (1, 0, 0)T e (0, 1, 0)T, e um vetor w = (w1, w2, w3)T é ortogonal a esses dois vetores se, e somente se, w1 = w2 = 0.

Dados pontos (t1, y1), …, (tm, ym), com os ti não todos iguais, sejam t̄ a média dos ti e ȳ a média dos yi. A reta de mínimos quadrados passa pelo ponto (t̄, ȳ)?

Sim. Seja y = C + Dt a reta de mínimos quadrados. A primeira equação normal, mC + D(t1 + ⋯ + tm) = y1 + ⋯ + ym, diz que a soma dos erros verticais é zero: (y1 − C − Dt1) + ⋯ + (ym − C − Dtm) = 0. Dividindo por m, obtemos ȳ − C − Dt̄ = 0, isto é, ȳ = C + Dt̄.