MACHINE LEARNING CHO NGƯỜI MỚI BẮT ĐẦU - PHẦN III: Học có Giám sát

Cơ bản về Học có Giám sát

Học có giám sát là một trong những mô hình nền tảng của học máy, trong đó thuật toán học từ dữ liệu có gắn nhãn để thực hiện dự đoán hoặc đưa ra quyết định. Trong ngữ cảnh này, “dữ liệu có gắn nhãn” ám chỉ các cặp đầu vào-đầu ra, nơi thuật toán được cung cấp cả đầu vào (các đặc trưng) và kết quả tương ứng (mục tiêu hoặc nhãn). Mục tiêu của học có giám sát là học ánh xạ từ đầu vào sang đầu ra dựa trên dữ liệu gắn nhãn được cung cấp trong quá trình huấn luyện, sao cho mô hình có thể đưa ra dự đoán chính xác trên dữ liệu mới, chưa thấy trước đó.

Có hai loại nhiệm vụ chính trong học có giám sát: phân loại và hồi quy.

  1. Phân loại (Classification): Trong các bài toán phân loại, mục tiêu là gán các đầu vào vào một trong vài hạng mục hoặc lớp đã định trước. Ví dụ: phân loại email là spam hay không spam; dự đoán một bệnh nhân có mắc bệnh cụ thể hay không dựa trên triệu chứng; nhận dạng chữ viết tay trong hình ảnh. Biến đầu ra trong phân loại là biến rời rạc (categorical).
  2. Hồi quy (Regression): Trong các bài toán hồi quy, mục tiêu là dự đoán một giá trị liên tục dựa trên các đặc trưng đầu vào. Ví dụ: dự đoán giá nhà dựa trên diện tích, vị trí, số phòng; dự báo giá cổ phiếu theo dữ liệu lịch sử; ước lượng tuổi thọ dự kiến của một máy móc dựa trên số giờ hoạt động. Biến đầu ra trong hồi quy là biến liên tục (numerical).

Quy trình học có giám sát thường bao gồm các bước chính sau:

  1. Thu thập dữ liệu (Data Collection): Thu thập một bộ dữ liệu có gắn nhãn chứa các cặp đầu vào-đầu ra. Bộ dữ liệu này sẽ dùng để huấn luyện và đánh giá mô hình học có giám sát.
  2. Tiền xử lý dữ liệu (Data Preprocessing): Tiền xử lý dữ liệu để làm sạch, chuẩn hóa và biến đổi khi cần — ví dụ: xử lý giá trị thiếu, chuẩn hoá các đặc trưng số, mã hóa biến phân loại, và chia dữ liệu thành tập huấn luyện và tập kiểm tra.
  3. Lựa chọn mô hình (Model Selection): Chọn thuật toán học có giám sát phù hợp (ví dụ: cây quyết định, SVM, logistic regression, neural networks, v.v.) tùy theo nhiệm vụ (phân loại hay hồi quy) và tính chất dữ liệu.
  4. Huấn luyện mô hình (Model Training): Huấn luyện mô hình đã chọn trên dữ liệu huấn luyện có nhãn để học các quy luật và quan hệ giữa đặc trưng và nhãn.
  5. Đánh giá mô hình (Model Evaluation): Đánh giá hiệu suất của mô hình trên bộ dữ liệu chưa thấy (tập test) để kiểm tra độ chính xác, khả năng tổng quát hóa và khả năng overfit. Các chỉ số phổ biến: accuracy, precision, recall, F1-score cho phân loại; MSE, R-squared cho hồi quy.
  6. Tối ưu và tinh chỉnh (Model Tuning and Optimization): Tinh chỉnh các siêu tham số (hyperparameters) như learning rate, độ phạt (regularization), cấu trúc mô hình để cải thiện hiệu suất.
  7. Triển khai (Model Deployment): Đưa mô hình đã huấn luyện vào môi trường sản xuất để dự đoán trên dữ liệu mới — có thể tích hợp qua API, dịch vụ web, hoặc hệ thống tự động.

Hình biểu diễn quy trình: Quy trình học có giám sát

Học có giám sát được ứng dụng rộng rãi trong nhiều lĩnh vực như tài chính, y tế, marketing, nhận dạng ảnh, xử lý ngôn ngữ tự nhiên, v.v., ở những nơi có dữ liệu gắn nhãn và cần mô hình dự báo.

Hồi quy tuyến tính (Linear Regression)

Hồi quy tuyến tính là một trong những kỹ thuật đơn giản và phổ biến nhất trong thống kê và học máy để dự đoán biến đầu ra liên tục dựa trên một hoặc nhiều đặc trưng đầu vào. Nó giả định mối quan hệ tuyến tính giữa các biến đầu vào (còn gọi là các biến độc lập, predictors hoặc features) và biến đầu ra (dependent variable hoặc target).

Ý tưởng chính của hồi quy tuyến tính là tìm đường thẳng (hoặc siêu phẳng trong không gian nhiều chiều) phù hợp nhất sao cho tổng bình phương sai lệch giữa giá trị quan sát và giá trị dự đoán là nhỏ nhất. Đường thẳng đó được biểu diễn bởi phương trình:
y = β0 + β1 x1 + β2 x2 + ... + βn xn

Trong đó:

  • y là biến đầu ra dự đoán,
  • x1, x2, ..., xn là các đặc trưng đầu vào,
  • β0 là hệ số chặn (intercept — giá trị y khi tất cả x bằng 0),
  • β1, β2, ..., βn là hệ số (coefficients/weights/parameters) biểu thị độ dốc ứng với từng đặc trưng.

Các hệ số β được ước lượng bằng phương pháp Bình phương tối thiểu thông thường (Ordinary Least Squares – OLS), là phương pháp tối ưu hóa nhằm giảm thiểu tổng bình phương sai số giữa giá trị quan sát và giá trị dự đoán. Quá trình này liên quan đến việc tính đạo hàm riêng của hàm lỗi theo từng hệ số và cập nhật cho tới khi hội tụ.

Các dạng áp dụng của hồi quy tuyến tính bao gồm:

  1. Hồi quy tuyến tính đơn (Simple Linear Regression): Chỉ một đặc trưng đầu vào x, mô hình: y = β0 + β1 x.
  2. Hồi quy tuyến tính đa (Multiple Linear Regression): Nhiều đặc trưng đầu vào, mô hình: y = β0 + β1 x1 + β2 x2 + ... + βn xn.
  3. Hồi quy đa thức (Polynomial Regression): Mở rộng bằng cách thêm các thành phần đa thức của đặc trưng để mô hình hóa mối quan hệ phi tuyến (ví dụ x2, x2).

Hồi quy tuyến tính được dùng rộng rãi trong nhiều lĩnh vực: kinh tế, tài chính, kỹ thuật, khoa học xã hội, v.v. Tuy đơn giản nhưng hồi quy tuyến tính là công cụ mạnh mẽ. Tuy nhiên cần lưu ý các giả định của mô hình như tính tuyến tính, phương sai sai số đồng nhất (homoscedasticity), và độc lập của sai số — những giả định này cần được kiểm tra trước khi áp dụng. Mô hình cũng có thể kém hiệu quả khi mối quan hệ giữa đầu vào và đầu ra rất phi tuyến hoặc có nhiều ngoại lệ.

Hồi quy logistic (Logistic Regression)

Logistic regression là một kỹ thuật thống kê mạnh mẽ và phổ biến cho bài toán phân loại nhị phân (binary classification) — tức là dự đoán một trong hai khả năng dựa trên các đặc trưng. Mặc dù tên gọi là “regression”, logistic regression thực chất là thuật toán phân loại. Nó phù hợp cho các bài toán mà biến đầu ra có hai lớp, ví dụ: phát hiện spam, chẩn đoán bệnh, dự đoán khách hàng rời bỏ dịch vụ, v.v.

Ý tưởng cơ bản là mô hình hóa xác suất thuộc về lớp dương (thường ký hiệu là y=1) cho một mẫu đầu vào x. Thay vì dự đoán một giá trị liên tục, logistic regression dùng hàm logistic (sigmoid) để ánh xạ một tổ hợp tuyến tính của các đặc trưng vào khoảng (0,1), biểu diễn xác suất:

p(y=1x) =   

Trong đó:

  • p(y=1 | x) là xác suất mẫu thuộc lớp 1 khi có đặc trưng x,
  • x1,...,xn là các đặc trưng,
  • β0 là intercept, β1..βn là hệ số.

Mô hình học các hệ số β bằng cách tối đa hóa hàm khả năng (likelihood) — tức là tìm các tham số làm tăng xác suất việc quan sát các nhãn đã biết — thường thực hiện bằng các thuật toán tối ưu lặp như gradient descent. Sau khi huấn luyện, việc phân loại thực hiện bằng cách ước lượng xác suất p(y=1|x) và áp một ngưỡng (ví dụ 0.5): nếu p ≥ ngưỡng → dự đoán lớp dương, ngược lại → lớp âm.

Ưu điểm của logistic regression: đơn giản, dễ giải thích, hiệu quả tính toán; có thể xử lý cả đặc trưng số và phân loại; ít bị overfit hơn so với mô hình phức tạp. Hạn chế: giả định quan hệ tuyến tính giữa đặc trưng và log-odds đôi khi không đúng; logistic regression bản chất chỉ dành cho phân loại nhị phân (mở rộng đa lớp cần kỹ thuật như one-vs-rest hoặc softmax).

Cây quyết định và Rừng ngẫu nhiên (Decision Trees & Random Forests)

Cây quyết định và rừng ngẫu nhiên là những thuật toán mạnh mẽ và phổ biến cho cả bài toán phân loại và hồi quy. Cây quyết định là mô hình phân vùng không gian đặc trưng theo cấu trúc cây, mỗi nút trong cây là một quyết định dựa trên giá trị của một đặc trưng, và mỗi lá (leaf) là nhãn hoặc giá trị dự đoán. Quy trình xây dựng cây gồm phân chia đệ quy không gian đặc trưng thành các vùng càng đồng nhất càng tốt theo biến mục tiêu. Ở mỗi bước, thuật toán chọn đặc trưng và ngưỡng phân tách tối ưu (theo tiêu chí như information gain hoặc Gini impurity). Quá trình lặp đến khi đạt tiêu chí dừng (ví dụ: độ sâu tối đa hoặc số mẫu tối thiểu ở lá).

Cây quyết định có tính diễn giải cao (interpretable) và có thể nắm bắt mối quan hệ phức tạp giữa đặc trưng và mục tiêu. Tuy nhiên, cây thường dễ overfit nếu để phát triển quá sâu. Rừng ngẫu nhiên (Random Forests) khắc phục nhược điểm này bằng kỹ thuật ensemble: kết hợp nhiều cây quyết định được huấn luyện trên các mẫu bootstrap (lấy mẫu có hoàn lại) và mỗi nút chỉ xem xét một tập con ngẫu nhiên của các đặc trưng khi tìm ngưỡng. Tính ngẫu nhiên này làm giảm tương quan giữa các cây, giảm phương sai và cải thiện khái quát hóa.

Ưu điểm của Random Forests: độ chính xác thường cao hơn đơn cây, chịu nhiễu và ngoại lệ tốt, ít nhạy với siêu tham số và yêu cầu feature engineering ít hơn. Chúng có thể xử lý cả phân loại và hồi quy, phù hợp với dữ liệu nhiều chiều và hỗn hợp kiểu dữ liệu. Khi chọn mô hình, cần cân nhắc trade-off giữa tính diễn giải (cây đơn) và hiệu suất (rừng).

Support Vector Machines (SVM)

Support Vector Machines (SVM) là thuật toán học có giám sát mạnh mẽ, dùng cho cả phân loại và hồi quy, rất hữu ích khi đường biên quyết định giữa các lớp phức tạp hoặc phi tuyến. Nguyên tắc chính của SVM là tìm siêu phẳng (hyperplane) phân tách các lớp sao cho lề (margin) — khoảng cách từ siêu phẳng đến điểm dữ liệu gần nhất ở mỗi lớp — là lớn nhất. Việc tối đa hóa lề giúp SVM bền vững trước ngoại lệ và giảm overfitting.

Ý tưởng then chốt: biến đổi dữ liệu đầu vào vào không gian có chiều cao hơn bằng hàm kernel, để các lớp có thể trở nên tuyến tính tách rời trong không gian đó. Siêu phẳng phân tách trong không gian cao chiều tương ứng với đường biên phi tuyến trong không gian gốc. Các kernel phổ biến: linear, polynomial, radial basis function (RBF), sigmoid — mỗi kernel có đặc tính và ứng dụng phù hợp.

SVM lợi thế ở khả năng xử lý dữ liệu chiều cao và tìm ranh giới phức tạp mà không cần tính biến đổi tường minh (dùng kernel trick để tính các tích vô hướng trong không gian cao chiều một cách ẩn). SVM hiệu quả và tiết kiệm bộ nhớ với dữ liệu kích thước nhỏ-vừa; có nền tảng lý thuyết vững chắc và ứng dụng rộng rãi (nhận dạng ảnh, phân loại văn bản, sinh học tin học, tài chính). Hạn chế: cần chọn kernel phù hợp và tinh chỉnh siêu tham số (ví dụ tham số regularization C và tham số kernel), yêu cầu chuẩn hóa đặc trưng.

Các kỹ thuật Đánh giá và Xác thực mô hình (Model Evaluation and Validation Techniques)

Đánh giá và xác thực mô hình là bước thiết yếu trong workflow học máy để kiểm tra hiệu suất và khả năng tổng quát hóa của mô hình. Mục tiêu là đảm bảo mô hình hoạt động tốt trên dữ liệu chưa thấy và đáng tin cậy khi ứng dụng thực tế. Một số phương pháp và chỉ số thường dùng gồm:

Train-Test Split

Phương pháp đơn giản và phổ biến: chia bộ dữ liệu thành hai phần — tập huấn luyện (training set) dùng để huấn luyện mô hình và tập kiểm tra (test set) dùng để đánh giá. Tỉ lệ chia tùy thuộc vào kích thước dữ liệu và trade-off giữa bias/variance. Việc chia ra giúp ước lượng sai số khái quát (generalization error). Lựa chọn tỉ lệ cần cân nhắc: tập huấn luyện lớn → giảm bias nhưng có thể tăng variance; tập kiểm tra lớn → đánh giá đáng tin hơn nhưng làm giảm dữ liệu huấn luyện.

Cross-Validation

Cross-validation (ví dụ k-fold) là kỹ thuật đánh giá mạnh mẽ hơn, đặc biệt khi dữ liệu nhỏ hoặc lo ngại về tính ngẫu nhiên của train-test split. Trong k-fold CV, chia dữ liệu thành k fold bằng nhau; huấn luyện và đánh giá k lần, mỗi lần dùng một fold khác làm test và phần còn lại làm train; lấy trung bình các chỉ số để có ước lượng ổn định hơn. CV tận dụng toàn bộ dữ liệu cho cả huấn luyện và đánh giá, giảm độ biến thiên do chia ngẫu nhiên và hữu ích cho dataset nhỏ.

Stratified Sampling

Trong bài toán phân loại với phân bố lớp không cân bằng, cần đảm bảo mỗi lớp được đại diện tương xứng trong cả tập huấn luyện và kiểm tra. Stratified sampling giữ nguyên tỉ lệ lớp khi chia dữ liệu, tránh đánh giá thiên lệch và ước lượng hiệu suất sai lệch do lớp thiểu số bị thiếu đại diện.

Các chỉ số đánh giá (Evaluation Metrics)

  • Phân loại: accuracy, precision, recall, F1-score, ROC-AUC, confusion matrix (ma trận nhầm lẫn). Lưu ý accuracy có thể gây hiểu lầm khi dữ liệu lệch lớp; khi đó precision/recall/F1 hữu ích hơn.
  • Hồi quy: Mean Squared Error (MSE), Root Mean Squared Error (RMSE), Mean Absolute Error (MAE), R-squared, adjusted R-squared. MSE phạt mạnh lỗi lớn; RMSE đưa về đơn vị giống target; MAE đơn giản và dễ hiểu; R² đo tỉ lệ phương sai được giải thích.

Hyperparameter Tuning

Quá trình chọn siêu tham số (như số cây trong random forest, độ sâu cây, C và gamma cho SVM, learning rate cho mạng) thường dùng các chiến lược tìm kiếm như grid search, random search, hoặc Bayesian optimization để tìm tổ hợp tối ưu trên tập validation. Việc tối ưu siêu tham số giúp cải thiện hiệu suất mô hình trên dữ liệu chưa thấy.

Lựa chọn mô hình (Model Selection)

Sau khi đánh giá nhiều mô hình trên dữ liệu validation, chọn mô hình có hiệu suất tốt nhất cân bằng giữa accuracy, interpretability, chi phí tính toán và khả năng mở rộng. Cần xem xét không chỉ độ chính xác mà còn khả năng diễn giải, hiệu năng tính toán, và yêu cầu khi triển khai.

Tóm lại, bằng cách áp dụng các kỹ thuật chia dữ liệu, cross-validation, stratified sampling, chọn chỉ số phù hợp và tinh chỉnh siêu tham số, nhà thực hành có thể đánh giá mô hình một cách đáng tin cậy và chọn ra mô hình phù hợp cho triển khai thực tế. 

Tác giả: Hoàng Thơ

PHẦN I - PHẦN II - PHẦN III - PHẦN IV - PHẦN V - PHẦN VI - PHẦN VII PHẦN VIII - PHẦN IX - PHẦN X 

Post a Comment

Previous Post Next Post