Ce face Biblioteca Evaluate (ROUGE, BLEU, WER, F1)
Evaluate încarcă o metrică cu evaluate.load("nume") și o calculează cu compute(predictions=..., references=...). Fiecare metrică are pe Hub un Space cu demo interactiv și o fișă care descrie utilizarea și limitele ei (organizația evaluate-metric).
Exemple de metrici: ROUGE pentru rezumate, BLEU / sacreBLEU pentru traduceri, WER pentru recunoașterea vorbirii, accuracy, F1 și exact match pentru clasificare și întrebări-răspunsuri. O metrică se poate folosi în funcția compute_metrics a unui Trainer.
Documentația Evaluate precizează că pentru abordări mai noi, în special evaluarea LLM-urilor, Hugging Face recomandă biblioteca LightEval, mai activ întreținută. Evaluate rămâne utilă pentru metricile clasice de mai sus.
Sintaxă și opțiuni
| Opțiune / Parametru | Descriere |
|---|---|
evaluate.load(nume) |
Încarcă metrica. |
compute(predictions=..., references=...) |
Calculează scorul. |
add_batch(...) |
Adaugă predicții pe loturi, înainte de compute(). |
Exemple practice
Exemplul 1: F1 în compute_metrics pentru Trainer
import evaluate
f1_metric = evaluate.load("f1")
def compute_metrics(eval_pred):
logits, labels = eval_pred
preds = logits.argmax(axis=-1)
return f1_metric.compute(predictions=preds, references=labels)
Exemplul 2: Rata de eroare pe cuvinte (WER)
wer = evaluate.load("wer")
scor = wer.compute(predictions=["salut lume"], references=["salutare lume"])
Greșeli frecvente și bune practici
- Folosești Evaluate pentru benchmark-uri de LLM (MMLU, GSM8K etc.). Documentația Hugging Face recomandă pentru acestea LightEval.
- Compari scoruri ROUGE sau BLEU calculate cu setări diferite (tokenizare, normalizare). Citește fișa metricii înainte să compari rezultate.