Contrastive Loss/es

    From Marovi AI
    This page is a translated version of the page Contrastive Loss and the translation is 100% complete.
    Other languages:
    Article
    Topic area representation learning
    Prerequisites Loss function, Embedding, Neural network


    Resumen

    La pérdida contrastiva es una familia de objetivos de entrenamiento que conforma un espacio de incrustaciones acercando las representaciones de entradas semánticamente similares y alejando las de entradas disímiles. En lugar de predecir una etiqueta objetivo, un objetivo contrastivo compara pares (o tuplas más grandes) de ejemplos y penaliza al modelo cuando los pares similares están alejados o los pares disímiles están cercanos. La formulación original, introducida por Hadsell, Chopra y LeCun en 2006 para reducción de dimensionalidad, utilizaba una bisagra con un margen fijo sobre la distancia euclidiana.[1] La idea se ha generalizado desde entonces en un amplio conjunto de herramientas — que incluye pérdida de tripletes, InfoNCE, NT-Xent y pérdida contrastiva supervisada — que sustenta los sistemas modernos de aprendizaje métrico, reconocimiento facial y aprendizaje autosupervisado como SimCLR, MoCo y CLIP.

    Origen y motivación

    Hadsell et al. propusieron la pérdida contrastiva como una forma de aprender una asignación invariante de baja dimensión sin requerir un objetivo de reconstrucción global como el del análisis de componentes principales o los autocodificadores. Dada una red siamesa que mapea las entradas $ x $ a incrustaciones $ f_\theta(x) \in \mathbb{R}^d $, la red se entrena con pares $ (x_i, x_j) $ etiquetados como similares ($ y = 0 $) o disímiles ($ y = 1 $). La pérdida moldea directamente la distancia euclidiana en el espacio de incrustación, evitando la necesidad de etiquetas de clase y permitiendo el entrenamiento con señales débilmente supervisadas como la adyacencia temporal en video, las aumentaciones de la misma imagen o la coocurrencia en texto.

    Esta perspectiva replantea el aprendizaje de representaciones como un problema geométrico: en lugar de preguntar "¿a qué categoría pertenece esta entrada?", el aprendizaje contrastivo pregunta "¿qué entradas deben ubicarse cerca unas de otras?" El cambio es relevante porque los pares son mucho más baratos de obtener que las etiquetas por clase, y las incrustaciones resultantes se transfieren bien a tareas posteriores mediante una simple sonda lineal o una búsqueda por vecinos más cercanos.

    Formulación

    Sea $ D_{ij} = \|f_\theta(x_i) - f_\theta(x_j)\|_2 $ la distancia euclidiana entre dos incrustaciones, y sea $ y_{ij} \in \{0, 1\} $ la etiqueta del par ($ 0 $ = similar, $ 1 $ = disímil). La pérdida contrastiva clásica con margen $ m > 0 $ es

    $ {\displaystyle \mathcal{L}_{\text{contrastive}}(x_i, x_j) = (1 - y_{ij})\, \tfrac{1}{2} D_{ij}^2 + y_{ij}\, \tfrac{1}{2} \max(0,\, m - D_{ij})^2.} $

    El primer término acerca los pares similares con una penalización cuadrática proporcional a su distancia al cuadrado. El segundo término — una bisagra sobre la distancia negativa — separa los pares disímiles, pero solo hasta que estén al menos a $ m $ unidades de distancia; más allá del margen, el gradiente es cero y el optimizador ignora el par. Esta asimetría entre los dos términos es esencial: sin el margen, la pérdida empujaría los pares disímiles a una distancia infinita, lo que desestabilizaría el entrenamiento y desperdiciaría capacidad en negativos ya fáciles.

    En la práctica aparecen varias variantes de la forma básica. Algunas implementaciones eliminan los factores $ \tfrac{1}{2} $, usan la distancia directamente en lugar de la distancia al cuadrado, o aplican la pérdida sobre la similitud coseno en lugar de la distancia euclidiana. La elección de la métrica de distancia importa: la similitud coseno es estándar cuando las incrustaciones están normalizadas en L2, en cuyo caso las distancias euclidiana y coseno están relacionadas monótonamente y el margen adquiere una interpretación geométrica como una separación angular.

    Variantes

    El aprendizaje contrastivo moderno está dominado por formulaciones que comparan más de dos ejemplos por evaluación de la pérdida, lo que produce gradientes con menor varianza y una señal de gradiente más fuerte por lote.

    • Pérdida de tripletes (Schroff et al. 2015, FaceNet) opera sobre tripletes $ (x_a, x_p, x_n) $ compuestos por un ancla, un positivo y un negativo, con pérdida $ \max(0,\, D_{ap}^2 - D_{an}^2 + m) $. Impone implícitamente un orden relativo en lugar de una distancia absoluta y se usa ampliamente en reconocimiento facial y recuperación de imágenes.[2]
    • InfoNCE (van den Oord et al. 2018) trata el aprendizaje contrastivo como un problema de clasificación multiclase: dado un ancla y un positivo entre $ K $ candidatos, predecir cuál es el positivo. La pérdida es $ -\log \frac{\exp(s_{ap}/\tau)}{\sum_{k} \exp(s_{ak}/\tau)} $, donde $ s $ es una puntuación de similitud y $ \tau $ es una temperatura. InfoNCE es una cota inferior de la información mutua entre el ancla y la vista positiva.[3]
    • NT-Xent (entropía cruzada normalizada con escalado de temperatura, Chen et al. 2020) es el objetivo de SimCLR: una pérdida tipo InfoNCE sobre incrustaciones normalizadas en L2 con similitud coseno, tratando todos los demás ejemplos del lote como negativos. Los tamaños de lote grandes (4096 o más) proporcionan los negativos sin costo adicional.[4]
    • Pérdida contrastiva supervisada (Khosla et al. 2020) extiende NT-Xent al entorno supervisado tratando todos los ejemplos de la misma clase en el lote como positivos, superando con frecuencia a la pérdida de entropía cruzada en pruebas de clasificación.[5]
    • Pérdida de N pares (Sohn 2016) y pérdida estructurada elevada (Oh Song et al. 2016) son formas intermedias que comparan un ancla con múltiples negativos dentro de un lote, antecediendo y anticipando a la familia InfoNCE/NT-Xent.

    Entrenamiento e inferencia

    El entrenamiento con pérdida contrastiva está dominado por la pregunta de cómo construir pares informativos. Los negativos aleatorios suelen ser trivialmente separables, lo que produce gradiente cero y desperdicia cómputo. Varias estrategias abordan esto:

    • Minería de negativos difíciles selecciona negativos que el modelo actual encuentra confusos — aquellos con alta similitud con el ancla a pesar de tener una etiqueta diferente. FaceNet popularizó la minería semi-difícil: elegir negativos que estén más lejos que el positivo pero aún dentro del margen.
    • Bancos de memoria y colas (Wu et al. 2018; MoCo) mantienen un gran conjunto de incrustaciones negativas a través de los lotes, desacoplando el número de negativos del tamaño de lote a costa de obtener características ligeramente desactualizadas.
    • Codificadores de momento (MoCo, BYOL) actualizan el codificador negativo como una media móvil exponencial del codificador de consulta, mejorando la consistencia de las características almacenadas.
    • Lotes grandes (SimCLR) eluden la cola usando todos los ejemplos del lote como negativos; esto requiere mucha memoria de acelerador, pero simplifica el flujo de trabajo.

    La temperatura $ \tau $ en las pérdidas tipo InfoNCE es uno de los hiperparámetros más sensibles. Las temperaturas más bajas ($ \tau \approx 0.05 $ a $ 0.1 $) agudizan la softmax y realizan en la práctica una ponderación de negativos difíciles; las temperaturas más altas producen gradientes más suaves pero una señal más débil. Wang y Liu (2021) analizan este compromiso como un equilibrio entre uniformidad y tolerancia.

    En tiempo de inferencia, un codificador entrenado de forma contrastiva se utiliza típicamente de dos maneras: como extractor de características para tareas posteriores mediante una cabeza clasificadora lineal, o directamente para recuperación, agrupamiento o coincidencia de cero ejemplos frente a un conjunto de referencia.

    Comparación con otros objetivos

    La pérdida contrastiva se diferencia de la pérdida de entropía cruzada en que no requiere un vocabulario fijo de etiquetas. Esto es lo que permite modelos de vocabulario abierto como CLIP, donde las "clases" son indicaciones de texto arbitrarias. Comparada con la clasificación softmax que tiene una última capa paramétrica, la cabeza contrastiva es no paramétrica — los prototipos de clase se calculan al vuelo a partir de los datos — lo que es ventajoso cuando el conjunto de etiquetas es grande, dinámico o ilimitado.

    Los objetivos contrastivos están estrechamente relacionados con la estimación contrastiva de ruido (NCE), que estima un modelo probabilístico distinguiendo datos reales de muestras de ruido. InfoNCE hace explícita la conexión: es una generalización multiclase de NCE que acota la información mutua.

    Comparados con los métodos autosupervisados no contrastivos, como BYOL, SimSiam y VICReg, que evitan los negativos explícitos mediante stop-gradient o regularización de covarianza, los métodos contrastivos son conceptualmente más simples pero más sensibles al tamaño del lote y a la calidad de los negativos. Trabajos recientes (Tian et al. 2021) muestran que las dos familias son más similares de lo que parecen y pueden unificarse bajo un único marco teórico de la información.

    Limitaciones

    La pérdida contrastiva es sensible a la definición de "similar" y "disímil". Cuando las etiquetas de los pares son ruidosas, o cuando el manifold de los datos contiene muchos casi-duplicados etiquetados como negativos, el entrenamiento se degrada. En entornos autosupervisados, el positivo canónico — dos aumentaciones de la misma imagen — es heurístico, y una aumentación demasiado agresiva puede colapsar distinciones semánticas (por ejemplo, el jitter de color destruyendo señales de especies en clasificación de grano fino).

    Una segunda limitación es la dependencia de la cantidad y calidad de los negativos. NT-Xent con lotes pequeños rinde por debajo de lo esperado; las colas estilo MoCo añaden complejidad de ingeniería; la minería de negativos difíciles puede amplificar el ruido en las etiquetas hacia la señal de entrenamiento. El modo de fallo de colapso de representación — todas las incrustaciones convergiendo a un único punto — se mitiga mediante el margen o el denominador de InfoNCE, pero las pérdidas basadas en margen aún pueden sufrir si todos los negativos son demasiado fáciles.

    Por último, las incrustaciones contrastivas no están inherentemente calibradas: la distancia absoluta entre dos incrustaciones no tiene una interpretación probabilística, y las tareas posteriores que necesitan similitudes calibradas (por ejemplo, recuperación con un umbral de confianza) suelen requerir un paso adicional de calibración. La geometría del espacio aprendido tampoco es única; las rotaciones del espacio de incrustación dejan la pérdida invariante, lo que complica las comparaciones directas entre ejecuciones de entrenamiento.

    Referencias