Middle
Kas yra CLIP architektūra?
sobes.tech AI
Atsakymas iš AI
CLIP (Contrastive Language–Image Pre-training) architektūra yra giluminio mokymosi modelis, sukurtas siekiant sujungti vaizdus ir tekstus bendroje požymių erdvėje.
Pagrindiniai komponentai:
- Du koduotojai: vienas vaizdams (paprastai konvoliucinė neuroninė tinklas arba Vision Transformer), kitas tekstui (transformeris).
- Kontrastinis mokymasis: modelis išmoksta teisingai suderinti vaizdų ir aprašymų poras, maksimaliai padidindamas jų panašumą ir sumažindamas nesusijusių porų panašumą.
Tai leidžia naudoti CLIP užduotims, kur reikia suprasti ryšį tarp vizualinės informacijos ir teksto, pavyzdžiui, vaizdų paieškai pagal aprašymą arba aprašymų generavimui vaizdams.
Naudojimo pavyzdys:
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(["katės nuotrauka", "šuns nuotrauka"])
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) # Tikimybės, kad vaizdas atitinka tekstus
CLIP plačiai naudojamas daugiašaliam supratimui ir generavimui užduotyse.