optimización - práctica 1 - parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfpráctica...

27
Optimización Cuadrados Mínimos SVD Optimización Práctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Upload: others

Post on 03-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

OptimizaciónPráctica 1 - Parte 2

Departamento de Matemática, FCEyN, Universidad de Buenos Aires

24/04/2020

Page 2: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados Mínimos I

I Recordemos que el problema de cuadrados mínimosera dada A ∈ Rm×n y b ∈ Rm resolver min

x∈Rn‖Ax − b‖2.

I Sea f (x) = 12‖Ax − b‖2, sabemos que es convexa

por composición.I De hecho es una cuadrática:

f (x) = 12〈Ax−b,Ax−b〉 = 1

2xT AT Ax−(bT A)x+ 12bT b.

I Notar que AT A � 0 y si rg(A) = n (i.e. columnas l.i.)entonces AT A � 0.

I Con ∇f (x) = 0 se recuperan las ecuacionesnormales, y por lo visto si AT A � 0 hay soluciónúnica x = (AT A)−1AT b.

Page 3: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados Mínimos II

I Si las columnas no son l.i. no es un problema puessolo necesitamos que q = bT A esté enker(AT A)⊥ = Im(AT A).

I Pero ker(AT A) = ker(A) ya que si AT Ax = 0entonces xT AT Ax = 0.

I Luego ‖Ax‖2 = 0 y por lo tanto Ax = 0.I Como ker(A)⊥ = Im(AT ) entonces

q = bT A ∈ Im(AT A), por lo tanto hay solución.I Pero la solución no es única, si x0 es cualquier

solución de AT Ax = AT b entonces{x |AT Ax = AT b} = x0 + ker(A).

I Si imponemos x∗ ∈ ker(A)⊥ entonces la solución esúnica y es la solución de mínima norma.

I Si x es otra solucion x = x∗ + v con v ∈ ker(A),luego: ‖x‖2 = ‖x∗‖2 + ‖v‖2 ≥ ‖x∗‖2.

Page 4: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD I

I Toda matriz A ∈ Rm×n manda la bola unitaria en Rn

en un elipsoide en Rm.

Figure: AV = UΣ

Page 5: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD II

DefiniciónDada A ∈ Rm×n, una descomposición en valoressingulares (SVD) es una factorización A = UΣV T conU ∈ Rm×m y V ∈ Rn×n matrices ortogonales, y Σ ∈ Rm×n

diagonal. Más aún, asumimos queσ1 ≥ σ2 ≥ · · · ≥ σp ≥ 0 donde p = min(m,n).

I Supongamos m ≥ n y A de rango máximo, i.e.rank(A) = n.

I Como AT A ∈ Rn×n es simétrica definida positivatiene una base ortonormal de autovectoresAT A = V ΛV T con λ1 ≥ λ2 ≥ . . . λn > 0.

I Como A no tiene núcleo existen σi > 0 y vectores uicon ‖ui‖ = 1 tales que σiui = Avi (i.e. ui = Avi

‖Avi‖ yσi = ‖Avi‖).

Page 6: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD III

I Los ui ∈ Rm son ortonormales ya que

(σiui)T (σjuj) = (Avi)

T (Avj) = vTi AT Avj = λjvT

i vj = 0

si i 6= j .I Si i = j llegamos a que σ2

i = λi , i.e. σi =√λi .

I Completemos u1, . . . ,un a una base ortonormal deRm con un+1, . . . ,um y se define Σ ∈ Rm×n comoΣ = [diag(σ1, . . . , σn); zeros(m − n,n)].

I Entonces UΣ = AV , i.e. A = UΣV T .

Page 7: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD IIIObservación

I Si rank(A) = r < n la misma construcción funciona,solo que ahora tenemos u1, . . . ,ur yσ1 ≥ · · · ≥ σr > 0 determinados por los autovectoresde AT A, v1, . . . , vr de autovalor no nulo.

I La hipótesis de m ≥ n tampoco es necesaria, ya quesi m < n entonces hacemos la factorización anteriora AT , i.e. AT = UΣV T para U ∈ Rn×n V ∈ Rm×m yΣ ∈ Rn×m. Luego si definimos U = V , V = U yΣ = ΣT entonces A = V ΣT UT = UΣV T .

