Automatically translated.View original post

3. Key Resampling Techniques in Machine Learning

Trained Model to be accurate only... not enough.

The equally important thing is

👉, have we measured the Model's brilliance the right way?

Many times, the model looks accurate.

Maybe just "coincidence with that set of data."

But when you find new information, it's easy to break.

This Visual Note is summarized.

3. Key Resampling Techniques in Machine Learning

That Data Scientist actually used to evaluate the Model.

From LOOCV, Bootstrap to K-Fold Cross Validation

Each way allows us

✔️ Use more data (especially when data is limited)

✔️ evaluate the model more fairly, not deceive yourself.

✔️ Reduce the risk of long-term overfitting.

Very suitable for

• People studying Machine Learning

• Data workers who want to tighten the basis for validation

• Or anyone who has been "confused" about which method to choose.

📚 this Visual Note summarized from

Class Data Science Bootcamp Model 12

By the DataRockie page.

Who's studying ML or working on Data Line?

Save it for review. 📌💙

# NichasVisualNote # VisualNote

# MachineLearning # Data Science # Resampling

1/18 Edited to

... Read moreหลายคนเทรนโมเดลแล้วได้คะแนนดีมาก แต่พอเอาไปเจอข้อมูลใหม่กลับแย่…ปัญหานี้มักเกิดจากการ “ประเมินโมเดล” ที่ยังไม่แฟร์พอ ซึ่งนี่แหละคือเหตุผลที่ต้องรู้ว่า resampling คืออะไรใน machine learning Resampling (การสุ่ม/แบ่งข้อมูลซ้ำเพื่อประเมินโมเดล) คือเทคนิคที่ช่วยให้เราประมาณความสามารถในการ generalize ของโมเดลได้ดีขึ้น โดยไม่ต้องมีชุดข้อมูลใหม่เพิ่มทันที พูดง่าย ๆ คือทำให้การวัดผลไม่หลอกตัวเอง และช่วยลดความเสี่ยง overfitting ในระยะยาว ต่อไปนี้คือภาพรวม 3 เทคนิคหลักที่เจอบ่อย และทริคเลือกใช้ (รวมถึงคำถามยอดฮิตเรื่อง “แบบไหนใช้เวลาเทรนนานที่สุดถ้า n=10000”) 1) Leave-One-Out Cross Validation (LOOCV) หลักการ: ถ้ามีข้อมูล n ตัวอย่าง จะเทรนด้วย n-1 และทดสอบด้วย 1 ทำซ้ำจนครบ n รอบ (เท่ากับเทรนโมเดล n ครั้ง) ข้อดี: ใช้ข้อมูลฝั่งเทรนได้เกือบทั้งหมดในแต่ละรอบ เหมาะเวลาข้อมูลน้อยมาก ๆ ข้อเสีย: ใช้เวลามาก เพราะต้องฟิตโมเดลซ้ำเยอะ และค่าประเมินอาจมี variance สูงในบางปัญหา คำถาม: resampling แบบใดที่ใช้เวลาเทรนโมเดลนานที่สุดถ้า n=10000? คำตอบโดยทั่วไป: LOOCV มักนานที่สุด เพราะต้องเทรน 10,000 ครั้ง (ถ้าโมเดลเทรนช้า ยิ่งชัด) 2) Bootstrap (Sampling with Replacement) หลักการ: สุ่มตัวอย่างจากชุดเดิมแบบ “คืนกลับ” ให้ได้ชุดเทรนขนาดเท่าเดิม แล้วประเมินซ้ำหลายรอบ (เช่น 200–1000 รอบ) บางครั้งใช้แนวคิด out-of-bag (ตัวอย่างที่ไม่ได้ถูกสุ่มติดมา) เป็นชุดทดสอบ ข้อดี: ดีมากสำหรับการประมาณความไม่แน่นอน/ความแปรปรวนของตัวชี้วัด และใช้ได้กับข้อมูลจำกัด ข้อเสีย: ถ้าทำหลายรอบก็ใช้เวลามากเหมือนกัน และถ้าโจทย์ต้องการการแบ่ง train/test แบบ “สมจริง” อาจต้องเลือกวิธีให้เหมาะ 3) K-Fold Cross Validation หลักการ: แบ่งข้อมูลเป็น K ส่วน (fold) เทรน K ครั้ง โดยแต่ละครั้งใช้ 1 fold เป็น test และอีก K-1 เป็น train ข้อดี: สมดุลดีมากระหว่างความแม่นของการประเมินกับเวลาในการรัน นิยมสุดในงานจริง ข้อเสีย: ต้องระวังการจัด fold ให้ไม่รั่วข้อมูล (data leakage) และถ้าข้อมูลไม่สมดุลควรใช้ Stratified K-Fold ทริคเลือกใช้เร็ว ๆ (จากประสบการณ์ตอนทำโปรเจกต์/บ้าน ๆ) - ข้อมูลน้อยมาก: เริ่มจาก K-Fold (เช่น 5 หรือ 10) ก่อน ถ้ายังอยากใช้ข้อมูลเทรนให้คุ้มสุดค่อยพิจารณา LOOCV - ข้อมูลเยอะ (n=10000 ขึ้นไป): K-Fold มักคุ้มสุดเรื่องเวลา/คุณภาพผลลัพธ์ และตอบโจทย์งาน production - อยากรู้ความผันผวนของคะแนน/ทำช่วงความเชื่อมั่น: Bootstrap จะเด่น สุดท้าย แนะนำให้โฟกัส 2 อย่างพร้อมกัน: เลือก metric ให้ถูก (เช่น classification ที่คลาสไม่สมดุลอย่าดู accuracy อย่างเดียว) และเลือก resampling ให้เหมาะกับทรัพยากร/ลักษณะข้อมูล แค่นี้ผลประเมินโมเดลจะ “แฟร์” ขึ้นเยอะค่ะ