Desdoblamiento (unfolding) de curvas mediante LMI/SDP: ejemplo Matlab

Antonio Sala, UPV

Dificultad: ***** ,       Relevancia: PIC,      Duración: 14:55

Materiales:    [ Cód.: ManifUnf.zip ] [ PDF ]

Resumen:

En este vídeo se presenta un ejemplo Matlab de “desdoblamiento” o “estiramiento” de curvas (o variedades –manifolds– en un espacio de dimensionalidad elevada) para intentar descubrir estructuras no-lineales latentes en los datos. En el ejemplo, se dibuja la palabra “HELLO” en un plano, se dobla sobre un cilindro y se rota en un espacio cuatridimensional.

Primero, el PCA lineal es evaluado. Si el cilindro es de radio “elevado” (poca curvatura), entonces la proyección de mayor varianza (dos componentes principales de mayor valor propio asociado) encuentra dichas letras. Cuando la curvatura es mayor (radio más pequen~o del cilindro) entonces el PCA ya indica que considerar la estructura como sólo bidimensional no parece adecuado (hay un tercer valor singular parecido al segundo que no deberíamos descartar); si, pese a todo, nos decantamos por reducir a 2D entonces se obtiene una versión muy deformada de las letras.

Como alternativa, se usa la metodología de desdoblamiento “isométrico” de variedades (manifolds) basada en desigualdades matriciales lineales (LMI), también denominadas en otra literatura como “semidefinite programming” (SDP). Primero se genera un grafo con k vecinos más cercanos y luego se plantea un problema de optimización de maximizar la suma de distancias entre los elementos del grafo que no estén directamente relacionados (equivalente “mecánico”: estructura articulada de barras con cargas eléctricas de modo que todo se “repele”). El resultado desdobla el cilindro y obtiene una copia casi exacta de las letras originales sin deformar.

Colección completa [VER]:

© 2024, A. Sala. Se reservan todos los derechos en materiales cuyo autor pertenezca a UPV.
Para condiciones de uso de material de terceros referenciado, consulte a sus autores.