BYOL La alternativa al aprendizaje auto-supervisado de contraste

BYOL Alternativa al aprendizaje auto-supervisado de contraste

Análisis del Artículo—Bootstrap Your Own Latent: Un Nuevo Enfoque para el Aprendizaje Auto-Supervisado

En el análisis de artículo de hoy, examinaremos de cerca el artículo detrás de BYOL (Bootstrap Your Own Latent). Proporciona una alternativa a las técnicas de aprendizaje auto-supervisado contrastivo para el aprendizaje de representaciones, eliminando la necesidad de un gran corpus de muestras negativas y tamaños de lote gigantes. Además, es un artículo destacado en el camino para comprender los modelos fundamentales de vanguardia de hoy en día, como la familia DINO, que incluye DINOv2 y GroundingDINO.

Aunque los marcos de aprendizaje auto-supervisado contrastivo aún parecen intuitivos, BYOL puede ser confuso e intimidante al principio. Por lo tanto, es un gran artículo para analizar juntos. ¡Así que sumerjámonos en él y desglosemos para descubrir sus ideas principales!

Fuente

Artículo: Bootstrap your own latent: Un nuevo enfoque para el aprendizaje auto-supervisado

Código: https://github.com/deepmind/deepmind-research/tree/master/byol

Primera Publicación: 13 Jun. 2020

Autores: Jean-Bastien Grill, Florian Strub, Florent Altché, Corentin Tallec, Pierre H. Richemond, Elena Buchatskaya, Carl Doersch, Bernardo Avila Pires, Zhaohan Daniel Guo, Mohammad Gheshlaghi Azar, Bilal Piot, Koray Kavukcuoglu, Rémi Munos, Michal Valko

Categoría: aprendizaje de similitud, aprendizaje de representaciones, visión por computadora, modelos fundamentales

Esquema

  1. Contexto y Antecedentes
  2. Contribuciones Reclamadas
  3. Método
  4. Experimentos
  5. Conclusión
  6. Lecturas y Recursos Adicionales

Contexto y Antecedentes

BYOL se encuentra en la categoría de aprendizaje de representaciones auto-supervisado a través del aprendizaje de similitud. Auto-supervisado significa que no se proporcionan etiquetas de verdad absoluta explícitas, pero se puede construir una señal de supervisión a partir de datos sin etiquetar. Aprendizaje de representaciones significa que el modelo aprende a codificar su entrada en un espacio de representación de dimensiones más bajas y ricas en semántica. Y finalmente, en el aprendizaje de similitud, las características similares se mapean cerca unas de otras en el espacio de representación latente, mientras que las características no similares se mapean más lejos. Estas representaciones son cruciales en muchas tareas de aprendizaje profundo que se basan en estas representaciones para, por ejemplo, generar nuevos datos, realizar clasificación, segmentación o estimación de profundidad monocular.

Muchos métodos exitosos, como CLIP, GLIP, MoCo o SimCLR, utilizan un enfoque de aprendizaje contrastivo. En el aprendizaje contrastivo, se maximiza una puntuación para las parejas de datos que coinciden, mientras que se minimiza una puntuación para datos que no coinciden. Este proceso depende en gran medida del tamaño del lote y del número de muestras negativas proporcionadas durante el entrenamiento. Esta dependencia hace que la recopilación de datos y el entrenamiento sean más desafiantes.

BYOL tiene como objetivo:

  1. Eliminar la necesidad de muestras negativas y tamaños de lote grandes como se requiere en el aprendizaje contrastivo.
  2. Disminuir la dependencia de las aumentaciones específicas del dominio para que sean aplicables a otros dominios como el lenguaje o las imágenes.

Entre muchas referencias que se hacen en el artículo, BYOL destaca sus similitudes con mean teacher, el codificador de momentum y las predicciones de latentes bootstrap (PBL).

Contribuciones Reclamadas (Según los Autores)

  1. Introducción de BYOL (Bootstrap your own latent), un método de aprendizaje de representaciones auto-supervisado que no requiere pares negativos (como en el aprendizaje contrastivo)
  2. Las representaciones de BYOL demuestran superar al estado del arte (en el momento de la publicación del artículo)
  3. BYOL se muestra más resistente al tamaño del lote y a las aumentaciones de imágenes utilizadas en comparación con sus contrapartes contrastivas

Método

Ahora que hemos visto lo que BYOL afirma resolver, intentemos entender cómo se logra esto. Primero, observemos la arquitectura presentada en la Fig.1

Fig. 1: Arquitectura del marco. Fuente de la imagen + anotaciones del autor.

BYOL consta de dos redes: la red en línea y la red objetivo. La red en línea consta de tres submódulos, a saber, el codificador, el proyector y el predictor. La red objetivo consta de dos submódulos, a saber, el codificador y el proyector. El codificador y el predictor de ambas redes comparten la misma arquitectura, solo difieren en sus pesos de modelo. Mientras que la red en línea se optimiza durante el entrenamiento, la red objetivo actualiza sus pesos mediante un promedio móvil exponencial de sí misma y la red en línea.

Codificador – El codificador consta de una red neuronal convolucional ResNet. Traduce la imagen de entrada en una representación latente.

Proyector – Proyecta el espacio latente de un espacio de 4096 dimensiones a un espacio de 256 dimensiones a través de una red de perceptrón multicapa (MLP). Supongo que el proyector no es esencial para que funcione el marco, pero 256 es simplemente una dimensión de salida conveniente que se utiliza a menudo en el campo del aprendizaje de representaciones.

Predictor – Tiene como objetivo predecir el espacio latente proyectado de la red objetivo a partir del espacio latente proyectado de la red en línea. Es crucial para evitar el colapso de la representación.

Durante el entrenamiento, se aplican dos aumentos diferentes y seleccionados al azar en una imagen de entrada para construir dos vistas diferentes de esa imagen. Una vista se alimenta al modelo en línea y otra vista se alimenta al modelo objetivo. Estos aumentos incluyen, entre otros: cambio de tamaño, volteo, recorte, distorsión de color, conversión a escala de grises, desenfoque gaussiano y saturación. El objetivo del entrenamiento es minimizar la distancia L2 al cuadrado entre las salidas de ambas redes. Después del entrenamiento, ¡solo se conserva el codificador de la red en línea como el modelo final!

Eso es todo. ¿Fácil, verdad? 😜 Bueno, después de leer el documento, mi cara era más como esta: 😵 Si bien es relativamente sencillo entender el procesamiento del marco si se descompone en sus componentes clave, ganar una intuición me costó bastante tiempo.

Antes de intentar comprender por qué BYOL realmente funciona, primero simplifiquemos las ecuaciones presentadas y las desmitifiquemos.

Desmitificación Matemática

Teniendo una visión general aproximada de la arquitectura de BYOL y cómo se entrena, echemos un vistazo más de cerca a las ecuaciones. Debo decir que la parte matemática presentada en el documento es mucho más complicada de lo necesario. Mientras que en algunos casos se presenta de manera demasiado compleja, en otros casos carece de claridad y deja lugar a la interpretación, lo que causa confusión.

Me centraré en aquellas ecuaciones que considero importantes para comprender lo que está sucediendo. Comencemos analizándolas en el orden exactamente inverso, ¿por qué no? 😜

Primero, hablemos sobre la actualización de los parámetros de los modelos durante el entrenamiento. Recordemos que tenemos dos modelos: el modelo en línea y el modelo objetivo. El modelo en línea se actualiza optimizando una función de pérdida utilizando un optimizador LARS.

Ecuación 1: Actualización de los pesos de la red en línea. Fuente + anotaciones del autor

La ecuación anterior simplemente dice: “actualiza los parámetros theta del modelo llamando a una función de optimización sobre los parámetros actuales, los gradientes de estos parámetros con respecto a una función de pérdida y una tasa de aprendizaje eta”.

El modelo objetivo, por otro lado, no se actualiza mediante optimización, sino copiando los pesos del modelo en línea y aplicando un promedio móvil exponencial en los pesos actualizados copiados y los pesos actuales de la red objetivo:

Ecuación 2: Actualización de los pesos de la red objetivo. Fuente + anotaciones del autor

