Vòng đời Machine Learning
The Machine Learning Lifecycle
Một dự án ML không chỉ là "huấn luyện mô hình". Nó là một vòng đời (lifecycle) gồm nhiều bước nối tiếp và lặp lại. Hiểu vòng đời này là trọng tâm quan trọng của AIF-C01.
Các bước trong vòng đời ML
- Xác định bài toán kinh doanh (business problem framing) — biến mục tiêu kinh doanh thành bài toán ML cụ thể và định nghĩa thước đo thành công. Ví dụ: "giảm churn" → "dự đoán khách hàng có khả năng rời bỏ trong 30 ngày tới".
- Thu thập dữ liệu (data collection) — gom dữ liệu từ database, log, API, file... Nguồn AWS thường gặp: Amazon S3, Amazon Redshift, AWS Glue.
- Phân tích khám phá dữ liệu (EDA Exploratory Data Analysis) — thống kê, trực quan hóa để hiểu phân phối, giá trị thiếu, ngoại lai, mối tương quan.
- Chuẩn bị dữ liệu & feature engineering — làm sạch, xử lý giá trị thiếu, chuẩn hóa, mã hóa biến phân loại, và tạo đặc trưng (features) giàu thông tin. Đây thường là bước tốn nhiều công sức nhất.
- Huấn luyện mô hình (model training) — chọn thuật toán, đưa dữ liệu train vào để mô hình học các tham số.
- Đánh giá mô hình (evaluation) — đo chất lượng trên dữ liệu chưa thấy bằng các chỉ số phù hợp.
- Triển khai (deployment) — đưa mô hình vào sản xuất dưới dạng endpoint thời gian thực hoặc batch inference (ví dụ SageMaker endpoints).
- Giám sát & huấn luyện lại (monitoring & retraining) — theo dõi hiệu năng theo thời gian, phát hiện trôi dữ liệu model/data drift và huấn luyện lại khi cần.
Vòng lặp, không phải đường thẳng
Vòng đời ML có tính lặp: kết quả đánh giá hoặc giám sát thường khiến ta quay lại bước chuẩn bị dữ liệu hoặc huấn luyện. Không phải làm một lần là xong.
Chia dữ liệu: train / validation / test
Để đánh giá khách quan, ta chia dữ liệu thành ba phần:
- Training set — dùng để mô hình học các tham số.
- Validation set — dùng để chỉnh siêu tham số (hyperparameter tuning) và chọn mô hình.
- Test set — dữ liệu chưa từng dùng trong train/validation, chỉ dùng một lần cuối để ước lượng khả năng tổng quát hóa (generalization) thực sự.
Trọng tâm thi
Test set tồn tại để đo mô hình tổng quát hóa trên dữ liệu mới, giúp phát hiện overfitting. Không bao giờ dùng test set để chỉnh mô hình — nếu làm vậy, ước lượng sẽ "lạc quan giả".
Overfitting vs Underfitting
- Overfitting (quá khớp) — mô hình học thuộc lòng dữ liệu train (kể cả nhiễu), nên rất tốt trên train nhưng kém trên test/dữ liệu mới. Dấu hiệu: chênh lệch lớn giữa hiệu năng train và test.
- Underfitting (chưa khớp) — mô hình quá đơn giản, không nắm được quy luật, nên kém trên cả train lẫn test.
| Triệu chứng | Train | Test | Vấn đề |
|---|---|---|---|
| Tốt | Tốt | Tốt | Vừa khít (lý tưởng) |
| Rất tốt | Rất tốt | Kém | Overfitting |
| Kém | Kém | Kém | Underfitting |
Cách giảm overfitting: thêm dữ liệu, regularization, đơn giản hóa mô hình, dùng cross-validation, áp dụng dropout (với neural network).
Bias–Variance Tradeoff
- Bias cao → mô hình quá đơn giản → underfitting.
- Variance cao → mô hình quá nhạy với dữ liệu train → overfitting.
Mục tiêu là cân bằng giữa bias và variance để tổng lỗi nhỏ nhất. Giảm cái này thường làm tăng cái kia, nên cần điểm cân bằng phù hợp.
Các chỉ số đánh giá
Bài toán phân loại (classification)
Bắt đầu từ confusion matrix (ma trận nhầm lẫn) với 4 ô: TP, TN, FP, FN.
| Chỉ số | Ý nghĩa | Khi nào quan trọng |
|---|---|---|
| Accuracy | Tỉ lệ dự đoán đúng tổng thể | Dữ liệu cân bằng giữa các lớp |
| Precision | Trong số dự đoán "dương", bao nhiêu thực sự đúng | Khi false positive tốn kém |
| Recall | Trong số ca "dương" thực tế, bắt được bao nhiêu | Khi false negative nguy hiểm (vd phát hiện bệnh) |
| F1-score | Trung bình điều hòa của precision & recall | Khi cần cân bằng cả hai, lớp mất cân bằng |
| AUC / ROC | Khả năng phân tách lớp ở mọi ngưỡng | So sánh tổng quát giữa các mô hình phân loại |
Cẩn thận với accuracy
Khi dữ liệu mất cân bằng (ví dụ 99% giao dịch hợp lệ), accuracy có thể cao giả tạo. Khi đó hãy ưu tiên precision, recall, F1 hoặc AUC.
Bài toán hồi quy (regression)
- MAE (Mean Absolute Error) — trung bình sai số tuyệt đối, dễ diễn giải.
- RMSE (Root Mean Squared Error) — phạt nặng các sai số lớn hơn (do bình phương).
Trọng tâm thi
Phân loại → accuracy, precision, recall, F1, AUC/ROC, confusion matrix. Hồi quy → MAE, RMSE. Đề rất hay hỏi "chỉ số nào phù hợp khi false negative nguy hiểm" → đáp án là recall.
Tóm tắt
- Vòng đời ML: framing → thu thập dữ liệu → EDA → chuẩn bị/feature engineering → train → evaluate → deploy → monitor/retrain (và lặp lại).
- Chia train/validation/test; test set đo khả năng tổng quát hóa, dùng một lần cuối.
- Overfitting: tốt train, kém test; underfitting: kém cả hai. Liên hệ với bias–variance.
- Phân loại: confusion matrix, accuracy, precision, recall, F1, AUC/ROC. Hồi quy: MAE, RMSE.
- Dữ liệu mất cân bằng → đừng tin accuracy, dùng precision/recall/F1/AUC.