Machine Learning là gì? Tổng quan về học máy từ A đến Z

Machine Learning Là Gì_ A đến Z

Machine Learning là gì? Machine Learning (ML), hay học máy, là một nhánh của Artificial Intelligence (AI) tập trung vào việc xây dựng các hệ thống có khả năng học các quy luật và mẫu hình từ dữ liệu để đưa ra dự đoán hoặc quyết định trên dữ liệu mới.

Điểm quan trọng nhất cần hiểu là Machine Learning không đơn giản là “cho máy tính thật nhiều dữ liệu”. Bản chất của Machine Learning là tìm ra một hàm hoặc một mô hình có khả năng khái quát hóa (generalization) từ những dữ liệu đã quan sát sang những trường hợp chưa từng thấy.

Ví dụ, thay vì viết hàng nghìn quy tắc để xác định một email có phải spam hay không, chúng ta có thể cung cấp cho mô hình nhiều email đã được gắn nhãn spam và not spam. Mô hình tìm ra các đặc điểm liên quan đến spam và sử dụng những đặc điểm đó để dự đoán email mới.

Trong bài viết này, chúng ta sẽ đi từ khái niệm nền tảng đến các loại Machine Learning, dữ liệu, feature, model, training, loss function, optimization, overfitting, evaluation, deployment và những thuật toán quan trọng mà người mới cần biết.

Mục lục

1. Machine Learning là gì?

Ở góc nhìn đơn giản, Machine Learning là quá trình để máy tính học từ dữ liệu thay vì được lập trình bằng toàn bộ các quy tắc cần thiết cho từng trường hợp.

Trong chương trình truyền thống, con người thường xác định rõ các quy tắc:

Input + Rules → Program → Output

Ví dụ, nếu xây dựng chương trình tính phí vận chuyển, chúng ta có thể tự viết:

Nếu khoảng cách < 5 km:
    phí = 20.000

Nếu khoảng cách từ 5 đến 10 km:
    phí = 30.000

Nếu khoảng cách > 10 km:
    phí = 40.000

Với Machine Learning, cách tiếp cận thay đổi:

Input + Output đã biết → Learning Algorithm → Model

Model + Input mới → Prediction

Thay vì tự viết tất cả quy tắc, chúng ta cung cấp dữ liệu và kết quả quan sát được. Thuật toán học máy tìm ra một mô hình có thể mô tả mối quan hệ giữa đầu vào và đầu ra.

Đây cũng là lý do Machine Learning có sức mạnh lớn trong những bài toán mà con người khó mô tả bằng các quy tắc cố định, chẳng hạn nhận diện hình ảnh, phát hiện gian lận, dự đoán nhu cầu hoặc phân loại văn bản.

1.1. Bản chất của “học” trong Machine Learning

Từ “learning” đôi khi khiến người mới nghĩ rằng máy tính đang học giống con người. Thực tế, mô hình Machine Learning không “hiểu” thế giới theo nghĩa con người hiểu.

Ở mức cơ bản, mô hình đang tìm kiếm một cách biểu diễn toán học sao cho đầu ra của mô hình phù hợp với dữ liệu quan sát được và có khả năng hoạt động tốt trên dữ liệu mới.

Có thể hình dung quá trình này như sau:

Dữ liệu
   ↓
Tìm quy luật / pattern
   ↓
Điều chỉnh tham số của mô hình
   ↓
Mô hình đã học
   ↓
Dữ liệu mới
   ↓
Dự đoán

Mục tiêu cuối cùng không phải là ghi nhớ dữ liệu huấn luyện mà là generalization – khả năng hoạt động tốt trên những dữ liệu mà mô hình chưa từng nhìn thấy.

2. Machine Learning nằm ở đâu trong AI?

AI, Machine Learning và Deep Learning có quan hệ với nhau nhưng không phải là ba khái niệm đồng nghĩa.

Artificial Intelligence (AI)
│
└── Machine Learning (ML)
    │
    └── Deep Learning (DL)
        │
        └── Neural Networks

Artificial Intelligence là khái niệm rộng nhất, bao gồm các phương pháp xây dựng hệ thống có khả năng thực hiện những nhiệm vụ thường gắn với trí thông minh của con người.

Machine Learning là một hướng tiếp cận trong AI, trong đó hệ thống sử dụng dữ liệu và thuật toán để học pattern.

Deep Learning là một nhóm phương pháp Machine Learning dựa trên neural networks nhiều tầng, đặc biệt phù hợp với những dữ liệu phức tạp như hình ảnh, âm thanh và ngôn ngữ.

Do đó:

  • AI không đồng nghĩa với Machine Learning.
  • Machine Learning là một bộ phận của AI.
  • Deep Learning là một bộ phận của Machine Learning.
  • Không phải mọi hệ thống AI đều sử dụng Machine Learning.

3. Machine Learning hoạt động như thế nào?

Một mô hình Machine Learning thường nhận dữ liệu đầu vào dưới dạng các features và cố gắng học cách tạo ra một prediction.

Ví dụ bài toán dự đoán giá nhà:

Feature Ý nghĩa
Area Diện tích căn nhà
Bedrooms Số phòng ngủ
Location Vị trí
Age Tuổi của căn nhà
Price Giá nhà

Trong đó, Area, Bedrooms, Location và Age có thể là features, còn Price là target.

Mô hình có thể học một hàm tổng quát:

Price = f(Area, Bedrooms, Location, Age)

Điều chúng ta không biết trước là hàm f cụ thể. Machine Learning cố gắng tìm ra một hàm phù hợp từ dữ liệu.

4. Những thành phần quan trọng của một bài toán Machine Learning

4.1. Dataset

Dataset là tập dữ liệu được sử dụng để phân tích, huấn luyện và đánh giá mô hình.

Mỗi dòng dữ liệu thường đại diện cho một observation, sample hoặc instance. Các cột có thể đại diện cho features và target.

Age Income Credit Score Loan
25 15 triệu 720 0
42 30 triệu 680 1
35 25 triệu 750 0

Dataset tốt không chỉ cần nhiều dữ liệu mà còn phải phù hợp với bài toán. Dữ liệu thiếu, sai, thiên lệch hoặc không đại diện cho môi trường thực tế có thể khiến mô hình hoạt động kém dù thuật toán rất phức tạp.

4.2. Feature

Feature là một biến đầu vào được sử dụng để mô hình tạo ra prediction.

Ví dụ trong bài toán dự đoán khách hàng rời bỏ dịch vụ:

  • Tuổi khách hàng.
  • Số tháng sử dụng dịch vụ.
  • Chi tiêu trung bình.
  • Số lần liên hệ với bộ phận hỗ trợ.
  • Loại hợp đồng.

Việc lựa chọn, biến đổi và tạo ra features phù hợp được gọi là Feature Engineering. Đây là một phần rất quan trọng trong Machine Learning truyền thống.

4.3. Target

Target là biến mà mô hình cần dự đoán trong các bài toán supervised learning.

Ví dụ:

  • Dự đoán giá nhà → target là Price.
  • Dự đoán khách hàng có rời bỏ hay không → target là Churn.
  • Dự đoán doanh thu → target là Revenue.

4.4. Model

Model là biểu diễn toán học được học từ dữ liệu và sử dụng để tạo ra prediction.

Ví dụ, trong Linear Regression, model có dạng:

ŷ = β₀ + β₁x₁ + β₂x₂ + ... + βₚxₚ

Trong đó các hệ số β là những giá trị được mô hình học từ dữ liệu.

4.5. Parameter và Hyperparameter

Parameter là các giá trị được mô hình học trong quá trình training.

Hyperparameter là các cấu hình do người xây dựng mô hình lựa chọn hoặc tối ưu bên ngoài quá trình học parameter.

Khái niệm Ví dụ
Parameter Trọng số β của Linear Regression hoặc Neural Network
Hyperparameter Learning rate, số cây trong Random Forest, max depth

5. Ba loại Machine Learning phổ biến

Cách phân loại cơ bản nhất dựa trên cách mô hình nhận phản hồi từ dữ liệu là Supervised Learning, Unsupervised Learning và Reinforcement Learning. Ngoài ra, trong Machine Learning hiện đại còn có Semi-supervised Learning và Self-supervised Learning.

5.1. Supervised Learning

Trong Supervised Learning, dữ liệu huấn luyện có target hoặc label. Mô hình học mối quan hệ giữa input và output.

Input X → Model → Prediction ŷ
                  ↓
             So sánh với y
                  ↓
               Error

Có hai nhóm bài toán supervised learning quan trọng nhất là Regression và Classification.

5.2. Regression

Regression được sử dụng khi target là một giá trị số liên tục.

Ví dụ:

  • Dự đoán giá nhà.
  • Dự đoán doanh thu.
  • Dự đoán nhiệt độ.
  • Dự đoán nhu cầu sản phẩm.

Một mô hình Linear Regression đơn giản có thể được biểu diễn:

ŷ = β₀ + β₁x

Mục tiêu là tìm các parameter sao cho prediction gần với giá trị thực tế nhất theo một loss function đã lựa chọn.

5.3. Classification

Classification được sử dụng khi target thuộc một hoặc nhiều nhóm.

Ví dụ:

  • Email → Spam / Not Spam.
  • Khách hàng → Churn / Not Churn.
  • Giao dịch → Fraud / Normal.
  • Hình ảnh → Cat / Dog.

Classification có thể là:

  • Binary Classification: hai lớp.
  • Multiclass Classification: nhiều lớp nhưng mỗi observation thuộc một lớp.
  • Multilabel Classification: một observation có thể đồng thời thuộc nhiều nhãn.

