Mulai sekarangMulai gratis

Mengatur model ke mode evaluasi

Anda siap menempatkan model bahasa Anda dalam mode evaluasi. Jika model tidak berada dalam mode evaluasi saat inferensi, lapisan seperti batch normalization dan dropout akan mengubah perilaku model, sehingga menghasilkan kualitas terjemahan yang tidak konsisten. Bangun loop untuk mengevaluasi model!

Beberapa data telah dimuat sebelumnya: model, eval_dataloader, accelerator, dan metric.

Latihan ini merupakan bagian dari kursus

Pelatihan Model AI Efisien dengan PyTorch

Lihat Kursus

Instruksi latihan

  • Atur model ke mode evaluasi sebelum melakukan loop melalui batch dalam himpunan data.
  • Gabungkan predictions dan labels di seluruh perangkat untuk menghitung metrik evaluasi dengan metode .gather_for_metrics() milik Accelerator.
  • Hitung metrik evaluasi di akhir.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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)
Edit dan Jalankan Kode