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