σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyHojas de rutaRutas
Ctrl K
AO
+1,2 k estudiantes
Iniciar sesiónUnirse ↗
Hojas de rutaRutas
AO
+1,2 k estudiantes
Iniciar sesión
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyHojas de rutaRutas
Ctrl K
AO
+1,2 k estudiantes
Iniciar sesiónUnirse ↗
Hojas de rutaRutas
AO
+1,2 k estudiantes
Iniciar sesión
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Ruta de Matrix Decompositions›Módulo 2 · SVD y rango bajo›Tema 2.2·~50 minIntermedio

Aproximación de rango bajo

Posición en la rutaMódulo 2 de 5 · Tema 2 de 2
2.2 Aproximación de rango bajo
—Puntuación del lab— / 100XP total—Racha—

Quedarse con la parte de la matriz que importa

La SVD escribe una matriz como suma de capas de rango uno, A=∑iσiuiviTA=\sum_i\sigma_i\mathbf u_i\mathbf v_i^{T}A=∑i​σi​ui​viT​, de la mayor a la menor. Conservar solo las kkk primeras capas da Ak=UkΣkVkTA_k=U_k\Sigma_kV_k^{T}Ak​=Uk​Σk​VkT​, una matriz de rango kkk. El teorema de Eckart-Young dice que este truncamiento es la mejor aproximación de rango kkk que existe, ya se mida el error con la norma de Frobenius o con la norma espectral. Ninguna elección ingeniosa de kkk direcciones supera a las kkk primeras direcciones singulares.

Ak=∑i=1kσiuiviT,∥A−Ak∥F=∑i>kσi2,∥A−Ak∥2=σk+1A_k=\sum_{i=1}^{k}\sigma_i\mathbf u_i\mathbf v_i^{T},\qquad \lVert A-A_k\rVert_F=\sqrt{\sum_{i>k}\sigma_i^{2}},\qquad \lVert A-A_k\rVert_2=\sigma_{k+1}Ak​=i=1∑k​σi​ui​viT​,∥A−Ak​∥F​=i>k∑​σi2​​,∥A−Ak​∥2​=σk+1​(1)

El error son exactamente los valores singulares descartados, así que la parte del tamaño al cuadrado que se conserva es ∑i≤kσi2/∑iσi2\sum_{i\le k}\sigma_i^2\big/\sum_i\sigma_i^2∑i≤k​σi2​/∑i​σi2​, a menudo llamada varianza explicada cuando AAA son datos centrados. Una aproximación de rango kkk de una matriz m×nm\times nm×n solo necesita k(m+n+1)k(m+n+1)k(m+n+1) números en lugar de mnmnmn, por lo que el rango bajo también es compresión. En finanzas, las capas con σi\sigma_iσi​ pequeño son sobre todo ruido muestral, así que truncarlas es depurar, y kkk se elige por un umbral sobre la parte conservada o por un salto en los valores singulares.

Valores singulares 10, 6, 3, 1Supongamos que una matriz tiene valores singulares 10, 6, 3, 1. Sus cuadrados son 100, 36, 9, 1, que suman 146. La mejor aproximación de rango 2 conserva 100+36=136100+36=136100+36=136 de 146, es decir el 93,2 %93{,}2\ \%93,2 %, y su error de Frobenius es 9+1=10≈3,16\sqrt{9+1}=\sqrt{10}\approx3{,}169+1​=10​≈3,16; su error espectral es σ3=3\sigma_3=3σ3​=3. La mejor aproximación de rango 1 tiene error espectral σ2=6\sigma_2=6σ2​=6. Para una matriz de 1000×2501000\times2501000×250, el rango 5 necesita 5×(1000+250+1)=62555\times(1000+250+1)=62555×(1000+250+1)=6255 números en lugar de 250 000.
  • Eckart-Young: truncar la SVD a kkk términos es la mejor aproximación de rango kkk en ambas normas.
  • Error: Frobenius ∑i>kσi2\sqrt{\sum_{i>k}\sigma_i^2}∑i>k​σi2​​, espectral σk+1\sigma_{k+1}σk+1​.
  • Almacenamiento: k(m+n+1)k(m+n+1)k(m+n+1) números en lugar de mnmnmn.
