ml/ library Learn by doing
YOUR MACHINE LEARNING WORKBENCH

A little theory.
A lot of possibility.

เข้าใจไอเดีย ลองปรับโค้ด แล้วนำไปใช้จริง
คลัง Machine Learning ที่เริ่มจากความเข้าใจ ไม่ใช่แค่ copy & paste

LEVEL 1 — 4

เริ่มจากพื้นฐาน
แล้วต่อยอดตาม prerequisite

Algorithm catalog 29 / 29

เรียงตามเลขใน Learning Path · เปิดอ่านได้ครบช่วง 21–30
MACHINE LEARNING CATALOGRegression · Classification · Ensemble · Clustering
FILTER BY CATEGORY29 เทคนิค
LEVEL 1 พื้นฐานLEVEL 2 ต่อยอดโดยตรงLEVEL 3 ผสานหลายแนวคิดLEVEL 4 ขั้นสูง
SUPERVISED · REGRESSION
01LEVEL1พื้นฐาน

Linear Regression

ลากเส้นตรงให้ใกล้ข้อมูลมากที่สุด

โมเดลพื้นฐานสำหรับทำนายค่าตัวเลขและอธิบายว่าตัวแปรแต่ละตัวสัมพันธ์กับผลลัพธ์อย่างไร

ควรรู้มาก่อน สมการเส้นตรง ค่าเฉลี่ย และ error

Regression
SUPERVISED · CLASSIFICATION / REGRESSION
02LEVEL1พื้นฐาน

k-Nearest Neighbors

ถามเพื่อนบ้านที่อยู่ใกล้ที่สุด

ไม่สร้างสมการล่วงหน้า แต่เก็บข้อมูลฝึกไว้และทำนายจากตัวอย่างใกล้เคียง

ควรรู้มาก่อน ระยะห่างและการปรับสเกลข้อมูล

ClassificationRegression
SUPERVISED · CLASSIFICATION / REGRESSION
03LEVEL1พื้นฐาน

Decision Tree

เปลี่ยนข้อมูลให้เป็นชุดคำถาม

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

ควรรู้มาก่อน เงื่อนไขแบบ if–else

ClassificationRegression
SUPERVISED · CLASSIFICATION
04LEVEL1พื้นฐาน

Naive Bayes

รวมหลักฐานด้วยกฎของเบย์

คำนวณโอกาสของแต่ละคลาสโดยสมมติว่า feature เป็นอิสระกันเมื่อรู้คลาสแล้ว

ควรรู้มาก่อน ความน่าจะเป็นพื้นฐาน

Classification
UNSUPERVISED · CLUSTERING
05LEVEL1พื้นฐาน

K-Means Clustering

หากลุ่มที่ซ่อนอยู่ในข้อมูล

จับข้อมูลที่คล้ายกันมาอยู่ด้วยกัน โดยไม่ต้องบอกคำตอบล่วงหน้า เหมาะกับการแบ่งกลุ่มลูกค้าและค้นหาแพตเทิร์น

ควรรู้มาก่อน ระยะห่าง ค่าเฉลี่ย และ centroid

Clustering
SUPERVISED · REGRESSION
16LEVEL2ต่อยอดโดยตรง

Polynomial Regression

ให้เส้นโค้งตามแพตเทิร์นของข้อมูล

ขยาย Linear Regression ด้วยกำลังของ feature เพื่อจับความสัมพันธ์ที่โค้ง โดยยังคงฝึกแบบเส้นตรงใน feature ใหม่

ควรรู้มาก่อน Linear Regression

Regression
SUPERVISED · REGRESSION
17LEVEL2ต่อยอดโดยตรง

Ridge Regression

คุมค่าน้ำหนักไม่ให้สุดโต่ง

Linear Regression ที่เพิ่มโทษ L2 เพื่อให้โมเดลนิ่งขึ้นเมื่อ feature จำนวนมากหรือสัมพันธ์กันเอง

ควรรู้มาก่อน Linear Regression และ L2 regularization

Regression
SUPERVISED · REGRESSION
18LEVEL2ต่อยอดโดยตรง

Lasso Regression

บีบน้ำหนักบางตัวให้เป็นศูนย์

Regression ที่ใช้โทษ L1 จึงช่วยเลือก feature ไปพร้อมกับการทำนาย

ควรรู้มาก่อน Linear Regression และ L1 regularization

Regression
SUPERVISED · REGRESSION
19LEVEL2ต่อยอดโดยตรง

Quantile Regression

ทำนายขอบล่าง กลาง หรือขอบบน

ประมาณ quantile ของผลลัพธ์แทนค่าเฉลี่ย จึงเห็นภาพการกระจายและรับมือ outlier ได้ดีขึ้น

ควรรู้มาก่อน Linear Regression และ loss function

Regression
SUPERVISED · CLASSIFICATION
20LEVEL2ต่อยอดโดยตรง

Logistic Regression

เปลี่ยนคะแนนให้เป็นความน่าจะเป็น

ตัวจำแนกพื้นฐานที่สร้างเส้นแบ่งเชิงเส้นและส่งออก probability ผ่านฟังก์ชัน logistic

ควรรู้มาก่อน Linear Regression และความน่าจะเป็น

Classification
SUPERVISED · CLASSIFICATION
21LEVEL2ต่อยอดโดยตรง

Linear Discriminant Analysis

หาแนวฉายที่แยกคลาสได้ชัดที่สุด

ใช้ค่าเฉลี่ยของคลาสและ covariance ร่วม เพื่อสร้างขอบเขตเส้นตรงที่แยกกลุ่ม

ควรรู้มาก่อน Naive Bayes, distribution และ covariance

Classification
ENSEMBLE LEARNING
22LEVEL2ต่อยอดโดยตรง

Bagging

ฝึกหลายโมเดลจากข้อมูลคนละชุดแล้วโหวต

ลด variance ด้วย bootstrap samples และรวมคำตอบจากโมเดลฐานหลายตัว

ควรรู้มาก่อน Decision Tree และ bootstrap sampling

EnsembleClassification
SUPERVISED · CLASSIFICATION / REGRESSION
23LEVEL2ต่อยอดโดยตรง

Weighted k-Nearest Neighbors

ให้เพื่อนบ้านที่ใกล้กว่า มีเสียงมากกว่า

ต่อยอด KNN ด้วยการถ่วงน้ำหนักตามระยะห่าง เพื่อให้ตัวอย่างที่คล้ายกันมากมีอิทธิพลมากขึ้น

ควรรู้มาก่อน k-Nearest Neighbors

ClassificationRegression
SUPERVISED · CLASSIFICATION / REGRESSION
24LEVEL2ต่อยอดโดยตรง

Radius Neighbors

ถามเฉพาะเพื่อนบ้านที่อยู่ในรัศมีที่กำหนด

ไม่บังคับจำนวนเพื่อนบ้าน ใช้ทุกจุดในระยะ radius จึงปรับจำนวนผู้โหวตตามความหนาแน่นของข้อมูล

ควรรู้มาก่อน k-Nearest Neighbors

ClassificationRegression
SUPERVISED · REGRESSION
25LEVEL2ต่อยอดโดยตรง

Regression Tree

ถามทีละข้อ แล้วตอบด้วยตัวเลขเฉลี่ยของกลุ่ม

ใช้โครงสร้างต้นไม้แบ่งข้อมูลเป็นบริเวณ แต่แต่ละใบให้ค่าต่อเนื่องแทนชื่อคลาส

ควรรู้มาก่อน Decision Tree และ Linear Regression

Regression
SUPERVISED · CLASSIFICATION
26LEVEL2ต่อยอดโดยตรง

Multinomial Naive Bayes

นับคำแล้วดูว่าข้อความน่าจะอยู่หมวดไหน

ใช้ความถี่ของ feature ที่ไม่ติดลบเป็นหลักฐานจำแนกคลาส เหมาะกับตารางจำนวนคำ

ควรรู้มาก่อน Gaussian Naive Bayes และข้อมูลแบบ count

Classification
SUPERVISED · CLASSIFICATION
27LEVEL2ต่อยอดโดยตรง

Bernoulli Naive Bayes

ดูทั้งคำที่มี และคำที่ไม่มี

แทน feature ด้วย 0/1 แล้วใช้การปรากฏและไม่ปรากฏเป็นหลักฐานของแต่ละคลาส

ควรรู้มาก่อน Gaussian Naive Bayes และข้อมูล binary

Classification
SUPERVISED · CLASSIFICATION
28LEVEL2ต่อยอดโดยตรง

Complement Naive Bayes

เรียนรู้หมวดหนึ่งจากเอกสารที่อยู่นอกหมวดนั้น

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

ควรรู้มาก่อน Gaussian Naive Bayes ข้อมูลแบบ count และ class imbalance

Classification
UNSUPERVISED · CLUSTERING
29LEVEL2ต่อยอดโดยตรง

Mini Batch K-Means

ขยับศูนย์กลางทีละชุดเล็ก เพื่อทำงานกับข้อมูลจำนวนมาก

ประมาณคำตอบแบบ K-Means โดยใช้ mini batch ในการอัปเดต ลดงานต่อรอบแลกกับความคลาดเคลื่อนจากการสุ่ม

ควรรู้มาก่อน K-Means Clustering และ mini batch optimization

Clustering
UNSUPERVISED · CLUSTERING
30LEVEL2ต่อยอดโดยตรง

k-Medoids

