Nói chung, bạn có một sự lựa chọn khi xử lý các giá trị còn thiếu hen đào tạo một trình phân loại Bayes ngây thơ. Bạn có thể chọn một trong hai
- Bỏ qua hồ sơ với bất kỳ giá trị thiếu,
- Chỉ bỏ qua các thuộc tính còn thiếu.
Tôi sẽ sử dụng ví dụ được liên kết ở trên để trình bày hai cách tiếp cận này. Giả sử chúng ta thêm một hồ sơ đào tạo vào ví dụ đó.
Outlook Temperature Humidity Windy Play
------- ----------- -------- ----- ----
rainy cool normal TRUE no
rainy mild high TRUE no
sunny hot high FALSE no
sunny hot high TRUE no
sunny mild high FALSE no
overcast cool normal TRUE yes
overcast hot high FALSE yes
overcast hot normal FALSE yes
overcast mild high TRUE yes
rainy cool normal FALSE yes
rainy mild high FALSE yes
rainy mild normal FALSE yes
sunny cool normal FALSE yes
sunny mild normal TRUE yes
NA hot normal FALSE yes
Nếu chúng tôi quyết định bỏ qua bản ghi cuối cùng do outlook
giá trị bị thiếu , chúng tôi sẽ có cùng một mô hình được đào tạo chính xác như được thảo luận trong liên kết.
Chúng tôi cũng có thể chọn sử dụng tất cả các thông tin có sẵn từ hồ sơ này. Chúng ta có thể chọn đơn giản là bỏ qua thuộc tính outlook
từ bản ghi này. Điều này sẽ mang lại bảng cập nhật sau đây.
Độ ẩm nhiệt độ Outlook
==================== ================= ============= ====
Có Không Có Không Có Không Không
Nắng 2 3 Nóng 3 2 Cao 3 4
U ám 4 0 Nhẹ 4 2 Bình thường 7 1
Mưa 3 2 Mát 3 1
----------- --------- ----------
Nắng 2/9 3/5 Nóng 3/10 2/5 Cao 3/10 4/5
U ám 4/9 0/5 Nhẹ 4/10 2/5 Bình thường 7/10 1/5
Mưa 3/9 2/5 Mát 3/10 1/5
Chơi gió
================= ========
Có Không Có Không Không
Sai 7 2 10 5
Đúng 3 3
---------- ----------
Sai 7/10 2/5 10/15 5/15
Đúng 3/10 3/5
Lưu ý rằng có 15 quan sát cho mỗi thuộc tính ngoại trừ Outlook
, chỉ có 14. Điều này là do giá trị đó không có sẵn cho bản ghi cuối cùng. Tất cả sự phát triển hơn nữa sẽ tiếp tục như được thảo luận trong bài viết được liên kết.
Ví dụ, trong gói R, e1071
naiveBayes triển khai có tùy chọn na.action
có thể được đặt thành na.omit hoặc na.pass.