CLIP (Contrastive Language-Image Pre-training)
Explora CLIP (preentrenamiento contrastivo de lenguaje e imágenes) para conectar la visión y el lenguaje. Descubre cómo permite el aprendizaje de cero ejemplos e impulsa Ultralytics YOLO26.
CLIP (Preentrenamiento contrastivo de lenguaje e imágenes) es una arquitectura revolucionaria de red neuronal desarrollada por OpenAI que tiende un puente entre los datos visuales y el lenguaje natural. A diferencia de los sistemas tradicionales de visión por computador (CV), que requieren un etiquetado de datos laborioso para un conjunto fijo de categorías, CLIP aprende a comprender imágenes entrenándose con millones de pares de imágenes y textos recopilados de Internet. Este enfoque permite al modelo realizar aprendizaje sin ejemplos, es decir, identificar objetos, conceptos o estilos que nunca ha visto explícitamente durante el entrenamiento simplemente leyendo una descripción textual. Al asignar la información visual y lingüística a un espacio de características compartido, CLIP actúa como un potente modelo fundacional para una amplia variedad de tareas posteriores sin necesidad de un ajuste fino exhaustivo y específico para cada tarea.
Cómo funciona la arquitectura#
El mecanismo central de CLIP consta de dos codificadores paralelos: un codificador de imágenes, normalmente basado en un Vision Transformer (ViT) o una ResNet, y un Transformer de texto similar a los utilizados en los modernos modelos de lenguaje de gran tamaño (LLMs). Mediante un proceso conocido como aprendizaje contrastivo, el sistema se entrena para predecir qué fragmento de texto corresponde a cada imagen dentro de un lote.
Durante el entrenamiento, el modelo optimiza sus parámetros para acercar entre sí los embeddings vectoriales de los pares de imágenes y textos coincidentes, mientras aleja los pares que no coinciden. Esto crea un espacio latente multimodal en el que la representación matemática de una imagen de un «golden retriever» se sitúa espacialmente cerca del embedding de texto correspondiente a «una foto de un perro». Al calcular la similitud coseno entre estos vectores, el modelo puede cuantificar en qué medida una imagen corresponde a una indicación de lenguaje natural, lo que permite una clasificación de imágenes y una recuperación flexibles.
Aplicaciones en el mundo real#
La capacidad de conectar la visión y el lenguaje ha convertido a CLIP en una tecnología fundamental para las aplicaciones modernas de IA:
- Búsqueda semántica inteligente: CLIP permite buscar en grandes bases de datos de imágenes mediante consultas complejas de procesamiento del lenguaje natural (NLP). Por ejemplo, en la IA aplicada al comercio minorista, un comprador podría buscar «vestido veraniego floral vintage» y obtener resultados visualmente precisos sin que las imágenes tuvieran esas etiquetas de metadatos específicas. Esto suele funcionar mediante bases de datos vectoriales de alto rendimiento.
- Control de la IA generativa: Modelos como Stable Diffusion dependen de CLIP para interpretar las indicaciones del usuario y guiar el proceso de generación. CLIP actúa como evaluador y determina en qué medida el resultado visual generado coincide con la descripción textual, algo esencial para una síntesis de texto a imagen de alta calidad.
- Detección de objetos de vocabulario abierto: Arquitecturas avanzadas como YOLO-World integran embeddings de CLIP para detectar objetos a partir de entradas de texto arbitrarias. Esto permite una detección dinámica en ámbitos como la IA aplicada a la sanidad, donde es necesario identificar equipos o anomalías nuevos sin volver a entrenar el modelo.
Uso de características de CLIP con Ultralytics#
Aunque los detectores de objetos estándar están limitados a sus clases de entrenamiento, el uso de características basadas en CLIP permite la detección con vocabulario abierto. El siguiente código de Python muestra cómo utilizar el paquete ultralytics para detectar objetos mediante indicaciones de texto personalizadas:
from ultralytics import YOLOWorld
# Load a pre-trained YOLO-World model utilizing CLIP features
model = YOLOWorld("yolov8s-world.pt")
# Define custom classes using natural language text prompts
model.set_classes(["person wearing sunglasses", "red backpack"])
# Run inference on an image to detect the text-defined objects
results = model.predict("travelers.jpg")
# Display the results
results[0].show()Diferenciación de conceptos relacionados#
Para comprender su utilidad específica, resulta útil diferenciar CLIP de otros paradigmas habituales de IA:
- CLIP frente al aprendizaje supervisado: Los modelos supervisados tradicionales requieren definiciones estrictas y ejemplos etiquetados para cada categoría (por ejemplo, «gato» o «coche»). CLIP aprende a partir de pares de textos e imágenes sin procesar encontrados en la web, lo que ofrece una mayor flexibilidad y elimina el cuello de botella de la anotación manual, que a menudo se gestiona mediante herramientas como Ultralytics Platform.
- CLIP frente a YOLO26: Mientras que CLIP proporciona una comprensión generalizada de los conceptos, YOLO26 es un detector de objetos especializado y en tiempo real, optimizado para la velocidad y una localización precisa. CLIP se utiliza a menudo como extractor de características o clasificador sin ejemplos, mientras que YOLO26 es el motor para la inferencia en tiempo real de alta velocidad en entornos de producción.
- CLIP frente al aprendizaje contrastivo estándar: Métodos como SimCLR suelen comparar dos versiones aumentadas de la misma imagen para aprender características. CLIP contrasta una imagen con una descripción textual, conectando dos modalidades de datos distintas en lugar de trabajar únicamente con una.









