Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Evalueringsmetrikker for Generativ AI | Sektion
/
Generativ Deep Learning

bookEvalueringsmetrikker for Generativ AI

Stryg for at vise menuen

Evaluering af generative modeller adskiller sig fra evaluering af diskriminative modeller, som benytter nøjagtighedsmetrikker. Da generative modeller kan producere mange gyldige output, skal de vurderes ud fra kvalitet, diversitet og relevans. Dette afsnit introducerer centrale metrikker, der anvendes i både forskning og industri til at evaluere generative modeller ud fra perceptuelle, statistiske og menneskecentrerede dimensioner.

Evaluering af billedbaserede modeller (GANs, VAEs, Diffusion)

Perceptuelle og statistiske evalueringsmetoder anvendes ofte på billedbaserede generative modeller. Disse hjælper med at måle, hvor realistiske, varierede og veluddelte de genererede output er sammenlignet med rigtige billeder.

Inception Score (IS)

Kvantificerer både klarhed og diversitet af genererede billeder ved hjælp af klassifikationssikkerheden fra en fortrænet Inception-model.

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

hvor:

  • p(yx)p(y|x) er den betingede label-fordeling for billede xx
  • p(y)p(y) er den marginale klassefordeling.
from torchmetrics.image.inception import InceptionScore

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

Fréchet Inception Distance (FID)

Måler ligheden mellem fordelinger af rigtige og genererede billeder ved brug af 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})

hvor:

  • μ\mu og Σ\Sigma er gennemsnit og kovarians af feature-repræsentationer.
  • Tr()\text{Tr}() står for sporet af en matrix — det er summen af de diagonale elementer. Sporet hjælper med at kvantificere, hvor forskellige feature-fordelingerne er med hensyn til deres spredning eller form.
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

Sammenligner visuel lighed mellem billeder ved hjælp af dybe netværksfunktioner.

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

Evaluering af tekstbaserede modeller (Transformers, GPT, BERT)

Sprogmodeller til generering evalueres for kvalitet, sammenhæng og relevans gennem statistiske, semantiske og subjektive metrikker.

BLEU / ROUGE / METEOR

Sammenligner n-gram-overlap mellem genereret og reference-tekst.

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

hvor:

  • pnp_n er præcision for n-grammer
  • BP\text{BP} er kortheds-straf.
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

Måler semantisk lighed ved brug af kontekstuelle indlejringer. Benytter cosinus-lighed mellem kontekstuelle indlejringer, med præcision/recall/F1-sammenfatninger.

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

Promptfidelitet

Måler overholdelse af output i forhold til inputprompter, især i instruktionsjusterede modeller.

Note
Bemærk

Manuel sammenligning af prompter med output eller brug af models til lighedsscore som CLIP eller BERT.

Evaluering af multimodale modeller (f.eks. DALL·E, Stable Diffusion)

Multimodale modeller skal evalueres for overensstemmelse mellem modaliteter, såsom billede og tekst.

CLIPScore

Beregner lighed mellem billede-embeddings og tekstprompt-embeddings.

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

hvor ff er modalitetsspecifikke embeddings.

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-til-billede-troværdighed

Måler hvor godt genererede billeder matcher deres tilhørende prompts.

Note
Bemærk

Brug CLIP eller manuel annotering til at vurdere visuel-tekstuel overensstemmelse.

Menneskelig evaluering

På trods af fremskridt inden for automatiserede metrikker forbliver menneskelig evaluering afgørende for subjektive eller kreative opgaver. Mange generative resultater, især inden for kunst, historiefortælling eller design, kræver menneskelig vurdering for at bedømme deres meningsfuldhed, originalitet og appel. Disse metoder giver nuancerede indsigter, som automatiserede metrikker ofte overser.

A/B-testning og Turing-lignende opsætninger

Anmodning til brugere om at vælge foretrukne eller mest realistiske output blandt to muligheder.

  • Virkelighedseksempel: I OpenAI's GPT-3 RLHF-pipeline blev crowdworkere vist flere modeludfyldelser og bedt om at rangere eller vælge den mest hjælpsomme eller realistiske. Denne feedback formede direkte belønningsmodeller til yderligere finjustering.

Prompt-til-output-troværdighed

Subjektiv evaluering af, hvor godt output afspejler den givne prompt.

  • Virkelighedseksempel: Under RLHF-træning for InstructGPT vurderede annotatorer udfyldelser for en prompt som "Skriv en høflig e-mail, der afslår et jobtilbud." Menneskelige vurderinger afgjorde, hvilke output der stemte overens med brugerens hensigt og stil.

Vurderingsskalaer

Indsamling af vurderinger på skalaer (f.eks. 1–5) for realisme, sammenhæng eller kreativitet.

  • Virkelighedseksempel: I Anthropic's Claude-evalueringer indsamlede forskere vurderinger fra 1–5 stjerner for hjælpsomhed, ærlighed og ufarlighed for genereringer i dialog, hvilket understøttede modellens tilpasningsmål.

Crowdsourcet evaluering

Brug platforme som MTurk til at indsamle forskellige meninger. Sikr enighed blandt bedømmere.

  • Virkelighedseksempel: Google anvendte storskala crowdsourcing til at vurdere LaMDA-chatbottens kvalitet på dimensioner som fornuftighed og specificitet ved at samle tusindvis af brugerbedømmelser.
Note
Studér mere

Brug en hybrid af automatiske og menneskecentrerede evalueringer for at opnå en mere fuldstændig forståelse af generative modellers ydeevne. Menneskelig indsigt hjælper med at validere metrikpålidelighed og identificere subtile fejlsituationer, som ikke fanges af tal. For kritiske anvendelser kan kombinationen af flere menneskelige bedømmere og beregning af interrater-pålidelighed (f.eks. Cohens kappa) øge robustheden.

Resumé

Disse evalueringsstrategier er uundværlige for at iterere modeludvikling og vejlede beslutninger om implementering. Kombinationen af objektive målinger og menneskelig feedback hjælper udviklere med at balancere realisme, kreativitet, diversitet og overensstemmelse med brugerens hensigt eller opgavekrav. Effektiv evaluering sikrer, at generative AI-modeller ikke kun præsterer teknisk godt, men også stemmer overens med virkelige anvendelser og menneskelige forventninger.

1. Hvilket af følgende evalueringsmål bruges primært til at måle diversiteten af genererede billeder i Generative Adversarial Networks (GANs)?

2. Hvad er det primære formål med Fréchet Inception Distance (FID) i evaluering af generative modeller?

3. Hvilken metrik bruges ofte til at evaluere den semantiske lighed mellem genereret tekst og referencetekst?

question mark

Hvilket af følgende evalueringsmål bruges primært til at måle diversiteten af genererede billeder i Generative Adversarial Networks (GANs)?

Select the correct answer

question mark

Hvad er det primære formål med Fréchet Inception Distance (FID) i evaluering af generative modeller?

Select the correct answer

question mark

Hvilken metrik bruges ofte til at evaluere den semantiske lighed mellem genereret tekst og referencetekst?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 13

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 1. Kapitel 13
some-alt