Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Evaluatiemaatstaven voor Generatieve AI | Sectie
Practice
Projects
Quizzes & Challenges
Quizzen
Challenges
/
Generatieve Deep Learning

bookEvaluatiemaatstaven voor Generatieve AI

Veeg om het menu te tonen

Het evalueren van generatieve modellen verschilt van het evalueren van discriminatieve modellen, die afhankelijk zijn van nauwkeurigheidsstatistieken. Omdat generatieve modellen veel geldige uitkomsten produceren, moeten ze worden beoordeeld op kwaliteit, diversiteit en relevantie. Deze sectie introduceert belangrijke statistieken die zowel in onderzoek als in de industrie worden gebruikt om generatieve modellen te evalueren op perceptuele, statistische en mensgerichte dimensies.

Evaluatie voor beeldgebaseerde modellen (GANs, VAEs, Diffusie)

Perceptuele en statistische evaluatiemethoden worden vaak toegepast op beeldgebaseerde generatieve modellen. Deze helpen bij het meten hoe realistisch, divers en goed verdeeld de gegenereerde uitkomsten zijn in vergelijking met echte afbeeldingen.

Inception Score (IS)

Kwantificeert zowel de helderheid als de diversiteit van gegenereerde afbeeldingen met behulp van de classificatiezekerheid van een voorgetraind Inception-model.

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

waarbij:

  • p(yx)p(y|x) de voorwaardelijke labelverdeling voor afbeelding xx is
  • p(y)p(y) de marginale klassenverdeling is.
from torchmetrics.image.inception import InceptionScore

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

Fréchet Inception Distance (FID)

Meet de gelijkenis tussen distributies van echte en gegenereerde afbeeldingen met behulp van feature-embeddings.

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})

waarbij:

  • μ\mu en Σ\Sigma het gemiddelde en de covariantie van feature-representaties zijn.
  • Tr()\text{Tr}() staat voor de spoorwaarde van een matrix — dit is de som van de diagonaalelementen. De spoorwaarde helpt kwantificeren hoe verschillend de feature-distributies zijn qua spreiding of vorm.
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

Vergelijkt visuele gelijkenis tussen afbeeldingen met behulp van diepe netwerkfeatures.

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

Evaluatie voor tekstgebaseerde modellen (Transformers, GPT, BERT)

Taalgeneratiemodellen worden geëvalueerd op kwaliteit, samenhang en relevantie via statistische, semantische en subjectieve maatstaven.

BLEU / ROUGE / METEOR

Vergelijken n-gram overlap tussen gegenereerde en referentietekst.

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

waarbij:

  • pnp_n is precisie voor n-grammen
  • BP\text{BP} is brevity penalty.
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

Meet semantische gelijkenis met behulp van contextuele embeddings. Gebruikt cosinusgelijkenis tussen contextuele embeddings, met precisie/recall/F1 aggregaten.

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}")

Prompttrouw

Meet de mate waarin de output overeenkomt met de inputprompts, met name bij op instructies getrainde modellen.

Note
Opmerking

Handmatig prompts vergelijken met outputs of gebruik maken van vergelijkingsmodellen zoals CLIP of BERT.

Evaluatie voor multimodale modellen (bijv. DALL·E, Stable Diffusion)

Multimodale modellen moeten worden geëvalueerd op afstemming tussen modaliteiten, zoals beeld en tekst.

CLIPScore

Berekent de gelijkenis tussen afbeeldings- en tekstprompt-embeddings.

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

waarbij ff modaliteitsspecifieke embeddings zijn.

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())

Prompt-naar-beeld getrouwheid

Meet hoe goed gegenereerde afbeeldingen overeenkomen met hun conditionerende prompts.

Note
Opmerking

Gebruik CLIP of handmatige annotatie om visueel-tekstuele overeenstemming te beoordelen.

Menselijke evaluatie

Ondanks vooruitgang in geautomatiseerde metriek blijft menselijke evaluatie essentieel voor subjectieve of creatieve taken. Veel gegenereerde uitkomsten, vooral in kunst, verhalen vertellen of ontwerp, vereisen menselijk oordeel om hun betekenis, originaliteit en aantrekkingskracht te beoordelen. Deze methoden bieden genuanceerde inzichten die geautomatiseerde metriek vaak mist.

