SV-Learn: Predicción de Valores Singulares
SV-Learn: Predicción de Valores Singulares
I. INTRODUCCIÓN
La descomposición de valores singulares (SVD) y la
descomposición de valores propios son de gran importancia en
un amplio espectro de aplicaciones del mundo real, como la
visión por ordenador [1], el procesamiento de señales [2] y la
ciencia de datos [3], [4], [5]. Una característica clave de la
SVD es que revela el rango, lo que significa que identifica el
rango de una matriz dada, además de proporcionarnos un
medio para evaluar el llamado "rango bajo" de una matriz de
datos dada, que sería un rango típicamente mucho menor que
el rango completo de la matriz al que podemos aproximar la
matriz con una pérdida mínima de precisión en la
reconstrucción. El concepto de bajo rango es fundamental en
prácticamente todos los intentos de utilizar la SVD (u otras
factorizaciones de matrices) con fines de reducción de la
dimensionalidad, ya sea como paso previo al procesamiento
en un proceso analítico o como análisis propiamente dicho
(por ejemplo, mediante la identificación de conceptos latentes
en matrices término-documento [3]). Además, la SVD es
extremadamente útil para calcular la pseudoinversa con bajo
coste.
Como resultado, el perfil de valores singulares de una
matriz es un producto extremadamente importante del SVD,
ya que puede caracterizar un conjunto de datos matriciales
dado con respecto al número de patrones latentes que
contiene. Por lo tanto, en este trabajo proponemos un nuevo
para predecir la dimensionalidad latente de la factorización
de matrices no negativas mediante redes neuronales.
Hasta donde sabemos, aún no se ha estudiado el uso de
redes neuronales profundas para explorar todo el espectro de
valores singulares. Nuestras contribuciones incluyen:
• Propuesta de un nuevo marco basado en el aprendizaje
profundo para predecir los valores singulares de una
matriz.
• Evaluar la eficacia del método propuesto mediante
pruebas numéricas con resultados prometedores
visualizados y cuantificados.
II. FONDO
32 Σ
descomposición de valores singulares. Para obtener resultados
Aplanar
Σ 1,2,... 32
más precisos, es necesario entrenar nuestro modelo con
V
matrices de distintos rangos. Hay un par de maneras de
hacerlo, pero nuestro método consiste en utilizar conjuntos de
datos reales y "windowar"
× (crear matrices de cierto tamaño
moviendo una ventana de tamaño m n sobre los datos con
En la capa 1 L .1 L . 2 L .2 L . 3 L.3 Fuera
A D D Σpred
1,2,... 32
distintas dimensiones) los datos para que se ajusten a nuestro
ro ro
p p
ot ot
B. Método propuesto
Conjunto de datos: Optamos por utilizar el conjunto de
datos CIFAR-10 [15] para obtener
32 ×32 matrices cuadradas para obtener las predicciones
SVD más precisas a partir de datos reales. El conjunto de
datos también nos permite visualizar fácilmente la
precisión de nuestras predicciones. A continuación,
redujimos las dimensiones
× de cada imagen para crear una
matriz M 2D 32 32, que contiene los valores en escala de
en la Fig. 1. El propósito de hacer esto es que para
aplicaciones más amplias, los usuarios simplemente
necesitarán realizar las operaciones SVD una sola vez para
unas pocas muestras de sus conjuntos de datos. Pueden
utilizar el modelo entrenado utilizando la SVD de un par de
muestras para la totalidad de sus datos, eliminando la
necesidad de realizar operaciones repetitivas en matrices
similares.
2000 10000
Comparación de valores singulares: Nuestro primer método
1000 5000
para valorar la eficacia del modelo propuesto consiste en
comparar directamente los valores singulares reales y los 0
20 40 60 80 100
0
0 20 40 60
predichos. En la prueba MAE MAE
alimentamos las matrices aplanadas a la red neuronal ((a)) MAE para CIFAR-10 [15] ((b)) MAE para Spambase [16]
entrenada, recibiendo una matriz de 32 valores singulares
6000
predichos para cada matriz de prueba. Para una comparación 6000
2000 2000
2000
de entrenamiento. 2000
20 20 20 20
n
Sigma real
0 20 0 20 0 20 0 20
Índice de valor
singular
20
10 10
20 10
Valor
0 0 0 0
Sigma previsto
0 20 0 20 0 20 0 20
Predicció
MAE: 0,3786 0.3512 0.1472 0.3956
n
Fig. 4: Comparación directa d e los valores singulares predichos y Verdader para la reconstrucción de matrices. Existen ligeras diferencias
o
reales del conjunto de datos Spambase; véanse los valores singulares como la oscuridad o el contraste, aunque los detalles y la
logarítmicos y los valores singulares en la primera y segunda filas, imagen en general se mantienen al utilizar nuestra red
respectivamente. Podemos ver que, en general, nuestro modelo neuronal. Al comparar el valor singular aleatorio y las
predice los valores singulares con precisión para los primeros valores
significativos, pero tiende a predecir 0 para más números que el SVD reconstrucciones SVD-LIGHT, se obtienen peores resultados y
real. detalles ininteligibles.
En general, el error es mínimo cuando se utiliza una red
neuronal para predecir valores singulares. Especialmente con
Desde el punto de vista gráfico, representamos: 1) las
imágenes reconstruidas utilizando SVD en los 4 paneles
superiores de la Figura 5, donde el número de valores
singulares se establece como k = 1, 2, 5 y 32; y 2) las
imágenes reconstruidas utilizando los mismos vectores
singulares izquierdo y derecho que en 1), así como los k
valores singulares superiores obtenidos a partir de nuestro
método propuesto, que se muestran en los 4 paneles inferiores
de la Figura 5. A partir de los resultados de la Figura 5, vemos
que nuestros valores singulares predichos son precisos incluso
en la reconstrucción de imágenes de bajo rango. A partir de
los resultados de la Figura 5, podemos ver que nuestros
valores singulares predichos son precisos incluso en la
reconstrucción de imágenes de bajo rango. Esto viene a
demostrar una aplicación factible como el SVD- LIGHT donde
podemos utilizar una cantidad mucho menor de datos con las
aproximaciones de la red neuronal para obtener resultados
similares al SVD real. Vale la pena mencionar que para la
imagen elegida aleatoriamente en la Figura 5, el rango
estimado es
6, ya que el error de reconstrucción de la imagen empieza a
estabilizarse en torno a 6 filas y columnas de la matriz
× original
de 32 32, lo que coincide con nuestra observación de que la
reconstrucción de la imagen a k = 5 es muy parecida a la que
utiliza el rango completo, es decir, k = 32. La combinación del
método SVD-LIGHT y nuestro método de estimación de valores
singulares propuesto actúan como un caso de estudio para una
posible aplicación de la reconstrucción de datos en un entorno
más rápido.
Comparación visual: En la figura 6, comparamos las
imágenes reconstruidas (tres ejemplos de imágenes) utilizando
los valores singulares reales, aleatorios y de predicción de red
de nuestro método, así como los vectores singulares
verdaderos; véanse los resultados en las tres primeras
columnas de la figura 6, y el método SVD-LIGHT 1; véanse los
resultados en la última columna de la figura 6. También
utilizamos una comparación con una imagen-reconstrucción
utilizando valores singulares ran- dom para determinar que
nuestro sigma predicho no está simplemente emitiendo
números aleatorios y dando datos característicos. Nuestros
resultados muestran una drástica similitud al utilizar las
predicciones de nuestro modelo y los valores singulares reales
Fig. 5: Reconstrucción de una imagen CIFAR-10 [15] utilizando
varios números de valores singulares ( e s d e c i r , rangos donde k
= 1, 2, 5 y 32) a partir de los valores singulares reales y predichos
(es decir, Sigma en la figura), y los vectores singulares verdaderos.
Los valores singulares de la red neuronal sirven como alternativa
precisa, especialmente a partir de rangos bajos de 5.
1
3
B. Debate
Nuestros experimentos cubren la predicción de los valores
singulares de las matrices pero no cubren la descomposición
completa para los vectores singulares. En el futuro, este
mismo proceso puede aplicarse para encontrar estas matrices
para hacer una red neuronal que sea completamente
independiente del SVD después del entrenamiento. Nuestros
conjuntos de datos tampoco eran muy grandes como para
poder aplicar nuestros modelos a todos los tipos de datos. Al
entrenar, especializamos nuestra red para predecir
correctamente los valores singulares
de matrices con propiedades similares. Esto puede mejorarse valores singulares que estaban muy cerca de lo que el SVD
proporcionando muchos más datos para entrenar, de modo que podría calcular. Al comparar nuestros valores singulares con
la aplicación de ese modelo sea más amplia. El artículo datos aleatorios o con nuestro SVD-LIGHT1, la red neuronal
también se centra más en la viabilidad de utilizar una red superó drásticamente a estos métodos, lo que demuestra la
neuronal para encontrar valores singulares y no exactamente viabilidad de utilizar métodos entrenados para calcular valores
en el tiempo que lleva el entrenamiento y las predicciones singulares.
posteriores. Sin embargo, el trabajo futuro puede centrarse en
reducir el tiempo y el uso de recursos para aplicaciones de
grandes conjuntos de datos de la SVD mediante la creación de
modelos más optimizados.
V. TRABAJOS RELACIONADOS
En cuanto a los métodos SVD más rápidos, [18] propone un
método que utiliza una mezcla de Monte Carlo (muestreo
aleatorio repetido) y muestreo empírico para utilizar un
subconjunto de una matriz a gran escala para aproximar la
SVD dentro de un límite de error. Similar a nuestro SVD-LIGHT
su método implica tomar partes de una matriz pero disminuye
aún más el error ajustando la varianza de los datos
estratificados para alcanzar la precisión objetivo, encontrando
un método más eficiente de muestreo para el SVD. Esto da
una idea de cómo nuestra red neuronal puede reducir
prácticamente el tiempo de ejecución, pero también producir
resultados precisos mediante la disminución de la cantidad de
datos utilizados para la descomposición de los vectores
singulares izquierdo y derecho, mientras que también utiliza el
modelo para dar valores singulares precisos basados en toda la
matriz original.
[19] y [20] proponen un método similar en el que utilizan
un subconjunto de las columnas de las matrices, pero l o
repiten utilizando esquemas de muestreo fijos y adaptativos
para disminuir los límites er- rores al generar aproximaciones
de matrices de bajo rango. Añaden a este trabajo la aplicación
de la SVD en una submatriz de una matriz grande utilizando
un algoritmo aleatorio de aproximación de bajo rango para
mantener efectivamente la precisión de una SVD grande con
la complejidad de tiempo de una SVD pequeña. Al igual que
SVD-LIGHT y [18], una posible adición que nuestro trabajo
puede hacer a esto es utilizar una red neuronal para calcular
los valores singulares precisos basados en toda la matriz
mientras se utiliza su método para realizar el resto de la SVD.
Si se puede utilizar un modelo para predecir toda la
descomposición SVD, entonces la complejidad de utilizar
SVD s e puede eliminar por completo con el [19].
VI. CONCLUSIÓN Y TRABAJO FUTURO
Aunque todavía queda mucho trabajo por hacer en este
campo, este trabajo muestra la viabilidad de utilizar una red
neuronal supervisada para predecir con precisión los valores
singulares de una matriz dada y la futura aplicación de una
alternativa más rápida y ligera a la descomposición del valor
singular. A lo largo de nuestro proceso, exploramos la
aplicación de modelos de regresión neuronal en conjuntos de
datos visuales como el CIFAR-10 [15] y numéricos como el
Spambase de la UCI [16].
Para la evaluación, utilizamos una combinación de
comparación visual con los datos de CIFAR-10 [15] y
comparaciones directas del error medio absoluto y el error
medio cuadrático normalizado entre nuestros valores
singulares predichos y los de la SVD. Como resultado de estas
pruebas, encontramos resultados significativos que nos dieron
en lugar del típico algoritmo SVD, con errores de entre el 1 y
el 5% y menos de 100.000 instancias para entrenar.
Hasta ahora, hemos presentado un marco de prueba de
concepto, demostrando la viabilidad y plausibilidad de
nuestro objetivo original. En el futuro, prevemos que estos
hallazgos abrirán paso a una alternativa mucho más rápida y
ligera a la SVD para aplicaciones en grandes datos en las que
la complejidad temporal de la SVD se vuelve demasiado
significativa. Aplazamos esta exploración para futuros
trabajos, en los que los principales retos interesantes
incluirán formas de representar mejor los datos de entrada y
el diseño de la arquitectura más adecuada que pueda
aprovechar la estructura del problema para aprender de forma
más eficiente.
VII. AGRADECIMIENTOS
La investigación ha sido financiada por la National
Science Foundation con la beca CAREER no. IIS 2046086 y
CREST Center for Multidisciplinary Research Excellence in
Cyber-Physical Infrastructure Systems (MECIS) grant no.
2112650, y UCR Regents Faculty Fellowship. Las opiniones,
conclusiones y con- clusiones o recomendaciones expresadas
en este material son las del autor o autores y no reflejan
necesariamente los puntos de vista de las partes
financiadoras.
REFERENCIAS
[1] M. Turk y A. Pentland, "Eigenfaces for recognition", Journal of
cognitive neuroscience, vol. 3, nº 1, pp. 71-86, 1991.
[2] F. Gao y A. B. Gershman, "A generalized esprit approach to direction-
of-arrival estimation," IEEE signal processing letters, vol. 12, no. 3,
pp. 254-257, 2005.
[3] S. Deerwester, S. T. Dumais, G. W. Furnas, T. K. Landauer, y
R. Harshman, "Indexing by latent semantic analysis", Journal of the
American Society for Information Science, vol. 41, nº 6, pp. 391-407,
sep. 1990.
[4] B. A. Prakash, A. Sridharan, M. Seshadri, S. Machiraju y C. Falout-
sos, "Eigenspokes: Surprising patterns and scalable community
chipping in large graphs", en Pacific-Asia Conference on Knowledge
Discovery and Data Mining. Springer, 2010, pp. 435-448.
[5] U. Von Luxburg, "A tutorial on spectral clustering", Statistics and
computing, vol. 17, no. 4, pp. 395-416, 2007.
[6] B. T. Nebgen, R. Vangara, M. A. Hombrados-Herrera, S. Kuksova, y
B. S. Alexandrov, "A neural network for determination of latent
dimensionality in non-negative matrix factorization," Machine
Learning: Science and Technology, vol. 2, no. 2, p. 025012, 2021.
[7] H. Prasantha, H. Shashidhara y K. Balasubramanya Murthy, "Image
compression using svd", en International Conference on
Computational Intelligence and Multimedia Applications (ICCIMA
2007), vol. 3, 2007,
pp. 143-145.
[8] S. K. Singh y S. Kumar, "A framework to design novel svd based color
image compression", en 2009 Third UKSim European Symposium on
Computer Modeling and Simulation, 2009, pp. 235-240.
[9] Y. Koren, R. Bell y C. Volinsky, "Matrix factorization techniques for
recommender systems", Computer, vol. 42, nº 8, pp. 30-37, 2009.
[10] M. W. Berry, "Large-scale sparse singular value computations", The
International Journal of Supercomputing Applications, vol. 6, nº 1, pp.
13-49, 1992.
[11] D. Yang, Z. Ma y A. Buja, "A sparse svd method for high-dimensional
data", 2011. [En línea]. Disponible: [Link]
[12] I. Hegedu˝s, M. Jelasity, L. Kocsis y A. A. Benczu'r, "Fully distributed
robust singular value decomposition", en 14-th IEEE International
Con- ference on Peer-to-Peer Computing, 2014, pp. 1-9.
[13] M. A. Iwen y B. Ong, "A distributed and incremental svd algorithm for
agglomerative data analysis on large networks," SIAM Journal on
Matrix Analysis and Applications, vol. 37, no. 4, pp. 1699-1718, 2016.
[14] H. Mehta, S. Rendle, W. Krichene y L. Zhang, "Alx: factorización de
matrices a gran escala en tpus", 2021. [En línea]. Disponible:
[Link]
[15] A. Krizhevsky, G. Hinton et al., "Learning multiple layers of features [19] M. Li, W. Bi, J. T. Kwok, y B.-L. Lu, "Large-scale nystro¨m kernel
from tiny images", 2009. matrix approximation using randomized svd," IEEE Transactions on
[16] M. Hopkins, E. Reeber, G. Forman y J. Suermondt, "Spambase", UCI Neural Networks and Learning Systems, vol. 26, no. 1, pp. 152-164,
Machine Learning Repository, 1999. 2015.
[17] D. Dua y C. Graff, "Repositorio de aprendizaje automático de la UCI", [20] S. Kumar, M. Mohri y A. Talwalkar, "Sampling techniques for the
2017. [En línea]. Disponible: [Link] nystrom method", en Artificial intelligence and statistics. PMLR, 2009,
[18] M. Holmes, A. Gray y C. Isbell, "Fast svd for large-scale matrices", 01 pp. 304-311.
2007.