MLOps Academy · บทเรียน

กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด

บล็อก PR หากโมเดลใหม่ทำคะแนนได้แย่ลง

บทเรียน 3 จาก 413 ขั้นตอน

กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด เป็นบทเรียน MLOps Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MLOps Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MLOps Academy มีบทเรียนทั้งหมด 4 บทเรียน

ด่านตรวจเมื่อผสานรวม

ด่านคุณภาพจะขัดขวางไม่ให้ผสานรวมคำขอดึงโค้ด เว้นแต่โมเดลใหม่จะมีคุณภาพเพียงพอ วิธีนี้เปลี่ยนคุณภาพของโมเดลให้เป็นกฎที่ต้องปฏิบัติตาม ไม่ใช่เพียงความหวัง 🚧

เหตุใดการทดสอบโค้ดจึงไม่เพียงพอ

โค้ดอาจผ่านการทดสอบทุกอย่าง แต่ยังสร้างโมเดลที่แย่ลงได้ คุณจึงต้องมีการตรวจสอบ ตัวชี้วัด แยกต่างหาก เช่น ความแม่นยำหรือ F1 เพื่อปกป้องผู้ใช้

เลือกตัวชี้วัดเพื่อคุ้มครองหนึ่งรายการ

เลือก ตัวชี้วัดหลักเพียงรายการเดียวที่สะท้อนความสำเร็จของงานของคุณ การใช้ตัวเลขหลายรายการเป็นด่านพร้อมกันทำให้ทุก PR กลายเป็นการต่อรองที่สับสน

กำหนดเกณฑ์ขั้นต่ำที่ชัดเจน

กำหนดระดับขั้นต่ำหรือ เกณฑ์ของคุณ หากโมเดลใหม่ได้คะแนนต่ำกว่าเกณฑ์ การสร้างจะล้มเหลวและการผสานรวมจะถูกขัดขวางโดยอัตโนมัติ

MIN_ACCURACY = 0.85

ประเมินด้วยชุดข้อมูลคงที่

ให้ประเมินคะแนนกับ ชุดข้อมูลทดสอบที่กันไว้ออกจากการฝึกชุดเดิมเสมอ ชุดประเมินที่ไม่เปลี่ยนแปลงทำให้เปรียบเทียบระหว่างคำขอดึงโค้ดและการเรียกใช้แต่ละครั้งได้อย่างยุติธรรม

ทำให้การสร้างล้มเหลวโดยตั้งใจ

ใน CI ขั้นตอนที่จบด้วยรหัสที่ไม่ใช่ศูนย์จะทำเครื่องหมายว่างาน ล้มเหลว ดังนั้นหากตัวชี้วัดไม่ถึงเกณฑ์ คุณจะทำให้เกิดข้อผิดพลาดโดยตั้งใจเพื่อหยุดการผสานรวม

if acc < MIN_ACCURACY:
    raise SystemExit(f"acc {acc} below bar")

เปรียบเทียบกับรุ่นที่ดีที่สุด

ด่านที่ฉลาดกว่าจะเปรียบเทียบโมเดลใหม่กับ ค่าฐานปัจจุบันที่ใช้งานจริง และขัดขวางการผสานรวมเมื่อผลลัพธ์ถดถอย แทนที่จะตรวจเพียงว่าถึงตัวเลขคงที่หรือไม่

assert new_acc >= baseline_acc

การป้องกันสาขาบังคับใช้กฎ

ใน GitHub ให้ทำเครื่องหมายงาน CI เป็น การตรวจสอบที่จำเป็นภายใต้การป้องกันสาขา จากนั้นปุ่มผสานรวมจะยังใช้ไม่ได้จนกว่าด่านของคุณจะผ่าน

แสดงตัวเลขใน PR

แสดงคะแนนเพื่อให้ผู้ตรวจสอบเห็น บรรทัดบันทึกหรือความคิดเห็นใน PR ที่แสดงตัวชี้วัดอย่างชัดเจนจะเปลี่ยนเครื่องหมายกากบาทสีแดงให้กลายเป็นคำอธิบายที่ผู้คนเชื่อถือได้

print(f"::notice::accuracy={acc:.3f}")

อนุญาตให้ผู้ตรวจสอบยกเว้นกฎ

บางครั้งคะแนนลดลงเล็กน้อยก็ยอมรับได้ ให้มนุษย์ยกเว้นกฎที่ล้มเหลวได้ผ่านการอนุมัติในการตรวจสอบ เพื่อให้กฎเป็นแนวทางโดยไม่ขัดขวางทีมอย่างสิ้นเชิง

ป้องกันคะแนนที่ผันผวน

กำหนดค่าเริ่มต้นและชุดข้อมูลทดสอบที่คงที่ เพื่อให้โมเดลเดิมให้ตัวเลขเดิม การประเมินผลแบบกำหนดแน่นอนช่วยป้องกันไม่ให้ด่านล้มเหลวเพียงเพราะความบังเอิญ

ตรวจสอบอย่างรวดเร็ว

ขั้นตอน CI ขัดขวางการผสานรวมจริง ๆ อย่างไรเมื่อโมเดลมีประสิทธิภาพต่ำเกินไป

ทบทวน

เลือก ตัวชี้วัดหนึ่งรายการ กำหนดเกณฑ์หรือทำให้ดีกว่าค่าฐาน และทำให้การสร้างล้มเหลวเมื่อไม่ผ่าน กำหนดให้งานเป็นสิ่งจำเป็น เพื่อไม่ให้โมเดลที่อ่อนประสิทธิภาพผสานรวมได้โดยไม่มีใครสังเกต

เริ่มต้นได้ฟรี

เรียนรู้ Python ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MLOps Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MLOps Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด”

บล็อก PR หากโมเดลใหม่ทำคะแนนได้แย่ลง คุณปฏิบัติ MLOps Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MLOps Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน MLOps Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน MLOps Academy นี้ได้ไหม

ได้ บทเรียน MLOps Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. CI/CD สำหรับโมเดลหมายถึงอะไร
  2. เวิร์กโฟลว์ GitHub Actions สำหรับการเรียนรู้ของเครื่อง
  3. กำหนดให้คุณภาพโมเดลเป็นเงื่อนไขการรวมโค้ด
  4. สร้างและส่งอิมเมจเมื่อออกรีลีส
← กลับไปที่ MLOps Academy