การเขียนโค้ด ML ที่ดูแลรักษาได้

การพัฒนาโมเดล Machine Learning สำหรับ Production

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

การจัดโครงสร้างโปรเจกต์

  • จัดระเบียบไฟล์โปรเจกต์ให้เป็นโครงสร้างที่สมเหตุสมผล
  • จัดกลุ่มไฟล์ที่เกี่ยวข้องไว้ด้วยกัน
    • แยกชุดข้อมูลและโมเดล ML ไว้ในโฟลเดอร์ต่างหาก
  • ตั้งชื่อและระบุป้ายกำกับไฟล์ให้ถูกต้อง

โครงสร้าง

การพัฒนาโมเดล Machine Learning สำหรับ Production

ตัวอย่างโครงสร้างโปรเจกต์

ตัวอย่างไดเรกทอรีโปรเจกต์ที่มีไฟล์ README, ไฟล์ requirements และโฟลเดอร์ย่อย 3 โฟลเดอร์ ได้แก่ data, models, notebooks mlops_directory

  • README.md: อธิบายวัตถุประสงค์ของ repository และวิธีใช้งาน
  • requirements.txt: ระบุ dependency ทั้งหมด
  • data: เก็บไฟล์ที่เกี่ยวข้องกับข้อมูล ทั้งข้อมูลดิบและข้อมูลที่ผ่านการประมวลผล
  • models: เก็บไฟล์ที่เกี่ยวข้องกับโมเดลทั้งหมด รวมถึงสคริปต์สำหรับสร้างโมเดล
  • notebooks: เก็บ notebook สำหรับการสำรวจข้อมูล การฝึกโมเดล และการประเมินผลโมเดล
การพัฒนาโมเดล Machine Learning สำหรับ Production

การกำหนดเวอร์ชันโค้ด

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

โค้ด

การพัฒนาโมเดล Machine Learning สำหรับ Production

เอกสารประกอบ

  • จัดทำเอกสารโค้ดและโครงสร้างโปรเจกต์
  • อธิบายวัตถุประสงค์ของแต่ละไฟล์และฟังก์ชัน
  • อธิบายวิธีใช้งานโค้ด
  • ระบุขั้นตอนการ deploy โมเดล ML

เอกสาร

การพัฒนาโมเดล Machine Learning สำหรับ Production

ความยืดหยุ่นของโค้ด

  • เข้าใจ แก้ไข และอัปเดตได้ง่ายขึ้น
  • ลดเวลาและความพยายามในการเปลี่ยนแปลง codebase
  • ปรับตัวรองรับการเปลี่ยนแปลงของข้อมูล โค้ด และความต้องการได้ดียิ่งขึ้น
  • เกิดบัคน้อยลง
  • เพิ่มฟีเจอร์หรือเทคโนโลยีใหม่ได้ง่าย
  • จำเป็นสำหรับการสร้างแอปพลิเคชัน ML ที่เติบโตและปรับตัวได้ในระยะยาว
การพัฒนาโมเดล Machine Learning สำหรับ Production

มาฝึกกันเถอะ!

การพัฒนาโมเดล Machine Learning สำหรับ Production

Preparing Video For Download...