\(~~~~~~~~~~\)Supervised Learning\(~~~~~~~~~~\)
การเรียนรู้แบบมีผู้สอน

อ.ดร. สมศักดิ์ จันทร์เอม

วิทยาลัยนานาชาตินวัตกรรมดิจิทัล มหาวิทยาลัยเชียงใหม่

14 พฤศจิกายน 2568

วัตถุประสงค์การเรียนรู้ (Learning Objectives)

  • สามารถระบุและอธิบายเทคนิคที่เหมาะสมในการจัดการกับชุดข้อมูลประเภทต่าง ๆ ได้
  • สามารถสร้างภาพข้อมูลเพื่อแสดงประสิทธิภาพของโมเดลได้
  • ได้รับความรู้เกี่ยวกับการใช้ซอฟต์แวร์เพื่อนำเทคนิคเหล่านี้ไปประยุกต์ใช้
  • แสดงความสามารถในการสื่อสารผลลัพธ์จากการใช้วิธีการเรียนรู้กับข้อมูลจริงได้

การเรียนรู้แบบมีผู้สอน (Supervised Learning)

Supervised learning คือวิธีการเรียนรู้ของเครื่อง (Machine Learning) ที่ระบบจะเรียนรู้จากข้อมูลที่มีคำตอบ (หรือผลลัพธ์) อยู่แล้ว — เรียกว่า label

ใช้ข้อมูลตัวอย่างที่ประกอบด้วยคู่ของ อินพุต (input) และ เอาต์พุต (output) เพื่อสร้างแบบจำลอง (model) ที่สามารถทำนายผลลัพธ์ของข้อมูลใหม่ได้

สามารถเขียนในรูปสมการได้ดังนี้

\[y = f(x) + \varepsilon\]

โดยที่

  • \(y\) คือ ตัวแปรตาม (dependent variable) หรือผลลัพธ์ (target/label)
  • \(x\) คือ ตัวแปรอิสระ (independent variable) หรือคุณลักษณะของข้อมูล (feature)
  • \(f(\cdot)\) คือ ฟังก์ชันที่เชื่อมโยงระหว่างอินพุตและเอาต์พุต
  • \(\varepsilon\) คือ ค่าความคลาดเคลื่อน (error term)

ประเภทของการเรียนรู้แบบมีผู้สอน

1. การถดถอย (Regression)

  • ใช้สำหรับการพยากรณ์ค่าของตัวแปรเป้าหมายที่เป็น ข้อมูลเชิงปริมาณ (numerical)
  • ตัวอย่างอัลกอริทึม: Linear Regression, Ridge, Lasso, Support Vector Regression, Gradient Boosting
  • ตัวอย่าง: การพยากรณ์ยอดขาย ราคาสินค้า อุณหภูมิ เป็นต้น

2. การจำแนกประเภท (Classification)

  • ใช้สำหรับพยากรณ์ค่าของตัวแปรเป้าหมายที่เป็น ข้อมูลเชิงหมวดหมู่ (categorical) เช่น Yes/No หรือกลุ่ม A/B/C
  • ตัวอย่างอัลกอริทึม: Logistic Regression, Decision Tree, Random Forest, SVM, Neural Network

ตัวอย่างการประยุกต์ใช้ในทางธุรกิจ

1. การถดถอย (Regression)

  • การพยากรณ์ยอดขาย (Sales Forecasting) ธุรกิจค้าปลีกสามารถใช้เทคนิคการถดถอย เช่น Linear Regression เพื่อคาดการณ์ยอดขายของเดือนถัดไปได้

    • Input: ฤดูกาล (Season), ราคา (Price), โปรโมชั่น (Promotion), ปริมาณสินค้าคงคลัง (Inventory Level)
    • Output: ยอดขายในอนาคต (หน่วยเป็นจำนวนเงิน)

\[ \begin{aligned} \text{Sales}_{t+1} &= \beta_0 + \beta_1 \cdot \text{Season}_t + \beta_2 \cdot \text{Price}_t \\&~~~~+ \beta_3 \cdot \text{Promotion}_t + \beta_4 \cdot \text{Inventory}_t + \varepsilon_t \end{aligned} \]

โดยที่:

  • \(\beta_0\) = ค่าคงที่ (ยอดขายพื้นฐานเมื่อทุกตัวแปรเป็นศูนย์)
  • \(\beta_1, \beta_2, \beta_3, \beta_4\) = ค่าสัมประสิทธิ์ที่แสดงผลกระทบของแต่ละตัวแปร
  • \(\varepsilon_t\) = ค่าความคลาดเคลื่อน (ปัจจัยสุ่มที่โมเดลไม่สามารถอธิบายได้)

ตัวอย่างเชิงตัวเลข (เพื่อการอธิบาย):

\[ \begin{aligned} \text{Sales}_{t+1} &= 200 + 50 \cdot \text{Season}_t - 30 \cdot \text{Price}_t \\ &~~~~+ 80 \cdot \text{Promotion}_t + 0.5 \cdot \text{Inventory}_t + \varepsilon_t \end{aligned} \]

หากกำหนดค่า:

  • Season = 1 (ช่วงเทศกาล)
  • Price = 20 (ราคาต่อหน่วย)
  • Promotion = 1 (มีแคมเปญโปรโมชั่น)
  • Inventory = 500 หน่วย

จะได้ผลการพยากรณ์ยอดขายดังนี้:

\[ \begin{aligned} 200 + 50(1) - 30(20) + 80(1) + 0.5(500) &= 200 + 50 - 600 + 80 + 250 \\&= -20 \end{aligned} \]

ผลลัพธ์ได้ค่าเป็นลบ แปลว่าราคาสินค้าสูงเกินไป ทำให้ยอดขายที่คาดการณ์ไว้ต่ำมาก → เป็นสัญญาณของ กลยุทธ์ราคาที่ไม่เหมาะสม

ตัวอย่างเพิ่มเติม

การพยากรณ์ราคาบ้าน (Price Prediction): ธุรกิจอสังหาริมทรัพย์ใช้แบบจำลองการถดถอย เช่น Ridge Regression หรือ Random Forest เพื่อทำนายราคาบ้าน

  • Input: ขนาดของบ้าน, จำนวนห้อง, ทำเลที่ตั้ง, ปีที่สร้าง
  • Output: ราคาบ้าน (ค่าตัวเลข)

\[ \begin{aligned} \text{Price} &= \beta_0 + \beta_1 \cdot \text{Size} + \beta_2 \cdot \text{Rooms} + \beta_3 \cdot \text{Location} \&~~~ + \beta_4 \cdot \text{YearBuilt} + \varepsilon \end{aligned} \]

โดยที่:

  • \(\beta_0\) = ค่าคงที่ (ราคาพื้นฐาน)
  • \(\beta_1, \beta_2, \beta_3, \beta_4\) = ค่าสัมประสิทธิ์ของแต่ละตัวแปร
  • \(\varepsilon\) = ค่าความคลาดเคลื่อน (ปัจจัยที่โมเดลไม่สามารถอธิบายได้)

ตัวอย่างเชิงตัวเลข:

\[ \begin{aligned} \text{Price} &= 50{,}000 + 200 \cdot \text{Size} + 15{,}000 \cdot \text{Rooms} \&~~~~ + 80{,}000 \cdot \text{LocationIndex} + 500 \cdot \text{YearBuilt} + \varepsilon \end{aligned} \]

หากกำหนดว่า:

  • Size = 120 m²
  • Rooms = 3
  • LocationIndex = 2 (ทำเลดี)
  • YearBuilt = 2015

ดังนั้น:

\[ \text{Price} = 50{,}000 + 200(120) + 15{,}000(3) + 80{,}000(2) + 500(2015) \]

\[ = 50{,}000 + 24{,}000 + 45{,}000 + 160{,}000 + 1{,}007{,}500 = 1{,}286{,}500 \]

ราคาบ้านที่คาดการณ์ได้ ≈ 1.29 ล้านบาท

