รวมศัพท์ด้าน Machine Learning ตอนที่ 1

วันนี้แอดมาสรุปเนื้อหาที่ได้ไปเรียนต่อ

ในเรื่องของ ศัพท์พื้นฐานที่เกี่ยวข้องกับ Machine Learning ค่า

เนื้อหานี้มาจาก Live Class เรื่อง Machine Learning

ของเพจ DataRockie ที่แอดได้มีโอกาสไปเรียนมาค่า ✨

ขอแบ่งเป็น 2 กลุ่มใหญ่ ๆ เพื่อให้อ่านง่ายขึ้นนะคะ

⸻

🧠 กลุ่มที่ 1: ข้อมูลที่ใช้ใน Machine Learning

• Dataset

ชุดข้อมูลที่ใช้ในการสร้าง และทดสอบโมเดล

• Data Point

ข้อมูล 1 แถว หรือ 1 ตัวอย่างใน Dataset

• Feature

ข้อมูลที่เปรียบเสมือน ตัวแปรต้น

ใช้เป็น input สำหรับฝึกโมเดล

• Label / Target

ข้อมูลที่เปรียบเสมือน ตัวแปรตาม

ใช้สำหรับวัดความแม่นยำ (Accuracy) ของโมเดล

⸻

💻 กลุ่มที่ 2: การแบ่งข้อมูล

• Train–Test Split

การแบ่งข้อมูลทั้งหมด (Full Data) ออกเป็น 2 ส่วน

• Training Data ใช้สำหรับฝึกโมเดล

• Testing Data ใช้สำหรับทดสอบโมเดล

เมื่อฝึกโมเดลเสร็จแล้ว

เราจะนำโมเดลมาทดสอบกับ Testing Data

เพื่อดูผลลัพธ์เป็น ความแม่นยำของโมเดล

• Overfitting

โมเดลที่ฟิตกับข้อมูลที่ใช้ Train มากเกินไป

จนไม่สามารถใช้งานกับข้อมูลใหม่

หรือข้อมูลที่ไม่เคยเห็นมาก่อนได้ (Unseen Data)

⸻

ขอบคุณ เพจ DataRockie

สำหรับคลาสที่อธิบายเข้าใจง่าย และนำไปต่อยอดได้จริงนะคะ 🤍

#MachineLearning #DataSeenClearly

#NichaVisualNote #AISeenClearly

1/11 แก้ไขแล้ว

... อ่านเพิ่มเติมเผื่อใครกำลังเริ่มอ่าน Machine Learning ภาษาไทย แล้วงงกับศัพท์พื้นฐาน เวลาเห็นตารางข้อมูลหรือโค้ดตัวอย่างในคอร์สต่าง ๆ ฉันชอบนึกภาพ “ตารางข้อมูล” ก่อนเลย เพราะศัพท์หลายคำจะชัดขึ้นทันที 1) Dataset / Data Point / Feature / Label มองผ่าน “ตาราง” - Dataset = ทั้งตาราง (หรือทั้งไฟล์) ที่เรารวบรวมไว้เพื่อฝึกและทดสอบโมเดล - Data Point = 1 แถวในตาราง (หนึ่งตัวอย่าง) เช่น ลูกค้าคนที่ 1 - Feature(s) = คอลัมน์ฝั่งอินพุตที่ใช้ให้โมเดลเรียนรู้ เช่น อายุ, รายได้, จำนวนครั้งที่ซื้อ - Label/Target = คอลัมน์คำตอบที่อยากให้โมเดลทำนาย เช่น “ซื้อ/ไม่ซื้อ”, “ราคา”, “ประเภทสินค้า” ทริคที่ช่วยมากคือ ถ้ายังไม่รู้ว่าอะไรคือ feature หรือ label ให้ถามตัวเองว่า “เราต้องการให้โมเดลทำนายอะไร” สิ่งนั้นมักเป็น label ส่วนที่เหลือที่ใช้ช่วยทำนายคือ features 2) Training Data vs Testing Data ต่างกันยังไง - Training Data ใช้ “สอน” โมเดล ให้มันหาความสัมพันธ์จาก feature ไปหา label - Testing Data ใช้ “สอบ” โมเดลด้วยข้อมูลที่กันไว้ ไม่ให้โมเดลเห็นตอนเรียน เหตุผลที่ต้องแยก เพราะถ้าเราวัดผลจากข้อมูลชุดเดิมที่ใช้ฝึก โมเดลอาจทำคะแนนดีเกินจริง (เหมือนจำข้อสอบ) 3) Train–Test Split ควรแบ่งเท่าไหร่ ไม่มีสูตรตายตัว แต่ที่เจอบ่อยคือ 80/20 หรือ 70/30 ถ้าข้อมูลน้อยมาก บางคนจะใช้เทคนิคเพิ่มอย่าง cross-validation (การสลับชุดฝึก/ชุดทดสอบหลายรอบ) เพื่อให้การประเมินเสถียรขึ้น 4) Accuracy คืออะไร และทำไมบางที “หลอก” เราได้ Accuracy = ทำนายถูกกี่เปอร์เซ็นต์จากทั้งหมด ฟังดูง่ายและเป็นตัวเลขที่คนชอบใช้ แต่ถ้าข้อมูลไม่สมดุล (เช่น 95% เป็น “ไม่ซื้อ”) โมเดลที่เดาว่า “ไม่ซื้อ” ตลอดก็ได้ Accuracy 95% ทั้งที่ไม่ช่วยธุรกิจจริง ๆ เวลาเจอโจทย์แบบนี้ ฉันจะลองดู metric อื่นร่วมด้วย เช่น Precision/Recall หรือ Confusion Matrix เพื่อเห็นภาพว่าพลาดแบบไหน 5) Overfitting สังเกตยังไงในชีวิตจริง อาการคลาสสิกคือ “คะแนนบน Training ดีมาก แต่คะแนนบน Testing แย่” แปลว่าโมเดลเรียนละเอียดเกินไปจนจำ noise ในชุดฝึก พอเจอข้อมูลใหม่ (Unseen Data) เลยทำนายไม่แม่น วิธีลดแบบพื้นฐานที่มักใช้คือ ทำให้โมเดลง่ายลง, เพิ่มข้อมูล, ทำ regularization หรือปรับวิธีแบ่งข้อมูลให้เหมาะสม สรุปคือ ถ้าจับหลักจาก Dataset → แถว (Data Point) → คอลัมน์อินพุต (Features) → คอลัมน์คำตอบ (Label/Target) แล้วค่อยไปเรื่อง Train/Test + Overfitting จะทำให้การอ่าน Machine Learning ภาษาไทยลื่นขึ้นเยอะ และเข้าใจว่าตัวเลข Accuracy ที่เห็นมาจากขั้นตอนไหนค่ะ