La ecuación anterior simplemente dice: “actualiza el parámetro xi del modelo calculando un promedio móvil exponencial con la tasa de decaimiento tau de los pesos actuales xi y los pesos actualizados del modelo en línea”. Tau sigue un calendario coseno para disminuir la contribución del modelo en línea a lo largo del entrenamiento.

Ahora echemos un vistazo a la función de pérdida utilizada para actualizar el modelo en línea. Se define como la suma de otras dos funciones de pérdida. Estas pérdidas comparten la misma ecuación, como veremos más adelante, pero se calculan en dos entradas diferentes de la red. Recordemos de la Fig. 1 que se generan dos vistas diferentes (es decir, v y v’) a partir de una imagen x aplicando diferentes aumentos. Una vista se introduce en el modelo en línea y la otra en el modelo objetivo. Durante el entrenamiento, se realizan dos pasadas hacia adelante antes de calcular la pérdida, donde se intercambian las entradas de las redes. La imagen de entrada para el modelo en línea se introduce en el modelo objetivo y viceversa.

Ecuación 3: Función de pérdida de BYOL. Fuente + anotaciones por el autor

La pérdida de las pasadas hacia adelante individuales es una distancia L2 al cuadrado de las salidas normalizadas L2 del modelo en línea y del modelo objetivo. Desglosemos la ecuación correspondiente del artículo:

Ecuación 4: Función de pérdida individual. Fuente + anotaciones por el autor

Nota: El artículo dice que esto es un error cuadrático medio, lo cual no es correcto. La distancia L2 no se divide por su número de elementos. Supongo que lo confundieron con el cálculo de la media en todos los lotes.

Intuición de BYOL

Ahora que tenemos una comprensión del marco y del mensaje clave de las ecuaciones, intentemos obtener alguna intuición. Les presentaré lo que los autores piensan y luego intentaré añadir algo de intuición propia, sabiendo muy bien que puede que no sea precisa 🤡.

¿Cómo aprende BYOL sus representaciones? – Se anima al modelo a generar la misma representación latente de sus dos entradas, que representan dos vistas diferentes del mismo objeto/escena. Un gato sigue siendo un gato independientemente de si la imagen está borrosa, en escala de grises o volteada. De hecho, creo que las aumentaciones intensivas son cruciales aquí. Básicamente le dicen al modelo “Mira, estas son diferentes variaciones de lo mismo, ¡así que ignora estas variaciones y considéralas iguales al extraer representaciones del objeto/escena!”.

¿Por qué las representaciones no colapsan? – Recordemos que dijimos antes que BYOL entra en la categoría de aprendizaje de similitud. ¿No sería la forma más fácil para la red simplemente mapear todo en el mismo punto en el espacio latente para lograr la mayor similitud? De hecho, esta es una de las principales dificultades en el aprendizaje de similitud y se llama “soluciones colapsantes”. Los enfoques de aprendizaje contrastivo resuelven este problema al proporcionar muchas muestras negativas para una coincidencia dada, para mapear características similares cerca una de la otra en el espacio latente mientras que mapean características no similares más lejos. BYOL resuelve este problema al introducir una asimetría entre la red en línea y la red objetivo con su submódulo de predictor y al emplear una regla de actualización de los parámetros de la red objetivo basada en el promedio móvil exponencial para asegurar la casi optimalidad del predictor durante todo el entrenamiento.

Experimentos

Los autores de BYOL presentaron experimentos y abstracciones para demostrar la efectividad de su método.

Ablación en el tamaño del lote

De los métodos de aprendizaje de representación contrastiva (por ejemplo, CLIP y GLIP) sabemos que hay una gran dependencia del tamaño del lote durante el entrenamiento. Por ejemplo, CLIP se entrenó con un tamaño de lote de 32,768, lo cual es una locura considerando que es un modelo de lenguaje-imagen multimodal.

Los autores afirman que, dado que BYOL no requiere muestras negativas, no es tan sensible a tamaños de lote más bajos, lo cual respaldan con el siguiente experimento mostrado en la Fig. 2.

Fig. 2: Impacto del tamaño del lote. Fuente de la imagen + anotaciones por el autor.

Lamentablemente, esto aún puede ser demasiado grande para mi portátil privado 😅

Ablación sobre la Robustez de las Aumentaciones de Imagen

El artículo de SimCLR ha demostrado que los métodos de visión contrastiva son sensibles a su elección de aumentaciones de imagen, especialmente aquellas que afectan al histograma de color. Mientras que los recortes de la misma imagen comparten un histograma de color similar, los recortes de pares negativos no lo hacen. El modelo puede tomar un atajo durante el entrenamiento y centrarse en las diferencias en los histogramas de color en lugar de en las características semánticas.

Los autores afirman que BYOL es más robusto ante su elección de aumentaciones de imagen, debido a la forma en que se actualizan las redes online y objetivo. Aunque esta hipótesis está respaldada por un experimento, todavía existe una fuerte dependencia y, por lo tanto, una disminución en el rendimiento.

Fig. 3: Robustez ante las aumentaciones de imagen. Fuente de la imagen + anotaciones del autor.

Evaluación Lineal en ImageNet

En el campo del aprendizaje de representaciones, una característica importante es la capacidad del modelo para proyectar características semánticamente ricas en un espacio latente, para agrupar características similares y separar características diferentes. Una prueba común es congelar el modelo (en el caso de BYOL, solo el codificador del modelo online) y entrenar un clasificador lineal sobre las representaciones.

La evaluación lineal de BYOL se ha realizado en ImageNet y se ha comparado con muchos otros modelos, superando al estado del arte previo de ese momento.

En muchos artículos encontrarás la diferenciación entre el codificador ResNet-50 y otras variaciones de ResNet. Es simplemente que ResNet-50 ha surgido como la red estándar para evaluar el rendimiento.

Tabla 1: Evaluación lineal en ImageNet. Fuente

Ajuste Fino Semi-Supervisado para la Clasificación

Otro experimento muy típico en el aprendizaje de representaciones es el rendimiento del modelo cuando se ajusta finamente a una tarea y conjunto de datos específicos.

La Tabla 2 muestra las métricas cuando se ajusta finamente BYOL en una tarea de clasificación utilizando el 1% o el 10% del conjunto de entrenamiento completo de ImageNet.

Tabla 2: Entrenamiento semi-supervisado en ImageNet. Fuente

Transferencia a Otras Tareas de Visión

Los autores también presentan experimentos en los que transfieren el aprendizaje de BYOL a una tarea de segmentación semántica y a una tarea de estimación de profundidad monocular, dos campos importantes de la visión por computadora.

Las diferencias con los enfoques anteriores son marginales, pero supongo que el mensaje clave aquí es: “Tenemos un enfoque diferente que funciona igual de bien”.

Tabla 3: Transferencia a otras tareas de visión. Fuente

Conclusión

BYOL presentó un enfoque alternativo para el aprendizaje de representaciones auto-supervisado. Al implementar dos redes que realizan aprendizaje de similitud, BYOL puede ser entrenado sin la necesidad de muestras de entrenamiento negativas como las necesarias para los enfoques de aprendizaje contrastivo. Para evitar soluciones colapsadas, la red objetivo se actualiza mediante EMA a partir de la red online y se construye un submódulo adicional de predicción sobre la red online.

Lecturas y Recursos Adicionales

Si has llegado hasta aquí: ¡enhorabuena🎉 y gracias😉! Como parece que estás bastante interesado en el tema, aquí tienes algunos recursos adicionales:

A continuación se muestra una lista de artículos que se basaron en BYOL:

  1. DINO: Propiedades emergentes en Transformadores de Visión auto-supervisados
  2. DINOv2: Aprendizaje de características visuales robustas sin supervisión
  3. Grounding DINO: Combinando DINO con Pre-entrenamiento fundamentado para la detección de objetos de conjunto abierto

Aquí hay dos de mis artículos sobre los métodos de aprendizaje por contraste CLIP y GLIP para el aprendizaje de representaciones auto-supervisadas:

El Modelo de Fundamentos CLIP

Resumen del artículo: Aprendiendo modelos visuales transferibles a partir de la supervisión de lenguaje natural

towardsdatascience.com

GLIP: Introduciendo el Pre-entrenamiento de Lenguaje-Imagen a la Detección de Objetos

Resumen del artículo: Pre-entrenamiento fundamentado de Lenguaje-Imagen

towardsdatascience.com