Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Métricas de Avaliação para IA Generativa | Seção
Aprendizado Profundo Generativo

bookMétricas de Avaliação para IA Generativa

Deslize para mostrar o menu

A avaliação de modelos generativos difere da avaliação de modelos discriminativos, que dependem de métricas de acurácia. Como modelos generativos produzem muitos resultados válidos, eles devem ser avaliados quanto à qualidade, diversidade e relevância. Esta seção apresenta as principais métricas utilizadas em pesquisa e na indústria para avaliar modelos generativos em dimensões perceptuais, estatísticas e centradas no ser humano.

Avaliação para Modelos Baseados em Imagem (GANs, VAEs, Difusão)

Métodos de avaliação perceptual e estatística são comumente aplicados a modelos generativos baseados em imagem. Eles ajudam a medir o quão realistas, diversos e bem distribuídos são os resultados gerados em comparação com imagens reais.

Inception Score (IS)

Quantifica tanto a clareza quanto a diversidade das imagens geradas usando a confiança de classificação de um modelo Inception pré-treinado.

IS=exp(Ex[DKL(p(yx)p(y))])\text{IS}=\exp(\mathbb{E}_x[D_{KL}(p(y|x)||p(y))])

onde:

  • p(yx)p(y|x) é a distribuição condicional de rótulos para a imagem xx
  • p(y)p(y) é a distribuição marginal das classes.
from torchmetrics.image.inception import InceptionScore

inception = InceptionScore()
inception.update(imgs)
inception.compute()

Fréchet Inception Distance (FID)

Mede a similaridade entre as distribuições de imagens reais e geradas usando embeddings de características.

FID=μrμg2+Tr(Σr+Σg2(ΣrΣg)1/2)\text{FID}=||\mu_r-\mu_g||^2+\text{Tr}(\Sigma_r + \Sigma_g - 2(\Sigma_r\Sigma_g)^{1/2})

onde:

  • μ\mu e Σ\Sigma são a média e a covariância das representações de características.
  • Tr()\text{Tr}() representa o traço de uma matriz — é a soma dos elementos da diagonal. O traço ajuda a quantificar o quão diferentes são as distribuições das características em termos de dispersão ou forma.
from pytorch_fid import fid_score
    
fid = fid_score.calculate_fid_given_paths(["real_images", "generated_images"], batch_size=50, device="cuda", dims=2048)
print("FID:", fid)

LPIPS

Compara a similaridade visual entre imagens utilizando características de redes neurais profundas.

import lpips
    
loss_fn = lpips.LPIPS(net='alex')
distance = loss_fn(img1, img2)
print("LPIPS Distance:", distance.item())

Avaliação para Modelos Baseados em Texto (Transformers, GPT, BERT)

Modelos de geração de linguagem são avaliados quanto à qualidade, coerência e relevância por meio de métricas estatísticas, semânticas e subjetivas.

BLEU / ROUGE / METEOR

Comparam a sobreposição de n-gramas entre o texto gerado e o texto de referência.

BLEU=BPexp(n=1Nwnlogpn)\text{BLEU}=\text{BP} \cdot \exp\left(\sum^N_{n=1}w_n\log p_n\right)

onde:

  • pnp_n é a precisão para n-gramas
  • BP\text{BP} é a penalidade de brevidade.
from nltk.translate.bleu_score import sentence_bleu
    
reference = [['the', 'cat', 'is', 'on', 'the', 'mat']]
candidate = ['the', 'cat', 'sat', 'on', 'the', 'mat']
    
score = sentence_bleu(reference, candidate)
print("BLEU Score:", score)

BERTScore

Mede a similaridade semântica utilizando embeddings contextuais. Utiliza similaridade cosseno entre embeddings contextuais, com agregados de precisão/recall/F1.

from bert_score import score
    
cands = ["A cat sits on the mat."]
refs = ["The cat is on the mat."]
    
P, R, F1 = score(cands, refs, lang='en')
print(f"BERTScore F1: {F1.mean().item():.4f}")

Fidelidade ao Prompt

Mede a aderência da saída aos prompts de entrada, especialmente em modelos ajustados por instrução.

Note
Nota

Comparação manual entre prompts e saídas ou uso de modelos de pontuação de similaridade como CLIP ou BERT.

Avaliação para Modelos Multimodais (por exemplo, DALL·E, Stable Diffusion)

Modelos multimodais precisam ser avaliados quanto ao alinhamento entre modalidades, como imagem e texto.

CLIPScore

Calcula a similaridade entre embeddings de imagem e embeddings do prompt textual.

