Perda contrastiva
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 = —