Courses
Gắn nhãn dữ liệu thì tốn kém, chậm, phụ thuộc lĩnh vực, và hầu hết các đội ngũ đều không có đủ dữ liệu đã gắn nhãn.
Bạn luôn cần dữ liệu đã gắn nhãn để huấn luyện mô hình, nhưng gắn nhãn đúng lại tốn thời gian và thường cần chuyên gia lĩnh vực. Ví dụ, ảnh y khoa cần bác sĩ X-quang, tài liệu pháp lý cần luật sư. Ngay cả các tác vụ đơn giản như phân tích cảm xúc cũng cần ai đó ngồi và gắn thẻ thủ công từng ví dụ. Kết quả là, hầu hết các đội ML chỉ có một bộ dữ liệu nhỏ đã gắn nhãn và một lượng lớn dữ liệu chưa gắn nhãn mà họ không thể dùng.
Học bán giám sát khắc phục điều này bằng cách huấn luyện trên cả hai. Nó lấy bộ dữ liệu nhỏ có nhãn của bạn, kết hợp với bộ dữ liệu lớn không nhãn, và để mô hình học các mẫu.
Trong bài viết này, tôi sẽ phân tích cách học bán giám sát hoạt động, điểm qua các kỹ thuật phổ biến nhất, và chỉ ra khi nào nên dùng.
Nhưng chính xác thì Học Máy Có Giám Sát là gì? Hãy đọc bài blog của chúng tôi để tìm hiểu cách các thuật toán học có giám sát thiết yếu hoạt động.
Học Bán Giám Sát Là Gì?
Học bán giám sát là một phương pháp học máy huấn luyện trên dữ liệu pha trộn giữa có nhãn và không nhãn.
Đúng như tên gọi, nó nằm giữa học có giám sát và không giám sát. Học có giám sát cần mọi mẫu đều có nhãn. Học không giám sát hoạt động hoàn toàn không có nhãn. Học bán giám sát dùng một tập nhỏ ví dụ có nhãn song song với một tập lớn ví dụ không nhãn.
Dữ liệu có nhãn cho mô hình biết cần tìm gì. Dữ liệu không nhãn cho mô hình thấy cấu trúc của dữ liệu. Khi kết hợp, chúng cung cấp cho mô hình nhiều thông tin hơn so với khi dùng riêng lẻ từng loại.
Cách Học Bán Giám Sát Hoạt Động
Quy trình bắt đầu với một bộ dữ liệu nhỏ có nhãn - có thể vài trăm ví dụ với đầu ra đúng đã biết.
Sau đó bạn đưa vào một bộ dữ liệu lớn hơn nhiều không có nhãn. Có thể là hàng nghìn hay thậm chí hàng triệu mẫu không kèm nhãn. Mô hình dùng dữ liệu không nhãn này để học các mẫu cơ bản và mối quan hệ giữa các điểm dữ liệu.
Các ví dụ có nhãn sau đó định hướng cấu trúc đó về phía đáp án đúng. Mô hình đã biết dữ liệu được tổ chức ra sao từ các mẫu không nhãn. Các nhãn cho nó biết vùng nào của cấu trúc đó tương ứng với đầu ra nào.
Đây là một ví dụ nhanh.
Giả sử bạn phân loại email là spam hay không. Bạn có 100 email đã gắn nhãn và 10.000 email chưa gắn nhãn. Mô hình trước hết học cách các email nhóm lại với nhau dựa trên mẫu từ ngữ và cấu trúc. Sau đó nó dùng 100 ví dụ có nhãn của bạn để xác định nhóm nào là spam và nhóm nào không. Kết quả là mô hình cho hiệu suất tốt hơn so với chỉ huấn luyện trên 100 email có nhãn đó.
Học Bán Giám Sát so với Có Giám Sát và Không Giám Sát
Hãy đi qua từng phương pháp để xem học bán giám sát nằm ở đâu so với hai phương pháp còn lại.
Học có giám sát
Học có giám sát huấn luyện trên dữ liệu hoàn toàn có nhãn. Mỗi mẫu trong bộ dữ liệu có đầu vào và đầu ra đã biết. Mô hình học ánh xạ giữa hai thứ đó.
Cách này hiệu quả khi bạn có đủ ví dụ đã gắn nhãn. Nhưng "đủ" có thể nghĩa là hàng nghìn hay hàng triệu mẫu tùy tác vụ. Việc đó tốn kém để tạo ra và đôi khi là bất khả thi.
Học không giám sát
Học không giám sát hoàn toàn không dùng nhãn. Mô hình nhìn vào dữ liệu thô và tự tìm cấu trúc. Ví dụ kinh điển là phân cụm và giảm chiều.
Ưu điểm là bạn không cần dữ liệu có nhãn. Nhược điểm là mô hình không biết bạn thực sự quan tâm điều gì. Nó tìm ra các mẫu, đúng, nhưng các mẫu đó có thể không khớp với vấn đề bạn muốn giải quyết.
Học bán giám sát
Học bán giám sát kết hợp ưu điểm của cả hai. Bạn cung cấp cho mô hình một tập nhỏ dữ liệu có nhãn để xác định tác vụ và một tập lớn dữ liệu không nhãn để học cấu trúc dữ liệu.
Dữ liệu có nhãn hướng mô hình đi đúng hướng. Dữ liệu không nhãn cho mô hình thấy các mẫu khác nhau liên hệ với nhau thế nào. Sự kết hợp này thường vượt trội so với học có giám sát trên cùng một tập nhỏ có nhãn, vì mô hình phát hiện các mẫu mà nếu không có dữ liệu không nhãn thì sẽ bỏ lỡ.
Dưới đây là so sánh nhanh giữa ba phương pháp này:

