ElemedexEnciclopedia de bolsillo de arquitecturas de IA
N.º 036

CLIP

Contrastive Language–Image Pre-training

Casamentero

Lo entrenaron jugando a las parejas: 32.768 fotos, 32.768 epígrafes, ¿cuál va con cuál? A fuerza de jugar reconoce casi cualquier cosa que tenga nombre en internet sin haber visto una sola etiqueta de ImageNet. Los números escritos a mano, en cambio, le cuestan.

Altura
imagen ViT-L/14: 24 · texto: 12
Peso
≈ 0,9 GB (ViT-L/14, fp16)
Parámetros
≈ 150 M (ViT-B/32) · ≈ 430 M (ViT-L/14)
Contexto
≈ 76 tokens de texto · 1 imagen
Datos de entrenamiento
WIT: 400 M pares imagen–texto
Año
2021
Generación
5 · Grandes modelos de lenguaje
Creadores
Radford, Kim, Hallacy, Ramesh, Goh, Agarwal, Sastry, Askell, Mishkin, Clark, Krueger & Sutskever (OpenAI)
Clase
Modelo

Estadísticas base

Total
252

Escalas ordinales y aproximadas, pensadas para comparar especies entre sí; los números duros están en la ficha.

Debilidades

  • Le cuesta contar objetos y distinguir modelos de autos, especies de flores o variantes de aviones.
  • Fuera de su distribución falla: 88 % en dígitos manuscritos, por debajo de una regresión logística sobre píxeles.
  • Trata los epígrafes casi como bolsas de palabras: confunde atributos, relaciones espaciales y negaciones.
  • Con ciertas listas de etiquetas reproduce asociaciones ofensivas por grupo racial, documentadas por sus propios autores.

Hábitat

Creció en WIT, 400 millones de pares imagen–texto recolectados de internet a partir de 500.000 consultas, y nunca vio las 1,28 millones de fotos etiquetadas de ImageNet. Hoy es la bisagra entre palabras e imágenes: su codificador de texto guía a Stable Diffusion y su espacio compartido alimenta buscadores de imágenes.

Movimientos

Habilidades

Espacio compartido
Imágenes y textos se convierten en vectores del mismo espacio, de modo que una foto y una frase pueden compararse con la similitud coseno.
Objetivo contrastivo
En cada lote de N pares, acerca las N parejas verdaderas y aleja las N² − N falsas; no necesita predecir las palabras exactas del epígrafe.
Clasificador escrito
Las clases se escriben como frases («A photo of a {label}.») y gana la más cercana a la imagen: cambiar de tarea es cambiar de lista.

Anatomía

Dos codificadores que se encuentran en un espacio común. En el entrenamiento, dentro de cada lote se comparan todas las imágenes con todos los epígrafes: los pares verdaderos (la diagonal) deben tener alta similitud y los demás, baja. En el uso, las clases se escriben como frases y se elige la más parecida a la imagen.

Cadena evolutiva

036 CLIP

CLIP es un par de codificadores, uno para imágenes y otro para texto, entrenados para que una imagen y su epígrafe caigan cerca en un mismo espacio vectorial (Radford et al., 2021, sec. 2.3). No genera nada: es un modelo de embeddings multimodal que permite comparar directamente una foto con una frase (Alammar y Grootendorst, 2024, pp. 264–265).

Cómo funciona

El punto de partida son los datos. OpenAI armó WIT, 400 millones de pares imagen–texto recolectados de internet con 500.000 consultas (hasta 20.000 pares por consulta), con una cantidad total de palabras parecida a la de WebText, el corpus de GPT-2 (Radford et al., 2021, sec. 2.2).

La decisión clave fue el objetivo. Predecir las palabras exactas de cada epígrafe resultó lento; predecir solo qué epígrafe, como un todo, va con qué imagen fue varias veces más eficiente (2021, sec. 2.3). En cada lote de N pares, CLIP calcula la similitud coseno de todas las combinaciones posibles, N × N, y aprende a maximizar las N verdaderas y minimizar las N² − N falsas. Es aprendizaje contrastivo: el modelo aprende qué hace parecidas dos cosas mostrándole también cuáles no van juntas (Alammar y Grootendorst, 2024, pp. 266–268). Los lotes fueron de 32.768 pares, y la versión más grande con codificador Vision Transformer (ViT) entrenó 12 días en 256 GPU V100 (Radford et al., 2021, sec. 2.5).

Clasificar sin ejemplos

Una vez entrenado, CLIP se convierte en un clasificador zero-shot, sin ajuste: las clases se escriben como frases («A photo of a dog.», «A photo of a cat.») y se elige la más cercana a la imagen. Así alcanzó 76,2 % en ImageNet, igualando a una ResNet-50 supervisada sin usar ninguna de sus 1,28 millones de imágenes etiquetadas (Radford et al., 2021, secs. 3.1.2–3.1.3). Los autores notan un problema que cualquier lingüista reconoce: la polisemia. «Crane» es tanto una grúa como una grulla, y ImageNet tiene las dos; «boxer» puede ser un perro o un deportista. Para desambiguar, ayuda dar contexto en el prompt, como en el caso de GPT-3 (2021, sec. 3.1.4).

Qué cambió

CLIP reemplazó las listas cerradas de etiquetas, como las mil clases de ImageNet, por la supervisión en lenguaje natural, que puede nombrar cualquier cosa. Su espacio compartido se volvió infraestructura: el codificador de texto de CLIP condiciona la generación en sistemas de difusión como Stable Diffusion, y CLIP fue el paso previo a los modelos que reciben imágenes y producen texto (Millière y Buckner, 2024b, sec. 3.1.1).

Límites

Los autores enumeran varios (Radford et al., 2021, sec. 6): rinde mal en clasificación de grano fino (modelos de autos, especies de flores), al contar objetos y en tareas raras en sus datos, y generaliza poco a lo que está de verdad fuera de su distribución, como los dígitos manuscritos de MNIST (88 %). También documentan sesgos: con ciertas listas de etiquetas, clasificó fotos de personas en categorías de delito o «no humanas» con tasas muy distintas según el grupo racial (2021, sec. 7.1). Y como su objetivo no exige preservar el orden de las palabras, su codificador de texto trata los epígrafes casi como bolsas de palabras: confunde qué atributo va con qué objeto, las relaciones espaciales, las cantidades y las negaciones (Millière y Buckner, 2024b, sec. 3.1.1).

Fuentes

  • Alammar, J., & Grootendorst, M. (2024). Hands-on large language models: Language understanding and generation. O’Reilly Media. §
  • Harnad, S. (1990). The symbol grounding problem. Physica D: Nonlinear Phenomena, 42(1–3), 335–346. https://doi.org/10.1016/0167-2789(90)90087-6 §
  • Millière, R., & Buckner, C. (2024a). A philosophical introduction to language models—Part I: Continuity with classic debates (arXiv:2401.03910). arXiv. https://doi.org/10.48550/arXiv.2401.03910 §
  • Millière, R., & Buckner, C. (2024b). A philosophical introduction to language models—Part II: The way forward (arXiv:2405.03207). arXiv. https://doi.org/10.48550/arXiv.2405.03207 §
  • Radford, A., Kim, J. W., Hallacy, C., Ramesh, A., Goh, G., Agarwal, S., Sastry, G., Askell, A., Mishkin, P., Clark, J., Krueger, G., & Sutskever, I. (2021). Learning transferable visual models from natural language supervision. In Proceedings of the 38th International Conference on Machine Learning (pp. 8748–8763). PMLR. https://proceedings.mlr.press/v139/radford21a.html §