Algorithms-by-meme-05: Naive Bayes

Thuật toán phân loại dựa trên định lý Bayes với một giả định độc lập giữa các dự đoán. Nói một cách đơn giản, phân loại Naive Bayes giả định rằng sự hiện diện của một feature cụ thể trong class không liên quan đến sự hiện diện của feature khác. Ví dụ, một trái cây được gọi là “Quả cam” nếu nó màu vàng, tròn, to bằng nắm tay. Thậm chí, nếu các feature đó phụ thuộc vào nhau hoặc sự tồn tại của các feature khác, một phân loại Naive Bayes sẽ cân nhắc mọi tính chất để tính toán một cách độc lập liệu trái cây đó có phải là “Quả cam” hay không?

Mô hình Naive Bayes khá dễ để xây dựng và hữu dụng cho tập dữ liệu lớn. Cùng với sự đơn giản của nó, mô hình này được biết đến với việc outperform với các phương pháp phân loại khác.

Định lý Bayes cung cấp một cách để tính toán xác suất P(c|x) từ P(c), P(x) và P(x|c).

Ví dụ: Dưới đây có một tập dữ liệu training của thời tiết và biến mục tiêu tương ứng ‘Play’. Cần phải phân loại cho dù người chơi sẽ chơi hay không dựa trên điều kiện thời tiết.

Bước 1: Chuyển đổi các dữ liệu thành bảng tần số

Bước 2: Tạo bảng “Khả năng” bằng cách tìm các xác suất như "khả năng trời u ám ám" = 0,29 và "khả năng PLAY" = 0,64.

Bước 3: Sử dụng phương trình Bayesian Naive để tính toán xác suất hậu nghiệm cho mỗi lớp. Các nhóm với xác suất hậu nghiệm cao nhất là kết quả của dự đoán.

Vấn đề: Liệu người chơi sẽ PLAY nếu thời tiết nắng, là tuyên bố này là đúng?

Chúng tôi có thể giải quyết nó bằng phương pháp thảo luận ở trên, do đó P (Yes | Sunny) = P (Sunny | Yes) * P (Yes) / P (Sunny)

Ở đây chúng ta có P (Sunny | Yes) = 3/9 = 0.33, P (Sunny) = 5/14 = 0,36, P (Yes) = 9/14 = 0,64

Bây giờ, P (Yes | Sunny) = 0,33 * 0,64 / 0,36 = 0,60, với xác suất cao hơn.

Naive Bayes sử dụng một phương pháp tương tự để dự đoán xác suất của các nhóm khác nhau dựa trên các thuộc tính khác nhau. Thuật toán này được sử dụng chủ yếu trong phân loại văn bản text có nhiều class.

Leave a reply:

Your email address will not be published.

Site Footer