Middle
Cos'è l'architettura CLIP?
sobes.tech AI
Risposta dell'AI
L’architettura CLIP (Contrastive Language–Image Pre-training) è un modello di deep learning sviluppato per collegare immagini e testi in uno spazio di caratteristiche comune.
Componenti principali:
- Due codificatori: uno per le immagini (solitamente una rete neurale convoluzionale o Vision Transformer), e uno per il testo (transformer).
- Apprendimento contrastivo: il modello impara ad associare correttamente le coppie di immagini e descrizioni, massimizzando la somiglianza tra loro e minimizzando quella tra non corrispondenti.
Questo permette di usare CLIP per compiti in cui è necessario comprendere la relazione tra informazioni visive e testo, come la ricerca di immagini tramite descrizione o la generazione di descrizioni per immagini.
Esempio di utilizzo:
import clip
import torch
from PIL import Image
model, preprocess = clip.load("ViT-B/32")
image = preprocess(Image.open("example.jpg")).unsqueeze(0)
text = clip.tokenize(["una foto di un gatto", "una foto di un cane"])
with torch.no_grad():
image_features = model.encode_image(image)
text_features = model.encode_text(text)
logits_per_image, logits_per_text = model(image, text)
probs = logits_per_image.softmax(dim=-1)
print(probs) # Probabilità di corrispondenza tra immagine e testi
CLIP è ampiamente impiegato in compiti di comprensione e generazione multimodale.