Basic Workflow
ขั้นตอนการสร้าง Machine Learning Model แบบง่ายที่สุดคือ train-test-split
แบ่งเป็น 4 ขั้นตอน

- Split data (80% train, 20% test)
- Train model
- Predict new data (Scoring)
- Evaluate model
📝 สัดส่วนการ split data ไม่ได้มีกฏตายตัว ปกติเราชอบเห็นคนใช้ที่ 80:20 หรือ 70:30 หลักการคร่าวๆคือเราควรแบ่ง train, test ให้ใหญ่พอสำหรับการเทรนและทดสอบโมเดล
Why Data Splitting?
คำถามคือทำไมต้องแบ่งข้อมูลเป็น train vs. test ด้วย (splitting)?
ทำไมเราไม่ train model ด้วยข้อมูลทั้งหมดที่มีเลย?
ตอบ ถ้าทำแบบนั้น เราจะไม่มีทางรู้เลยว่าโมเดลของเราดีจริงหรือเปล่า เป้าหมายของ ML คือการสร้างโมเดลไปใช้กับ unseen data ที่มันไม่เคยเห็นมาก่อน ศัพท์เทคนิคเราเรียกว่าการทำ Generalization

เราแบ่งข้อมูลเป็นสองส่วน
train data
เพื่อเทรนโมเดล (seen data)test data
เพื่อทดสอบโมเดล (unseen data)
Model ที่จะสอบผ่านเกณฑ์ของเราเข้าสู่ production/ deployment ต้องทำงานได้ดีทั้งตอน train และ test (ถ้ามีข้อมูลอีกชุดมาใช้ validate model จะยิ่งดีเลย ไอเดียคือ test บ่อยๆให้ได้ผลลัพธ์ของโมเดลที่มัน reliable)
📝 Golden Standard สำหรับการเทรนโมเดล classical ML คือ K-Fold Cross Validation ซึ่งแอดยังไม่ได้สอนในคอร์สนี้ สำหรับนักเรียน Bootcamp ไว้เรียนในแคมป์ได้ใน sprint ML นะครับ 😁
Technical Note เกี่ยวกับ K-Fold Cross Validation (Optional)

K-Fold Cross-Validation คือหนึ่งในเทคนิค Resampling เพื่อเทรนและทดสอบโมเดลอย่างมีประสิทธิภาพ ที่มาของคำว่า Cross-Validation คือการที่โมเดลเราถูกทดสอบซ้ำหลายๆรอบ (ที่มาของคำว่า Cross-Validated) จนได้โมเดลที่ robust
Scoring and Evaluating Model
ขั้นตอนการ score + evaluate คือการทำนายและวัดผลโมเดล
Score
คือการเอาโมเดลที่เราเทรนไปทำนาย test dataEvaluate
คือการวัดผลโมเดลด้วย metrics ต่างๆ เช่น ค่า accuracy เป็นต้น
📝 เวลาเราสมัครบัตรเครดิต บริษัทบัตรเครดิตจะใช้โมเดลที่เรียกว่า Credit Scoring เพื่อทำนาย user profile ว่าควรจะได้เครดิตไปใช้หรือเปล่า โมเดลจะทำนายออกมาเป็นค่าความน่าจะเป็น เช่น good 85%, bad 15%
Optional – MLOps
หลังจากเราได้โมเดลที่ทำงานได้ตามเกณฑ์ที่เรากำหนดไว้แล้ว step สุดท้ายคือการทำ model deployment หรือการนำโมเดลไปใช้งานจริงๆ คนที่รับผิดชอบงานส่วนนี้คือ ML Engineer/ MLOps (ML + Operation)
งานส่วนนี้ต้องใช้ความรู้ด้าน software engineering เยอะเลย ครอบคลุมเรื่อง
- Design
- Model Deployment
- Operations

MLOps is a core function of Machine Learning engineering, focused on streamlining the process of taking machine learning models to production, and then maintaining and monitoring them
Databricks
📝 เนื้อหา MLOps จะไม่ได้อยู่ในคอร์สเรียนนี้ของเรานะครับ เพื่อนๆที่สนใจ MLOps สามารถศึกษาเพิ่มเติมได้ที่
- MLOps – Databricks
- ML Ops: Machine Learning Operations (ml-ops.org)
- MLOps ฟันเฟืองแห่งอนาคตที่จะเปลี่ยนไอเดียในอากาศให้กลายเป็นธุรกิจพันล้าน และสร้างอิมแพ็กเปลี่ยนสังคมให้ดีขึ้นได้ [Advertorial] – THE STANDARD
- MLOPs – บทเรียนจาก KBTG การผลักดัน AI ให้สำเร็จ แค่ทำโมเดลอย่างเดียวไม่พอ | Blognone