Class Imbalance trong huấn luyện Deep Learning có thể dẫn đến hiện tượng gì trên lớp thiểu số?

Tác giả: AI VIET NAM (AI VIET NAM)

Keywords: class imbalance, deep learning, minority class, recall, precision

Mở đầu

Khi làm các bài toán phân lớp, nhiều người gặp tình huống mô hình dự đoán rất “đẹp” trên tổng thể nhưng lại sai gần như hoàn toàn ở nhóm dữ liệu ít xuất hiện. Đây là vấn đề phổ biến khi tỉ lệ các lớp không đồng đều, thường được gọi là class imbalance.

Giải thích rõ ràng, dễ hiểu

Class imbalance xảy ra khi một lớp xuất hiện nhiều hơn các lớp còn lại. Mô hình Deep Learning thường ưu tiên học theo xu hướng của lớp xuất hiện nhiều, vì các thuật toán tối ưu sẽ giảm lỗi dựa trên toàn bộ dữ liệu.

Hiện tượng dễ xuất hiện trên lớp thiểu số:

  • Mô hình khó học được đặc trưng của lớp hiếm → dự đoán sai phần lớn các mẫu thuộc lớp này.
  • Recall và Precision của lớp thiểu số giảm mạnh, ngay cả khi Accuracy tổng thể vẫn cao.
  • Mô hình nghiêng về lớp đa số, dễ dẫn đến dự đoán “một màu” trong các tình huống quan trọng như phát hiện gian lận hoặc chẩn đoán y khoa.

Đây là vấn đề cốt lõi của machine learning cơ bản (liên quan đến kiến thức ở các module ML1–2), trong đó loss function, phân bố dữ liệu và cách đánh giá mô hình có vai trò quan trọng.

Ví dụ thực tế

Bài toán phát hiện giao dịch bất thường có thể có 99.5% giao dịch bình thường và chỉ 0.5% giao dịch gian lận. Nếu mô hình đoán tất cả đều bình thường, Accuracy vẫn 99.5%. Tuy nhiên lớp thiểu số (gian lận) bị bỏ qua hoàn toàn.

Góc nhìn làm dự án AI/ML

Khi triển khai dự án thực tế, nhóm phát triển thường kiểm tra kỹ phân bố dữ liệu trước khi huấn luyện. Một số bước thường áp dụng:

  • Xem lại data pipeline và thực hiện điều chỉnh ở bước ETL (liên quan đến module Data Engineer).
  • Hoàn thiện bộ metric theo từng lớp thay vì chỉ dùng Accuracy.
  • Cân nhắc các phương pháp cân bằng dữ liệu như oversampling, undersampling, hoặc điều chỉnh trọng số loss.

Những bước này giúp mô hình tiếp cận bài toán một cách rõ ràng hơn thay vì phụ thuộc vào tỉ lệ dữ liệu ban đầu.

Liên hệ kiến thức nền

Khi học các phần như Machine Learning căn bản (regression, classification), Losses & Metrics hoặc các phần Deep Learning (layers, regularization), người học thường gặp chủ đề phân bố dữ liệu và ảnh hưởng của nó đến hiệu năng mô hình. Đây là nhóm kiến thức nền tảng trước khi đi vào các ứng dụng lớn hơn như NLP hoặc Computer Vision.

Lời khuyên cho người bắt đầu

Bạn có thể thử trên các bộ dữ liệu nhỏ và tự quan sát sự thay đổi của Recall/Precision khi thay đổi tỉ lệ các lớp. Cách này giúp hiểu bản chất của class imbalance và ảnh hưởng của nó lên mô hình.

Hỏi đáp nhanh về Class Imbalance

  1. Class imbalance có làm mô hình ưu tiên lớp đa số không?
    Có, vì mô hình tối ưu dựa trên tổng lỗi.

  2. Class imbalance có khiến Recall của lớp thiểu số giảm không?
    Có, đây là hiện tượng phổ biến.

  3. Các mô hình sâu có tự khắc phục được class imbalance không?
    Không, cần có kỹ thuật xử lý trước hoặc trong quá trình huấn luyện.

  4. Class imbalance có ảnh hưởng đến mọi dạng bài toán classification không?
    Có, mức độ phụ thuộc vào phân bố dữ liệu và mục tiêu bài toán.

FAQ về AIO

Q1. Con số 0 thì học nổi không?
Ans: Chỉ cần bạn có thời gian học. Điều quan trọng nhất không phải giỏi hay không, mà là có học đều mỗi ngày. Kiến thức – tài liệu – môi trường đã có team lo. Nếu bạn không có thời gian thì nên cân nhắc.

Q2. Ai dạy AIO?
Ans: Đội admin dạy toàn bộ. Admin trực tiếp hướng dẫn và hỗ trợ mọi câu hỏi của bạn trong suốt quá trình học.

Q3. Admin có “xịn” không?
Ans: Admin đều là người làm nghề thật, mỗi người một cách dạy. Quan trọng là bạn cảm thấy hợp cách truyền đạt. Admin không dám nói xịn, chỉ dạy bằng hết sức.

Q4. AIO có gì khác những nơi khác?
Ans: AIO không phải trung tâm. Đây là dự án học tập cộng đồng, được cải tiến qua từng khóa. Tinh thần của AIO: Cùng nhau học – cùng nhau khổ – cùng nhau lớn. Nếu hợp tinh thần đó, bạn sẽ thấy phù hợp.

Tài nguyên học AI: