Tecnología

Los investigadores presentan un algoritmo basado en el aprendizaje automático para aproximar eficientemente las multiplicaciones de matrices

Uno de los procesos más importantes y exigentes desde el punto de vista computacional en el aprendizaje automático es la multiplicación de matrices. Como resultado, se ha investigado mucho sobre los multiplicadores de matrices que pueden ser muy aproximados. Los investigadores intentan desarrollar un sistema basado en el aprendizaje que funcione mucho mejor que los enfoques actuales de este estudio. Funciona 100 veces más rápido que los productos matriciales reales y diez veces más rápido que los algoritmos aproximados más populares, según experimentos que utilizan cientos de matrices de varios campos. El enfoque también tiene la intrigante virtud de requerir cero multiplicación-suma cuando una matriz se conoce de antemano, lo cual es un escenario típico.

Estos hallazgos apuntan a una base más prometedora para el aprendizaje automático que los productos matriciales cuantificados escalares, factorizados y dispersos que últimamente han sido objeto de estudios intensivos e inversión en hardware: una combinación de hash, promedio y barajado de bytes. La principal dificultad es minimizar el tiempo de cálculo necesario para aproximar procesos lineales con un cierto nivel de precisión. Cuando obtiene una matriz de datos A cuyas filas son muestras y desea aplicar un operador lineal B a esas muestras, esta situación ocurre naturalmente en el aprendizaje automático y la minería de datos. B puede ser, entre otras cosas, un clasificador lineal, un regresor lineal o una matriz de incrustación.

Como ejemplo práctico, acepte el trabajo de aproximar un clasificador softmax entrenado para predecir etiquetas de imágenes utilizando incrustaciones obtenidas de una red neuronal. Aquí, las columnas de B son los vectores de peso para cada clase, mientras que las filas de A son los zócalos de cada imagen. Calculando el producto AB y obteniendo el argmax dentro de cada línea de resultado, se realiza la clasificación. En los conjuntos de datos CIFAR-10 y CIFAR-100, nuestra técnica superó a sus principales competidores. Los resultados se muestran en la siguiente figura.

Fuente: https://arxiv.org/pdf/2106.10860v1.pdf

En su lugar, MADDNESS1 aplica una función de preprocesamiento no lineal y simplifica el problema de las búsquedas en tablas. Además, cuando B se conoce de antemano, como cuando se aplica un modelo lineal entrenado a datos nuevos, MADDNESS no requiere ninguna operación de multiplicación y suma. El enfoque está más estrechamente relacionado con los métodos de búsqueda de similitud de vectores. En lugar de utilizar una costosa función de cuantificación con múltiples sumas de multiplicación, se presentó una familia de funciones de cuantificación sin sumas de multiplicación.

Las contribuciones del artículo se pueden resumir de la siguiente manera:

  1. Una familia rápida de algoritmos de cuantificación de vectores de aprendizaje capaz de codificar más de 100 GB de datos por segundo en un único subproceso de CPU.
  2. Una técnica de suma de enteros de bajo ancho de banda que evita el upcasting, la saturación y el desbordamiento.
  3. Un método para la multiplicación aproximada de matrices basado en estas funciones. Los experimentos en cientos de matrices diferentes muestran que nuestro enfoque supera sustancialmente las opciones existentes. También incluye garantías de calidad teóricas.

La conclusión empírica crítica es que el enfoque MADDNESS propuesto ofrece aceleraciones de orden de magnitud sobre los métodos AMM existentes y aceleraciones de hasta dos órdenes de magnitud sobre la línea de base comprimida. Hasta tres órdenes de magnitud también pueden comprimir matrices. Estos resultados se calculan en una CPU y solo están disponibles cuando hay un conjunto de entrenamiento para una matriz. Los investigadores afirman un mayor rendimiento solo cuando una matriz es más grande que la otra y ambas matrices son altas. Este es el régimen en el que la función de codificación de alta velocidad (pero menos precisa) es ventajosa.

Cuando se conoce de antemano la matriz más grande, el enfoque pierde utilidad; esta suposición es frecuente en la búsqueda de similitud y elimina la necesidad de una función de codificación rápida. La suma aproximada de enteros y las búsquedas en tablas fusionadas probablemente se puedan usar incluso sin ninguna de estas suposiciones, pero establecer esto es una tarea para el futuro. El código fuente de MADDNESS está disponible gratuitamente en GitHub.

This Article is written as a summary article by Marktechpost Staff based on the paper 'Multiplying Matrices Without Multiplying'. All Credit For This Research Goes To Researchers on This Project. Checkout the paper, github.

Please Don't Forget To Join Our ML Subreddit

Federico Pareja

"Escritora típica. Practicante de comida malvada. Genio zombi. Introvertido. Lector. Erudito de Internet. Entusiasta del café incondicional".

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba