Skip to main content

Other Technique

เรื่องอื่นๆเพิ่มเติม

นอกเหนือจาก Linear Regression, Logistic Regression และ Clustering แล้ว ยังมีเทคนิคอื่น ๆ ที่สามารถใช้แก้ปัญหาต่าง ๆ ได้ โดยสามารถแบ่งออกเป็นหมวดหมู่หลัก ๆ ดังนี้

1. เทคนิคการเลือกโมเดลและการปรับค่าปกติ (Model Selection and Regularization Techniques)

Subset Selection

  • คัดเลือกเฉพาะตัวแปรที่มีความสัมพันธ์กับตัวแปรตามมากที่สุด แล้วใช้ Least Squares กับตัวแปรที่เลือก

Shrinkage Methods

  • ใช้ตัวแปรทั้งหมด แต่ปรับค่าสัมประสิทธิ์ให้ลดลงเพื่อลดความแปรปรวน (Regularization)
  • สามารถทำ Variable Selection ได้โดยกำหนดให้บางสัมประสิทธิ์มีค่าเป็น ศูนย์
  • ตัวอย่างของเทคนิคนี้ ได้แก่ Ridge Regression, Lasso Regression

2. การสร้างโมเดลแบบไม่เชิงเส้น (Non-Linear Modeling)

  • Polynomial Regression: ขยายโมเดลเชิงเส้นให้รองรับความสัมพันธ์แบบไม่เชิงเส้น โดยเพิ่มตัวแปรกำลังสอง กำลังสาม ฯลฯ

  • Step Functions: แบ่งช่วงค่าของตัวแปรอิสระออกเป็นหลายช่วง แล้วใช้ฟังก์ชันแบบขั้นบันได (Piecewise Constant Functions)

  • Regression Splines: แบ่งช่วงของตัวแปรอิสระออกเป็นช่วง ๆ แล้วใช้ฟังก์ชันพหุนาม (Polynomial) ในแต่ละช่วง

  • Smoothing Splines: ใช้เทคนิคการปรับค่าเพื่อให้เกิดเส้นโค้งที่เหมาะสมกับข้อมูล

  • Local Regression: ใช้การถดถอยเฉพาะจุดโดยพิจารณาเฉพาะข้อมูลที่อยู่ใกล้เคียง

  • Generalized Additive Models (GAMs): แสดงความสัมพันธ์ระหว่างตัวแปรอิสระและตัวแปรตามในรูปของผลรวมของฟังก์ชัน

3. วิธีการที่ใช้ต้นไม้ตัดสินใจ (Tree-Based Methods)

  • Decision Trees: แบ่งตัวแปรอิสระออกเป็นหลาย ๆ กลุ่ม จากนั้นใช้ค่าเฉลี่ยหรือค่าที่เกิดขึ้นบ่อยที่สุดในแต่ละกลุ่มเพื่อพยากรณ์

  • Bagging: ใช้ตัวอย่างข้อมูลหลายชุดเพื่อสร้างต้นไม้หลายต้น แล้วรวมผลลัพธ์ทั้งหมดเข้าด้วยกัน

  • Random Forests: คล้ายกับ Bagging แต่ใช้ชุดของตัวแปรที่แตกต่างกันในแต่ละการแบ่งข้อมูล ทำให้ต้นไม้แต่ละต้นไม่สัมพันธ์กันมากเกินไป

  • Boosting: สร้างโมเดลหลายตัวแบบลำดับ โดยแต่ละตัวพยายามแก้ไขข้อผิดพลาดของโมเดลก่อนหน้า

  • Bayesian Additive Regression Trees (BART): ใช้แนวคิดของ Bayesian Inference มารวมกับ Decision Trees

4. Support Vector Machines (SVM)

  • เป็นวิธีการจำแนกประเภท (Classification) โดยค้นหา Hyperplane ที่สามารถแบ่งข้อมูลได้ดีที่สุด
  • สามารถขยายไปสู่รูปแบบที่ไม่เป็นเส้นตรงได้โดยใช้ Kernel Trick

5. Deep Learning

ใช้โครงข่ายประสาทเทียมหลายชั้นเพื่อเรียนรู้รูปแบบที่ซับซ้อนของข้อมูล

  • Convolutional Neural Networks (CNNs): ใช้กับข้อมูลที่เป็นภาพ (Image Processing)

  • Recurrent Neural Networks (RNNs): ใช้กับข้อมูลที่เป็นลำดับ (Sequential Data) เช่น การวิเคราะห์ข้อความ หรือข้อมูลอนุกรมเวลา (Time Series)

6. Survival Analysis

  • ใช้สำหรับข้อมูลที่มีลักษณะ Censored Data เช่น การวิเคราะห์อัตราการรอดชีวิต
  • ตัวอย่างโมเดลที่ใช้: Cox Proportional Hazards Model และ Random Survival Forests

7. เทคนิคอื่น ๆ ใน Machine Learning

K-Nearest Neighbors (KNN)

  • ใช้ข้อมูลรอบข้างเป็นเกณฑ์ในการพยากรณ์ค่าของข้อมูลใหม่

Naive Bayes

  • ใช้ความน่าจะเป็นแบบ Bayesian เพื่อจำแนกกลุ่มของข้อมูล

Linear Discriminant Analysis (LDA)

  • ใช้สำหรับปัญหาการจำแนกประเภท โดยพิจารณาความแตกต่างของค่ากลางของแต่ละกลุ่ม

Quadratic Discriminant Analysis (QDA)

  • คล้ายกับ LDA แต่อนุญาตให้แต่ละกลุ่มมีรูปแบบการกระจายของข้อมูลที่แตกต่างกัน

Generalized Linear Models (GLMs)

  • โมเดลทางสถิติที่สามารถใช้กับปัญหาหลากหลาย เช่น

    • Poisson Regression สำหรับข้อมูลการนับ
    • Logistic Regression สำหรับปัญหาการจำแนกประเภท
  • Ensemble Methods: การรวมหลายโมเดลเข้าด้วยกันเพื่อให้ได้ผลลัพธ์ที่แม่นยำยิ่งขึ้น เช่น

    • Stacking
    • Boosting
    • Bagging

ความแตกต่างระหว่าง Statistical Learning และ Machine Learning

Statistical Learning และ Machine Learning มีคำนิยามที่คล้ายกันมาก เนื่องจากทั้งสองศาสตร์เกี่ยวข้องกับการใช้ข้อมูลเพื่อค้นหารูปแบบ ทำการพยากรณ์ หรือให้ได้มาซึ่งข้อมูลเชิงลึก (Insights)

Statistical Learning ถูกนิยามว่าเป็น ชุดของเครื่องมือที่ใช้ในการทำความเข้าใจข้อมูล และสร้างแบบจำลองทางสถิติเพื่อใช้ในการพยากรณ์หรือประมาณค่าจากตัวแปรนำเข้า ในขณะที่ Machine Learning เน้นไปที่ การพยากรณ์ และ การเรียนรู้จากข้อมูล

  • Statistical Learning เป็นชุดของเครื่องมือที่ใช้ในการทำความเข้าใจข้อมูลเชิงซับซ้อน โดยมุ่งเน้นที่การวิเคราะห์ข้อมูลทั้งในแบบ Supervised Learning และ Unsupervised Learning ซึ่งสามารถใช้เพื่อการพยากรณ์ (Prediction) หรือการอนุมาน (Inference)
  • Machine Learning มุ่งเน้นไปที่การเรียนรู้จากข้อมูลเพื่อทำ “การพยากรณ์” เป็นหลัก และมักเกี่ยวข้องกับ Neural Networks และ Deep Learning ซึ่งเป็นเทคนิคที่ยืดหยุ่นและซับซ้อนมากขึ้น
  • รวมถึง Statistical Learning มักต้องอาศัยสมมติฐานเกี่ยวกับการกระจายของข้อมูล เช่น การสันนิษฐานว่า ข้อมูลเป็นไปตามการแจกแจงปกติ (Normal Distribution) หรือมีความสัมพันธ์แบบเชิงเส้น
  • ในขณะที่ Machine Learning มี ความยืดหยุ่นสูง และสามารถสร้างแบบจำลองจากข้อมูลโดยไม่ต้องอาศัยข้อสมมติฐานที่ตายตัว

รวมถึง แนวคิดนี้จึงมีความใกล้เคียงกันก็จะมีตั้งแต่

  1. เป้าหมายร่วมกัน (Shared Goal)
  • ทั้งสองศาสตร์มุ่งเน้นไปที่การเรียนรู้จากข้อมูล
  • ใช้เพื่อพยากรณ์ผลลัพธ์ในอนาคต หรือเพื่อทำความเข้าใจความสัมพันธ์ระหว่างตัวแปร
  1. เทคนิคที่ใช้ร่วมกัน (Overlapping Techniques)
  • วิธีการเช่น Regression, Classification, Clustering ถูกใช้ทั้งใน Statistical Learning และ Machine Learning
  • ตัวอย่างเทคนิคที่ใช้ในทั้งสองศาสตร์
    • Linear Regression, Logistic Regression
    • Decision Trees, Support Vector Machines (SVM)
    • K-Nearest Neighbors (KNN)
  1. การสร้างแบบจำลอง (Model Building)
  • ทั้ง Statistical Learning และ Machine Learning เกี่ยวข้องกับการสร้างแบบจำลองจากชุดข้อมูลฝึก (Training Data)
  • กระบวนการทั้งสองมักใช้ขั้นตอนเดียวกัน ได้แก่
    1. เตรียมข้อมูล
    2. เลือกแบบจำลอง
    3. ปรับค่าพารามิเตอร์
    4. ประเมินผลลัพธ์

ดังนั้น ถ้าเราจะสรุปเป็นแกนไอเดียสำคัญ

Statistical Learning

  • เน้น การตีความโมเดล และความสัมพันธ์ระหว่างตัวแปร
  • ใช้ ทฤษฎีทางสถิติ เป็นหลัก
  • เหมาะกับกรณีที่ต้องการทำ Statistical Inference

Machine Learning

  • เน้น Predictive Accuracy มากกว่าการตีความ
  • ใช้แนวทางที่ขับเคลื่อนด้วยข้อมูล (Data-driven)
  • เหมาะกับกรณีที่ต้องการพยากรณ์ผลลัพธ์ที่ซับซ้อน

ดังนั้น ในหัวข้อถัดไป เราจะเริ่มเข้าสู่ดินแดนของ Machine Learning กัน โดยจะยึดพื้นฐานหลายๆอย่างจากหัวข้อนี้ และจะเริ่มไปสู่เทคนิคของการพยายามให้ prediction มีความแม่นยำมากขึ้น โดยจะเริ่มมีการพูดถึง

  • Deep Learning (Neural Networks, CNNs, RNNs)
  • Tree-Based Ensemble Methods เช่น
    • Random Forests
    • Gradient Boosting (XGBoost, AdaBoost)
    • Bayesian Additive Regression Trees (BART)
  • Support Vector Machines (SVM)