ระบบ ML การผลิต: การฝึกแบบคงที่กับแบบไดนามิก

โดยทั่วไปแล้ว คุณสามารถฝึกโมเดลได้ 2 วิธี ดังนี้

  • การฝึกแบบคงที่ (หรือที่เรียกว่าการฝึกแบบออฟไลน์) หมายความว่าคุณฝึกโมเดลเพียงครั้งเดียว จากนั้นคุณแสดงโมเดลที่ฝึกแล้วโมเดลนั้นไปสักระยะหนึ่ง
  • การฝึกแบบไดนามิก (หรือที่เรียกว่าการฝึกออนไลน์) หมายความว่าคุณฝึกโมเดลอย่างต่อเนื่องหรืออย่างน้อยก็บ่อยครั้ง โดยปกติแล้ว คุณจะใช้โมเดลที่ฝึกล่าสุด
รูปที่ 2 แป้งดิบสร้างขนมปัง 3 ก้อนที่เหมือนกัน
รูปที่ 2 การฝึกแบบคงที่ ฝึกเพียงครั้งเดียว แสดงโมเดลที่สร้างขึ้นแล้วเดียวกันหลายครั้ง (รูปภาพโดย Pexels และ fancycrave1)

 

รูปที่ 3 แป้งดิบจะทำให้ขนมปังแต่ละก้อนแตกต่างกันเล็กน้อย
รูปที่ 3 การฝึกอบรมแบบไดนามิก ฝึกโมเดลใหม่บ่อยๆ และแสดงโมเดลที่สร้างขึ้นล่าสุด (รูปภาพโดย Pexels และ Couleur)

 

ตารางที่ 1 ข้อดีและข้อเสียหลักๆ

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

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

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

ดูรายละเอียดเพิ่มเติมเกี่ยวกับการฝึกแบบคงที่และแบบไดนามิกได้ในหลักสูตรการจัดการโปรเจ็กต์ ML

แบบฝึกหัด: ทดสอบความเข้าใจ

ข้อความต่อไปนี้ข้อใด2 ข้อเป็นจริงเกี่ยวกับการฝึกแบบคงที่ (แบบออฟไลน์)
โมเดลจะอัปเดตอยู่เสมอเมื่อมีข้อมูลใหม่เข้ามา
อันที่จริง หากคุณฝึกโมเดลแบบออฟไลน์ โมเดลจะไม่มีวิธีรวมข้อมูลใหม่เมื่อเข้ามา ซึ่งอาจทําให้โมเดลล้าสมัยได้ หากการแจกแจงที่คุณพยายามเรียนรู้มีการเปลี่ยนแปลงเมื่อเวลาผ่านไป
คุณสามารถยืนยันรูปแบบก่อนที่จะนำไปใช้งานจริงได้
ได้ การฝึกแบบออฟไลน์ช่วยให้คุณมีเวลามากพอที่จะยืนยันประสิทธิภาพของโมเดลก่อนที่จะนำโมเดลไปใช้ในเวอร์ชันที่ใช้งานจริง
การฝึกอบรมแบบออฟไลน์ต้องตรวจสอบงานการฝึกอบรมน้อยกว่าการฝึกอบรมแบบออนไลน์
โดยทั่วไปแล้ว ข้อกำหนดในการตรวจสอบขณะฝึกอบรมจะน้อยกว่าสำหรับการฝึกอบรมแบบออฟไลน์ ซึ่งจะช่วยคุณไม่ต้องคำนึงถึงข้อควรพิจารณาหลายประการในเวอร์ชันที่ใช้งานจริง อย่างไรก็ตาม ยิ่งคุณฝึกโมเดลบ่อยเท่าใด ก็ยิ่งต้องลงทุนในการตรวจสอบมากขึ้นเท่านั้น นอกจากนี้ คุณยังควรตรวจสอบเป็นประจําเพื่อให้แน่ใจว่าการเปลี่ยนแปลงโค้ด (และรายการที่เกี่ยวข้อง) จะไม่ส่งผลเสียต่อคุณภาพของโมเดล
ต้องมีการตรวจสอบข้อมูลอินพุตเพียงเล็กน้อยเมื่อทำการอนุมาน
แม้จะขัดกับความรู้สึก แต่คุณจำเป็นต้องตรวจสอบข้อมูลอินพุตในขณะที่แสดง หากการแจกแจงข้อมูลอินพุตมีการเปลี่ยนแปลง การคาดการณ์ของโมเดลอาจไม่น่าเชื่อถือ ตัวอย่างเช่น สมมติว่าโมเดลที่ฝึกด้วยข้อมูลเสื้อผ้าในช่วงหน้าร้อนเท่านั้นถูกนําไปใช้คาดการณ์พฤติกรรมการซื้อเสื้อผ้าในช่วงฤดูหนาว
ข้อความข้อใดต่อไปนี้เป็นจริงเกี่ยวกับการฝึกอบรมแบบไดนามิก (ออนไลน์)
โมเดลจะอัปเดตอยู่เสมอเมื่อมีข้อมูลใหม่เข้ามา
นี่เป็นข้อดีหลักของการฝึกออนไลน์ คุณสามารถหลีกเลี่ยงปัญหาข้อมูลล้าสมัยได้ด้วยการอนุญาตให้โมเดลฝึกกับข้อมูลใหม่เมื่อเข้ามา
ไม่จำเป็นต้องมีการตรวจสอบงานการฝึกอบรมมากนัก
แต่คุณจะต้องตรวจสอบงานการฝึกอย่างต่อเนื่องเพื่อให้แน่ใจว่างานทำงานได้อย่างถูกต้องและเป็นไปตามที่ต้องการ นอกจากนี้ คุณจะต้องมีโครงสร้างพื้นฐานที่รองรับ เช่น ความสามารถในการเปลี่ยนโมเดลกลับไปใช้สแนปชอตก่อนหน้าในกรณีที่เกิดข้อผิดพลาดระหว่างการฝึก เช่น งานที่มีข้อบกพร่องหรือข้อมูลอินพุตเสียหาย
ต้องมีการตรวจสอบข้อมูลอินพุตเพียงเล็กน้อยเมื่อทำการอนุมาน
การตรวจสอบอินพุตของรูปแบบที่อัปเดตแบบไดนามิกก็สำคัญเช่นกัน เช่นเดียวกับรูปแบบแบบคงที่และออฟไลน์ คุณอาจไม่เสี่ยงที่จะได้รับผลตามฤดูกาลมากนัก แต่การเปลี่ยนแปลงข้อมูลอย่างฉับพลันและมาก (เช่น แหล่งข้อมูลต้นทางหยุดทำงาน) อาจทําให้การคาดการณ์ไม่น่าเชื่อถือได้