I Los (σi)i están univocamente determinados, y si Aes cuadrada y los (σi)i son distintos entonces los(vi)i y (uj)j están univocamente determinados salvoun cambio de signo.

I En matlab [U,Σ,V ] = svd(A) devuelve lafactorización SVD.

Page 8: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD IV

ObservaciónI La factorización A = UΣV T anterior se llama

factorización full SVD.I Cuando la dimensión es grande, A ∈ Rm×n con

rank(A) = r es mejor tomar A = UΣV T conV ∈ Rn×r , U ∈ Rm×r y Σ ∈ Rr×r , que se llama lafactorización thin (o compact) SVD.

I Notar que {v1, . . . , vr} es una base ortonormal deker(A)⊥, y {u1, . . . ,ur} es una base ortonormal deIm(A).

I y = Ax se descompone como: primero computo loscoeficientes de x en la base de inputs v1, . . . , vr(resto no importa, va al núcleo). luego reescalamospor σi a cada coeficiente. por último reconstruimosen la base de outputs u1, . . . ,ur .

Page 9: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD V

Figure: A = UΣV T full SVD

Page 10: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD VI

Figure: A = UΣV T thin SVD

Page 11: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD - Aplicaciones

I Como primera aplicación si r << min(m,n) entoncesla factorización thin SVD nos da una forma demultiplicar por A mucho más rápida. Esto es muy útilsi tenemos que multiplicar por A muchas veces.

I El costo de la multiplicación luego de factorizar es:2mr + 2r2 + 2nr = 2r(m + n + r) << 2mn. Porejemplo si r = 10 m = 10000 y n = 1000 entonces2r(m + n + r) ≈ 2.2 · 105 < 2 · 107 = 2mn.

I De hecho la factorización SVD nos da la mejoraproximación low rank de la matriz.

Page 12: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations I

I Dado k < r = rank(A), buscamos Ak una matriz derango k tal que Ak ≈ A en el sentido de que lanorma matricial ‖A− Ak‖ sea mínima.

I La solución a este problema es Ak = Uk ΣkV Tk donde

Uk = U(:,1 : k), Vk = V (:,1 : k) yΣk = Σ(1 : k ,1 : k).

I Es decir Ak =k∑

i=1σiuivT

i .

Page 13: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations II

Proof.I Primero observar que

‖A− Ak‖ = ‖r∑

i=k+1σiuivT

i ‖ = σk+1 ya que

σk+1 ≥ σk+2 ≥ · · · ≥ σr .I Si B es una matriz con rank(B) ≤ k entonces

dim ker(B) ≥ n − k , luego existe un x de norma unoen la intersección de ker(B) y 〈v1, . . . , vk+1〉.

I Luego (A− B)x = Ax =k+1∑i=1

σiuivTi x .

I Luego ‖(A− B)x‖2 =k+1∑i=1

σ2i (vT

i x)2 ≥ σ2k+1‖x‖2.

I Por lo tanto ‖A− B‖ ≥ σk+1 = ‖A− Ak‖.

Page 14: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations III

ObservaciónI Tenemos una nueva interpretación de σi :

σi = min{‖A− B‖ | rank(B) ≤ i − 1}

I En particular si A ∈ Rn×n entonces σn = σmin es ladistancia a la matriz singular más cercana.

I También Ak realiza el ínfimo de ‖A− B‖F conrank(B) ≤ k .

ObservaciónOtra aplicación es como método de compresión, porejemplo A ∈ Rm×n puede ser la matriz de intensidades depixels en una foto en escala de grises.

Page 15: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations IV

Figure: A la izquierda, John Forbes Nash Jr. (1928-2015)compreso con solo 100 valores singulares, a la derecha laimagen original (1500× 981 pixels), compresión del 83%.

Page 16: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations VEjemploSi A ∈ R10×5 tenemos una factorización thin SVD:

A = UΣV T =

−0.33 −0.54 0.23 −0.26 0.25−0.32 −0.039 −0.61 0.11 0.3−0.41 −0.12 0.27 0.7 −0.066−0.34 −0.15 −0.51 −0.03 0.07−0.25 0.18 −0.015 −0.48 −0.2−0.32 −0.061 0.23 −0.32 0.3−0.22 0.2 0.23 0.26 0.22−0.13 −0.44 −0.14 0.026 −0.75−0.35 0.11 0.34 −0.19 −0.21−0.39 0.62 −0.1 −0.01 −0.23

