Một bộ lọc thư rác được huấn luyện từ Ns email spam và Nh email hợp lệ (ham). Xét m từ khóa đặc trưng, đánh số 1,…,m. Với từ khóa j, biết:
Xác suất tiên nghiệm: P(spam)=Ns+NhNs, P(ham)=Ns+NhNh.
Xác suất có điều kiện của từng từ khóa được ước lượng bằng phép làm trơn Laplace (add-one): P(xj=1∣spam)=Ns+2csj+1,P(xj=1∣ham)=Nh+2chj+1, và P(xj=0∣⋅)=1−P(xj=1∣⋅).
Giả định các từ khóa độc lập có điều kiện với lớp (giả định "ngây thơ" của Naive Bayes). Với một email mới có vector đặc trưng x=(x1,…,xm)∈{0,1}m (mỗi xj=1 nếu email chứa từ khóa j), tính: scorespam=P(spam)∏j=1mP(xj∣spam),scoreham=P(ham)∏j=1mP(xj∣ham), rồi chuẩn hóa: P(spam∣x)=scorespam+scorehamscorespam.
Ví dụ: Ns=10,Nh=10, m=2, cs=(8,2), ch=(2,9), x=(1,0). Ta có P(spam∣x)=0.9375.
In ra P(spam∣x), làm tròn đúng 6 chữ số thập phân (định dạng %.6f).
Ví dụ:
Đầu vào:
10 10
2
8 1
2 9
1 0
Đầu ra:
0.937500
Đầu vào:
5 15
0
Đầu ra:
0.250000
Đang tải editor...