Xác suất tiên nghiệm (Prior Probability) P(c) trong Naive Bayes là gì?

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

Keywords: prior probability, p(c) naive bayes, xác suất tiên nghiệm, naive bayes classification

Mở đầu – Vì sao nhiều bạn dễ nhầm P(c) khi học Naive Bayes?

Khi mới học Machine Learning, đặc biệt là phần phân loại bằng Naive Bayes, rất nhiều bạn thường thắc mắc:

“P(c) là gì? Tính kiểu gì? Tại sao lại gọi là xác suất tiên nghiệm?”

Sự nhầm lẫn xuất phát từ việc Naive Bayes dựa trên tư duy xác suất – thống kê, một phần kiến thức trong nhóm nền tảng (Module 1–2 của chương trình học thuật AIO). Nếu chưa quen với xác suất có điều kiện, thuật toán sẽ trở nên khó hiểu dù bản chất lại khá đơn giản.

P(c) trong Naive Bayes là gì?

P(c) là xác suất xuất hiện của một lớp (class) trong toàn bộ dữ liệu, trước khi nhìn thấy bất kỳ đặc trưng nào.

Nói cách khác:

Đây là mức “tin tưởng ban đầu” rằng một mẫu bất kỳ sẽ thuộc lớp c.

Nó được tính dựa trên tần suất lớp đó xuất hiện trong tập huấn luyện.

Ví dụ:

P(spam) = 0.3
P(ham) = 0.7

Không cần xem nội dung email, ta đã có mức xác suất ban đầu này.

Tại sao lại gọi là “tiên nghiệm”?

Vì đây là xác suất được tính trước khi quan sát đặc trưng (prior to seeing features).

Trong Naive Bayes, mô hình sẽ:

  • Xem xét P(c) – xác suất tiên nghiệm
  • Kết hợp thêm thông tin từ đặc trưng (likelihood)
  • Tính ra xác suất hậu nghiệm P(c|x)

P(c) giúp mô hình có một “bức tranh tổng thể” trước khi xem xét chi tiết mẫu dữ liệu.

P(c) được tính như thế nào?

Không cần công thức phức tạp, bạn chỉ cần hiểu:

P(c) = (số mẫu thuộc lớp c) / (tổng số mẫu)

Đây là cách tính xác suất cơ bản, xuất hiện nhiều trong các bài học thống kê nền (Module 1–2) và được sử dụng xuyên suốt trong các thuật toán ML cổ điển (Module 4).

Ví dụ thực tế để dễ hình dung

Giả sử bạn phân loại bài viết theo chủ đề:

  • 40 bài về “AI”
  • 30 bài về “Khoa học dữ liệu”
  • 30 bài về “Lập trình”

Tổng cộng 100 bài.

Ta có:

  • P(AI) = 0.40
  • P(Khoa học dữ liệu) = 0.30
  • P(Lập trình) = 0.30

Nếu một bài viết mới xuất hiện, trước khi đọc nội dung, mô hình đã “nghiêng nhẹ” về việc nó thuộc nhóm AI.

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

Trong thực tế, xác suất tiên nghiệm ảnh hưởng mạnh đến:

  • Bài toán dữ liệu lệch lớp (imbalance)
  • Phân loại văn bản hoặc email
  • Phân loại y tế nơi một lớp hiếm
  • Bài toán sentiment và review

Nếu dữ liệu mất cân bằng, P(c) của lớp phổ biến sẽ rất cao → mô hình dễ thiên vị.

Vì vậy, trong pipeline ML (Module 3 – ETL và Module 4 – ML cơ bản), các kỹ thuật như undersampling, oversampling hoặc trọng số lớp (class weight) thường được dùng để điều chỉnh P(c).

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

Khi học Naive Bayes, bạn sẽ đồng thời gặp:

  • Xác suất có điều kiện (Module 1–2)
  • Phân phối trong ML truyền thống (Module 4)
  • Biểu diễn văn bản (Bag-of-Words, TF-IDF) trong NLP cơ bản (Module 10)

Nhờ nắm các nhóm kiến thức này, việc hiểu P(c) trở nên tự nhiên và trực quan hơn.

Lời khuyên nhẹ cho người mới bắt đầu

Bạn có thể thử:

  • Tạo một tập dữ liệu nhỏ và tự tính P(c)
  • Quan sát P(c) thay đổi thế nào khi dữ liệu lệch lớp
  • Thử phân loại email hoặc bình luận bằng cách thủ công để cảm nhận vai trò của P(c)

Đây là cách tốt nhất để hiểu Naive Bayes từ gốc thay vì ghi nhớ công thức.

Kết luận

Xác suất tiên nghiệm P(c) là xác suất xuất hiện của một lớp trong dữ liệu trước khi xem xét đặc trưng.

Nó phản ánh tần suất lớp trong tập huấn luyện và đóng vai trò nền tảng trong cách Naive Bayes dự đoán nhãn cho mẫu mới.

Bạn có thể thử nghiệm với tập dữ liệu nhỏ để quan sát sự thay đổi của P(c) — đây là cách tự nhiên nhất để hiểu vững khái niệm này.

Tài nguyên học AI: