CLIP: Contrastive Language-Image Pretraining — learning unified image-text embeddings for zero-shot classification
CLIP (OpenAI, 2021) trains image and text encoders jointly on 400M image-caption pairs via contrastive learning: matching image-caption pairs have similar embeddings; non-matching pairs are pushed apart. This simple objective yields powerful zero-shot transfer: classify images without task-specific training.
Contrastive Objective and Dual Encoders
Objective: maximize similarity of matching (image, text) pairs, minimize similarity of mismatched pairs. Symmetric cross-entropy loss: L = -log(exp(sim(i,t))/Σ_j exp(sim(i,j))) - log(exp(sim(i,t))/Σ_k exp(sim(k,t))) where sim = cosine similarity in embedding space scaled by learnable temperature. Dual encoders: separate ViT (vision transformer) for images, Transformer for text. No shared parameters → modular, enabling cross-modal generalization.
Zero-Shot Classification
At test time: embed candidate class names ('dog', 'cat', 'bird') via text encoder → embeddings c_1, c_2, c_3. Embed test image via image encoder → embedding i. Classification: argmax_j [i · c_j / (||i|| ||c_j||)] (cosine similarity). Remarkably effective: CLIP achieves competitive ImageNet accuracy without seeing ImageNet examples during training. Transfer to new domains (medical imaging, satellite) via text prompt engineering.
Embedding Space and Retrieval
CLIP embedding space enables image-text retrieval: given query image, retrieve similar text descriptions (image→text search); given text, retrieve similar images (text→image search). Applications: image search engines, content moderation (embedding-based classification), artistic style transfer via prompt tuning.
Limitations
Counting/spatial reasoning: CLIP struggles with 'how many X' questions (spatial quantification). Bias: inherits internet-scale bias (gender stereotypes, geographic underrepresentation). Prompt engineering: performance sensitive to text prompt phrasing ('a photo of a X' vs. 'X'). Distribution shift: CLIP trained on internet data may underperform on specialized domains without adaptation.
CLIP Variants and Scaling
ALIGN (Google): similar contrastive objective, different scale. SigLIP (sigmoid loss variant): improves stability and scaling. OpenCLIP: open-source CLIP variants trained on open datasets (LAION). CLIP fine-tuning: linear probing (freeze encoders, train classification head—80% of ImageNet accuracy) or adapter modules (parameter-efficient fine-tuning). Prompt learning (CoOp): learn prompt embeddings directly, achieving higher accuracy than fixed prompts.
Explore 500+ Semiconductor & AI Topics
From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.