DECOMPOSIÇÃO EM VALORES SINGULARES DE UMA MATRIZ

Post on 28-Jul-2022

5 views 0 download

Transcript of DECOMPOSIÇÃO EM VALORES SINGULARES DE UMA MATRIZ

Introdução Decomposição em valores singulares Aplicações

DECOMPOSIÇÃO EM VALORES SINGULARES DEUMA MATRIZ

Professor: Angel Ramírez Gutiérrez1

1Instituto de Matemática y Ciencias Afines (IMCA), Lima, Perú2Universidad Nacional de Ingeniería, Lima, Perú

21/08/2020

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Introdução

Neste trabalho vamos apresentar alguns resultados básicos dedecomposição em valores singulares de uma matriz qualquer,assim como algumas de suas aplicações para motivar seuestudo. Com este objetivo, serão introduzidos algunsresultados prévios conhecidos para matrizes quadradas e emparticular para as matrizes simétricas.

Neste tópico vamos ver a importância da álgebra linear naformação como engenheiros, pois faremos uso de conceitos dematrizes, autovalores e autovetores, diagonalização, etc.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Resultados prévios

Seja A ∈ Rn×n uma matriz simétrica. Então é possível obteruma matriz P ∈ Rn×n ortogonal tal que A = PDPT , onde D éuma matriz diagonal que em sua diagonal principal estão osautovalores da matriz A.

No caso seja A ∈ Rn×n uma matriz não simétrica, dizemos queé diagonalizável quando existe uma matriz S não singular euma matriz diagonal D tal que A = SDS−1. Os autovalores damatriz A estão na diagonal principal da matriz D.

Mas, nem toda matriz A ∈ Rn×n é diagonalizável.

E as matrizes retangulares A ∈ Rm×n?

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz

Entrada: Uma matriz quadrada A ∈ Rn×n.Saída: Uma matriz não singular S ∈ Rn×n

Uma matriz diagonal D ∈ Rn×n tal que D = SAS−1.Passo 1: Obter os autovalores λ da matriz A resolvendo:

det(A− λI) = 0.Passo 2: Determine a multiplicidade algébrica da cada λ.Passo 3: Calcular os subespaços associados a cada autovalor λ:

S(λ) = {v ∈ Rn / (A− λI)v = 0}Passo 4: Determine a multiplicidade geométrica de cada λ.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz

Passo 5: Se m.a.(λ) = m.g.(λ) para todo autovalor λentão a matriz A é diagonalizável.Passo 5.1:Para cada autovalor λi escolha os autovetoresvi ∈ S(λi) que sejam uma base de S(λi).Passo 5.2:Defina a coluna ” i ” de S como sendo o autovetor vi .Fim.

Passo 6: Se m.a.(λ) 6= m.g.(λ) para algum autovalor λentão a matriz A não é diagonalizável. Fim.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz simétrica

Lembre que toda matriz simétrica A pode-se diagonalizar deforma ortogonal, isto é, pode-se obter uma matriz ortogonal(PPT = I) tal que D = PAPT .

Entrada: Uma matriz quadrada simétrica A ∈ Rn×n.Saída: Uma matriz não singular P ∈ Rn×n

Uma matriz diagonal D ∈ Rn×n tal que D = PAPT .Passo 1: Obter os autovalores λ da matriz A resolvendo:

det(A− λI) = 0.Passo 2: Determine a multiplicidade algébrica de cada λ.Passo 3: Calcular os subespaços associados a cada autovalor λ:

S(λ) = {v ∈ Rn / (A− λI)v = 0}Passo 4: Determine a multiplicidade geométrica de cada λ.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz simétrica

Passo 5:Passo 5.1:Para cada autovalor λi escolha os autovetores vi ∈ S(λi)que sejam uma base de S(λi).Passo 5.2:Se necessário, use o proceso de Gram-Schmidth paraobter uma base ortogonal de Rn.Passo 5.3:Defina a coluna ” i ” de P como sendo o autovetor vi . Fim.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Exemplo:

