Multimodal Prof. Anderson Rocha Tavares Bloco 3 · Slide 4 / 7

Perda contrastiva

Bloco 3 — Treino Contrastivo · A função de loss do CLIP

Matriz de similaridade
cão praia cidade
Clique em qualquer célula para inspecionar · diagonal para editar
InfoNCE: perda contrastiva

InfoNCE (Information Noise-Contrastive Estimation) treina o modelo para aproximar pares corretos e afastar os incorretos. Para cada imagem, o texto correspondente deve receber a maior probabilidade dentro do batch.

Li→t = −1/N Σᵢ log exp(sim(iᵢ,tᵢ)/τ) Σⱼ exp(sim(iᵢ,tⱼ)/τ)
Lt→i = −1/N Σⱼ log exp(sim(tⱼ,iⱼ)/τ) Σᵢ exp(sim(tⱼ,iᵢ)/τ)
L = (Li→t + Lt→i) / 2
  • sim(i,t) = similaridade de cosseno entre imagem i e texto t
  • τ (tau) = temperatura que controla a nitidez dos logits
  • Li→t: para cada imagem, o texto correto deve ter maior score
  • Lt→i: para cada texto, a imagem correta deve ter maior score
  • Loss final = média simétrica das duas direções
Par selecionado: 🐕 ↔ cão
Embedding da imagem
Embedding do texto
Temperatura τ 0.20
Numerador: exp(sim(vᵢ,tᵢ)/τ) = — (sim = —)
Denominador: Σⱼ exp(sim(vᵢ,tⱼ)/τ) = — (constante exceto por sim(vᵢ,tᵢ))
Loss em função de sim(vᵢ,tᵢ) — o ponto (●) marca o estado atual; arraste o slider τ para atualizar
Li→t = —  Lt→i = —  L = —