Algoritma Naive Bayes adalah suatu metode klasifikasi yang berdasarkan teorema Bayes dengan asumsi bahwa semua variabel prediktor (fitur) adalah independen satu sama lain. Meskipun asumsi ini seringkali tidak terpenuhi di dunia nyata, namun Naive Bayes tetap menjadi pilihan yang baik dan efisien untuk masalah klasifikasi, terutama dalam kasus dengan data yang cukup besar.
Langkah-langkah umum dalam algoritma Naive Bayes adalah sebagai berikut:
1. Pelatihan (Training):
- Menghitung probabilitas prior untuk setiap kelas berdasarkan data latih.
- Menghitung probabilitas kondisional untuk setiap fitur dalam setiap kelas
- Menggunakan teorema Bayes, menghitung probabilitas kelas untuk suatu contoh baru.
- Memilih kelas dengan probabilitas tertinggi sebagai prediksi.
Contoh sederhana dapat diilustrasikan dengan kasus klasifikasi email sebagai spam atau bukan spam. Misalkan terdapat dua fitur: (1) kata "lottery" muncul atau tidak, dan (2) kata "money" muncul atau tidak. Kita ingin mengklasifikasikan email berdasarkan dua fitur tersebut.
Contoh Perhitungan:
Data Pelatihan:
| No. | Email Text | Spam (Kelas) |
|-- ---|---------------------------------|-----------------|
| 1 | Win the lottery, win money! | Yes |
| 2 | Meeting tomorrow | No |
| 3 | Lottery winner | Yes |
| 4 | Money for you | Yes |
| 5 | Important meeting | No |
- P(Spam=Yes | "win", "money", "fast") ∝ P("win" | Spam=Yes) * P("money" | Spam=Yes) * P("fast" | Spam=Yes) * P(Spam=Yes)
- P(Spam=No | "win", "money", "fast") ∝ P("win" | Spam=No) * P("money" | Spam=No) * P("fast" | Spam=No) * P(Spam=No)
- Naive Bayes adalah algoritma yang relatif sederhana dan mudah dipahami.
- Komputasinya cepat dan efisien, terutama ketika dihadapkan dengan dataset yang besar.
- Cocok untuk dataset dengan fitur yang besar dan independen, karena asumsi utama Naive Bayes adalah adanya independensi antar fitur.
- Meskipun asumsinya naif (fitur independen), Naive Bayes sering memberikan kinerja yang baik dalam tugas klasifikasi, terutama pada dataset dengan jumlah fitur tinggi.
- Naive Bayes sering digunakan dalam pemrosesan bahasa alami (Natural Language Processing/NLP) dan klasifikasi teks karena dapat mengatasi permasalahan klasifikasi dokumen dengan baik.
- Naive Bayes cukup tahan terhadap data yang hilang, artinya dapat melakukan klasifikasi dengan baik meskipun beberapa fitur tidak lengkap.
- Model Naive Bayes dapat diperbarui dengan mudah ketika ada tambahan data pelatihan baru.
- Naive Bayes dapat digunakan untuk tugas klasifikasi dengan lebih dari dua kelas (multikelas).