5.4. Unsupervised Learning

Trong Unsupervised Learning, dữ liệu không có target được cung cấp sẵn. Mục tiêu là tìm cấu trúc hoặc pattern ẩn trong dữ liệu.

Ví dụ điển hình là Clustering.

Giả sử một doanh nghiệp có dữ liệu về hàng nghìn khách hàng nhưng không biết trước nhóm khách hàng nào tồn tại. K-Means có thể được sử dụng để chia khách hàng thành các nhóm có đặc điểm tương đồng.

Dữ liệu khách hàng
        ↓
   Unsupervised Model
        ↓
Các nhóm khách hàng
        ↓
Phân tích đặc điểm từng nhóm

Một số kỹ thuật phổ biến:

  • K-Means Clustering.
  • Hierarchical Clustering.
  • DBSCAN.
  • Principal Component Analysis (PCA).
  • Association Rules.

5.5. Reinforcement Learning

Reinforcement Learning mô hình hóa bài toán dưới dạng một agent tương tác với environment.

Agent
  ↓ Action
Environment
  ↓ State + Reward
Agent
  ↓
Cập nhật policy

Thay vì cung cấp đáp án đúng cho từng observation, hệ thống nhận reward hoặc penalty dựa trên hành động.

Reinforcement Learning thường xuất hiện trong các bài toán như robotics, game playing, control systems và một số bài toán tối ưu quyết định tuần tự.

5.6. Semi-supervised và Self-supervised Learning

Semi-supervised Learning kết hợp một lượng nhỏ dữ liệu có label với lượng lớn dữ liệu chưa có label.

Self-supervised Learning xây dựng tín hiệu học từ chính dữ liệu thay vì phụ thuộc hoàn toàn vào label do con người gán. Đây là một hướng quan trọng trong các hệ thống học biểu diễn hiện đại, đặc biệt với dữ liệu lớn như văn bản, hình ảnh và âm thanh.

6. Các thuật toán Machine Learning quan trọng

Không có thuật toán Machine Learning nào tốt nhất cho mọi bài toán. Việc lựa chọn phụ thuộc vào loại dữ liệu, mục tiêu, kích thước dataset, yêu cầu về khả năng giải thích và tài nguyên tính toán.

Thuật toán Loại Ứng dụng tiêu biểu
Linear Regression Regression Dự đoán giá trị liên tục
Logistic Regression Classification Phân loại nhị phân
Decision Tree Regression / Classification Phân loại và dự đoán
Random Forest Regression / Classification Dữ liệu dạng bảng
Gradient Boosting Regression / Classification Predictive modeling
Support Vector Machine Classification / Regression Phân loại dữ liệu có cấu trúc
K-Nearest Neighbors Classification / Regression Dự đoán dựa trên điểm tương đồng
K-Means Clustering Phân nhóm dữ liệu
PCA Dimensionality Reduction Giảm số chiều dữ liệu
Neural Networks Supervised / Unsupervised Hình ảnh, văn bản, âm thanh và dữ liệu phức tạp

7. Training: mô hình thực sự “học” như thế nào?

Đây là phần quan trọng để hiểu bản chất Machine Learning.

Giả sử chúng ta có một mô hình:

ŷ = f(X; θ)

Trong đó:

  • X là dữ liệu đầu vào.
  • ŷ là prediction.
  • θ là các parameter của model.

Mô hình tạo prediction, sau đó prediction được so sánh với giá trị thực tế y. Sự khác biệt này được lượng hóa bởi loss function.

7.1. Loss Function

Loss function đo mức độ sai lệch giữa prediction và actual value.

Ví dụ với Regression, một loss phổ biến là Mean Squared Error:

MSE = (1/n) × Σ(yᵢ - ŷᵢ)²

Nếu prediction càng gần actual value thì loss thường càng nhỏ.

7.2. Optimization

Sau khi xác định loss function, thuật toán cần tìm parameter giúp giảm loss.

Một phương pháp quan trọng là Gradient Descent.

Khởi tạo parameter
        ↓
Tính prediction
        ↓
Tính loss
        ↓
Tính gradient
        ↓
Cập nhật parameter
        ↓
Lặp lại

Công thức cập nhật đơn giản có thể biểu diễn:

θ_new = θ_old - η × ∇L(θ)

Trong đó η là learning rate, còn ∇L(θ) là gradient của loss function theo parameter.

7.3. Epoch, Batch và Iteration

Trong quá trình training, ba thuật ngữ thường gặp là epoch, batch và iteration.

  • Epoch: một lần mô hình đi qua toàn bộ training dataset.
  • Batch: một nhóm nhỏ dữ liệu được đưa vào model trong một lần cập nhật.
  • Iteration: một lần cập nhật parameter dựa trên một batch.

Ví dụ dataset có 1.000 observations và batch size bằng 100. Một epoch có thể cần 10 iterations nếu toàn bộ dataset được sử dụng đúng một lần.

8. Train, Validation và Test Dataset

Một trong những nguyên tắc quan trọng nhất của Machine Learning là không đánh giá mô hình trên chính dữ liệu mà mô hình đã dùng để học.

Dataset thường được chia thành:

Original Dataset
       │
       ├── Training Set
       │      ↓
       │    Train Model
       │
       ├── Validation Set
       │      ↓
       │    Tune Model
       │
       └── Test Set
              ↓
        Final Evaluation

8.1. Training Set

Training set được sử dụng để model học parameter.

8.2. Validation Set

Validation set được sử dụng trong quá trình phát triển để lựa chọn model, feature, hyperparameter hoặc cấu hình phù hợp.

8.3. Test Set

Test set được giữ lại để đánh giá cuối cùng trên dữ liệu mà quá trình xây dựng model chưa sử dụng để đưa ra quyết định.

Không nên xem các tỷ lệ như 80/20 hoặc 70/15/15 là quy luật bắt buộc. Cách chia phụ thuộc vào kích thước dữ liệu, tính chất bài toán và cách đánh giá. Điều quan trọng là các tập đánh giá phải đại diện hợp lý cho dữ liệu thực tế và tránh leakage.

9. Overfitting và Underfitting

9.1. Overfitting

Overfitting xảy ra khi model học quá sát training data, bao gồm cả những pattern không mang tính tổng quát hoặc noise.

Training Performance: Rất tốt
Test Performance:     Kém

→ Có khả năng Overfitting

Ví dụ, một model dự đoán giá nhà có thể học quá kỹ những đặc điểm riêng của các căn nhà trong training dataset nhưng dự đoán kém đối với những căn nhà mới.

9.2. Underfitting

Underfitting xảy ra khi model quá đơn giản hoặc chưa học đủ cấu trúc trong dữ liệu.

Training Performance: Kém
Test Performance:     Kém

→ Có khả năng Underfitting

9.3. Bias và Variance

Có thể hình dung:

  • High Bias: model quá đơn giản, khó nắm bắt pattern.
  • High Variance: model quá nhạy với training data.

Mục tiêu của model selection là tìm được mức độ phức tạp phù hợp để model vừa học được cấu trúc quan trọng vừa có khả năng generalization.

10. Regularization

Regularization là nhóm kỹ thuật giúp hạn chế model trở nên quá phức tạp.

Trong Linear Regression, một cách tiếp cận là thêm penalty vào objective function.

Hai phương pháp quen thuộc:

  • Ridge Regression: sử dụng L2 regularization.
  • Lasso Regression: sử dụng L1 regularization.

Ý tưởng quan trọng không phải chỉ là “thêm một công thức”, mà là tạo ra sự đánh đổi giữa việc fit dữ liệu và việc giữ model đủ đơn giản để generalize tốt hơn.

11. Feature Engineering

Feature Engineering là quá trình sử dụng kiến thức về dữ liệu và bài toán để lựa chọn, biến đổi hoặc tạo ra các features phù hợp.

Ví dụ, từ:

Ngày đăng ký = 15/03/2026

có thể tạo:

  • Year = 2026.
  • Month = 3.
  • Day of week = Sunday.
  • Customer tenure = số ngày kể từ ngày đăng ký.

Trong dữ liệu dạng bảng, feature engineering tốt có thể tạo ra sự khác biệt lớn về hiệu quả model.

11.1. Scaling

Một số thuật toán nhạy với scale của features. Ví dụ:

Age          = 25
Income       = 25.000.000
Credit Score = 720

Các biến có scale rất khác nhau. Một số phương pháp như Standardization có thể biến đổi dữ liệu về dạng có trung bình gần 0 và độ lệch chuẩn gần 1.

11.2. Encoding

Machine Learning model thường cần dữ liệu ở dạng số. Vì vậy, biến categorical có thể cần được encoding.

Ví dụ:

Gender
Male
Female

Có thể được chuyển thành dạng số hoặc tạo các biến dummy tùy theo thuật toán và cách xử lý dữ liệu.

12. Data Leakage là gì?

Data Leakage xảy ra khi thông tin không nên có trong quá trình training vô tình được đưa vào model.

Ví dụ, chúng ta muốn dự đoán khách hàng có rời bỏ dịch vụ trong tháng tới hay không, nhưng lại sử dụng một feature chỉ được tạo ra sau khi khách hàng đã rời bỏ.

Model có thể đạt performance rất cao trong validation nhưng thất bại khi triển khai thực tế.

Data leakage là một trong những lý do khiến kết quả Machine Learning “quá đẹp” đôi khi lại đáng nghi.

13. Cross-Validation

Cross-Validation là kỹ thuật sử dụng nhiều lần chia dữ liệu để đánh giá khả năng tổng quát hóa của model.

Với K-Fold Cross-Validation, dataset được chia thành K phần.

