top of page

ความแตกต่างระหว่าง Supervised กับ Unsupervised Learning

Machine Learning คือ กลไกการเขียน Algorithm โดยนำ Algorithm นั่น ไปเรียนรู้ชุดข้อมูลต้นแบบ (Training Set)เพื่อให้ได้ออกมาเป็น Function (ที่เป็น Black-box หรือสมการ) จากนั้นจะมีการนำ Function นั้น ไปใช้งานโดยมีชุดข้อมูลทดสอบ (Testing Set) เข้ามาประมวลผลผ่าน Function เพื่อให้ได้ออกมาเป็นผลลัพธ์ที่พร้อมนำไปใช้งาน แบ่งออกเป็น Supervised กับ Unsupervised Learning ซึ่งมีความแตกต่างกันโดยสิ้นเชิง ดังต่อไปนี้ 1. Supervised Learning จะมีต้นแบบที่เป็นเป้าหมาย หรือ Target ในขณะที่ Unsupervised Learning จะไม่มี Target เช่น การทำนายยอดขาย จะใช้ข้อมูลในอดีต ที่รู้ว่ายอดขายเกิดขึ้นจริงเท่าไหร่ เป็น Target และใช้ปัจจัยต่างๆ เป็นตัวแปร หรือ Input กรณีนี้จะเป็น Supervised Learning ประเภท Regression, การวิเคราะห์กลุ่มลูกค้าจากพฤติกรรมการซื้อสินค้าใจระบบ ซึ่งก่อนหน้านี้ไม่มีการแบ่งกลุ่มมาก่อน เป็นการใช้ Unsupervised Learning ประเภท Clustering เป็นต้น 2. ในการสร้าง Model สำหรับ Supervised Learning จะมีการแบ่งชุดข้อมูลออกเป็น Training และ Testing Set เสมอ ในขณะที่ Unsupervised อาจจะไม่จำเป็น การแบ่งกลุ่มเป็น Training Set กับ Testing Set ในการเรียนรู้เป็นการป้องกันการเกิด Overfit หรือ การที่ Model มีความแม่นยำสูงมากในตอนทดลอง แต่พอเอาไปใช้งานจริงกลับได้ผลลัพธ์ที่ไม่ดี ที่เป็นเช่นนั้น ส่วนหนึ่งอาจเกิดจากการใช้ต้นแบบในการเรียนรู้ และวัดผลการเรียนรู้เฉพาะกลุ่มชุดข้อมูลที่ใช้เป็นต้นแบบ และไม่มีการทดสอบกับชุดข้อมูลอื่น อย่างไรก็ตาม ในกรณีของ Unsupervised Learning จะไม่ได้วัดผลด้วยความแม่นยำ ทำให้ในบางกรณีอาจไม่จำเป็นต้องแบ่งเป็น Training กับ Testing Set 3. Algorithm สำหรับ Supervised และ Unsupervised Learning จะแตกต่างกัน เช่น Random Forests เป็น Algorithm ชนิด Tree-based เหมาะสำหรับโจทย์ประเภท Regression และ Classification ในกลุ่ม Supervised Learning และ Association Rules เป็นกฎการหาความสัมพันธ์ในรูปแบบความน่าจะเป็นรูปแบบหนึ่ง ที่ใช้สำหรับการวิเคราะห์โอกาสที่เกิดร่วมกันในเหตุการณ์ต่างๆ ถือเป็น Unsupervised Learning รูปแบบหนึ่ง 4. การประเมินผลลัพธ์ของ Supervised Learning มักจะใช้ Accuracy เป็นหลัก โดยแต่ละโจทย์อาจมีวิธีการคิด Accuracy ที่ไม่เหมือนกัน เช่น Mean Absolute Percentage Error (MAPE) จะเป็นการคิดเปอร์เซ็นต์ค่าความคลาดเคลื่อนเฉลี่ย ในขณะที่ Mean Squared Error (MSE) จะพิจารณาค่าความคลาดเคลื่อนยกกำลังสอง ทำให้มุมมองในการใช้งานจะแตกต่างกัน ส่วน Unsupervised Learning จะใช้ความเหมาะสมในการใช้งานเป็นหลัก โดยอาจมีการใช้เทคนิคที่มีพื้นฐานเรื่องสถิติ และความน่าจะเป็น เป็นส่วนประกอบในการประเมินผล เช่น การประเมิน Clustering สามารถวัดความหนาแน่นของการจัดกลุ่มได้ด้วยค่าทางเทคนิค แต่ในความเป็นจริง การจะทราบได้ว่ากี่กลุ่มถึงเหมาะสม ควรวัดด้วยความเหมาะสมด้านการใช้งานเป็นหลัก Machine Learning มีความซับซ้อนในการใช้งาน ไม่ใช่แค่การแยกว่าเป็น Supervised หรือ Unsupervised Learning แต่ต้องแยกถึงระบบประเภทของ Model เช่น Regression Model, Clustering Model เป็นต้น นอกจากนี้ ในแต่ละ Model ก็จะมี Algorithm ที่ใช้แก้ปัญหา ซึ่งมีการตั้งค่าที่แตกต่างกันอีกด้วย ในเชิงการพัฒนาระบบ Data Scientist จึงจำเป็นต้องทำความรู้จัก Model ให้ครบ และฝึกใช้ Algorithm ที่หลากหลาย เพื่อสามารถออกแบบ Solution ในแต่ละโจทย์ได้อย่างเหมาะสม ในเชิงการวัดผล นอกจากจะต้องวัดผลในเชิงเทคนิคแล้ว การวัดผลในเชิงการใช้งานจะเป็นการให้คะแนนที่เป็นส่วนใหญ่ เพราะต่อให้ได้มาซึ่ง Model ที่มีประสิทธิภาพที่ดี แต่ไม่สามารถตอบโจทย์ได้ หรือมีค่าใช้จ่ายในการขึ้นระบบมากจนเกิดไป การลงทุนใช้ Machine Learning อาจจะเป็นการลงทุนที่ไม่คุ้มค่าก็เป็นได้

ความแตกต่างระหว่าง Supervised กับ Unsupervised Learning

Machine Learning คือ กลไกการเขียน Algorithm โดยนำ Algorithm นั่น ไปเรียนรู้ชุดข้อมูลต้นแบบ (Training Set)เพื่อให้ได้ออกมาเป็น Function...

bottom of page