Kom igångKom igång gratis

Sätt modellen i utvärderingsläge

Nu är det dags att sätta din språkmodell i utvärderingsläge. Om modellen inte är i utvärderingsläge under inferens kommer lager som batchnormalisering och dropout att påverka modellens beteende, vilket leder till inkonsekvent översättningskvalitet. Bygg loopen för att utvärdera modellen!

En del data har laddats in i förväg: model, eval_dataloader, accelerator och metric.

Den här övningen är en del av kursen

Effektiv AI-modellträning med PyTorch

Visa kurs

Övningsinstruktioner

  • Sätt modellen i utvärderingsläge innan du loopar igenom batchar i datamängden.
  • Aggregera predictions och labels över enheter för att beräkna utvärderingsmått med Accelerators .gather_for_metrics()-metod.
  • Beräkna utvärderingsmåttet i slutet.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

metric = evaluate.load("glue", "mrpc")

# Set the model in evaluation mode
____.____()
for step, batch in enumerate(eval_dataloader):
    with torch.no_grad():
        outputs = model(**batch)
    predictions = outputs.logits.argmax(dim=-1)
    # Aggregate values across devices
    predictions, references = ____.____((predictions, batch["labels"]))
    metric.add_batch(predictions=predictions, references=references)
# Compute the evaluation metric
eval_metric = metric.____()
print(eval_metric)
Redigera och kör kod