Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos...

38
Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmos aleatorizados en aproximaciones de bajo rango Caso SVD Rafael Llin´ as Facultad de ciencias Escuela de matem´ aticas Universidad Nacional de Colombia Sede Medell´ ın Mayo 30 2018

Transcript of Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos...

Page 1: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmos aleatorizados en aproximaciones debajo rango

Caso SVD

Rafael Llinas

Facultad de cienciasEscuela de matematicas

Universidad Nacional de ColombiaSede Medellın

Mayo 30 2018

Page 2: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 3: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Estrategia computacional

Estrategia computacional

matrices menores

Am×n = Em×rFr×n

Espectro

spanE (1),E (2), ..,E (r))

= Col(A)

Espectro

spanF(1),F(2), ...,F(r)

= Col(AT )

almacenamiento

mn > mr + rn

Page 4: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Estrategia computacional

Estrategia computacional

Primera etapa

Hallar Q ∈ Rm×k

Segunda etapa

B := QTA ∈ Rk×n

Page 5: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorizado generico

Primera etapa

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 6: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorizado generico

Primera etapa

Algoritmo aleatorio generalizadoprimera etapa

Rango objetivo

Se define el rango objetivo k. Donde k min(m, n)

Conjunto k vectores aleatorios

wi i = 1 : k

Matriz Q

Qm×k columnas ortonormales

Proyector ortogonal

QQT

Page 7: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorizado generico

Primera etapa

Algoritmo aleatorio generalizadoprimera etapa

1.Conjunto de k vectores aleatorios

wi

2. Construye conjuntos proyectores aleatorios

Yi := Awi donde i = 1 : k

3. Reducir el numero de columnas

Y := AΩ donde Ω ∈ Rnxk

4. Descomposion QR

Y = QR de modo que A ≈ QQTA

Page 8: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorizado generico

Segunda etapa

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 9: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorizado generico

Segunda etapa

Algoritmo aleatorio generalizadoSegunda etapa

Matriz Menor

Bk×n donde B := QTA

Descomposicion QB

Como B := QTA y A ≈ QQTA entonces A ≈ QB

Algoritmos tradionales

Sobre B se aplican los Algoritmos tradicionales

Page 10: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Sobremuestreo

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 11: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Sobremuestreo

Algoritmo aleatorio mejoradoSobremuestreo

Problemas al precisar k

σi 6= 0 para i = k + 1 : n

Respuesta

l := k + p

Eleccion p

p = 5, 10 (Mortinsson 2016)

Page 12: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Esquema iteraciones en potencias

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 13: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Esquema iteraciones en potencias

Algoritmo aleatorizado mejoradoEsquema iteraciones en potencias. (Rokhlin 2009, Halko 2011, GU 2015)

Preprocesar A

A(q) := (AAT )qA

Esquema potencias

A(q) = U Σ2q+1V T

Modificacion

Y := A(q)Ω

numero iteraciones

q = 1, 2, 3

Page 14: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Matrices de prueba aleatoria

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 15: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Algoritmo aleatorio mejorado

Matrices de prueba aleatoria

Algoritmo aleatorizado mejoradoMatrices de prueba aleatoria

Requisito

Matriz con entradas iid de alguna distribucion con columnas L.I.

Opciones recomendadas

Gaussiana N(0,1).

Uniforme µ(−1, 1).

Opciones recomendadas

Rademacher. V.a (-1 y +1).(Tropp, Yurtsever, Udell 2016)

Otras opciones

Muy pocas matrices de prueba aleatoria son mas simples deconstruir (Li, Hastie 2006. Erichson, Kutz 2017)

Page 16: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Descripcion conceptual

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 17: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Descripcion conceptual

Descomposicion aleatorizada en valores singularesDescripcion conceptual

SVD completa

Sea A ∈ Rmxn; m ≥ n entonces: A= U ΣV T

donde U=[U1,U2, ...,Um] ∈ Rm×mV=[V1,V2, ...,Vn] ∈ Rn×nΣ ∈ Rm×n

SVD economica

A= U ΣV T

A= [U1,U2, ...,Un]diag(σ1, σ2, ...., σn)[V1,V2, ...,Vn]

Rango matrices de datos

rank(A) = r < n

Page 18: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Descripcion conceptual

Descomposicion aleatorizada en valores singularesDescripcion conceptual

Aproximaciones bajo rango

Ak := UkΣkVTK

