Concurso UFRGS - Prova did´ atica atica
Decomposi¸ c˜ c˜ ao ao em valore aloress singu singula lares res Leticia Tonetto 14 de novembro de 2015
Sum´ ario 1 Deco Decompo mposi si¸ ¸ c˜ ca ˜o em valores singulares
1.1 1.1 1.2 1.2 1.3 1.3 1.4 1.4
Intr Introdu odu¸c˜ c¸a˜o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rela Rela¸c˜ c¸oes o˜es entre SVD e decomposi¸c˜ cao a˜ o em autov tovalor alores es . . . . . . Rela Rela¸c˜ c¸oes o˜ es en entre SVD e a estrut trutu ura da ma matri triz . . . . . . . . . . Apli Ap lica ca¸c˜ ¸c˜oes da SVD . . . . . . . . . . . . . . . . . . . . . . . . 1.4. 1.4.11 Compre Compress ss˜ a˜o de imagens . . . . . . . . . . . . . . . . . 1.4. 1.4.22 Reso Resolu lu¸c˜ c¸˜ao ao de Problemas Prob lemas de M´ınimos ınimos Quadrados Quadr ados Usando a SVD . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4. 1.4.33 Reso Resolu lu¸c˜ c¸˜ao a o de Sist Sistem emas as Line Linear ares es Usan Usando do a SVD SVD . . . . 1.5 1.5 Inter Interpr preta eta¸c˜ c¸a˜o geom´etrica . . . . . . . . . . . . . . . . . . . . 1.6 Ca´lculo da SVD - Algoritmos . . . . . . . . . . . . . . . . . .
1
2
2 13 15 21 21 21 23 24 24
Cap´ıtulo 1 Decomposi¸ c˜ ao em valores singulares 1.1
Introdu¸ c˜ ao
A decomposi¸c˜ao de qualquer matriz A complexa ou real em A = U ΣV ∗ , com U e V unit´arias e Σ matriz diagonal cujas entradas da diagonal s˜ ao os valores singulares da matriz A ´e denotada decomposi¸c˜ ao em valores es singular value decomposition, ou simplesmente SVD singulares ou do inglˆ como costuma ser chamada. Se A ´e assumida real A = U ΣV T , sendo U e V matrizes ortogonais. Nomes de matem´ aticos do s´eculo 19, tais como Beltrami, Jordan, Sylvester, Schmidt e Weyl s˜ao associados ao desenvolvimento da teoria de SVD, que s´o foi realmente ter destaque no s´eculo 20 com a possibilidade da implementa¸ca˜o computacional de algoritmos, tornando-se computacionalmente vi´avel para resolver uma variedade de problemas provenientes de uma variedade de aplica¸ co˜es, as quais necessitem por exemplo o conhecimento do posto de uma matriz, aproxima¸c˜oes de uma matriz usando matrizes de posto menor, bases ortonormais para os espa¸cos coluna e linha de uma matriz, dentre outras. A SVD ´e bastante efetiva quando se tem a presen¸ ca de dados esp´ urios chamados de ru´ıdos, que aparecem comumente em aplica¸ c˜oes tais como tratamento de imagem, processamento de sinais e na teoria de sistemas em geral. Obviamente que o uso efetivo da SVD depende de como efetivamente a
2
decomposi¸c˜ao possa ser calculada. Foi mostrado como calcular a SVD de uma maneira eficiente e est´ avel pelos analistas num´ ericos contemporrˆ aneos Gene H. Golub, Wiliam Kahan e C. Reinsh. No texto a seguir s˜ao apresentados conceitos preliminares necess´ arios para a decomposi¸ca˜o em valores singulares, demonstra-se o teorema que garante a existˆencia da SVD para qualquer A, rela¸c˜o es entre a SVD e a decomposi¸ca˜o em autovalores, rela¸co˜es entre a SVD e a estrutura de uma matriz, interpreta¸c˜ao geom´etrica, resolu¸c˜ao de problemas de m´ınimos quadrados utilizando SVD, aplica¸c˜ao no tratamento de imagens, c´ alculo da SVD. Nem todas as matrizes s˜ao diagonaliz´ a veis, ou seja, se consegue a decomposi¸ca˜o A = P DP −1 , com D diagonal, menos ainda, A = QDQT Q ortogonal, com autovetores compondo as colunas da matriz Q e autovalores na entradas da diagonal de D. A SVD ´e uma decomposi¸c˜ao pr´ oxima a decomposi¸ca˜o em autovalores e autovetores, pois resulta em uma decomposi¸ ca˜o de fatores ortogonais e uma matriz diagonal. A vantagem ´e que n˜ ao se restringe a matrizes diagonaliz´ aveis, podendo ser obtida para qualquer matriz.
Conceitos preliminares Conven¸ c˜ ao
Embora a SVD possa seja aplic´avel a ambas matrizes reais e complexas. Assume-se aqui, quando n˜ao mencionado, que A seja real.
Defini¸ c˜ ao 1.1.1. Seja A
∈ R
por
Im(A) = y
m×n
m
{ ∈ R
uma matriz. A imagem de A ´e definida
: y = Ax para algum x
e o espa¸co nulo de A ´e definido por null(A) = x
{ ∈R
Se A = [a1
n
: Ax = 0 .
}
| · · · |a ] ´e particionada por colunas, ent˜ao Im(A) = span{a ,...,a }. n
1
O posto da matriz A ´e definido por 3
n
n
∈R }
posto(A) = dim(Im(A)). Se A
m×n
∈R
, ent˜ao dim(null(A)) + posto(A) = n.
Dizemos que A tem posto deficiente se posto(A) min m, n . O posto de uma matriz ´e o n´ umero m´ aximo de linhas (ou colunas) linearmente independentes.
≤
Teorema 1.1.1. Seja A m
{
}
× n ent˜ ao
(i) As matrizes AT A e AAT s˜ ao sim´etricas. (ii) Os autovalores de AT A e AAT s˜ ao reais e n˜ ao-negativos. (iii) AAT e AT A tem mesmos autovalores. Demonstra¸c˜ ao.
Ortogonalidade e normas
´e ortogonal se QT Q = I . Se Q = [ q 1 q m ] ´e ortogonal, ent˜ao as colunas q i formam uma base ortonormal m para R . Defini¸ c˜ ao 1.1.2. Uma matriz Q
|···|
Teorema 1.1.2. Se V 1 R
n×(n−r)
tal que
n×r
∈ R
m×m
∈R
{ }
tem colunas ortonormais, ent˜ ao existe V 2
∈
V = [V 1 V 2 ]
|
´e ortogonal. Observe que Im(V 1 )⊥ = I m(V 2 ). e utilizado na prova da existˆencia da decomposi¸ c˜ao em Nota Esse teorema ´ valores singulares.
Normas matriciais
˜o Defini¸ c˜ ao 1.1.3. A fun¸ca
m×n
· : R
satisfaz as seguintes propriedades: 1. A
m×n
≥ 0, A ∈ R
, A =0
→ R ´e uma norma de matriz se
⇐⇒ A = 0; 4
m×n
2. A + B
≤ A + B, A, B ∈ R 3. αA = |α|A, α ∈ R, A ∈ R .
;
m×n
´ Linear num´erica Defini¸ c˜ ao 1.1.4. Duas normas bastante utilizadas em Algebra s˜ao a norma de Frobenius e a norma p, em particular com p = 2
| m
||A||
F
e a norma p
=
n
aij
i=1 j=1
2
(1.1)
|
|| . ||A|| = sup ||||Ax x|| p
p
x =0
(1.2)
p
Propriedades especiais das normas
Para a norma 2 tem-se Teorema 1.1.3. Se A
m×n
n
, ent˜ ao existe um vetor unit´ ario z T 2 norma 2 tal que A Az = µ z onde µ = A 2 .
∈R
Prova: Suponha que z Como z maximiza a fun¸c˜ao
∈ R
|| ||
n
∈ R
´e um vetor unit´ario tal que Az
com
|| || = ||A|| . 2
2
1 Ax 22 1 xT AT Ax g(x) = = 2 x 22 2 xT x
|| || || || segue que ele satisfaz ∇g(z ) = 0 onde ∇g ´e o gradiente de g. Por diferencia¸ca˜o mostramos que para i = 1 : n
T
(z z ) ∂g(z ) = ∂z i
n T j=1 (A A)ij z j
(z T z )2
T
− (z A
T
Az )z i
.
Em nota¸ca˜o vetorial isto significa que A T Az = (z T AT Az )z . O teorema segue tomando µ = A 2 .
|| ||
Proposi¸ c˜ ao 1.1.4. A
• ||A|| = 2
m×n
∈R
λmax(AT A). 5
• ||A||
F
= tra¸co(AT A).
Defini¸ c˜ ao 1.1.5. Raio espectral ρ(A) = maxi λi
| |
• Raio espectral, tra¸co e posto s˜ao invariantes por transforma¸c˜oes semelhantes
1. ρ(A) = ρ(P AP −1 ). 2. tra¸co(A) = tra¸co(P AP −1 ) 3. posto(A) = posto(P AP −1 ), ou se A = P DP −1 , posto(A) = posto(D).
Invariˆ ancia da norma para matrizes ortogonais
ao Teorema 1.1.5. Seja Q e Z matrizes ortogonais. Ent˜ (i) Q
|| || = 1. (ii) ||AQ|| = ||A|| . (iii) ||AQ|| = ||A|| . (iv) ||QAZ || = ||A|| . (v) ||QAZ || = ||A|| . Demonstra¸c˜ ao. (i) ||Q|| = λ (Q Q) = ρ(Q Q) = (ii)||AQ|| = ρ(Q A AQ) = ρ(A A) = ||A|| . (iii) ||AQ|| = tr(Q A AQ) = tr(A A) = ||A|| . 2
2
2
F
F
2
2
F
F
2
2
2 F
max
T
T
T
T
T
6
T
T
T
2
2 F
ρ(I ) = 1.
(iv) (v)
c˜ ao em Valores Singulares) Teorema 1.1.6. (Teorema da Decomposi¸ Se A
∈ R
m×n
, ent˜ ao existem matrizes ortogonais U =
V = tais que
| | | |
| u . .. | | v . .. |
u1
2
v1
2
U T AV = diag(σ1 , . . . , σ p ) onde σ1
| u ∈R | | v ∈R | m
n
m×n
∈R
m×m
n×n
, (1.3)
,
, p = min(m, n),
(1.4)
≥ σ ≥ . . . ≥ σ ≥ 0. Demonstra¸c˜ ao. Sejam x ∈ R e y ∈ R vetores unit´ a rios com norma 2 que satisfazem Ax = σy com σ = ||A|| . Pelo Teorema 1.1.2 existem V ∈ R e U ∈ R , tais que V = [ x | V ] ∈ R , (1.5) U = [ y | U ] ∈ R , 2
p
n
m
2
n×(n−1)
2
m×(m−1)
2
2
2
n×n
m×m
s˜ao ortogonais. Verifica-se que
onde w
n−1
∈R
e B
U T AV =
(m−1)×(n−1)
.
∈ R
σ wT 0 B
7
≡
A1
(1.6)
De fato, T
U AV =
y T U 2T
A [x V 2 ]
yT Ax
=
yT AV 2
T UT 2 Ax U2 AV 2
yT Ax = y T σy = σy T y = σ,
(1.7) ,
(1.8) U 2T Ax = U 2T σy
= σU 2T y
= 0.
Falta mostrar que w = 0. Como
σ w
A1
2
=
2
≥
σ wT 0 B
2
σ w
=
2
σ 2 + w T w Bw
(σ2 + w 22 )2
2 2
(1.9)
Usando (1.9) e propriedades de normas tem-se
2
T
2
(σ + w w) ent˜ ao
≤ ≤ A1
2
σ w
A1
2
2 1 2
2
· 2
σ w
2
2 2
||A || ≥ (σ + w ).
2
=
A1 22
Mas por hip´ otese σ = A 2 , ent˜ao σ2 = A 22 = UA1 V T assim conclu´ı-se para que (1.11) seja verdadeiro que w = 0. Repetindo o processo para a matriz B, de modo que
|| || ||
B = U B ΣB V B T , 8
·
2
σ w 2 (1.10)
(1.11) 2 2
2 1 2
|| = ||A || , e
e ent˜ ao A = U torna-se
σ 0 0 B
V T
A = U
σ 0 0 ΣB
1 0 0 U B U
Σ
1 0 0 V B
T
V T
V T
e assim sucessivamente, indutivamente a prova ´e completa.
Nota
A escolha Ax = σy, com x e y unit´arios ´e justificada pelo fato que assim (Ax)T Ax = (Ax)T σy, xT AT Ax = (σy)T σy = σ 2 , (y ortonormal)
(1.12)
AT Ax = σ 2 x, ou seja, λ = σ 2 ´e autovalor de AT A e σ ser´a denotado valor singular de A.
Defini¸ c˜ ao 1.1.6. Denotam-se os autovalores de AT A por λ1 = σ12 , λ2 = σ22 , . . . , λn = σn2 . E σ1 , σ2 , . . . , σ p s˜ao chamados valores singulares de A.
S˜ao ordenados de modo que σ1 σ2 . . . σr > 0 e σr+1 = σr+2 = . . . = σn = 0, e ir˜ao compor a diagonal da matriz Σ.
≥
≥
ao chamadas de vetores singulares a Defini¸ c˜ ao 1.1.7. As colunas de U s˜ ao denotadas vetores singulares a direita . esquerda e as colunas de V s˜
Visualiza¸c˜ ao da decomposi¸ c˜ ao
9
A visualiza¸ca˜o se distingue dependendo se a matriz tem mais linhas ou colunas. Se A Rm×n , se m > n
∈
A
=
m×n
U
m×m
Σ
V T
m×n
, n×n
(1.13)
se m < n
A
Por exemplo, se A ´e 3
u11 u12 u13 u21 u22 u23 u31 u32 u33
ou se A ´e 2
×3
u11 u12 u21 u22
T
Σ
U
=
V T
(1.14)
×2
T
a11 a12 a21 a22 a31 a32
a11 a12 a13 a21 a22 a23
v11 v12 v21 v22
σ1 0 0 σ2 0 0
v11 v12 v13 v21 v22 v23 v31 v32 v33
σ1 0 0 0 σ2 0
=
=
,
.
e equivalente ao Proposi¸ c˜ ao 1.1.7. posto(A) = r. Ou seja, o posto de A ´ n´ umero de valores singulares n˜ ao-nulos de A. Demonstra¸c˜ ao. rank(A) = r 10
De fato, o n´ umero de entradas n˜ ao-nulas da diagonal de Σ equivale ao rank(A), pois rank(A) = rank(U T ΣV ) = rank(Σ) = n´ umero de linhas n˜ ao-nulas = r.
Conven¸ c˜ ao
• Sem perda de generalidade podemos considerar m ≥ n, pois se m < n basta considerar a SVD de AT , e se a SVD de AT ´e U ΣV T , ent˜ao a SVD de A ´e V ΣT U T .
• Os valores singulares aparecem em ordem n˜ao-crescente e denota-se σ
= em, σmax o maior valor singular e σ p = σmin o menor valor singular. Tamb´ denota-se σ(A) o conjunto de todos os valores singulares de A. 1
Unicidade da SVD
Apenas tem-se a unicidade dos valores singulares, mas n˜ao dos vetores singulares. Tem-se k = min(m, n) valores singulares de A. Seja r o posto de A, ent˜ ao tem-se r valores singulares positivos, que s˜ao as ra´ızes quadradas dos autovalores n˜ ao-nulos de AT A ou AAT , os (k r), se r < k, valores singulares s˜a o nulos. Ent˜ ao os valores singulares s˜ao u´ nicos. Entretando os vetores singulares n˜ ao s˜ao u ´ nicos. Por exemplo, se A tem um autovalor singular σ > 0, ent˜ao oas colunas correspondentes da matriz V podem ser escolhidas como qualquer base ortonormal do espa¸co expandido pelos autovetores associados com o autovalor m´ ultiplo λ = σ 2 de AT A.
−
Exemplo 1
Determinar os valores e vetores singulares de A =
1 2 2 3 3 4
11
(1.15)
1. Calcular os valores singulares .
Os autovalores da matriz A T A s˜ao 42.8600 e 0.1400. Portanto, os valores singulares s˜ao σ1 =
√
σ2 =
42.8600 = 6.5468,
√
0.1400 = 0.3742.
2. Calcular V .
A matriz V 1 dos autovetores associados com os autovalores de AT A ´e V 1 = como r = 2 ent˜ao V = V 1 . 2. Calcular U .
1 u1 Av1 = Av1 = σ1
0.5696 0.8219
0.3381 0.5506 0.7632
−0.8219 0.5696
1 , u2 = Av2 = σ2
Escolher u3 tal que U = (u1 , u2 , u3 ) seja unit´ aria. 1 u3 = Av2 = σ2 4.
(1.16)
− 0.8480 0.1735 0.5009
− 0.4082 0.8165 0.4082
(1.17)
As matrizes U , Σ e V que definem a SVD de A s˜ao dadas por
U =
V =
0.3381 0.5506 0.7632 0.5696 0.8219
0.8480 0.1735 0.5009
−
−0.8219 0.5696
0.4082 0.8165 0.4082
−
Σ= 2×2
Exemplo 2
12
3×3
6.5468 0 0 0.3742 0 0
(1.18)
Determine os valores singulares da matriz 5
A =
Solu¸cao: ˜ Temos que AT = Logo,
1 0 0 0 1
0 1 1 1 1
1 0 1 0 0
2 1 1 1 4 1 1 1 2
O polinˆomio caracter´ıstico de AT A ´e
− 8λ
2
.
1 0 0 0 1 0 1 1 1 1 1 0 1 0 0
AT A =
p(λ) = λ 3
×3
.
.
+ 17λ
− 10 = (λ − 5)(λ − 2)(λ − 1). Logo, os autovalores de A A s˜ao λ = σ = 5, λ = σ = 2√ e λ = σ √ = 1. Como consequˆencia, os valores singulares de A s˜ao σ = 5, σ = 2 e σ = 1. Portanto, √ 5 0 0 √ 2 0 0 T
2 1
1
2
2 2
1
3
Σ=
1.2
0 0 0
0 0 0
1 0 0
2 3
3
2
.
Rela¸ co ˜es entre SVD e decomposi¸ c˜ ao em autovalores
Conven¸ c˜ ao
• Sem perda de generalidade podemos considerar m ≥ n, pois se m < n basta considerar a SVD de AT , e se a SVD de AT ´e U ΣV T , ent˜ao a SVD de A ´e V ΣT U T . 13
cao ˜ singular de A Teorema 1.2.1. Seja A = U ΣV T , decomposi¸ Seja r o posto da matriz A. Ent˜ ao
∈ R
m×n
.
1. V T (AT A)V = diag(σ12 , σ22 , . . . , σr2 , 0, . . . , 0)n×n 2. U T (AAT )U = diag(σ12, σ22 , . . . , σr2 , 0, . . . , 0)m×m Demonstra¸c˜ ao. (1) AT A = = = =
(V ΣT U T )(U ΣV T ) V ΣT U T U ΣV T V ΣT ΣV T V Σ V T ,
onde Σ = ΣT Σ = Σ2 ´e uma matriz diagonal n n com σ12 , σ22 , como entradas de sua diagonal. Assim,
×
V T (AT A)V = = = =
V T (V Σ V T )V V T V Σ V T V Σ diag(σ12 , σ22 , , σr2 , 0,
···
··· , 0)
2 r
· ·· , σ , 0, ·· · , 0
n×n .
De forma semelhante, vamos provar a afirma¸ca˜o (2): AAT = (U ΣV T )(V ΣT U T ) = V Σ V T , onde Σ ΣΣT = ´e uma matriz diagonal m como entradas de sua diagonal. Logo, U T (AAT )U = = = =
2 1
2 2
2 r
× m com σ , σ , · ·· , σ , 0, ·· · , 0
U T (U ΣU T )U (U T U )Σ (U T U ) Σ diag(σ12 , σ22, , σr2 , 0,
·· ·
·· · , 0)
m×m .
Notas
1. Os vetores singulares a direita v1 , v2 , . . . , vn s˜ao os autovetores da matriz AT A. 14
2. Os vetores singulares a esquerda u1, u2, . . . , um s˜ao os autovetores da matriz AAT . 3. σ12 , . . . , σr2 s˜ao os autovalores n˜ ao nulos de A T A e AAT . etrica com autovalores λ1 , Corol´ ario 1. Seja A uma matriz sim´ Ent˜ ao os valores singulares de A s˜ ao λi , i = 1,
| |
··· , n.
··· , λ . n
Prova: Como A ´e sim´etrica, ent˜ ao A = A T , o que implica em A T A = A 2. Logo, pelo Teorema ??, vemos que os valores singulares de A s˜ao as ra´ızes quadradas n˜ ao negativas dos n autovalores de A2 . Como os autovalores de A2 s˜ao λ 21 , , λ2n , ent˜ao σi = λ2i = λi , i = 1, , n.
···
| |
· ··
ao Corol´ ario 2. Se An×n ´e uma matriz invers´ıvel, ent˜ n
| det(A)| =
σi .
i=1
Demonstra¸c˜ ao. Se A ´e invers´ıvel, ent˜ao posto(A) = n. Logo, A possui n valores singulares. Sejam σ1 , , σn os valores singulares de A. Ent˜ao,
·· · | det(A)| = | det(U ΣV ) = | det(U )|| det(Σ)|| det(V )| = | det(Σ)| T
T
n
=
σi .
i=1
1.3
Rela¸ co ˜es entre SVD e a estrutura da matriz
A SVD pode ser usada efetivamente para calcular certas propriedades importantes relativas a estrutura de uma matriz, tais como o posto, norma Euclidiana, n´ umero de condicionamento, e bases ortonormais para o n´ ucleo e imagem. Vamos discutir isso atrav´ es do seguinte teorema: Teorema 1.3.1. Sejam σ 1
Am
× n. Ent˜ ao
≥ σ ≥ . . . ≥ σ 2
15
n
os n valores singulares da matriz
1. A
= σ = σ 2. A = (σ + . . . + σ ) 3. A = = , quando A ´e n × n e n˜ ao-singular. σ 4. Quando A ´e n×n n˜ ao-singular, ent˜ ao cond (A) = A A = σ 2
1
2 F
−1
max
2 1
2 1/2 r
1 σn
2
1 σmin
2
A = σ
Demonstra¸c˜ ao. 1. De fato
2
2
−1
2
1
n
=
σmax . σmin
1
T
A = U ΣV = Σ = max σ = σ . 2. A = σ + ... + σ , p = min{m, n} 2
2 F
2 1
2
2
i
i
1
2 p
De fato,
p
A = U ΣV = Σ F
F
F =
σi2 )1/2
i=1
Ent˜ ao
A
(
2 2 2 F = σ 1 + ... + σ p
. 3. Tomando a SVD de A −1 , temos do Teorema da Decomposi¸ca˜o em Valores Singulares que o maior valor singular de A−1 ´e 1/σn (quando A ´e invers´ıvel, σn = 0). Ent˜ao, de (1) segue que A−1 = σ 1 = σ1 ;
|| ||
n
max
4. Da defini¸c˜ao de Cond2 (A) e utilizando 1. e 3. temos que Cond2 (A) = A 2 A−1 2 = σ 1 σ1 = σσ .
|| || || ||
Exemplo 1.3.1. Calcule zando o Teorema ??:
max
n
min
||A|| , ||A|| 2
A =
F
e Cond(A) da seguinte matriz, utili-
1 2 3 3 4 5 6 7 7.999
16
.
Solu¸cao: ˜ Os valores singulares de A s˜ao: σ1 = 14.5570, σ2 = 1.0375 e σ3 = 0.0001. Logo, pelo Teorema ??, temos que:
||A|| = σ 2. ||A|| = 1.
2
F
= 14, 5570;
1
σ12 + σ22 + σ32 = 14, 5940;
3. Cond(A) = σ 1 /σ3 = 1, 0993
5
× 10 .
Propriedades
Os vetores singulares podem ser usados para construir bases ortonormais para o espa¸co nulo e para o espa¸co imagem de uma matriz A. Seja A = U ΣV T a SV D de A Rm×n. σ1 σ2 . . . σr > 0 valores singulares de A. Ent˜ao
∈
≥ ≥ ≥
Avi = σ i ui , i = 1, . . . , r Avi = 0, i = r + 1, . . . , n
(1.19)
Similarmente, tomando a SVD de AT = V ΣT U T , temos AT ui = σ i vi , i = 1, . . . , r AT ui = 0, i = r + 1, . . . , m Portanto Im(A) = span u1 , . . . , ur
{
}
Nuc(A) = span vr+1 ,...,vn
{
Im(AT ) = span v1 , . . . , vr
{
}
}
Nuc(AT ) = span ur+1 ,...,um
{
}
Demonstra¸c˜ ao. 1. Temos a expans˜ ao SVD (caso m
≥ n)
17
(1.20)
A = U ΣV T = [u1 u2 ... um ]m×m
σ1 σ2
. σn
0
= [σ1u1 σ2 u2 ... σnun ]m×n
..
n i=1 σi ui vi T
v1T v2T .. . vnT
[v1 v2 ... vn]T n×n
m×n
n×n
(1.21)
Ent˜ ao A = Analogamente se n < m
A = U ΣV T = [u1 u2 ... um ]m×m
σ1 σ2
0
σm
= [σ1u1 σ2 u2 ... σm um 0]m×n
...
m i=1 σi ui vi T.
v1T v2T .. . vnT
n×n
[v1 v2 ... vn ]T n×n m×n
(1.22)
Ent˜ ao A = E de maneira geral, levando em considera¸ca˜o apenas as contribui¸c˜o es n˜aonulas de σ1,...,σ p , com p = min m, n, descritas em (??), teremos A = ri=1 σi ui viT . Portanto, no caso de A Rm×n , com m n (o outro caso seria an´ alogo), n para todo x R temos
∈
∈
≥
18
n
Ax = [
n
σi ui viT ]x =
i=1
(σi viT x)ui ,
i=1
usando que viT x e´ escalar. Vemos que Ax ´e uma combina¸ca˜o linear dos vetores singulares de esquerda ui . N˜ao temos comntribui¸c˜o es de u j na combina¸c˜ao linear, para os casos de σ j = 0. Mas temos considerado que todos os valores singulares s˜ao n˜ao-nulos de σ 1 a σ r , com r min m, n = n (na ausˆencia de valores singulares nulos ter´ıamos r = n). Ent˜ao
{ }
≤
{
}
r
Ax =
(σi viT x)ui
i=1
J´a que os autovetores u1 ,...,ur s˜ao ortogonais, por constru¸c˜a o eles s˜ao linearmente independentes, e ent˜ ao uma base para imagem de A, dada por Im(A), ser´a Im(A) = span u1 ,...,ur
{
}
2. J´a vimos que AT A ´e uma matriz sim´etrica e que existe uma base ortonormal de autovetores associada a ela. Ent˜ ao sejam λ1 ,...,λn, e v1 ,...,vn, T autovalores e autovetores associados a A A, ou seja, AT Avi = σ i2 vi , i = 1, ...n Ent˜ ao viT AT Avi = σ i2 = 0, i = 1, ...r
E viT AT Av j = 0, i = 1, ...r,
i = j
Escrevemos V 1 = (v1 ,...,vr ) V 2 = (vr+1 ,...,vn ) onde v1 ,...,vr s˜ao os autovetores associados a autovalores n˜ ao-nulos λ1 ,...,λn , e vr+1 ,...,vn s˜ao os autovalores associados a autovalores nulos. Ent˜ ao V 2 T AT AV 2 = V 2 T AT A(vr+1 , vr+2 ,...,vn ) = V 2 T (0, 0, ..., 0) = 0 19
Isso implica que AV 2 = 0, ou Avk = 0,
k = r + 1,...,n
Ent˜ ao, por defini¸ca˜o, segue que null(A) = span vr+1 ,...,vn .
{
}
Essas propriedades implicam que as colunas de U correspondentes aos valores singulares n˜ ao nulos de A formam uma base ortonormal de Im(A); as colunas de U correspondentes aos valores singulares nulos de A formam uma base do N (AT ), e assim segue. Uma vez obtidas as bases ortonormais para a Imagem Im(A) e para o Espa¸co Nulo N (A) de A, as proje¸c˜oes ortogonais podem ser facilmente calculadas. Assim, se particionarmos U e V como U = (U 1 , U 2 ), V = (V 1, V 2 ), onde U 1 e V 1 consistem das primeiras r colunas de U e V , ent˜ ao as seguintes proje¸co˜es utilizando SVD podem ser calculadas: 1. Proje¸ca˜o em Im(A) = U 1 U 1T ; 2. Proje¸ca˜o em N (A) = V 2 V 2 T ; 3. Proje¸ca˜o em N (AT ) = U 2 U 2T ; 4. Proje¸ca˜o em Im(AT ) = V 1V 1 T . Decomposi¸ ca ˜o di´ adica
r
A =
ui σi viT
(1.23)
i=1
A = u 1 σ1v1T + u2 σ2v2T + . . . + u p σ p v pT
(1.24)
Fornece uma descri¸ca˜o canˆ onica de uma matriz como a soma de matrizes de posto 1.
20
1.4
Aplica¸ co ˜es da SVD
Entre outras, cita-se
• Sensibilidade • M´ınimos quadrados • Compress˜ao de imagens 1.4.1
Compress˜ ao de imagens
Um dos prop´ositos de transformar uma matriz A em sua SVD ´e aproximar A usando um menor n´ umero de entradas do que a matriz original. Usando o posto da matriz removemos as informa¸co˜es reduntantes (entradas dependentes) quando r < m ou r < n T A = σ 1 u1 v1T + σ2 u2 v2T + . . . + σr ur vrT + 0ur+1vr+1 + . . .
(1.25)
Os valores singulares nulos n˜ ao afetam a imagem, podem ser desprezados A = σ 1 u1 v1T + σ2 u2 v2T + . . . + σr ur vrT SVD is used as a method for noise reduction. Let a matrix A represent the noisy signal: compute the SVD, and then discard small singular values of A. It can be shown that the small singular values mainly represent the noise, and thus the rank-k matrix Ak represents a filtered signal with less noise.
1.4.2
Resolu¸ c˜ ao de Problemas de M´ınimos Quadrados Usando a SVD
A SVD ´e uma importante ferramenta para a resolu¸ c˜ao de problemas de m´ınimos quadrados, tanto para matrizes de posto completo quanto para matrizes de posto deficiente. Considere o problema de m´ınimos quadrados: Encontre x tal que r 2 = Ax b 2 ´e m´ınimo.
|| || || − ||
21
Seja A = U ΣV T a SVD de A. Ent˜ao, temos que T
= = =
||r||
2
||(U ΣV )x − b|| ||U (ΣV x − U b)|| ||Σy − b || 2
T
T
2
2
onde V T x = y e U T b = b . Assim, o uso da SVD de A reduz o problema de m´ınimos quadrados de matriz A completa para uma matriz diagonal Σ: Encontre y tal que
||Σy − b ||
2
´e m´ınimo. O problema reduzido ´e trivial para ser resolvido. Temos que k
||Σy − b || = 2
m
|
σi yi
i=1
2
−b | i
| | bi
+
2
i=k+1
onde k ´e o n´ umero de valores singulares n˜ ao nulos de A. Assim, o vetor
y =
y1 y2 .. . yn
|| − b || ´e dado por:
que minimiza Σy
2
yi =
bi , σi
se σi = 0 arbitr´a rio, se σi = 0
Uma vez que y ´e calculado, a solu¸c˜ao pode ser recuperada de x = V y. Correspondendo a cada σi nulo, yi pode ser um conjunto arbitr´ ario, no caso de posto deficiente, teremos infinitas solu¸ c˜o es para o problema de m´ınimos quadrados. Existem exemplos onde o posto deficiente ´e realmente desej´avel, pois ele fornece uma rica fam´ılia de solu¸c˜oes que podem ser usadas para a otimiza¸ca˜o para algum outro aspecto do problema original. No caso de posto completo, a solu¸c˜ao para o problema de m´ınimos quadrados ´e unica. ´
22
Algoritmo: Solu¸cao ˜ do Problema de M´ınimos Quadrados Usando a SVD
Etapa 1: Encontre a SVD de A: A = U ΣV T ; Etapa 2: Forme y1 y2 y = , .. . escolhendo yi =
yn
bi , σi
se σi = 0 arbitr´a rio, se σi = 0
Etapa 4: Calcule a fam´ılia de solu¸c˜oes do problema de m´ınimos quadrados: x = V y. Da Etapa 3 do algoritmo, vemos que no caso de posto deficiente, a solu¸ c˜ao do problema de m´ınimos quadrados de norma 2 m´ınima ´e a que ´e obtida pela escolha de y i = 0 sempre que σ i = 0. Assim, temos a seguinte express˜ao para a solu¸c˜ao de norma 2 m´ınima usando SVD: k
x =
i=1
uT i b vi , σi
(1.26)
onde k ´e o posto(A) num´erico e ui e vi s˜ao respectivamente as i-´esimas colunas de U e V .
1.4.3
Resolu¸ c˜ ao de Sistemas Lineares Usando a SVD
A ideia de usar SVD para a resolu¸c˜ao de problemas de m´ınimos quadrados pode ser facilmente aplicada para determinar se um sistema linear Ax = b tem uma solu¸c˜ao, se sim, como calcul´ a-la. Assim, se T A = U ΣV , ent˜ ao Ax = b ´e equivalente a Σy = b , onde y = V T e b = U T b. Ent˜ ao, o sistema Ax = b ´e consistente se, e somente se, o sistema diagonal Σy = b ´e consistente, e a solu¸ca˜o de Ax = b pode ser calculada resolvendo 23
primeiro o sistema diagonal Σy = b e ent˜ ao recuperando x de x = V y. Entretanto, esta abordagem ser´ a muito mais cara computacionalmente que a Elimina¸ca˜o Gaussiana e m´etodos de decomposi¸ca˜o QR. Este custo alto ´e o motivo pelo qual a SVD n˜ao ´e, em geral, usada na pr´ atica para a resolu¸ca˜o de sistemas lineares.
1.5
Interpreta¸ c˜ ao geom´ etrica
1.6
C´ alculo da SVD - Algoritmos
Golub Trefethen
24