XYZNOT

Artículos · arXiv 2002.05709

A Simple Framework for Contrastive Learning of Visual Representations

Publicado cs.LGcs.CVstat.ML arXivPDF

Leer con traducción e IA

Resumen en tres líneas

  1. 🎯 Los métodos autosupervisados contrastivos anteriores dependían de diseños arquitectónicos complejos, memory banks o redes especializadas de agregación de contexto.
  2. 🔧 SimCLR maximiza la concordancia latente entre vistas aumentadas de forma distinta mediante ResNets estándar, un cabezal de proyección no lineal, minilotes grandes para los negativos y la pérdida NT-Xent.
  3. 📈 Un clasificador lineal sobre SimCLR ResNet-50 (4×) logra un 76.5% de precisión top-1 en ImageNet, y el ajuste fino con solo el 1% de las etiquetas alcanza un 85.8% de precisión top-5.

Resumen

Este artículo presenta SimCLR: un marco simple para el aprendizaje contrastivo de representaciones visuales. Simplificamos los algoritmos de aprendizaje autosupervisado contrastivo propuestos recientemente sin requerir arquitecturas especializadas ni un memory bank. Para comprender qué permite que las tareas de predicción contrastiva aprendan representaciones útiles, estudiamos sistemáticamente los componentes principales de nuestro marco. Demostramos que (1) la composición de aumentos de datos desempeña un papel fundamental en la definición de tareas predictivas eficaces, (2) introducir una transformación no lineal aprendible entre la representación y la pérdida contrastiva mejora sustancialmente la calidad de las representaciones aprendidas, y (3) el aprendizaje contrastivo se beneficia de tamaños de lote más grandes y más pasos de entrenamiento en comparación con el aprendizaje supervisado. Al combinar estos hallazgos, logramos superar considerablemente a los métodos previos de aprendizaje autosupervisado y semisupervisado en ImageNet. Un clasificador lineal entrenado sobre representaciones autosupervisadas aprendidas por SimCLR alcanza una precisión top-1 del 76.5%, lo que representa una mejora relativa del 7% sobre el estado del arte anterior, igualando el rendimiento de un ResNet-50 supervisado. Cuando se ajusta con solo el 1% de las etiquetas, alcanzamos una precisión top-5 del 85.8%, superando a AlexNet con 100 veces menos etiquetas.

Resumen original (inglés)

This paper presents SimCLR: a simple framework for contrastive learning of visual representations. We simplify recently proposed contrastive self-supervised learning algorithms without requiring specialized architectures or a memory bank. In order to understand what enables the contrastive prediction tasks to learn useful representations, we systematically study the major components of our framework. We show that (1) composition of data augmentations plays a critical role in defining effective predictive tasks, (2) introducing a learnable nonlinear transformation between the representation and the contrastive loss substantially improves the quality of the learned representations, and (3) contrastive learning benefits from larger batch sizes and more training steps compared to supervised learning. By combining these findings, we are able to considerably outperform previous methods for self-supervised and semi-supervised learning on ImageNet. A linear classifier trained on self-supervised representations learned by SimCLR achieves 76.5% top-1 accuracy, which is a 7% relative improvement over previous state-of-the-art, matching the performance of a supervised ResNet-50. When fine-tuned on only 1% of the labels, we achieve 85.8% top-5 accuracy, outperforming AlexNet with 100X fewer labels.

Guía de lectura

Problema y motivación

Aprender representaciones visuales sin supervisión humana depende habitualmente del modelado generativo o de tareas pretextuales heurísticas (por ejemplo, rompecabezas tipo jigsaw, predicción de rotación, colorización). Los métodos de aprendizaje contrastivo lograron un mejor rendimiento, pero introdujeron con frecuencia arquitecturas especializadas de agregación de contexto (como PixelCNNs en CPC), campos receptivos restrictivos o memory banks explícitos (como en MoCo o InstDisc) para suministrar pares negativos. SimCLR aborda estas complicaciones demostrando que un marco simple que utiliza codificadores estándar, pares negativos dentro del mismo lote y un diseño sistemático de aumentos de datos puede superar a los métodos anteriores sin requerir soluciones arquitectónicas ad hoc.

Ideas clave

  • La composición de aumentos define la tarea predictiva: En lugar de alterar las arquitecturas de red para forzar predicciones de contexto espacial, la composición estocástica de aumentos de datos —específicamente el recorte aleatorio combinado con la distorsión de color— previene atajos (como la coincidencia de histogramas de color) y obliga a la red a extraer características semánticas.
  • Aumentos más fuertes benefician el aprendizaje contrastivo: Aumentos como la alteración agresiva del color (color jittering), que degradan el rendimiento del entrenamiento supervisado, mejoran significativamente el aprendizaje contrastivo autosupervisado.
  • Cabezal de proyección no lineal: Introducir un pequeño MLP entre la representación del codificador y la pérdida contrastiva mejora la calidad de la representación. Dado que se entrena para ser invariante a las transformaciones, descartar después del entrenamiento permite conservar en información sensible a las transformaciones que resulta beneficiosa para las tareas posteriores (downstream tasks).
  • Escalado de negativos mediante lotes grandes y entrenamiento prolongado: En lugar de un memory bank explícito, SimCLR recurre a tamaños de lote grandes (hasta 8192) optimizados con LARS, lo que proporciona miles de pares negativos dentro del lote por cada par positivo.
  • Normalización por lotes global (Global Batch Normalization): Para evitar atajos en los que la red explote las estadísticas de normalización por lotes intra-dispositivo para identificar pares positivos, la media y la varianza de la normalización por lotes se sincronizan entre todos los aceleradores distribuidos.

