เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ตั้งค่าโมเดลให้อยู่ในโหมดประเมินผล

ถึงเวลาตั้งค่าโมเดลภาษาให้อยู่ในโหมดประเมินผลแล้ว หากไม่ได้เปิดใช้โหมดนี้ระหว่างการอนุมาน เลเยอร์อย่าง batch normalization และ dropout จะส่งผลต่อพฤติกรรมของโมเดล ทำให้คุณภาพการแปลไม่สม่ำเสมอ มาสร้าง loop สำหรับประเมินผลโมเดลกัน!

ข้อมูลต่อไปนี้ถูกโหลดไว้ให้แล้ว: model, eval_dataloader, accelerator และ metric

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ตั้งค่าโมเดลให้อยู่ในโหมดประเมินผลก่อนที่จะวนลูปผ่านแต่ละ batch ในชุดข้อมูล
  • รวบรวม predictions และ labels จากทุกอุปกรณ์เพื่อคำนวณเมตริกการประเมินผล โดยใช้เมธอด .gather_for_metrics() ของ Accelerator
  • คำนวณเมตริกการประเมินผลเมื่อสิ้นสุดกระบวนการ

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

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)
แก้ไขและรันโค้ด