เลือกสมาชิกจริงมาเป็นตัวแทนแต่ละกลุ่ม

ใช้ medoid ซึ่งเป็นจุดข้อมูลจริงแทนค่าเฉลี่ย และลดผลรวมระยะห่างถึงตัวแทน

ควรรู้มาก่อน K-Means Clustering และแนวคิด medoid

Clustering
NEURAL NETWORK · CLASSIFICATION / REGRESSION
46LEVEL2ต่อยอดโดยตรง

Multilayer Perceptron

ประกอบฟังก์ชันเล็ก ๆ ให้เรียนรู้รูปทรงซับซ้อน

โครงข่ายประสาทแบบ feed-forward ที่มี hidden layers และเรียนรู้น้ำหนักด้วย backpropagation

ควรรู้มาก่อน Perceptron, Linear Regression และ gradient descent

Neural NetworkClassification
SUPERVISED · REGRESSION
47LEVEL3ผสานหลายแนวคิด

Elastic Net

ผสมข้อดีของ Ridge และ Lasso

ใช้ทั้ง L1 และ L2 เพื่อเลือก feature พร้อมรักษาเสถียรภาพเมื่อ feature คล้ายกัน

ควรรู้มาก่อน Ridge Regression และ Lasso Regression

Regression
SUPERVISED · REGRESSION
48LEVEL3ผสานหลายแนวคิด

Bayesian Regression

ทำนายพร้อมบอกความไม่แน่นอน

มองค่าน้ำหนักเป็นการกระจายความน่าจะเป็น แล้วอัปเดตความเชื่อเมื่อเห็นข้อมูล

ควรรู้มาก่อน Linear Regression, Naive Bayes และ Bayes theorem

Regression
SUPERVISED · REGRESSION / CLASSIFICATION
49LEVEL3ผสานหลายแนวคิด

Generalized Additive Model

รวมเส้นโค้งเล็ก ๆ ที่ยังอธิบายได้

สร้างผลลัพธ์จากผลรวมฟังก์ชันเรียบของแต่ละ feature จับ nonlinear pattern โดยยังดูผลของแต่ละตัวแปรได้

ควรรู้มาก่อน Polynomial Regression และ Ridge Regression

RegressionClassification
SUPERVISED · CLASSIFICATION
50LEVEL3ผสานหลายแนวคิด

Quadratic Discriminant Analysis

ให้แต่ละคลาสมีรูปทรงของตัวเอง

คล้าย LDA แต่ประมาณ covariance แยกต่อคลาส จึงสร้างขอบเขตโค้งได้

ควรรู้มาก่อน Linear Discriminant Analysis

Classification
SUPERVISED · CLASSIFICATION / REGRESSION
51LEVEL3ผสานหลายแนวคิด

Support Vector Machine

หาเส้นแบ่งที่มีพื้นที่ปลอดภัยกว้างที่สุด

เน้นตัวอย่างที่อยู่ใกล้ขอบเขตและสร้าง margin ระหว่างคลาส สามารถใช้ kernel เพื่อสร้างขอบเขตโค้ง

ควรรู้มาก่อน Logistic Regression, vector และระยะห่าง

ClassificationRegression
ENSEMBLE · CLASSIFICATION / REGRESSION
52LEVEL3ผสานหลายแนวคิด

Random Forest

รวมต้นไม้ที่เห็นข้อมูลและ feature ต่างกัน

Bagging ของ Decision Trees ที่สุ่มทั้งแถวข้อมูลและ feature เพื่อลดความเหมือนกันของต้นไม้

ควรรู้มาก่อน Decision Tree และ Bagging

EnsembleClassification
ENSEMBLE · CLASSIFICATION / REGRESSION
53LEVEL3ผสานหลายแนวคิด

Extra Trees

เพิ่มความสุ่มให้ต้นไม้แตกต่างกันยิ่งขึ้น

Extremely Randomized Trees สุ่ม threshold เพิ่มเติม แล้วรวมต้นไม้จำนวนมากเพื่อลด variance

ควรรู้มาก่อน Decision Tree และ Bagging

EnsembleClassification
SUPERVISED · REGRESSION / CLASSIFICATION
84LEVEL4ขั้นสูง

Gaussian Process

สร้างเส้นทำนายพร้อมช่วงความมั่นใจ

โมเดลแบบความน่าจะเป็นที่นิยามความคล้ายของจุดด้วย kernel และให้ distribution ของฟังก์ชันที่เป็นไปได้

ควรรู้มาก่อน Bayesian Regression, kernel และ covariance

RegressionClassification
INSIDE EVERY ALGORITHM01 เข้าใจคอนเซปต์02 ดูวิธีทำงาน03 หยิบโค้ดไปใช้04 ทดลองด้วยตัวเอง