Machine Learning(EP.8)- การจัดกลุ่มด้วย K-Means(K-Means Clustering)

--

K-means คือ วิธีการสำหรับค้นหาจำนวนของคลัสเตอร์ (Cluster)จากข้อมูลที่ไม่
ปรากฎ Class หรือ ไม่มี Label ซึ่งเรียกว่า Unlabeled Data วิธีนี้เป็นวิธี Unsupervised Learning หรือแปลตรงๆคือการเรียนรู้แบบไม่ต้องสอน โดยหน้าที่หลักของ K-means คือการแบ่งกลุ่มแบบ Clustering การแบ่งกลุ่มในลักษณะนี้จะใช้พื้นฐานทางสถิติประกอบด้วย 2 กลุ่มข้อมูลขึ้นไป

การทำงานของ K-Means

แผนภาพกระบวนการทำงาน 1
แผนภาพกระบวนการทำงาน 2
  1. กำหนดกลุ่มข้อมูลขึ้นมาก่อน 2 กลุ่ม คือกลุ่มสีแดงกลุ่มสีน้ำเงิน
  2. สุ่มเลือกค่ากลาง (Centroid) เพื่อใช้เป็นตัวแทนกลุ่มสีแดง (C1) และกลุ่มสีน้ำเงิน (C2) สำหรับคำนวณหาระยะห่างเพื่อเปรียบเทียบระยะห่างระหว่างจุดข้อมูลและค่ากลางของทั้ง 2 กลุ่มกำหนดเป็น C1(x1,y1) และ C2(x2,y2)
  3. หากสมาชิกจุดใดใกล้เคียงกับกลุ่มใดที่สุดจะถูกกำหนดให้อยู่ในกลุ่มนั้นเลย
    เช่น หากใกล้กลุ่มสีน้ำเงิน จุดนั้นจะถูกกำหนดให้อยู่กลุ่มสีน้ำเงิน
  4. เมื่อกำหนดค่าให้สมาชิกอยู่ในกลุ่มแล้ว ทำการคำนวณหาค่ากลางของกลุ่ม
    C1 , C2 ใหม่อีกรอบโดยปรับค่าให้อยู่ตรงกลางกลุ่มเพื่อจัดข้อมูลกลุ่มใหม่ ทำไปจนกระทั่งจุดแต่ละจุดไม่มีการเปลี่ยนแปลงหรือเปลี่ยนแปลงให้น้อยที่สุด โปรแกรมจึงจะหยุดการทำงาน
  5. เมื่อไม่มีการเปลี่ยนแปลงข้อมูลให้คำนวณหากลาง (Centroid) เพื่อใช้เป็นโมเดลสามารถนำไปใช้กับชุดข้อมูลทดสอบหากได้ผลดี ก็สามารถนำโมเดลไปใช้งานจริงได้

🌎 ติดตามข่าวสารเพิ่มเติมได้ที่
Facebook | YouTube | TikTok

--

--

KongRuksiam Studio
KongRuksiam Studio

Written by KongRuksiam Studio

เรียนรู้การเขียนโปรแกรมนอกห้องเรียน

No responses yet