Diagonalizar ortogonalmente a matriz: A =

1 −2 2−2 4 −42 −4 4

.

Solução:Passo 1: Cálculo de autovalores da matriz A:

PA(λ) = det

1− λ −2 2−2 4− λ −42 −4 4− λ

= −λ3+9λ2 = −λ2(λ−9)

Os autovalores de A são λ1 = 0 e λ2 = 9.Passo 2: Cálculo das multiplicidades algébricas:

m.a.(0) = 2 e m.a.(9) = 1.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Passo 3:

Cálculo de autovetores v ∈ R3\{0} tal que (A− λI)v = 0:Para λ = 0:

(A− λI|0) =

1 −2 2 0−2 4 −4 02 −4 4 0

∼ 1 −2 2 0

0 0 0 00 0 0 0

,

portanto: v1 − 2v2 + 2v3 = 0⇒ v1 = 2v2 − 2v3, e assim:

v =

v1v2v3

=

2v2 − 2v3v2v3

= v2

210

+ v3

−201

.

Então m.g.(λ = 0) = 2 e os autovetores associados são: 2

10

,

−201

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Passo 3:

Para λ = 9:

(A− λI|0) =

−8 −2 2 0−2 −5 −4 02 −4 −5 0

∼ 2 −4 −5 0

0 −9 −9 00 0 0 0

,

resolvendo obtemos v2 = −v3 e v1 =v3

2, logo:

v =

v1v2v3

=

v3/2−v3v3

=v3

2

1−22

,

então m.g.(9) = 1 e assim um autovetor associado aoautovalor λ = 9 é:

1−22

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Passo 4: Construir a matriz ortogonal P.

Considere: u1 =

210

,u2 =

−201

e u3 =

1−22

.

Os vetores {u1,u2,u3} ainda não são ortogonais. Portanto,usamos o processo de Gram-Schmidth para ortonormalizar osvetores e assim obtemos:

√5

5

210

,

√5

3

−2/54/51

,13

1−22

.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

assim obtemos as seguintes matrizes:

P =

2√

55

−2√

515

13

√5

54√

515

−23

0√

53

23

e D =

0 0 00 0 00 0 9

.

Pode-se verificar que A = PDPT .

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Matrizes retangulares diagonais

Seja uma matriz retangular A ∈ Rm×n. A diagonal principal damatriz A está formada pelas entradas aii comi ∈ {1, . . . , mın(m,n)}.

Uma matriz D ∈ Rm×n chama-se retangular diagonal se todassuas entradas fora da diagonal principal são nulas:

∀ i ∈ {1, . . . ,m} ∀ j ∈ {1, . . . ,n} : (i 6= j ⇒ dij = 0).

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Decomposição em valores singulares

Seja a matriz A ∈ Rm×n. Então existem matrizes ortogonaisU ∈ Rm×m e V ∈ Rn×n tais que A = UDV T , onde D é umamatriz retangular diagonal m × n da forma:

D =

σ1 0 · · · 0 00 σ2 · · · 0 0...

......

...0 0 · · · σr 00 0 · · · 0 0

com σ1 ≥ σ2 ≥ . . . ≥ σr > 0 e r ≤ mın(m,n) é o número devalores singulares não nulos. Às vezes se definem tambémσi = 0 para todo i > r .

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Definición 1Os valores σ1, σ2, . . . , σr da diagonal principal de S sãochamados de valores singulares de A.

Definición 2As colunas da matriz U são chamadas de vetores singularesà esquerda da matriz A. As colunas da matriz V sãochamadas de vetores singulares à direita da matriz A.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Não parece trivial que qualquer matriz A ∈ Rm×n admita umadecomposição em valores singulares. Mas supondo queA = UDV T , então AT = VDT UT e assim:

AAT = (UDV T )(VDT UT ) = UD(VV T )DT UT = UDDT UT

⇒ UT (AAT )U = DDT

mas como D ∈ Rm×n é uma matriz real diagonal, então oproduto DDT é uma matriz diagonal com entradas σ2