Fold 1 → Validation
Fold 2 → Training
Fold 3 → Training
...
Fold K → Training

Lặp lại để mỗi fold lần lượt làm validation.

Cuối cùng, các kết quả được tổng hợp để có đánh giá ổn định hơn.

Cross-validation đặc biệt hữu ích khi dataset không quá lớn và chúng ta muốn sử dụng dữ liệu hiệu quả hơn trong quá trình model selection.

14. Đánh giá mô hình Machine Learning

Không thể nói một model “tốt” chỉ dựa trên một con số duy nhất. Metric phải phù hợp với loại bài toán và mục tiêu thực tế.

14.1. Classification Metrics

Metric Ý nghĩa khái quát
Accuracy Tỷ lệ prediction đúng trên toàn bộ observations
Precision Trong các trường hợp model dự đoán Positive, bao nhiêu trường hợp thực sự Positive
Recall Trong các trường hợp thực sự Positive, model phát hiện được bao nhiêu
F1-score Cân bằng giữa Precision và Recall bằng harmonic mean
ROC-AUC Đánh giá khả năng phân biệt các lớp dựa trên prediction score

Accuracy có thể gây hiểu nhầm khi dataset mất cân bằng.

Ví dụ nếu 99% giao dịch là bình thường và chỉ 1% là fraud, một model luôn dự đoán “Normal” có thể đạt accuracy rất cao nhưng hoàn toàn không hữu ích cho việc phát hiện fraud.

14.2. Regression Metrics

Metric Ý nghĩa khái quát
MAE Sai số tuyệt đối trung bình
MSE Bình phương sai số trung bình
RMSE Căn bậc hai của MSE
R² Mức độ biến thiên của target được model giải thích theo định nghĩa của metric

MAE thường dễ diễn giải hơn vì giữ cùng đơn vị với target. RMSE phạt các sai số lớn mạnh hơn do có bình phương sai số trước khi lấy căn.

15. Confusion Matrix

Đối với Classification, Confusion Matrix giúp nhìn rõ model đang dự đoán đúng và sai như thế nào.

Predicted Positive Predicted Negative
Actual Positive True Positive (TP) False Negative (FN)
Actual Negative False Positive (FP) True Negative (TN)

Từ bốn thành phần này có thể xây dựng nhiều metric như Accuracy, Precision, Recall và F1-score.

16. Model Selection và Hyperparameter Tuning

Trong thực tế, chúng ta hiếm khi biết trước model nào sẽ hoạt động tốt nhất.

Một quy trình đơn giản có thể là:

Dataset
   ↓
Baseline
   ↓
Linear / Logistic Regression
   ↓
Decision Tree
   ↓
Random Forest
   ↓
Gradient Boosting
   ↓
Cross-Validation
   ↓
Hyperparameter Tuning
   ↓
Final Model

Hyperparameter tuning là quá trình tìm cấu hình phù hợp cho model.

Hai phương pháp phổ biến:

  • Grid Search: thử các tổ hợp hyperparameter đã được định nghĩa.
  • Random Search: lấy mẫu các tổ hợp trong không gian hyperparameter.

Quan trọng là không nên sử dụng test set để liên tục điều chỉnh model. Nếu làm như vậy, test set dần trở thành một phần của quá trình model selection và không còn phản ánh khách quan performance trên dữ liệu mới.

17. Ensemble Learning

Ensemble Learning kết hợp nhiều model để tạo ra một hệ thống dự đoán chung.

Ý tưởng trực quan là thay vì chỉ hỏi một người, chúng ta lấy ý kiến từ nhiều model rồi kết hợp chúng.

Một số phương pháp nổi bật:

  • Bagging.
  • Random Forest.
  • Boosting.
  • Gradient Boosting.
  • AdaBoost.
  • Stacking.

Random Forest là ví dụ điển hình: nhiều Decision Tree được xây dựng và kết quả được kết hợp để tạo prediction.

18. Neural Networks và Deep Learning

Neural Network là mô hình gồm nhiều node được kết nối với nhau theo các layer.

Input Layer
    ↓
Hidden Layer
    ↓
Hidden Layer
    ↓
Output Layer

Mỗi connection thường có một weight. Trong quá trình training, các weights được điều chỉnh để giảm loss.

Deep Learning sử dụng neural networks với nhiều tầng biểu diễn. Một ưu điểm quan trọng là model có thể học representation ngày càng phức tạp từ dữ liệu.

Ví dụ trong Computer Vision:

Pixel
  ↓
Edges / Simple Patterns
  ↓
Shapes
  ↓
Objects
  ↓
Image Classification

Deep Learning đặc biệt quan trọng trong Computer Vision, Natural Language Processing, Speech Recognition và Generative AI.

19. Machine Learning khác Data Analysis như thế nào?

Data Analysis và Machine Learning có mối liên hệ chặt chẽ nhưng mục tiêu không hoàn toàn giống nhau.

Khía cạnh Data Analysis Machine Learning
Mục tiêu Hiểu và giải thích dữ liệu Dự đoán hoặc tự động ra quyết định
Câu hỏi Điều gì đã xảy ra? Tại sao? Điều gì có thể xảy ra tiếp theo?
Output Insight, report, visualization Prediction, classification, score
Trọng tâm Descriptive / diagnostic Predictive / decision-oriented

Tuy nhiên, ranh giới này không tuyệt đối. Một Data Analyst có thể sử dụng Machine Learning và một Data Scientist cũng có thể thực hiện rất nhiều công việc Data Analysis.

20. Machine Learning và Statistics có quan hệ gì?

Machine Learning và Statistics có nền tảng toán học giao nhau rất lớn.

Statistics giúp chúng ta hiểu:

  • Phân phối dữ liệu.
  • Probability.
  • Sampling.
  • Estimation.
  • Uncertainty.
  • Hypothesis Testing.

Machine Learning bổ sung trọng tâm vào khả năng dự đoán, tối ưu hóa và generalization.

Vì vậy, học Machine Learning mà bỏ qua Statistics sẽ khiến người học khó hiểu sâu về uncertainty, bias, variance, evaluation và khả năng tổng quát hóa của model.

21. Quy trình xây dựng một dự án Machine Learning

Một dự án Machine Learning thực tế không bắt đầu bằng việc chọn thuật toán.

Quy trình hợp lý thường bắt đầu từ bài toán:

1. Xác định Business Problem
            ↓
2. Xác định ML Problem
            ↓
3. Thu thập dữ liệu
            ↓
4. Data Understanding
            ↓
5. Data Cleaning
            ↓
6. Feature Engineering
            ↓
7. Train / Validation / Test
            ↓
8. Baseline Model
            ↓
9. Model Training
            ↓
10. Evaluation
            ↓
11. Hyperparameter Tuning
            ↓
12. Error Analysis
            ↓
13. Deployment
            ↓
14. Monitoring
            ↓
15. Retraining

21.1. Bước 1: Xác định Business Problem

Ví dụ doanh nghiệp nói: “Chúng tôi muốn giảm tỷ lệ khách hàng rời bỏ”.

Đây chưa phải một bài toán Machine Learning hoàn chỉnh.

Cần chuyển thành một câu hỏi có thể mô hình hóa:

“Dựa trên thông tin của khách hàng tại thời điểm hiện tại, mô hình có thể dự đoán xác suất khách hàng rời bỏ dịch vụ trong 30 ngày tới hay không?”

21.2. Bước 2: Xác định Target

Tiếp theo cần xác định target rõ ràng.

Churn = 1 → Khách hàng rời bỏ
Churn = 0 → Khách hàng không rời bỏ

Khi đó bài toán trở thành Binary Classification.

21.3. Bước 3: Xây dựng Baseline

Baseline là một mô hình hoặc quy tắc đơn giản dùng làm mốc so sánh.

Không nên bắt đầu bằng một model phức tạp nếu chưa biết một phương pháp đơn giản đạt performance như thế nào.

21.4. Bước 4: Error Analysis

Sau khi model dự đoán, đừng chỉ nhìn vào một metric tổng hợp.

Hãy xem model sai ở đâu:

  • Sai nhiều ở nhóm khách hàng nào?
  • Sai ở một khoảng thời gian cụ thể không?
  • Sai nhiều với một category nào không?
  • Có data leakage không?
  • Những observation bị misclassification có điểm gì chung?

Error Analysis thường giúp tìm ra hướng cải thiện thực tế hơn việc đơn thuần thay đổi thuật toán.

22. Deployment: Khi model đi vào thực tế

Một model có accuracy tốt trong notebook chưa đồng nghĩa với một hệ thống Machine Learning thành công.

Model cần được đưa vào một hệ thống để nhận dữ liệu mới và tạo prediction.

New Data
   ↓
Data Pipeline
   ↓
Feature Processing
   ↓
ML Model
   ↓
Prediction
   ↓
Application / Business Decision

Trong production, cần quan tâm đến:

  • Latency.
  • Scalability.
  • Data validation.
  • Model versioning.
  • Feature consistency.
  • Monitoring.
  • Security.
  • Model performance.

23. Model Drift và Data Drift

Một model có thể hoạt động tốt hôm nay nhưng kém hơn sau vài tháng.

Nguyên nhân có thể là dữ liệu hoặc mối quan hệ trong thế giới thực đã thay đổi.

Data Drift xảy ra khi phân phối của input data thay đổi.

Concept Drift xảy ra khi mối quan hệ giữa input và target thay đổi.

Ví dụ một mô hình dự đoán hành vi mua hàng được xây dựng dựa trên dữ liệu của một giai đoạn nhất định. Khi thị trường, hành vi khách hàng hoặc chính sách doanh nghiệp thay đổi, những pattern cũ có thể không còn phù hợp.