Bảng so sánh các phương pháp học máy
Tóm lại, nếu việc gắn nhãn quá tốn thời gian và bạn có nhiều dữ liệu không nhãn, học bán giám sát đáng để cân nhắc. Tiếp theo, tôi sẽ giới thiệu một số kỹ thuật phổ biến.
Các Kỹ Thuật Học Bán Giám Sát Phổ Biến
Có vài cách để triển khai học bán giám sát. Mỗi kỹ thuật xử lý phần tách có nhãn - không nhãn khác nhau, nên hãy điểm qua những cách thường gặp nhất.
Tự huấn luyện (Self-training)
Đây là cách đơn giản nhất. Bạn huấn luyện mô hình trên dữ liệu có nhãn, rồi dùng nó để dự đoán nhãn cho các mẫu không nhãn. Những dự đoán tự tin nhất được thêm vào tập có nhãn như nhãn giả (pseudo-label), và bạn huấn luyện lại mô hình trên bộ dữ liệu đã mở rộng.
Bạn lặp lại quy trình cho đến khi mô hình ngừng cải thiện hoặc bạn hết dữ liệu không nhãn. Dễ triển khai, nhưng nếu mô hình đoán sai sớm, lỗi đó sẽ trở thành một phần bộ dữ liệu của bạn.
Đồng huấn luyện (Co-training)
Đồng huấn luyện dùng hai mô hình thay vì một. Mỗi mô hình được huấn luyện trên một "lượt xem" khác nhau của dữ liệu. Hãy coi đó là các tập con đặc trưng khác nhau.
Ví dụ, giả sử bạn phân loại trang web. Một mô hình có thể nhìn vào văn bản trên trang, trong khi mô hình kia nhìn vào văn bản neo của các liên kết trỏ đến trang đó. Mỗi mô hình gắn nhãn cho các mẫu không nhãn cho mô hình kia, và chúng dạy nhau qua nhiều vòng.
Ý tưởng là điểm mạnh của mô hình này bù điểm yếu của mô hình kia. Nếu mỗi lượt xem có đủ thông tin riêng, đồng huấn luyện có thể vượt trội tự huấn luyện vì lỗi của mô hình này được mô hình kia sửa.
Lan truyền nhãn (Label propagation)
Cách này xây dựng một đồ thị nơi mỗi điểm dữ liệu là một nút, và các cạnh nối những điểm tương tự. Nhãn sau đó "lan" từ các nút có nhãn sang hàng xóm của chúng.
Giả định là các điểm dữ liệu tương tự nên có cùng nhãn. Nếu một mẫu có nhãn nằm gần một cụm mẫu không nhãn, thì các mẫu không nhãn đó có khả năng thuộc cùng lớp. Nhãn lan truyền qua đồ thị cho đến khi mỗi nút đều có nhãn.
Cách này hiệu quả khi dữ liệu của bạn có cấu trúc cụm rõ ràng, nhưng có thể thất bại khi ranh giới giữa các lớp mờ nhạt.
Mạng nơ-ron bán giám sát
Học sâu có bộ kỹ thuật bán giám sát riêng. Dưới đây là vài cách phổ biến nhất:
- Chuẩn hóa tính nhất quán (Consistency regularization): Ép mô hình tạo cùng một đầu ra cho một đầu vào ngay cả sau những nhiễu loạn nhỏ như thêm nhiễu hoặc tăng cường dữ liệu. Ý tưởng là một mô hình tốt không nên thay đổi dự đoán chỉ vì bạn chỉnh sửa đầu vào đôi chút
- Gắn nhãn giả trong mạng nơ-ron: Hoạt động giống tự huấn luyện nhưng ở cấp độ batch. Mô hình tạo nhãn cho các mẫu không nhãn trong quá trình huấn luyện và dùng chúng cùng với nhãn thật trong hàm mất mát.
Các phương pháp như FixMatch và MixMatch kết hợp những ý tưởng này, và đã cho kết quả tốt trên các benchmark với rất ít ví dụ có nhãn.
Tại Sao Học Bán Giám Sát Quan Trọng
Bạn nên quan tâm đến học bán giám sát vì một lý do: chi phí.
Gắn nhãn dữ liệu cần dữ liệu, chuyên gia lĩnh vực, thời gian và tiền bạc. Học bán giám sát giảm chi phí bằng cách khai thác nhiều hơn từ ít nhãn hơn.
Tiếp theo là hiệu suất. Một mô hình huấn luyện trên 500 mẫu có nhãn và 50.000 mẫu không nhãn thường sẽ vượt qua cùng mô hình đó nếu chỉ huấn luyện trên 500 mẫu có nhãn. Dữ liệu không nhãn cho mô hình cái nhìn đầy đủ hơn về cách dữ liệu phân bố, từ đó dẫn đến dự đoán tốt hơn.
Và còn thực tế của hầu hết các bộ dữ liệu. Dữ liệu không nhãn ở khắp nơi. Mỗi công ty đều có nhật ký, hình ảnh, tài liệu và bản ghi âm mà không ai có thời gian gắn nhãn. Học bán giám sát cho phép bạn tạo ra điều hữu ích từ lượng dữ liệu đó.
Ứng Dụng Của Học Bán Giám Sát
Học bán giám sát xuất hiện trong các lĩnh vực nơi nhãn khó thu thập.
Phân loại ảnh là một trong những trường hợp sử dụng phổ biến nhất. Gắn nhãn hàng nghìn ảnh thì tẻ nhạt, nhưng thu thập ảnh không nhãn lại dễ. Phương pháp bán giám sát cho phép bạn huấn luyện bộ phân loại chính xác chỉ với vài trăm ảnh có nhãn.
Phân loại văn bản cũng vậy. Bạn có thể có hàng triệu đánh giá của khách hàng hoặc phiếu hỗ trợ, nhưng chỉ một lô nhỏ có nhãn thủ công. Học bán giám sát có thể giúp bạn xây dựng bộ phân loại khái quát được trên toàn bộ tập dữ liệu.
Nhận dạng giọng nói là một lĩnh vực thú vị khác. Chép lại âm thanh thủ công rất tốn công, nhưng dữ liệu âm thanh thô thì dồi dào. Các bản ghi không nhãn giúp mô hình học các mẫu âm học, trong khi các mẫu đã chép dạy nó các ánh xạ đúng.
Phân tích dữ liệu y tế là một tác vụ đặc thù tuyệt vời. Nhờ bác sĩ gắn nhãn ảnh quét hay hồ sơ bệnh nhân thì tốn kém và chậm, vì họ có nhiều việc quan trọng hơn. Nhưng bệnh viện có lượng lớn dữ liệu lâm sàng không nhãn. Phương pháp bán giám sát giúp xây dựng mô hình chẩn đoán mà không cần một bộ dữ liệu hoàn toàn có nhãn.
Ưu Điểm Của Học Bán Giám Sát
Vì sao học bán giám sát phù hợp với nhiều dự án:
- Cần ít dữ liệu có nhãn hơn: Bạn có thể đạt kết quả tốt với chỉ một phần nhỏ số nhãn mà cách có giám sát hoàn toàn yêu cầu
- Cải thiện khả năng khái quát: Dữ liệu không nhãn cho mô hình tiếp xúc với phạm vi ví dụ rộng hơn, giúp nó hoạt động tốt hơn trên dữ liệu chưa từng thấy
- Tiết kiệm chi phí: Khi việc gắn nhãn đắt đỏ hoặc tốn thời gian - vốn thường là vậy - học bán giám sát tiết kiệm thời gian và ngân sách bằng cách tận dụng tối đa những gì bạn đã có
Vì vậy, nếu bạn có nhiều dữ liệu hơn số nhãn, đã đến lúc cân nhắc học bán giám sát.
Hạn Chế Của Học Bán Giám Sát
Học bán giám sát có vài đánh đổi bạn nên biết.
- Chất lượng dữ liệu không nhãn rất quan trọng: Nếu dữ liệu không nhãn không cùng phân bố với dữ liệu có nhãn, mô hình sẽ học các mẫu sai
- Nhãn giả sai: Trong các phương pháp như tự huấn luyện, một dự đoán tự tin nhưng sai sẽ bị coi là chân lý. Mô hình huấn luyện trên nhãn xấu đó, củng cố sai lầm và làm xấu đi các dự đoán sau này
- Phức tạp hơn học có giám sát: Bạn có nhiều siêu tham số cần tinh chỉnh hơn, nhiều lựa chọn thiết kế hơn, và nhiều thứ có thể sai hơn. Một mô hình có giám sát đơn giản hơn để xây và giải thích. Phương pháp bán giám sát thêm độ phức tạp không phải lúc nào cũng đáng - đặc biệt nếu bộ dữ liệu có nhãn của bạn đã đủ lớn
Không điều nào trong số này là rào cản tuyệt đối, chỉ là những điều cần biết trước khi bắt đầu.
Học Bán Giám Sát Trong Thực Tiễn (Ví dụ Python)
Hãy xem học bán giám sát hoạt động ra sao với một ví dụ Python đơn giản dùng thuật toán LabelSpreading của scikit-learn.
Tôi sẽ tạo một bộ dữ liệu, chỉ gắn nhãn một phần nhỏ, và để mô hình suy ra phần còn lại.
Chuẩn bị dữ liệu
Trước hết, tôi sẽ tạo một bộ dữ liệu và che phần lớn nhãn để mô phỏng kịch bản bán giám sát:
import numpy as np
from sklearn.datasets import make_moons
from sklearn.semi_supervised import LabelSpreading
from sklearn.metrics import accuracy_score
# Generate a dataset with 500 samples
X, y_true = make_moons(n_samples=500, noise=0.2, random_state=42)
# Keep only 10%, mask the rest as -1
rng = np.random.RandomState(42)
labeled_idx = rng.choice(500, size=50, replace=False)
y_train = np.full(500, -1) # -1 means unlabeled in scikit-learn
y_train[labeled_idx] = y_true[labeled_idx]
print(f"Labeled samples: {np.sum(y_train != -1)}")
print(f"Unlabeled samples: {np.sum(y_train == -1)}")