81.0 0 0 0 0

0 8.6 0 0 00 0 0.1 0 00 0 0 0.024 00 0 0 0 0.014

−0.11 0.071 0.079 −0.95 −0.27−0.18 −0.14 0.65 0.26 −0.68−0.13 −0.2 −0.76 0.11 −0.60.36 −0.91 0.07 −0.14 0.110.9 0.32 3.1 10−3 2.5 10−3 −0.3

Como σ3, σ4 y σ5 son muy chicos tenemos unafactorización aproximada:

A2 = U2Σ2V T2 =

−0.33 −0.54−0.32 −0.039−0.41 −0.12−0.34 −0.15−0.25 0.18−0.32 −0.061−0.22 0.2−0.13 −0.44−0.35 0.11−0.39 0.62

[81.0 0

0 8.6

] [−0.11 0.071 0.079 −0.95 −0.27−0.18 −0.14 0.65 0.26 −0.68

]

Page 17: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Low Rank Approximations VI

Ejemplo(Cont’d) La diferencia es imperceptible:

A =

3.8 −1.2 −5.1 24.0 10.03.0 −1.8 −2.2 25.0 7.34.0 −2.3 −3.4 32.0 9.73.3 −1.8 −2.9 26.0 8.22.0 −1.7 −0.62 20.0 4.43.0 −1.8 −2.4 24.0 7.21.7 −1.5 −0.35 18.0 3.71.9 −0.25 −3.3 9.4 5.53.0 −2.2 −1.7 27.0 7.02.6 −3.0 0.96 31.0 4.8

3.8 −1.2 −5.1 24.0 10.03.0 −1.8 −2.3 25.0 7.34.0 −2.2 −3.3 32.0 9.73.3 −1.8 −3.0 26.0 8.12.0 −1.7 −0.62 20.0 4.43.0 −1.8 −2.4 24.0 7.21.7 −1.5 −0.33 18.0 3.71.9 −0.25 −3.3 9.4 5.43.0 −2.2 −1.7 27.0 7.02.6 −3.0 0.95 31.0 4.8

= A2

Como sabemos ‖A− A2‖ ≈ 0.1.

Page 18: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

SVD y Cuadrados Mínimos

DefiniciónDada A ∈ Rm×n (s.p.g. m ≥ n) si A = UΣV T es lafactorización thin SVD entonces se define lapseudo-inversa o inversa de Moore-Penrose de Acomo A† = V Σ−1UT . Si A = UΣV T es la factorizaciónfull SVD entonces A† = V Σ†UT donde Σ† ∈ Rn×m estadada por Σ† = [diag( 1

σ1, . . . , 1

σr,0, . . . ,0), zeros(n,m − n)]

ObservaciónI x = A†b resuelve el problema de cuadrados

mínimos, i.e. es solución de las ecuacionesnormales.

I AT Ax = AT AA†b = V Σ2V T V Σ−1UT b = V ΣUT b =AT b

I Notar que x =r∑

i=1

(uTi b)σi

vi ∈ 〈v1, . . . , vr 〉 = ker(A)⊥.

Page 19: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados mínimos con regularización I

DefiniciónDada A ∈ Rm×n, b ∈ Rm y λ > 0, el problema decuadrados mínimos regularizados esta dado por:

minx‖Ax − b‖2 + λ‖x‖2

También llamada regularización de Tychonov o ridgeregression en estadística.

I El problema es nuevamente de minimización de unacuadrática, multiplicando por 1/2 tenemos:

f (x) =12

xT (AT A + λI)x − bAT x +12

bT b

I Notar que AT A + λI � 0 sin ninguna hipótesis sobreA, luego la única solución es: xλ = (AT A +λI)−1AT b.

Page 20: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados mínimos con regularización II

ProposiciónCuando λ→ 0 entonces la solución regularizadaconverge a la solución de cuadrados mínimos x = A†b,es decir:

limλ→0

xλ = limλ→0

(AT A + λI)−1AT b = A†b

I Sea A = UΣV T la factorización full SVD, entonces:

limλ→0

(AT A+λI)−1AT b = limλ→0