i demesma ordem que D, isto é:

σ1 0 0 . . . . . . 00 σ2 0 . . . . . . 0... . . .

... . . . . . . 00 . . . 0 σm . . . 0

σ1 0 0 . . .0 σ2 0 . . .... . . .

. . ....

... . . .. . . σm

... . . .. . . . . .

0 . . . 0 0

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Então obtemos uma diagonalização da matriz AAT e os valoressingulares de A são as raízes quadradas dos autovalores damatriz AAT .Observe também:

UT (AAT )U = DDT ⇒ (AAT )U = U(DDT ) = (DDT )U

pois DDT é uma matriz diagonal. Se uj é a coluna ” j ” damatriz U, então temos que (AAT )uj = σ2uj , isto é, as colunasde U são autovetores da matriz AAT .

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz qualquer

A análise anterior dá o seguinte algoritmo para obter adecomposição singular da matriz A.Entrada: Uma matriz A ∈ Rm×n.Saída: Matrizes ortogonais U ∈ Rm×m,V ∈ Rn×n

e os valores singulares σi .Uma matriz retangular diagonal D ∈ Rn×n.

Passo 1: Obter os autovalores λ da matriz AAT resolvendo:det(AAT − λI) = 0.

Passo 2: Calcular os subespaços associados a cada autovalor λ:S(λ) = {v ∈ Rn / (AAT − λI)v = 0}

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Algoritmo para diagonalizar uma matriz qualquer

Passo 3: Calcule os valores singulares σi =√λi

para todo i = 1, . . . ,m.Passo 4:

Passo 4.1:Para cada autovalor λi escolha os autovetores ui ∈ S(λi)que sejam uma base de S(λi).Passo 4.2:Se necessário, use o proceso de Gram-Schmidth paraobter uma base ortonormal de Rn.Passo 4.3:Defina a coluna ” i ” de U como sendo o autovetor ui .

Passo 5:Para obter V , simplesmente devemos resolver AV = UD.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Exemplo:

Calcule a decomposição em valores singulares da matriz

A =

(1 2 02 0 2

).

Solução:Passo 1: Calculamos os autovalores da matriz

AAT =

(5 22 8

):

det[(

5 22 8

)− λ

(1 00 1

)]= 0⇒ (λ− 9)(λ− 4) = 0

isto implica que λ1 = 9 e λ2 = 4, portanto os valores singularesda matriz A são: σ1 =

√λ1 = 3 e σ2 =

√λ2 = 2, logo:

D =

(3 0 00 2 0

).

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Passo 2: Calcular as colunas da matriz U, isto é, calculamos osautovetores da matriz AAT para cada autovalor resolvendo osistema (AAT − λI)u = 0.

Para λ = 9 temos:(−4 2 02 −1 0

)⇒(

2 −1 00 0 0

)⇒ u1 =

(1/√

52/√

5

).

Para λ = 4 temos:(1 2 02 4 0

)⇒(

1 2 00 0 0

)⇒ u2 =

(−2/√

51/√

5

).

Portanto U = [u1 u2], isto é:

U =

(1/√

5 −2/√

52/√

5 1/√

5

).

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Passo 3: Cálculo da matriz V mediante:

AV = UD ⇒(

1 2 02 0 2

)V =

(1/√

5 −2/√

52/√

5 1/√

5

)(3 0 00 2 0

)Se vi é a coluna i da matriz V , logo temos:(

1 2 00 −4 2

)[v1 v2 v3] =

(3/√

5 −4/√

5 00 2

√5 0

)

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Cálculo de v1 unitário

Se v1 = (x , y , z), logo:(1 2 00 −4 2

) xyz

=

