Glosario IA
El diccionario completo de la Inteligencia Artificial
Factorización de Matrices Distribuida
Conjunto de técnicas algorítmicas destinadas a descomponer una matriz de gran tamaño en productos de matrices más pequeñas, distribuyendo los cálculos y los datos en un clúster de máquinas para superar las limitaciones de memoria y potencia de cálculo de un solo nodo.
Mínimos Cuadrados Alternantes (ALS) Distribuido
Algoritmo de factorización de matrices paralelizado que resuelve el problema de mínimos cuadrados alternativamente para uno de los factores de matriz mientras mantiene el otro fijo, adaptándose naturalmente a entornos distribuidos como Spark MLlib gracias a la independencia de los cálculos en cada fila o columna.
Descenso de Gradiente Estocástico (SGD) Distribuido
Variante paralela del descenso de gradiente estocástico donde la actualización de los parámetros de la factorización se realiza de manera asíncrona o sincronizada en varias particiones de datos, requiriendo mecanismos de gestión de coherencia para converger correctamente en un contexto distribuido.
MapReduce para la Factorización
Paradigma de programación que descompone los algoritmos de factorización de matrices en dos etapas principales: una etapa 'Map' para los cálculos locales en los fragmentos de datos y una etapa 'Reduce' para agregar los resultados parciales y actualizar los factores de la matriz, utilizado especialmente en implementaciones sobre Hadoop.
Spark MLlib ALS
Implementación optimizada y distribuida del algoritmo Alternating Least Squares dentro de la biblioteca Machine Learning de Spark, diseñada para la factorización de matrices a gran escala aprovechando el modelo de programación RDD o DataFrame para una máxima eficiencia con datos iterativos.
Particionamiento de Matriz (Matrix Partitioning)
Estrategia de división de una matriz masiva en subbloques (por filas, por columnas o por bloques cuadrados) distribuidos en los nodos de un clúster, una elección crucial que impacta directamente la carga de trabajo, la comunicación entre nodos y el rendimiento global de los algoritmos de factorización.
Modelo de Consistencia (Consistency Model)
Reglas que definen la visibilidad de las actualizaciones de los factores de matriz a través de los nodos del clúster, oscilando entre una alta consistencia (modelo BSP - Bulk Synchronous Parallel) que garantiza la convergencia a costa de latencia, y una baja consistencia (modelo asíncrono) que acelera las iteraciones pero puede comprometer la estabilidad.
Factorización de Matriz en Línea (Online Matrix Factorization)
Enfoque distribuido adaptado a flujos de datos continuos, donde el modelo de factorización se actualiza incrementalmente con la llegada de nuevas observaciones sin requerir un reentrenamiento completo del historial, frecuentemente implementado con variantes distribuidas de SGD.
Factorización Paramétrica Distribuida de Matrices
Método avanzado donde los factores de la matriz no se aprenden directamente sino que son generados por funciones paramétricas (ej: redes neuronales) compartidas y distribuidas, reduciendo así la cantidad de datos a comunicar entre los nodos y mejorando la capacidad de generalización.
Stragglers (Nodos Lentos)
Fenómeno en los sistemas distribuidos donde ciertas máquinas ejecutan sus tareas de cálculo mucho más lentamente que las otras, retrasando todo el proceso de factorización síncrona; técnicas como la especulación o algoritmos tolerantes a retardos están diseñadas para mitigar su impacto.
Factorización Distribuida de Matrices No Negativas (NMF)
Extensión distribuida de la factorización en matrices no negativas, donde las restricciones de no negatividad sobre los factores se imponen a través de reglas de actualización (multiplicativas o de proyección) adaptadas para una ejecución paralela, frecuentemente utilizada para el clustering de textos a gran escala.
Checkpointing en Algoritmos Iterativos
Técnica de respaldo periódico del estado de los factores de matriz en un almacenamiento confiable (ej: HDFS) durante las iteraciones de un algoritmo distribuido, permitiendo reanudar el cálculo desde un punto intermedio en caso de falla de un nodo y evitar reiniciar todo desde el principio.
Factorización Distribuida de Tensores
Generalización de la factorización de matrices a tensores (arreglos multidimensionales) en un contexto distribuido, utilizada para modelar datos con más de dos modos (ej: usuarios, ítems, tiempo) y requiriendo algoritmos paralelos específicos como PARAFAC o Tucker distribuido.
Función de Pérdida Distribuida
Cálculo del error de reconstrucción de la matriz factorizada, realizado de manera particionada donde cada nodo evalúa la pérdida en su subconjunto de datos antes de que una etapa de reducción global calcule la pérdida total para guiar las actualizaciones del modelo de manera centralizada o descentralizada.
Regularización Distribuida
Aplicación de penalizaciones (como la norma L2) sobre los factores de la matriz para prevenir el sobreajuste, donde el término de regularización se calcula localmente en cada nodo y se agrega durante la actualización global de parámetros, asegurando una regularización consistente a escala del cluster.
Spark GraphX para Factorización
Utilización de la API de procesamiento de grafos de Spark, GraphX, para modelar la matriz como un grafo bipartito (usuarios-ítems) y ejecutar algoritmos de factorización basados en la propagación de mensajes (message passing) entre los nodos del grafo, ofreciendo una alternativa a las implementaciones basadas en DataFrames.