CLIPScores=cos(fimage, ftext)\text{CLIPScores}=cos(f_{image},\ f_{text})

onde ff são embeddings específicos de cada modalidade.

import torch
import clip
from PIL import Image

model, preprocess = clip.load("ViT-B/32")
image = preprocess(Image.open("generated.jpg")).unsqueeze(0)
text = clip.tokenize(["A dog playing in the snow"])

with torch.no_grad():
    image_features = model.encode_image(image)
    text_features = model.encode_text(text)
    similarity = torch.cosine_similarity(image_features, text_features)
print("CLIPScore:", similarity.item())

Fidelidade de Prompt para Imagem

Mede o quão bem as imagens geradas correspondem aos prompts de condicionamento.

Note
Nota

Utilize CLIP ou anotação manual para avaliar o alinhamento visual-textual.

Avaliação Humana

Apesar dos avanços em métricas automatizadas, a avaliação humana continua essencial para tarefas subjetivas ou criativas. Muitos resultados gerados, especialmente em arte, narrativa ou design, exigem julgamento humano para avaliar seu significado, originalidade e apelo. Esses métodos fornecem percepções detalhadas que métricas automatizadas frequentemente não capturam.

Teste A/B e Configurações Estilo Turing

Solicitação aos usuários para escolher saídas preferidas ou mais realistas entre duas opções.

  • Exemplo do Mundo Real: no pipeline RLHF do GPT-3 da OpenAI, trabalhadores terceirizados visualizaram múltiplas conclusões do modelo e foram solicitados a classificar ou selecionar a mais útil ou realista. Esse feedback moldou diretamente os modelos de recompensa para ajustes posteriores.

Fidelidade do Prompt à Saída

Avaliação subjetiva de quão bem a saída reflete o prompt fornecido.

  • Exemplo do Mundo Real: durante o treinamento RLHF para o InstructGPT, anotadores avaliaram conclusões para um prompt como "Write a polite email declining a job offer." As pontuações humanas determinaram quais saídas estavam alinhadas com a intenção e o estilo do usuário.

Escalas de Avaliação

Coleta de avaliações em escalas (por exemplo, 1–5) para realismo, coerência ou criatividade.

  • Exemplo do Mundo Real: nas avaliações do Claude da Anthropic, pesquisadores coletaram classificações de 1 a 5 estrelas sobre utilidade, honestidade e ausência de danos para gerações em diálogos, auxiliando nos objetivos de alinhamento do modelo.

Avaliação por Crowdsourcing

Utilização de plataformas como MTurk para coletar opiniões diversas. Garantia de concordância entre avaliadores.

  • Exemplo do Mundo Real: O Google utilizou crowdsourcing em larga escala para avaliar a qualidade do chatbot LaMDA em dimensões como coerência e especificidade, agregando milhares de julgamentos de usuários.
Note
Estude Mais

Utilização de uma abordagem híbrida entre avaliações automáticas e centradas em humanos para obter uma compreensão mais completa do desempenho de modelos generativos. A percepção humana auxilia na validação da confiabilidade das métricas e na identificação de falhas sutis não capturadas por números. Para aplicações críticas, a combinação de múltiplos avaliadores humanos e o cálculo da confiabilidade entre avaliadores (por exemplo, kappa de Cohen) pode aumentar a robustez.

Resumo

Essas estratégias de avaliação são indispensáveis para iterar no desenvolvimento do modelo e orientar decisões de implantação. A combinação de métricas objetivas com feedback humano auxilia os desenvolvedores a equilibrar realismo, criatividade, diversidade e alinhamento com a intenção do usuário ou requisitos da tarefa. Uma avaliação eficaz garante que os modelos de IA generativa apresentem não apenas bom desempenho técnico, mas também estejam alinhados com casos de uso do mundo real e expectativas humanas.

1. Qual das seguintes métricas de avaliação é usada principalmente para medir a diversidade de imagens geradas em Redes Adversariais Generativas (GANs)?

2. Qual é o principal uso do Fréchet Inception Distance (FID) na avaliação de modelos generativos?

3. Qual métrica é comumente utilizada para avaliar a similaridade semântica entre texto gerado e texto de referência?

question mark

Qual das seguintes métricas de avaliação é usada principalmente para medir a diversidade de imagens geradas em Redes Adversariais Generativas (GANs)?

Select the correct answer

question mark

Qual é o principal uso do Fréchet Inception Distance (FID) na avaliação de modelos generativos?

Select the correct answer

question mark

Qual métrica é comumente utilizada para avaliar a similaridade semântica entre texto gerado e texto de referência?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 13

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 1. Capítulo 13
some-alt