2. การจำแนกประเภท (Classification)

  • การพยากรณ์การยกเลิกบริการ (Churn Prediction) บริษัทโทรคมนาคมหรือบริการแบบสมัครสมาชิก ใช้แบบจำลอง Classification เช่น Random Forest หรือ Logistic Regression เพื่อคาดการณ์ว่าลูกค้ารายใดมีแนวโน้มจะเลิกใช้บริการ และสามารถดำเนินกลยุทธ์การตลาดเพื่อรักษาลูกค้าได้ทันเวลา

    • Input: อายุ, เพศ, ประวัติการใช้งาน, การร้องเรียน
    • Output: การยกเลิกบริการ (Churn: Yes/No)

สมการ Logistic Regression สำหรับการพยากรณ์การยกเลิกบริการ

\[ Pr(\text{Churn} = 1) = \frac{1}{1 + e^{-(\beta_0 + \beta_1 \cdot \text{Age} + \beta_2 \cdot \text{Gender} + \beta_3 \cdot \text{UsageHistory} + \beta_4 \cdot \text{Complaints})}} \]

โดยที่:

  • \(Pr(\text{Churn} = 1)\) = ความน่าจะเป็นที่ลูกค้าจะเลิกใช้บริการ (ตอบว่า “Yes”)
  • \(\beta_0\) = ค่าคงที่ (intercept)
  • \(\beta_1, \beta_2, \beta_3, \beta_4\) = ค่าสัมประสิทธิ์ของตัวแปรแต่ละตัว
  • ตัวแปรอิสระ (Predictors): Age, Gender, Usage History, Complaints

ตัวอย่างเชิงตัวเลข (สมมติค่า):

\[ Pr(\text{Churn} = 1) = \frac{1}{1 + e^{-(-2.5 + 0.03 \cdot \text{Age} + 0.8 \cdot \text{Gender} + 1.2 \cdot \text{Complaints} - 0.05 \cdot \text{UsageHistory})}} \]

หากลูกค้าชายอายุ 40 ปี มีการร้องเรียน 2 ครั้ง และมีประวัติการใช้งานต่ำ → โมเดลจะให้ความน่าจะเป็นของการยกเลิกบริการสูง ซึ่งเป็นสัญญาณว่าบริษัทควร เข้าดำเนินการเชิงรุกเพื่อรักษาลูกค้ารายนั้นไว้

ตัวอย่างเพิ่มเติม

การตรวจจับการทุจริต (Fraud Detection): ธนาคารหรือบริษัทประกันภัยใช้แบบจำลอง Classification เช่น Neural Networks หรือ Gradient Boosting เพื่อตรวจจับธุรกรรมที่น่าสงสัยหรืออาจเป็นการทุจริต

  • Input: จำนวนเงินในการทำธุรกรรม, สถานที่, เวลา
  • Output: ธุรกรรมปกติ / ธุรกรรมที่น่าสงสัย (Fraudulent Transaction)

คำถามและคำตอบตัวอย่างจากโมเดล Decision Tree

ถ้าธุรกรรมมี Amount = 250 โมเดลจะจัดประเภทว่าอะไร?

A1:

  • การแบ่งครั้งแรกคือ Amount ≥ 226
  • เนื่องจาก 250 ≥ 226 → ไปทางซ้ายของต้นไม้
  • ผลการทำนาย: Fraud (≈ 78%) — ธุรกรรมเข้าข่ายทุจริต

ธุรกรรมมี Amount = 180 และ Location = Rural โมเดลจะทำนายว่าอย่างไร?

A2:

  • แบ่งครั้งแรก: 180 < 226 → ไปทางขวา
  • ต่อมา: Amount ≥ 152 → จริง → ไปทางขวา
  • จากนั้น: Amount < 195 → จริง → ไปทางซ้าย
  • แบ่งอีกครั้ง: Amount ≥ 163 → จริง → ไปทางซ้าย
  • ผลการทำนาย: Fraud (≈ 62%)