Método

Para un minilote muestreado de imágenes, cada ejemplo se transforma mediante dos aumentos estocásticos distintos , produciendo un par positivo dentro de los ejemplos aumentados.

  1. Codificador base: , extrayendo representaciones de la capa de average pooling.
  2. Cabezal de proyección: , mapeando representaciones a un espacio latente de 128 dimensiones con una única capa oculta y activación ReLU .
  3. Pérdida NT-Xent: La similitud coseno entre vectores normalizados se define como . Para un par positivo , la pérdida es: donde es el hiperparámetro de temperatura y evalúa a si y solo si . La pérdida total promedia sobre los pares en el lote.

Tras el entrenamiento, se descarta y se utiliza para la clasificación lineal posterior o el ajuste fino.

Resultados

  • Evaluación lineal en ImageNet: SimCLR con un ResNet-50 estándar alcanza una precisión top-1 del 69.3% (igualando o superando a los modelos autosupervisados anteriores). Escalar a ResNet-50 () alcanza un 76.5% de precisión top-1, igualando a un ResNet-50 estándar totalmente supervisado.
  • Ajuste fino semisupervisado: Al realizar un ajuste fino con solo el 1% de las etiquetas de ImageNet, ResNet-50 () alcanza un 85.8% de precisión top-5 (y un 63.0% top-1), superando a AlexNet entrenado con el 100% de las etiquetas.
  • Aprendizaje por transferencia: En 12 conjuntos de datos de clasificación de imágenes naturales, SimCLR ResNet-50 () ajustado iguala o supera la línea base supervisada en 10 de los 12 conjuntos de datos.
  • Ablación del cabezal de proyección: El uso de un cabezal de proyección no lineal supera a una proyección lineal en un +3% y a la ausencia de proyección en más de un 10% en la evaluación lineal de ImageNet.

Limitaciones y preguntas abiertas

  • Intensidad computacional: El entrenamiento requiere tamaños de minilote muy grandes (p. ej., 4096 u 8192) y programas de entrenamiento prolongados (hasta 1000 épocas) para lograr resultados óptimos, lo que exige grandes clústeres de aceleradores (32–128 núcleos TPU).
  • Disparidad de arquitectura en transferencia: Si bien ResNet-50 () iguala o supera las líneas base supervisadas en pruebas de transferencia, el ResNet-50 estándar todavía se queda atrás con respecto a las líneas base supervisadas en todas las tareas de evaluación lineal.
  • Compromiso de información: El mecanismo por el cual el cabezal de proyección conserva información específica de la transformación en mientras fuerza la invarianza en se basa en heurísticas empíricas más que en un marco analítico.

Términos clave

SimCLR
Un marco simple para el aprendizaje contrastivo de representaciones visuales que utiliza aumentos de datos, un codificador base, un cabezal de proyección no lineal y una pérdida de entropía cruzada normalizada con escala de temperatura.
NT-Xent
La pérdida de entropía cruzada normalizada con escala de temperatura (Normalized Temperature-scaled Cross Entropy), que aplica similitudes coseno escaladas por temperatura entre pares positivos y negativos dentro del lote.
Projection Head
Un pequeño perceptrón multicapa con una capa oculta aplicado después del codificador base durante el preentrenamiento, que se descarta antes de la evaluación en tareas posteriores.
Global BN
Normalización por lotes donde la media y la varianza se agregan a través de todos los dispositivos distribuidos para evitar que el modelo use estadísticas intra-dispositivo como un atajo de información.
Linear Evaluation Protocol
Un método de evaluación estándar en el aprendizaje autosupervisado donde se entrena un clasificador lineal sobre un extractor de características congelado para medir la calidad de la representación.
LARS
Optimizador de escalado de tasa adaptativo por capas (Layer-wise Adaptive Rate Scaling) utilizado para estabilizar el entrenamiento al escalar a tamaños de lote muy grandes.

Preguntas

¿Por qué es necesaria la distorsión de color (color jittering) cuando se utiliza el recorte aleatorio?

Los recortes aleatorios de una misma imagen suelen compartir histogramas de color muy similares. Sin distorsión de color, el modelo aprende fácilmente a identificar pares positivos mediante la simple coincidencia del perfil de color en lugar de aprender características semánticas de alto nivel.

¿Por qué la representación antes del cabezal de proyección ($h$) es mejor que la posterior ($z$)?

La pérdida contrastiva entrena la salida para que sea completamente invariante a los aumentos de datos aplicados. El cabezal de proyección no lineal absorbe esta pérdida de detalles específicos de la transformación (como el color y la orientación), dejando en información más rica y generalizable.

¿Cómo evita SimCLR el uso de un memory bank?

SimCLR utiliza tamaños de minilote grandes (desde 256 hasta 8192). Un tamaño de lote de genera ejemplos negativos por cada par positivo directamente dentro del lote, eliminando la necesidad de un memory bank separado o de un codificador con momento.

¿Por qué SimCLR necesita la Normalización por Lotes Global (Global Batch Normalization)?

Dado que ambas vistas de un par positivo suelen procesarse en el mismo dispositivo acelerador, la normalización por lotes local estándar introduce un atajo de información en el que las estadísticas intra-dispositivo filtran la identidad de la muestra. Agregar las estadísticas de BN a través de todos los dispositivos de cómputo elimina este atajo.

La explicación de esta página la escribió una IA a partir del artículo y puede contener errores. Consulte el artículo para los detalles.

Leer con traducción e IA