Factorization Machines/es

    From Marovi AI
    This page is a translated version of the page Factorization Machines and the translation is 100% complete.
    Other languages:
    Article
    Topic area Machine Learning
    Difficulty Introductory

    Las máquinas de factorización (FMs, por sus siglas en inglés) son una familia de modelos de aprendizaje supervisado que combinan la expresividad de la regresión polinómica con la eficiencia paramétrica de la factorización matricial de bajo rango. Resultan particularmente eficaces con datos dispersos y de alta dimensión, como las características categóricas que aparecen en la predicción de tasa de clics, los sistemas de recomendación y los problemas de ranking.

    Visión general

    La regresión polinómica estándar modela todas las interacciones por pares de características con un parámetro independiente para cada par, lo cual resulta impracticable cuando la entrada es dispersa: la mayoría de los pares se observan con demasiada poca frecuencia para estimarlos de forma fiable. Las máquinas de factorización evitan este problema representando cada característica con un vector latente de baja dimensión y modelando cada interacción como el producto escalar de los vectores correspondientes. Esto reduce drásticamente el número de parámetros, permite inferir las fuerzas de interacción incluso para pares nunca co-observados durante el entrenamiento y produce un modelo cuyo tiempo de entrenamiento es lineal en el número de entradas no nulas de la entrada.

    Las FMs fueron introducidas por Steffen Rendle en 2010 como un marco unificado que engloba varios modelos especializados de filtrado colaborativo (factorización matricial, SVD++, cadenas de Markov personalizadas factorizadas) y se generaliza de forma natural a vectores de características arbitrarios. A día de hoy siguen siendo una base sólida para datos tabulares dispersos y constituyen el núcleo algorítmico de muchos sistemas de ranking en producción.

    Conceptos clave

    • Representación por factores latentes — cada característica $ j $ se asocia con un vector $ \mathbf{v}_j \in \mathbb{R}^k $ de factores latentes; las interacciones por pares reutilizan estos vectores compartidos.
    • Compatibilidad con la dispersión — los gradientes son distintos de cero solo para las características activas (no nulas), por lo que el coste de optimización escala con la densidad de la entrada y no con la dimensionalidad.
    • Generalidad — un único vector de características puede codificar identificadores de usuario, identificadores de ítem, señales contextuales e información auxiliar, lo que permite a las FMs sustituir a varios modelos de recomendación diseñados a mano.
    • Orden de las interacciones — las FMs de segundo orden modelan interacciones por pares; las FMs de orden superior extienden la idea a tripletes y más allá, aunque el segundo orden predomina en la práctica.
    • Predicción en tiempo lineal — una reorganización en forma cerrada reduce la suma aparente de $ O(d^2 k) $ sobre los pares a $ O(d k) $, haciendo que la inferencia sea viable a escala web.

    Historia

    Las máquinas de factorización fueron propuestas por Steffen Rendle en ICDM 2010 y desarrolladas en el artículo de 2012 en ACM TIST "Factorization Machines with libFM", que introdujo la influyente implementación de referencia libFM, compatible con descenso de gradiente estocástico, mínimos cuadrados alternados y entrenamiento mediante Markov chain Monte Carlo. En 2011, Rendle y sus colaboradores mostraron que las FMs engloban la factorización tensorial y las variantes de recomendación con conciencia temporal.

    En 2016, Juan, Zhuang, Chin y Lin introdujeron las máquinas de factorización con conciencia de campo (FFMs) —un refinamiento en el que una característica tiene un vector latente distinto para cada campo con el que interactúa— y utilizaron las FFMs para ganar las competiciones de Kaggle de predicción de CTR de Criteo y Avazu, consolidando la reputación de la familia en la publicidad industrial. Ese mismo año, Guo et al. fusionaron las FMs con redes neuronales profundas en DeepFM, dando inicio a una oleada de híbridos «deep + FM» (xDeepFM, AutoInt, DCN-V2) que dominaron los benchmarks de CTR en la segunda mitad de la década de 2010. Las FMs y sus descendientes siguen ampliamente desplegadas en empresas como Criteo, Yahoo, Alibaba y Meituan.

    Enfoques principales

    El modelo de segundo orden

    Para un vector de entrada $ \mathbf{x} \in \mathbb{R}^d $, una máquina de factorización de segundo orden predice:

    $ \hat{y}(\mathbf{x}) = w_0 + \sum_{j=1}^{d} w_j x_j + \sum_{j=1}^{d} \sum_{j'=j+1}^{d} \langle \mathbf{v}_j, \mathbf{v}_{j'} \rangle \, x_j x_{j'} $

    donde $ w_0 \in \mathbb{R} $ es un sesgo global, $ w_j \in \mathbb{R} $ son los pesos de primer orden y $ \mathbf{v}_j \in \mathbb{R}^k $ son los factores latentes. El hiperparámetro $ k $ controla la capacidad; valores entre 8 y 64 son típicos.

    Reformulación en tiempo lineal

    La suma por pares puede reescribirse como:

    $ \sum_{j<j'} \langle \mathbf{v}_j, \mathbf{v}_{j'} \rangle x_j x_{j'} = \tfrac{1}{2} \sum_{f=1}^{k} \left[ \left( \sum_{j=1}^{d} v_{j,f} x_j \right)^{\!2} - \sum_{j=1}^{d} v_{j,f}^{2} x_j^{2} \right] $

    Esta identidad reduce el coste aparentemente cuadrático a $ O(d k) $ por ejemplo, y a $ O(\bar{n} k) $ cuando solo $ \bar{n} $ entradas de $ \mathbf{x} $ son distintas de cero. El mismo truco proporciona gradientes analíticos baratos, lo que permite un entrenamiento eficiente con descenso de gradiente estocástico o ascenso por coordenadas.

    Funciones de pérdida y entrenamiento

    Las FMs son agnósticas respecto de la pérdida. Las elecciones comunes son la pérdida cuadrática para regresión, la pérdida logística para clasificación binaria (predicción de CTR) y las pérdidas de ranking por pares como Bayesian Personalised Ranking. Las opciones de entrenamiento incluyen descenso de gradiente estocástico, mínimos cuadrados alternados (actualizaciones coordinadas en forma cerrada que aprovechan la estructura bilineal del modelo) e inferencia bayesiana mediante muestreo de Gibbs, que elimina la mayor parte del ajuste de hiperparámetros a costa de mayor cómputo.

    Máquinas de factorización con conciencia de campo

    En las FFMs, cada característica lleva un vector latente independiente para cada campo (grupo de características relacionadas) con el que puede interactuar. Si la característica $ j $ pertenece al campo $ F_j $, el término de interacción se convierte en $ \langle \mathbf{v}_{j, F_{j'}}, \mathbf{v}_{j', F_j} \rangle x_j x_{j'} $. Esto aumenta el número de parámetros en un factor igual al número de campos, pero mejora de forma consistente la precisión en CTR cuando los campos están bien elegidos.

    DeepFM e híbridos neuronales

    DeepFM comparte una tabla de embeddings entre un componente FM (que captura las interacciones de bajo orden) y una red neuronal profunda (que captura las interacciones no lineales de alto orden). xDeepFM añade una red de cruces explícita para productos vectoriales, y AutoInt reemplaza el componente FM por una capa de auto-atención (véase Attention Mechanisms) que aprende qué interacciones importan. A pesar de la continua innovación, las FMs simples bien ajustadas siguen siendo competitivas en muchos benchmarks tabulares.

    Máquinas de factorización de orden superior

    El marco se extiende a interacciones de $ m $ vías:

    $ \hat{y}(\mathbf{x}) = w_0 + \sum_j w_j x_j + \sum_{l=2}^{m} \sum_{j_1 < \dots < j_l} \left( \prod_{r=1}^{l} x_{j_r} \right) \sum_{f=1}^{k_l} \prod_{r=1}^{l} v^{(l)}_{j_r,f} $

    Los órdenes superiores capturan una estructura combinatoria más rica, pero inflan el número de parámetros y rara vez superan a las FMs de segundo orden combinadas con una ingeniería de características cuidadosa.

    Conexiones

    Las máquinas de factorización ocupan un punto intermedio entre varios modelos clásicos. Sin término de interacción se reducen a regresión lineal; con pérdida logística y sin factorización recuperan la regresión logística con características cruzadas creadas manualmente. Cuando la entrada codifica únicamente indicadores de usuario e ítem en one-hot, recuperan la factorización matricial (el caballo de batalla del filtrado colaborativo). Las FMs comparten su sesgo inductivo de bajo rango con los embeddings de palabras: ambos se basan en la idea de que las interacciones entre entidades simbólicas dispersas pueden descomponerse en vectores latentes compartidos. El entrenamiento suele usar descenso de gradiente estocástico o sus variantes, con las mismas consideraciones de regularización y tasa de aprendizaje que en cualquier escenario guiado por pérdida; la regularización L2 sobre $ w_j $ y $ \mathbf{v}_j $ es estándar. En modelos híbridos como DeepFM, las FMs aportan una señal explícita de segundo orden que complementa las características implícitas de orden superior aprendidas por una red neuronal profunda mediante retropropagación. Para tareas binarias de CTR, la predicción final se aplasta mediante una sigmoide (una softmax binaria) y se entrena con pérdida de entropía cruzada.

    Véase también

    Referencias

    • Rendle, S. (2010). "Factorization Machines". Proceedings of the IEEE International Conference on Data Mining (ICDM).
    • Rendle, S. (2012). "Factorization Machines with libFM". ACM Transactions on Intelligent Systems and Technology, 3(3).
    • Juan, Y., Zhuang, Y., Chin, W.-S. y Lin, C.-J. (2016). "Field-aware Factorization Machines for CTR Prediction". Proceedings of the 10th ACM Conference on Recommender Systems.
    • Guo, H., Tang, R., Ye, Y., Li, Z. y He, X. (2017). "DeepFM: A Factorization-Machine based Neural Network for CTR Prediction". Proceedings of IJCAI.
    • Lian, J., Zhou, X., Zhang, F., Chen, Z., Xie, X. y Sun, G. (2018). "xDeepFM: Combining Explicit and Implicit Feature Interactions for Recommender Systems". Proceedings of KDD.
    • Blondel, M., Fujino, A., Ueda, N. y Ishihata, M. (2016). "Higher-Order Factorization Machines". Advances in Neural Information Processing Systems (NeurIPS).