(3/√

50

)⇒{

x = 3/√

5− z/2y = z/2

Como ‖v1‖2 = x2 + y2 + z2 = 1⇒ z =4

3√

5. Logo:

v1 =

53√

5

23√

5

43√

5

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Cálculo de v2 e v3: Se procede de forma análoga e obtemos:

v2 =

0

−2/√

5

1/√

5

, v3 =

−2/3

1/3

2/3

assim obtemos a matriz V :

V =

53√

50 −2

3

23√

5− 2√

513

43√

51√5

23

pode-se verificar que A = UDV T .

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Teorema 1Toda matriz A ∈ Rm×n possui uma decomposição em valoressingulares.

Teorema 2Os valores singulares σi da diagonal são únicos.

Observação:A decomposição em valores singulares não é única, pois seA = In, então para toda matriz ortogonal V tem-se

In = VInV T .

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Teorema 3Seja A ∈ Rm×n com valores singulares σ1 ≥ σ2 ≥ . . . ≥ σr ≥ 0e seja r o posto de A. Sejam u1, . . . ,ur os vetores singulares àesquerda e sejam v1, . . . , vr os vetores singulares à direita de Acorrespondentes aos valores singulares. Então:

A = σ1u1vT1 + σ2u2vT

2 + . . .+ σr ur vTr

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Número de condição

Dada uma norma em Rn, pode-se definir uma norma matricialinduzida dada por:

‖A‖ = max

{‖Ax‖‖x‖

/ x 6= 0}

= max{‖Ax‖ / ‖x‖ = 1}.

Vamos considerar a norma euclidiana. Sabemos queA = UDV T e lembrando que matrizes ortogonais conservam anorma, então ‖Ax‖ = ‖(UDV T )x‖ e = ‖V T x‖ = ‖x‖ pois Vtambém é ortogonal, portanto:

‖Ax‖ = max{‖Ax‖ / ‖x‖ = 1} = max{‖DV T x‖ / ‖x‖ = 1}= max{‖D(V T x)‖ / ‖V T x‖ = 1} = ‖D‖

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Por outro lado, considerando ‖x‖ = 1, então:

‖Dx‖ =

√√√√ r∑j=1

|σjxj |2 ≤ σ1

√√√√ r∑j=1

|xj |2 ≤ σ1‖x‖ = σ1

desta forma ‖x‖σ1. E se pegamos x0 = e1 = (1,0, . . . ,0) temosque ‖x0‖ = 1, então:

‖D‖ = max{‖Dx‖ / ‖x‖ = 1} ≥ ‖Dx0‖ = σ1

concluindo que ‖A‖ = σ1, que é o maior valor singular de A.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

e temos que A−1 = VD−1UT , assim obtemos que os valoressingulares de A−1 são:

1σn≥ . . . ≥ 1

σ1

portanto ‖A−1‖ =1σn

. Lembrando que Cond2(A) = ‖A‖ ‖A−1‖,obtemos:

Cond2(A) = ‖A‖ ‖A−1‖ =σ1

σn.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Solução de sistemas de equações lineares

Se A = UDV T então do sistema Ax = b obtemos (UDV T )x = be aproveitando que U é ortogonal, tem-se:

D(V T x) = UT b

se A é invertível, então σi 6= 0 para todo i , portanto:

V T x = D−1UT b

e V T também é ortogonal, assim resulta:

x = VD−1UT b

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Compressão de imagens

Figura 1: Foto real. Tamanho: 3.2 Mb

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Figura 2: r = 50. Tamanho: 49.4 Kb.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Figura 3: r = 100. Tamanho: 52 Kb.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Figura 4: r = 200. Tamanho: 53.2 Kb.

I COMAP Angel Ramírez G.

Introdução Decomposição em valores singulares Aplicações

Referencias bibliograficas

Ascher, U.M., Greif, C., A First Course in Numerical Methods, Siam. Computational Science & Engineering,2011.

Domínguez Jiménez, M. Matrices: un modelo para las fotografías digitales. Modelling in Science Educationand Learning, 2011.

Grossman, S., Álgebra Lineal, Mc Graw Hill, 2008.

Burden, R. Faires, Douglas., Análisis Numérico. Grupo Editorial Iberoamericana, México, 1985.

Demmel, J., Applied Numerical Linear Algebra. Siam, Philadelphia, , 1997.

I COMAP Angel Ramírez G.