Ak := [U1,U2, ...,Uk ]diag(σ1, σ2, ..., σk)[V1,V2, ...,Vk ]Ak ≈ Σk

i=1σiUiVTi

Teorema:Eckart-Young(1936)

Ak := argminrank(Ak )

‖A− A′k‖ donde ‖A− Ak‖2= σk+1(A)

‖A− Ak‖F =

√√√√min(m,n)∑i=k+1

σ2j (A)

Page 19: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Algoritmos aleatorizados

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 20: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Algoritmos aleatorizados

Descomposicion aleatorizada en valores singularesAlgoritmo aleatorizado.(Halko et al.(2011)

A ∈ Rm×n matriz de bajo rango, entoncesA≈ UkΣkV

Tk

Q ∈ Rm×lB := QTA donde B ∈ Rl x n

B =∼UΣV T l vectores singulares derechos

U ≈ Q∼U (l vectores singulares izquierdos)

A ≈ QQTA = QB = Q∼UΣV T= UΣV T

Page 21: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Algoritmos aleatorizados

Descomposicion aleatorizada en valores singularesAlgoritmo aleatorizado.(Halko et al.(2011)

ventajas

1. Menores costos de comunicacion. Tropp (2016)2. Altamente paralelizable3. Aplicabilidad general. Aproxima a la optima SVD truncada conalta probabilidad. (Mortinsson 2016, GU, 2015)

Page 22: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Algoritmos aleatorizados

Descomposicion aleatorizada en valores singularesAlgoritmo SVD aleatorizado

Algoritmo con iteracion subespacial y sobremuestreo

Entrada: Amxn, m > n. parametros 0 < k + p = l < n. qiteraciones

1 Calcule Y = (AAT )qAΩ

2 Calcule base ortonormal Q para Y

3 Calcule B = QTA

4 [∼U,Σ,V ]= SVD(B)

5 U = Q∼U

Salida: U(:,1:k) ∈ Rmxk ,Σ(1 : k, 1 : k) ∈ Rkx kV (:, 1 : k) ∈ Rnxk

Page 23: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Rendimiento teorico

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 24: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Descomposicion Aleatorizada en valores singulares

Rendimiento teorico

Error y error esperado

Error

‖A− Q(QTA)‖2 ≤ ‖A− QB‖2= σk+1(A)

‖A− Q(QTA)‖F ≤ ‖A− QB‖F=√∑n

i=k+1 σ2i (A)

Error esperado (simplicacion de Halko et al.(2011))

E=‖A− Ak‖ ≤[1+√

kp−1 + e

√k+pp .

√min(m, n)− k]

12q+1σk+1(A)

Page 25: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Funciones svd y rsvd

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 26: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Funciones svd y rsvd

Funcion rsvd

obj <-rsvd(A,k,nu= ,nv= ,p = 10, q= 2, sdist = ””)

Paquetes deterministicos

SVD: Basado en el algoritmo PROPACK (Algoritmos conbiadiagonalizacion de Lanczos con reortogonalizacion parcial,Larsen 1998)Rspectra: Paquete software ARPACK(Lehoucq, 1998)irlba: Implementa explicıtamente metodos de bidiagonalizacionpara calcular VS VES(Baglama y Reichel 2005)

Page 27: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Aplicacion en R

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 28: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Aplicacion en R

Completo

SVD k=100, e= 0.121

Page 29: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Aplicacion en R

Completo

RSVD k=100, e= 0.122

Page 30: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Aplicacion en R

Frame Title

Tiempos de ejecucion y errores(20 ejecuciones)

Package Function Parameters Time Speedup Error

R base svd() nu=nv=100 0.37 * 0.121svd prpack.svd() neig=100 0.55 0.67 0.121RSpectra svd() k=100 0.25 1.48 0.121irlba irlba() nv=100 0.24 1.54 0.121rsvd rsvd() k=100, q=0 0.03 12.3 0.165rsvd rsvd() k=100, q=1 0.052 7.11 0.125rsvd rsvd() k=100, q=2 0.075 4.9 0.122rsvd rsvd() k=100, q=3 0.097 3.8 0.121

Page 31: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Contenido

1 Estrategia computacional2 Algoritmo aleatorizado generico

Primera etapaSegunda etapa

3 Algoritmo aleatorio mejoradoSobremuestreoEsquema iteraciones en potenciasMatrices de prueba aleatoria

4 Descomposicion Aleatorizada en valores singularesDescripcion conceptualAlgoritmos aleatorizadosRendimiento teorico

5 Aplicacion en RFunciones svd y rsvdAplicacion en RDesempeno computacional

6 Comentarios finales

Page 32: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Tiempos ejecucion para aproximaciones de rango k=20para varias matrices( Randomized Matrix Descompositions.Erichson)

0.01

0.10

0.50

2.00

10.00

40.00

150.00

600.00

1000 5000 10000 15000 20000 30000 40000Matrix dimension

Med

ian

elap

sed

time (

s)

svdpropackRSpectrairlbarsvd (q=1)rsvd (q=2)

Page 33: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Tiempos ejecucion para aproximaciones matrices y variosrangos objetivo( Randomized Matrix Descompositions.Erichson)

Matrices densas de 5000 ×3000

0.1

0.5

2.0

10.0

5 20 50 100 200

Target rank, k

Me

dia

n e

lap

sed

tim

e (

s)

(a) Runtime.

0

20

40

60

5 20 50 100 200

Target −rank, k

Sp

ee

du

psvdpropackRSpectrairlbarsvd (q=1)rsvd (q=2)

(b) Speedups.

1e−12

1e−08

1e−04

1e+00

5 20 50 100 200

target−rank, k

Re

lati

ve e

rro

r

(c) Relative errors.

Page 34: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Tiempos ejecucion para aproximaciones matrices y variosrangos objetivo( Randomized Matrix Descompositions.Erichson

Matrices densas de 5000 ×3000

0.1

0.5

2.0

10.0

40.0

5 20 50 100 200

Target rank, k

Me

dia

n e

lap

sed

tim

e (

s)

(a) Runtime.

0

25

50

75

5 20 50 100 200

Target −rank, k

Sp

ee

du

psvdpropackRSpectrairlbarsvd (q=1)rsvd (q=2)

(b) Speedups.

1e−12

1e−08

1e−04

1e+00

5 20 50 100 200

target−rank, k

Re

lati

ve e

rro

r

(c) Relative errors.

Page 35: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Tiempos ejecucion para aproximaciones matrices y variosrangos objetivo( Randomized Matrix Descompositions.Erichson

Matrices densas de 10000 x 5000

0.5

2.0

10.0

40.0

5 20 50 100 200

Target rank, k

Me

dia

n e

lap

sed

tim

e (

s)

(a) Runtime.

0

50

100

5 20 50 100 200

Target −rank, k

Sp

ee

du

psvdpropackRSpectrairlbarsvd (q=1)rsvd (q=2)

(b) Speedups.

1e−12

1e−08

1e−04

1e+00

5 20 50 100 200

target−rank, k

Re

lati

ve e

rro

r

(c) Relative errors.

Page 36: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Aplicacion en R

Desempeno computacional

Tiempos ejecucion para aproximaciones matrices y variosrangos objetivo( Randomized Matrix Descompositions.Erichson

Matrices dispersas de 10000 x 5000

0.5

2.0

10.0

40.0

5 20 50 100 200

Target rank, k

Me

dia

n e

lap

sed

tim

e (

s)

(a) Runtime.

0

50

100

5 20 50 100 200

Target −rank, k

Sp

ee

du

psvdpropackRSpectrairlbarsvd (q=1)rsvd (q=2)

(b) Speedups.

0.96

0.98

1.00

5 20 50 100 200

target−rank, k

Re

lati

ve e

rro

r

(c) Relative errors.

Page 37: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Comentarios finales

Comentarios finales

1

Las mayores aceleraciones computacionales se alcanzan si el rangoobjetivo esta entre 3 y 6 veces menor que n.

2

Las rutinas basadas en estrategias de algoritmos matricialesaleatorizados se aplican tambien otras descomposicionesmatriciales como la interpolativa y la descomposicion CUR

Page 38: Algoritmos aleatorizados en aproximaciones de bajo rango ...cemejia/doc/nla/... · Algoritmos aleatorizados en aproximaciones de bajo rango Algoritmo aleatorio mejorado Esquema iteraciones

Algoritmos aleatorizados en aproximaciones de bajo rango

Referencias bibliograficas

Referencias bibliograficas

M. GU , SUBSPACE ITERATION RANDOMIZATION ANDSINGULAR VALUE PROBLEMS, 2014

N. Benjamin Erichson, Sergey Voronin,StevenL.Brunton y J. Nathan Kutz RANDOMIZED MATRIXDECOMPOSITIONS USING R, April 2018

N. Benjamin Erichson R Package RSVD,2017