Elegir k es un juicioNinguna regla está libre de supuestos. Una parte fija como el 90 %90\ \%90 % es simple pero arbitraria, un salto visible en los valores singulares es natural cuando existe, y en el marco de la covarianza más adelante en esta habilidad, el borde de Marchenko-Pastur da un umbral fundamentado entre señal y ruido. Use lo que use, compruebe la elección fuera de muestra: el rango que mejor explica los datos de entrenamiento no es el que mejor predice los nuevos.

Lab: qué se califica

  • El error de Frobenius15 pts
  • La parte conservada15 pts
  • Una aproximación de rango uno15 pts
  • Almacenamiento de una matriz de rango bajo10 pts
  • El teorema de Eckart-Young15 pts
  • Comprimir una matriz15 pts
  • Por qué el truncamiento depura15 pts
0/ 7 respondidos
Ejercicios
1Respuesta numérica15 ptsSin responder

Una matriz tiene valores singulares 10, 6, 3 y 1. ¿Cuál es el error de Frobenius de su mejor aproximación de rango 2? Dé dos decimales.

error=error =error=aceptado: ± 0.02
2Respuesta numérica15 ptsSin responder

Para la misma matriz, ¿qué porcentaje de la norma de Frobenius al cuadrado conserva la aproximación de rango 2? Dé un decimal.

kept=kept =kept=aceptado: ± 0.1
3Matriz · vector15 ptsSin responder

La matriz simétrica A=(2112)A=\begin{pmatrix}2&1\\1&2\end{pmatrix}A=(21​12​) tiene valores singulares 3 y 1, con dirección dominante u=v=(1,1)/2\mathbf u=\mathbf v=(1,1)/\sqrt2u=v=(1,1)/2​. Calcule su mejor aproximación de rango uno A1=3 uvTA_1=3\,\mathbf u\mathbf v^{T}A1​=3uvT.

A1=A_1 =A1​=
4Respuesta numérica10 ptsSin responder

Una matriz de 1000×2501000\times2501000×250 se aproxima con rango 5 mediante UkU_kUk​, Σk\Sigma_kΣk​ y VkV_kVk​. ¿Cuántos números hay que guardar, con k(m+n+1)k(m+n+1)k(m+n+1)?

numbers=numbers =numbers=aceptado: ± 0.5
5Elección15 ptsSin responder

¿Qué enuncia el teorema de Eckart-Young?

6Ordenar los pasos15 ptsSin responder

Ponga en orden los pasos de una aproximación de rango bajo.

Arrastra para reordenar, o enfoca un elemento, pulsa Espacio para levantarlo, las flechas para moverlo y Espacio para soltarlo.

  1. 1Medir el error o la parte de varianza conservada
  2. 2Elegir kkk según los valores singulares
  3. 3Calcular la SVD de la matriz
  4. 4Reconstruir Ak=UkΣkVkTA_k=U_k\Sigma_kV_k^{T}Ak​=Uk​Σk​VkT​ con los kkk primeros términos
7Explicar con palabras15 ptsSin responder

En una o dos frases, diga por qué descartar los valores singulares pequeños de una matriz de rendimientos puede eliminar ruido.

Modo matemáticasEntrada por teclado o LaTeXEjercicio 1 de 7 · Ctrl ⏎ para comprobar

Inicia sesión para ejecutar tu código.

Todas las clases se pueden leer gratis. Crea una cuenta o inicia sesión para ejecutar código, lanzar las pruebas y enviar este lab.

  • IDE en el navegador con terminal bash — sin instalar nada
  • Corrección instantánea, XP y tu lugar en la ruta
Crear una cuentaIniciar sesión
O
Continuar con GitHub