(V ΣT ΣV T +λI)−1V ΣT UT b

I Pero V ΣT ΣV T + λI = V (ΣT Σ + λI)V T luego(V ΣT ΣV T + λI)−1 = V (ΣT Σ + λI)−1V T .

Page 21: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados mínimos con regularización III

I Entonces tenemos:

limλ→0

(AT A + λI)−1AT b = limλ→0

V (ΣT Σ + λI)−1ΣT UT b

I Ahora(ΣT Σ + λI)−1 = diag( 1

σ21+λ

, . . . , 1σ2

r +λ, 1λ , . . . ,

1λ).

I Por lo tanto:(ΣT Σ + λI)−1ΣT =

=

1σ2

1+λ

. . .1

σ2r +λ

. . .1λ

σ1 0 · · · 0 · · · 0

0. . .

σr...

...... 0

. . .0 · · · 0 0 · · · 0

Page 22: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Cuadrados mínimos con regularización IV

I Esto es:

(ΣT Σ + λI)−1ΣT =

σ1σ2

1+λ0 · · · 0 · · · 0

0. . .

σrσ2

r +λ

......

... 0. . .

0 · · · 0 0 · · · 0

I Luego limλ→0

(ΣT Σ + λI)−1ΣT = Σ†.

I Por lo tanto:

limλ→0

(AT A + λI)−1AT b = V Σ†UT b = A†b

Page 23: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Solución de Mínima Norma I

I Supongamos que tenemos un sistema Ax = b conA ∈ Rm×n m < n (A es ’fat’) y de rango máximo, i.e.rank(A) = m.

I Más variables que ecuaciones (subespecificado),hay infinitas soluciones. Podemos modificar elproblema agregando la condición de mínima norma,es decir:

min xT x

s.t . Ax = b

I La solución a este problema es una solución alsistema lineal: [

I −AT

A 0

] [xµ

]=

[0b

]

Page 24: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Solución de Mínima Norma II

I Luego x − ATµ = 0 y Ax = b, pero entoncesAx = AATµ, y AAT es inversible ( pues ker(AT ) = 0).

I Luego µ = (AAT )−1b y por lo tanto x = AT (AAT )−1bes la solución de mínima norma.

I Notar que para A fat de rango máximo se tiene queA† = AT (AAT )−1.

I De hecho si A = UΣV T es la factorización thin SVDentonces:

AT (AAT )−1 = V ΣUT (UΣ2UT )−1 = V Σ−1UT = A†

Page 25: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Schur ComplementI Supongamos que queremos resolver[

A BC D

] [xy

]=

[ab

]con A ∈ Rp×p, B ∈ Rp×q, C ∈ Rq×p y D ∈ Rq×q,x ,a ∈ Rp y y ,b ∈ Rq. Llamemos M a la matriz dadaen bloques.

I Si A es inversible (fácilmente) entonces restamosCA−1 por la ’fila’ uno a la ’fila’ dos.

I Luego: (D − CA−1B)y = b − CA−1a. NotamosM/A = (D − CA−1B) al complemento de Schur delbloque A de M.

I Si M/A es inversible entonces resuelvoy = (M/A)−1(b − CA−1a).

I Luego reemplazo y en la primer ecuacion y obtengox = A−1(a− By).

Page 26: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Aplicación

Supongamos que queremos resolver el problema:

min12‖Ax − b‖2

s.t . Cx = d

I La solución a este problema es una solución alsistema lineal:[

AT A −CT

C 0

] [xµ

]=

[AT b

d

]

Page 27: Optimización - Práctica 1 - Parte 2cms.dm.uba.ar/.../optimizacion/practica_1_parte_2.pdfPráctica 1 - Parte 2 Departamento de Matemática, FCEyN, Universidad de Buenos Aires 24/04/2020

Optimización

CuadradosMínimos

SVD

Aplicación II

I Si A es thin de rango máximo hacemos elcomplemento de Schur del bloque A, restamosC(AT A)−1 de la fila uno a la fila dos, luego:C(AT A)−1CTµ = d − C(AT A)−1AT b.

I Si C fat de rango máximo C(AT A)−1CT es inversible,despejo µ.

I De la primera ecuación AT Ax − CTµ = AT bobtenemos reemplazando µ quex = (AT A)−1(AT b + CTµ).