A/B-test en Turing-achtige opstellingen

Gebruikers laten kiezen tussen twee opties voor de meest geprefereerde of realistisch ogende output.

  • Praktijkvoorbeeld: in de GPT-3 RLHF-pijplijn van OpenAI kregen crowdworkers meerdere modelvoltooiingen te zien en werd hen gevraagd de meest behulpzame of realistische te rangschikken of te selecteren. Deze feedback vormde direct de beloningsmodellen voor verdere verfijning.

Prompt-naar-output-nauwkeurigheid

Subjectieve evaluatie van hoe goed de output overeenkomt met de gegeven prompt.

  • Praktijkvoorbeeld: tijdens RLHF-training voor InstructGPT beoordeelden annotators voltooiingen voor een prompt zoals "Write a polite email declining a job offer." Menselijke scores bepaalden welke outputs aansloten bij de intentie en stijl van de gebruiker.

Beoordelingsschalen

Verzamel beoordelingen op schalen (bijv. 1–5) voor realisme, samenhang of creativiteit.

  • Praktijkvoorbeeld: bij de evaluaties van Claude door Anthropic verzamelden onderzoekers beoordelingen van 1–5 sterren op behulpzaamheid, eerlijkheid en onschadelijkheid voor gegenereerde dialogen, ter ondersteuning van modelafstemmingsdoelen.

Crowdsourced evaluatie

Gebruik platforms zoals MTurk om diverse meningen te verzamelen. Zorg voor overeenstemming tussen beoordelaars.

  • Praktijkvoorbeeld: Google gebruikte grootschalige crowdsourcing om de kwaliteit van de LaMDA-chatbot te beoordelen op aspecten zoals zinnigheid en specificiteit door duizenden gebruikersbeoordelingen te aggregeren.
Note
Meer bestuderen

Gebruik een hybride van automatische en mensgerichte evaluaties om een vollediger beeld te krijgen van de prestaties van generatieve modellen. Menselijk inzicht helpt de betrouwbaarheid van metriek te valideren en subtiele faalgevallen te identificeren die niet door cijfers worden vastgelegd. Voor kritieke toepassingen kan het combineren van meerdere menselijke beoordelaars en het berekenen van interbeoordelaarsbetrouwbaarheid (bijv. Cohen’s kappa) de robuustheid verbeteren.

Samenvatting

Deze evaluatiestrategieën zijn onmisbaar voor het iteratief ontwikkelen van modellen en het sturen van implementatiebeslissingen. Het combineren van objectieve meetwaarden met menselijke feedback helpt ontwikkelaars om realisme, creativiteit, diversiteit en afstemming op gebruikersintentie of taakvereisten in balans te brengen. Effectieve evaluatie zorgt ervoor dat generatieve AI-modellen niet alleen technisch goed presteren, maar ook aansluiten bij praktijktoepassingen en menselijke verwachtingen.

1. Welke van de volgende evaluatiemaatstaven wordt voornamelijk gebruikt om de diversiteit van gegenereerde afbeeldingen in Generative Adversarial Networks (GANs) te meten?

2. Wat is het primaire gebruik van Fréchet Inception Distance (FID) bij het evalueren van generatieve modellen?

3. Welke metriek wordt vaak gebruikt om de semantische gelijkenis tussen gegenereerde tekst en referentietekst te evalueren?

question mark

Welke van de volgende evaluatiemaatstaven wordt voornamelijk gebruikt om de diversiteit van gegenereerde afbeeldingen in Generative Adversarial Networks (GANs) te meten?

Select the correct answer

question mark

Wat is het primaire gebruik van Fréchet Inception Distance (FID) bij het evalueren van generatieve modellen?

Select the correct answer

question mark

Welke metriek wordt vaak gebruikt om de semantische gelijkenis tussen gegenereerde tekst en referentietekst te evalueren?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 13

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 1. Hoofdstuk 13
some-alt