Số lượng mẫu dữ liệu có nhãn và không nhãn
Trong scikit-learn, -1 đánh dấu một mẫu là chưa gắn nhãn. Trong tổng số 500 mẫu, chỉ 50 có nhãn. Mô hình phải suy ra 450 mẫu còn lại.
Huấn luyện và dự đoán
Giờ tôi sẽ huấn luyện một mô hình LabelSpreading và xem nó gắn nhãn dữ liệu không nhãn tốt đến đâu:
model = LabelSpreading(kernel="knn", n_neighbors=7)
model.fit(X, y_train)
y_pred = model.transduction_
# Check accuracy on the originally unlabeled samples
unlabeled_mask = y_train == -1
accuracy = accuracy_score(y_true[unlabeled_mask], y_pred[unlabeled_mask])
print(f"Accuracy on unlabeled samples: {accuracy:.2%}")

Độ chính xác trên các mẫu không nhãn
Mô hình đã gắn nhãn đúng hầu hết các mẫu không nhãn chỉ với 10% dữ liệu là ví dụ có nhãn. Đó là ý tưởng cốt lõi.
Trực quan hóa kết quả
Độ chính xác cao - gần 96% - nhưng hãy trực quan kiểm tra những mẫu bị phân loại sai:

Nhãn thật và nhãn dự đoán
Các nhãn dự đoán gần như khớp hoàn hảo với nhãn thật, dù mô hình chỉ thấy 50 ví dụ có nhãn trong tổng 500. Bạn có thể thấy các mẫu phân loại sai được tô đỏ ở biểu đồ bên phải.
Những Sai Lầm Phổ Biến Với Học Bán Giám Sát
Bạn đã thấy học bán giám sát mạnh mẽ thế nào, nhưng nó không hoàn hảo cho mọi kịch bản. Dưới đây là những sai lầm thường gặp và cách tránh.
- Giả định dữ liệu không nhãn luôn hữu ích: Không phải lúc nào cũng vậy. Nếu dữ liệu không nhãn đến từ phân bố khác với dữ liệu có nhãn, mô hình sẽ học các mẫu không áp dụng cho tác vụ thực. Luôn kiểm tra rằng dữ liệu có nhãn và không nhãn đến từ cùng nguồn và đại diện cho cùng vấn đề
- Khởi tạo mô hình kém: Các phương pháp bán giám sát xây dựng dựa trên một mô hình có giám sát ban đầu. Nếu mô hình đầu tiên yếu - do huấn luyện trên quá ít mẫu hoặc siêu tham số tệ - mọi bước sau sẽ thừa hưởng các vấn đề đó. Hãy bắt đầu với đường cơ sở có giám sát tốt nhất bạn có thể trước khi thêm dữ liệu không nhãn
- Quá phụ thuộc vào nhãn giả: Nhãn giả chỉ tốt ngang với mô hình tạo ra chúng. Nếu bạn tin mọi nhãn giả, lỗi có thể cộng dồn qua các vòng huấn luyện. Đặt ngưỡng tin cậy cao và chỉ dùng nhãn giả mà mô hình chắc chắn. Loại bỏ phần còn lại
- Bỏ qua phân bố dữ liệu: Phương pháp bán giám sát giả định rằng cấu trúc của dữ liệu không nhãn cho bạn biết điều gì đó hữu ích về nhãn. Nếu dữ liệu của bạn không có cụm rõ ràng hay ranh giới quyết định mượt mà, giả định đó sẽ không đúng
Để tránh bốn sai lầm này, hãy bắt đầu với đường cơ sở có giám sát mạnh, thêm dữ liệu không nhãn dần dần, và kiểm tra xem hiệu suất thực sự cải thiện ở mỗi bước.
Khi Nào Nên Dùng Học Bán Giám Sát
Học bán giám sát hợp lý trong ba tình huống sau:
- Khi dữ liệu có nhãn hạn chế: Nếu bạn chỉ có một bộ dữ liệu nhỏ có nhãn và việc có thêm nhãn đắt đỏ hoặc chậm, học bán giám sát giúp bạn vắt thêm chút độ chính xác
- Khi dữ liệu không nhãn dồi dào: Bạn cần lượng lớn dữ liệu không nhãn để cách này hiệu quả. Nếu chỉ có một tập không nhãn nhỏ, mô hình sẽ không học đủ cấu trúc để tạo khác biệt. Khoảng cách càng lớn giữa kích thước tập có nhãn và không nhãn, phương pháp bán giám sát càng hữu ích
- Khi dữ liệu của bạn có cấu trúc rõ ràng: Học bán giám sát hoạt động tốt nhất khi các điểm dữ liệu tương tự có cùng nhãn. Nếu dữ liệu tạo thành các cụm hoặc có ranh giới mượt giữa các lớp, dữ liệu không nhãn sẽ làm các mẫu đó rõ ràng hơn. Nếu các lớp trộn lẫn không có ranh giới rõ, dữ liệu không nhãn sẽ không giúp nhiều.
Nếu cả ba điều kiện đều đúng, học bán giám sát đáng để thử.
Kết Luận
Nói một cách đơn giản, học bán giám sát cho bạn cách huấn luyện mô hình tốt hơn mà không phải gắn nhãn tất cả. Bạn lấy một tập dữ liệu nhỏ có nhãn, kết hợp với một tập lớn không nhãn, và để mô hình học từ cả hai.
Lợi ích rất rõ: ít thời gian gắn nhãn hơn, ra mắt nhanh hơn, chi phí thấp hơn, và hiệu suất tốt hơn so với chỉ huấn luyện trên nhãn hạn chế. Và trong các lĩnh vực như y tế, pháp lý, và NLP - nơi gắn nhãn đòi hỏi chuyên gia - đó là điều rất đáng kể.
Nếu bạn có lượng lớn dữ liệu không nhãn, hãy thử học bán giám sát. Bắt đầu với một đường cơ sở có giám sát tốt, chọn kỹ thuật phù hợp với cấu trúc dữ liệu của bạn, và đo lường xem dữ liệu không nhãn thực sự giúp không. LabelSpreading của scikit-learn là một thử nghiệm đầu tiên tốt, nhưng cũng hãy thử các phương pháp như FixMatch và MixMatch.
Nếu bạn muốn sẵn sàng cho công việc vào năm 2026, hãy tham gia lộ trình Machine Learning Engineer của chúng tôi. Lộ trình bao quát mọi thứ từ nền tảng đến MLOps.
Câu hỏi thường gặp
Học bán giám sát là gì?
Học bán giám sát là một phương pháp học máy huấn luyện mô hình trên một tập nhỏ dữ liệu có nhãn và một tập lớn dữ liệu không nhãn. Dữ liệu có nhãn cho mô hình biết cần tìm gì, trong khi dữ liệu không nhãn giúp nó hiểu cấu trúc tổng thể của dữ liệu. Bằng cách này, bạn đạt kết quả tốt hơn so với chỉ huấn luyện trên dữ liệu có nhãn.
Học bán giám sát khác gì so với học có giám sát và không giám sát?
Học có giám sát chỉ dùng dữ liệu có nhãn, nơi mỗi mẫu có đầu ra đã biết. Học không giám sát chỉ dùng dữ liệu không nhãn và tự tìm các mẫu. Học bán giám sát dùng một tập nhỏ có nhãn để xác định tác vụ và một tập lớn không nhãn để học cấu trúc dữ liệu.
Khi nào tôi nên dùng học bán giám sát?
Hãy dùng khi bạn có ít dữ liệu có nhãn, nhiều dữ liệu không nhãn, và dữ liệu có cấu trúc rõ ràng, như các cụm tự nhiên hoặc ranh giới mượt giữa các lớp. Nếu việc gắn nhãn đắt đỏ hoặc cần chuyên gia lĩnh vực - như trong ảnh y khoa hay phân tích văn bản pháp lý - học bán giám sát giúp bạn xây mô hình chính xác mà không cần gắn nhãn tất cả.
Tự huấn luyện trong học bán giám sát là gì?
Tự huấn luyện là kỹ thuật trong đó mô hình được huấn luyện trước trên dữ liệu có nhãn, rồi dự đoán nhãn cho các mẫu không nhãn. Những dự đoán tự tin nhất được thêm vào tập có nhãn như nhãn giả, và mô hình được huấn luyện lại trên bộ dữ liệu đã mở rộng. Rủi ro là các dự đoán sai sớm sẽ bị củng cố ở các vòng sau, vì vậy bạn nên đặt ngưỡng tin cậy cao.