ธุรกรรมมี Amount = 120 โมเดลทำนายว่าอย่างไร?

A3:

  • 120 < 226 → ไปทางขวา
  • 120 < 152 → จริง → ไปทางซ้าย
  • 120 < 156 → จริง → ไปทางซ้าย
  • ผลการทำนาย: Fraud (≈ 67%)

ถ้าธุรกรรมมี Amount = 170 และ Location = Urban โมเดลทำนายว่าอย่างไร?

A4:

  • 170 < 226 → ไปทางขวา
  • Amount ≥ 152 → จริง
  • Amount < 195 → จริง
  • Amount ≥ 163 → จริง
  • ผลการทำนาย: Fraud (≈ 62%)

ถ้า Amount = 90 จะเกิดอะไรขึ้น?

A5:

  • 90 < 226 → ไปทางขวา
  • 90 < 152 → ไปทางซ้าย
  • 90 < 156 → ไปทางซ้าย
  • ผลการทำนาย: Fraud (≈ 67%)

ข้อดีของการเรียนรู้แบบมีผู้สอน (Advantages of Supervised Learning)

  • ให้ความแม่นยำสูงเมื่อข้อมูลฝึกมีคุณภาพดี

  • สามารถปรับแต่งโมเดลให้เหมาะสมกับลักษณะของปัญหาได้ง่าย

ข้อจำกัดของการเรียนรู้แบบมีผู้สอน (Disadvantages of Supervised Learning)

  • ต้องใช้ข้อมูลที่มีการติดป้ายกำกับ (labeled data) ซึ่งอาจมีค่าใช้จ่ายสูงในการจัดเตรียม
  • ประสิทธิภาพของโมเดลขึ้นอยู่กับความครบถ้วนและคุณภาพของข้อมูล

ซอฟต์แวร์ที่ใช้ในการศึกษา: Orange Data Mining

Orange Data Mining

Orange Data Mining

ข้อดีของโปรแกรม Orange Data Mining

1. ใช้งานง่ายด้วยระบบลากและวาง (Drag-and-Drop Interface)

  • ผู้ใช้ไม่จำเป็นต้องมีพื้นฐานการเขียนโค้ด ก็สามารถวิเคราะห์ข้อมูลได้ง่าย

  • เพียง ลากและวาง โมดูลต่าง ๆ ลงบน workspace ก็สามารถสร้างกระบวนการวิเคราะห์ได้ทันที

  • เหมาะสำหรับผู้เริ่มต้นที่ต้องการเรียนรู้การวิเคราะห์ข้อมูลและ Machine Learning

2. มีเครื่องมือครบสำหรับการวิเคราะห์ข้อมูลและ Machine Learning

  • รองรับทั้งการวิเคราะห์ข้อมูลเบื้องต้น เช่น Exploratory Data Analysis (EDA) และการสร้าง โมเดล Machine Learning

โปรแกรมมีเครื่องมือหลากหลาย เช่น Classification, Regression, Clustering, PCA, Text Mining ที่ช่วยให้นักศึกษาเข้าใจและทดลองได้ครอบคลุมทุกประเภทของการเรียนรู้ด้วยเครื่อง

3. เป็นโอเพนซอร์สและมี Add-on เสริม

  • Orange เป็นโปรแกรมโอเพนซอร์ส (Open Source) ใช้งานได้ฟรี

  • มี Add-on สำหรับงานเฉพาะทาง เช่น Text Mining, Image Analytics, Bioinformatics

  • รองรับการใช้งานได้ทั้ง Windows, macOS และ Linux

4. การสร้างภาพข้อมูลแบบโต้ตอบ (Interactive Visualization)

  • Orange มีเครื่องมือ Visualization ที่สามารถแสดงผลแบบ Interactive เช่น Scatter Plot, Heatmap, Decision Tree, Network Graph

  • ช่วยให้ผู้ใช้เข้าใจข้อมูลและผลลัพธ์จากโมเดลได้ง่ายขึ้น ทั้งในเชิงสถิติและเชิงภาพ