Sobes.tech
Middle

O que é a arquitetura CLIP?

sobes.tech IA

Resposta da IA

A arquitetura CLIP (Contrastive Language–Image Pre-training) é um modelo de aprendizagem profunda desenvolvido para relacionar imagens e textos num espaço de características comum.

Componentes principais:

  • Dois codificadores: um para imagens (normalmente uma rede neural convolucional ou Vision Transformer), e outro para texto (transformer).
  • Aprendizagem contrastiva: o modelo aprende a associar corretamente pares de imagens e descrições, maximizando a similaridade entre eles e minimizando a entre os não relacionados.

Isto permite usar o CLIP para tarefas onde é necessário compreender a relação entre informação visual e texto, como pesquisa de imagens por descrição ou geração de descrições para imagens.

Exemplo de uso:

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(["uma foto de um gato", "uma foto de um cão"])

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)  # Probabilidades de correspondência entre a imagem e os textos

O CLIP é amplamente utilizado em tarefas de compreensão e geração multimodal.