Vì vậy, Machine Learning trong production cần có monitoring và chiến lược retraining phù hợp.

24. Những sai lầm phổ biến khi mới học Machine Learning

24.1. Chỉ học thuật toán mà không học dữ liệu

Người mới thường muốn học thật nhiều thuật toán nhưng bỏ qua data cleaning, missing values, outliers, encoding, scaling và leakage.

Trong thực tế, chất lượng dữ liệu có thể ảnh hưởng rất lớn đến chất lượng model.

24.2. Nghĩ rằng model phức tạp luôn tốt hơn

Random Forest hoặc Neural Network không mặc định tốt hơn Linear Regression hay Logistic Regression.

Model đơn giản có thể thắng model phức tạp nếu dữ liệu phù hợp, ít noise và yêu cầu bài toán cần khả năng giải thích.

24.3. Chỉ nhìn Accuracy

Metric phải phù hợp với business problem. Trong bài toán fraud detection, medical screening hoặc churn prediction, Precision và Recall có thể quan trọng hơn Accuracy.

24.4. Train và test trên cùng dữ liệu

Nếu đánh giá model trên chính dữ liệu model đã học, kết quả có thể quá lạc quan và không phản ánh khả năng dự đoán trên dữ liệu mới.

24.5. Không xác định rõ business problem

Một mô hình có thể có metric rất tốt nhưng không tạo ra giá trị nếu prediction không hỗ trợ một quyết định thực tế.

25. Một ví dụ Machine Learning hoàn chỉnh

Giả sử một ngân hàng muốn dự đoán khách hàng có khả năng rời bỏ dịch vụ.

Dữ liệu

  • Age.
  • Income.
  • Account Balance.
  • Number of Transactions.
  • Tenure.
  • Number of Complaints.
  • Churn.

Xác định bài toán

Target là Churn, có hai giá trị 0 và 1.

Do đó đây là bài toán Binary Classification.

Quy trình

Customer Data
      ↓
Data Cleaning
      ↓
Feature Engineering
      ↓
Train / Validation / Test
      ↓
Logistic Regression
      ↓
Random Forest
      ↓
Cross-Validation
      ↓
Hyperparameter Tuning
      ↓
Evaluate Precision / Recall / F1
      ↓
Select Model
      ↓
Deploy
      ↓
Monitor

Điểm quan trọng là chúng ta không chỉ hỏi “model nào có accuracy cao nhất?”. Câu hỏi đúng có thể là:

“Mô hình nào giúp ngân hàng xác định được nhóm khách hàng có nguy cơ rời bỏ đủ chính xác để đội ngũ chăm sóc khách hàng có thể đưa ra hành động phù hợp?”

Đó chính là tư duy chuyển từ Machine Learning Model sang Machine Learning System.

26. Machine Learning cần học những kiến thức toán nào?

Không nhất thiết phải học toàn bộ toán cao cấp trước khi bắt đầu Machine Learning. Tuy nhiên, nếu muốn hiểu bản chất thay vì chỉ sử dụng thư viện, một số nền tảng rất quan trọng.

Kiến thức Ứng dụng trong Machine Learning
Linear Algebra Vector, matrix, transformation, neural networks
Probability Uncertainty và probabilistic modeling
Statistics Distribution, estimation, sampling, evaluation
Calculus Gradient và optimization
Optimization Training model và minimizing loss

Người mới không nên chờ đến khi “giỏi toán” mới học Machine Learning. Có thể học toán song song với việc triển khai các model đơn giản.

27. Python và các thư viện Machine Learning

Python là một ngôn ngữ phổ biến trong Data Science và Machine Learning nhờ hệ sinh thái thư viện phong phú.

Một số thư viện thường gặp:

  • NumPy: tính toán số học và mảng.
  • pandas: xử lý dữ liệu dạng bảng.
  • Matplotlib: trực quan hóa dữ liệu.
  • scikit-learn: triển khai nhiều thuật toán Machine Learning truyền thống.
  • TensorFlow: framework cho Machine Learning và Deep Learning.
  • PyTorch: framework phổ biến cho Deep Learning.

Ví dụ một workflow Machine Learning cơ bản với scikit-learn:

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=42
)

model = LogisticRegression()
model.fit(X_train, y_train)

y_pred = model.predict(X_test)

accuracy = accuracy_score(y_test, y_pred)
print(accuracy)

Đoạn code trên thể hiện một workflow rất cơ bản: chia dữ liệu, train model, dự đoán và đánh giá. Tuy nhiên, một dự án thực tế còn cần xử lý dữ liệu, preprocessing, validation, feature engineering, tuning và kiểm tra leakage.

28. Có nên học Machine Learning trước Deep Learning không?

Đối với người mới, câu trả lời thường là nên học Machine Learning fundamentals trước.

Không nhất thiết phải học mọi thuật toán trước khi chuyển sang Deep Learning, nhưng nên hiểu các khái niệm:

  • Dataset.
  • Feature.
  • Target.
  • Training.
  • Validation.
  • Test.
  • Loss function.
  • Optimization.
  • Overfitting.
  • Regularization.
  • Evaluation.
  • Generalization.

Khi đã hiểu các khái niệm này, việc học Neural Networks và Deep Learning sẽ dễ dàng hơn rất nhiều.

29. Lộ trình học Machine Learning cho người mới

Một lộ trình có thể được xây dựng theo thứ tự:

  1. Python cơ bản: syntax, function, data structures.
  2. NumPy và pandas: xử lý dữ liệu.
  3. Data Visualization: Matplotlib và tư duy trực quan hóa.
  4. Statistics: mean, variance, probability, distribution, correlation.
  5. Linear Algebra: vector và matrix.
  6. Supervised Learning: Regression và Classification.
  7. Unsupervised Learning: Clustering và dimensionality reduction.
  8. Model Evaluation: metrics, cross-validation.
  9. Feature Engineering: preprocessing, encoding, scaling.
  10. Model Selection: baseline, comparison và tuning.
  11. Ensemble Learning: Random Forest và Boosting.
  12. Deep Learning: Neural Networks và optimization.
  13. Projects: xây dựng các bài toán end-to-end.
  14. Deployment: đưa model vào ứng dụng thực tế.

30. Machine Learning từ A đến Z: Cần nhớ những gì?

Nếu phải cô đọng toàn bộ Machine Learning thành một framework tư duy, có thể nhớ chuỗi sau:

Problem
   ↓
Data
   ↓
Features + Target
   ↓
Preprocessing
   ↓
Train / Validation / Test
   ↓
Model
   ↓
Loss Function
   ↓
Optimization
   ↓
Evaluation
   ↓
Generalization
   ↓
Deployment
   ↓
Monitoring

Trong đó, generalization là một trong những khái niệm quan trọng nhất.

Mục tiêu của Machine Learning không phải là làm cho model ghi nhớ training data. Mục tiêu là học được những quy luật hữu ích từ training data để có thể đưa ra prediction đáng tin cậy trên dữ liệu mới.

31. Kết luận

Machine Learning là gì? Có thể hiểu Machine Learning là cách xây dựng các hệ thống có khả năng học pattern từ dữ liệu để tạo ra prediction hoặc quyết định trên những trường hợp mới.

Để hiểu Machine Learning một cách có hệ thống, người học cần vượt qua cách tiếp cận “học thuộc thuật toán” và tập trung vào mối quan hệ giữa data, model, objective, optimization và generalization.

Một model tốt không đơn giản là model có metric cao nhất trên một dataset. Model tốt phải phù hợp với bài toán, được đánh giá đúng cách, không bị leakage, có khả năng generalization và tạo ra kết quả hữu ích trong môi trường thực tế.

Với người mới học Data, một nền tảng vững về Statistics, Python, Data Analysis và Machine Learning cơ bản sẽ tạo tiền đề tốt để tiếp tục học Deep Learning, Computer Vision, Natural Language Processing và Generative AI.

32. Tài liệu tham khảo

33. Học Machine Learning cùng MCNA

Nếu bạn đang xây dựng nền tảng về Data, Python, AI và Machine Learning, có thể kết hợp kiến thức lý thuyết với thực hành dữ liệu và xây dựng project thực tế.

Combo 5 khóa AI & Power BI

Phù hợp với người muốn xây dựng nền tảng về Data, AI và Business Intelligence.

Xem Combo 5 khóa AI & Power BI

Combo Python

Phù hợp với người muốn củng cố Python để xử lý dữ liệu và phát triển nền tảng cho Machine Learning.

Xem Combo Python

Tác giả

 

Nguyễn Quốc Hải – Data Analyst tại MCNA Technology School

MCNA Technology School là đơn vị tiên phong đào tạo AI, Big Data, Business Intelligence tại Việt Nam. Chuyên sâu về Power BI, Python, SQL và Data Analytics — đối tác đào tạo của 300+ doanh nghiệp lớn như Viettel Global, Masan Group, Techcombank, VPBank, Daikin.

🌐 Website: mcna.vn

📘 Facebook: facebook.com/mcnatechnologyschool

▶️ YouTube: youtube.com/@mcna.technology.school

💼 LinkedIn: linkedin.com/company/mcna-vn

📞 Hotline: 0939.866.825 (Mr. Minh Khang)

📍 Hà Nội: 30 Trung Liệt, Đống Đa | Liền kề 44B, TT2, Văn Quán, Hà Đông

📍 TP.HCM: The BIB Space, 50B Phan Tây Hồ, Cầu Kiệu

Mục lục

→ Chỉ mục