Keajaiban Sederhana Naive Bayes: Menyederhanakan Klasifikasi dengan Efektivitas Tinggi

Dipublikasikan oleh Muhammad Ilham Maulana

02 April 2024, 10.03

Sumber: en.wikipedia.org

Naive Bayes, meskipun sederhana dalam desainnya, memiliki keajaiban tersendiri dalam dunia klasifikasi statistik. Ini adalah keluarga "klasifier probabilistik" yang mengasumsikan independensi kondisional antara fitur-fitur yang ada, dengan asumsi target kelas. Kekuatan dari asumsi "naif" ini adalah apa yang memberikan nama pada klasifier ini. Naive Bayes adalah salah satu model jaringan Bayesian yang paling sederhana.

Salah satu kelebihan besar dari Naive Bayes adalah skalabilitasnya yang tinggi. Ini membutuhkan jumlah parameter yang linear terhadap jumlah variabel (fitur/predictor) dalam sebuah masalah pembelajaran. Pelatihan maximum-likelihood bisa dilakukan dengan mengevaluasi ekspresi bentuk tertutup, yang membutuhkan waktu linear, bukan dengan pendekatan iteratif yang mahal seperti yang digunakan untuk banyak jenis klasifier lainnya.

Di literatur statistik, model Naive Bayes dikenal dengan berbagai nama, termasuk Bayes sederhana dan independensi Bayes. Semua nama ini mengacu pada penggunaan teorema Bayes dalam aturan keputusan klasifier, namun Naive Bayes tidak (secara mutlak) merupakan metode Bayesian.

Naive Bayes adalah teknik sederhana untuk membangun klasifier: model yang memberikan label kelas kepada instansi masalah, direpresentasikan sebagai vektor nilai fitur, di mana label kelas diambil dari sekumpulan terbatas. Tidak ada satu algoritma tunggal untuk melatih klasifier semacam itu, tetapi sekelompok algoritma berdasarkan prinsip umum: semua klasifier Naive Bayes mengasumsikan bahwa nilai dari suatu fitur tertentu independen dari nilai fitur lainnya, mengingat variabel kelas. Misalnya, sebuah buah mungkin dianggap sebagai apel jika berwarna merah, bulat, dan memiliki diameter sekitar 10 cm. Klasifier Naive Bayes mempertimbangkan setiap fitur ini untuk memberikan kontribusi secara independen terhadap probabilitas bahwa buah ini adalah apel, tanpa memperhatikan korelasi yang mungkin antara warna, kebulatan, dan diameter fitur-fitur tersebut.

Di banyak aplikasi praktis, estimasi parameter untuk model Naive Bayes menggunakan metode maximum likelihood; dengan kata lain, seseorang dapat bekerja dengan model Naive Bayes tanpa menerima probabilitas Bayesian atau menggunakan metode Bayesian apa pun.

Meskipun desainnya yang naif dan asumsi yang tampaknya terlalu disederhanakan, klasifier Naive Bayes telah berhasil dalam banyak situasi dunia nyata yang kompleks. Pada tahun 2004, analisis terhadap masalah klasifikasi Bayesian menunjukkan bahwa ada alasan teoritis yang kuat untuk keefektifan tampaknya yang luar biasa dari klasifier Naive Bayes. Namun, perbandingan komprehensif dengan algoritma klasifikasi lain pada tahun 2006 menunjukkan bahwa klasifikasi Bayes kalah oleh pendekatan lain, seperti pohon yang diperkuat atau hutan acak.

Salah satu keunggulan dari Naive Bayes adalah bahwa ia hanya memerlukan sedikit data pelatihan untuk mengestimasi parameter yang diperlukan untuk klasifikasi.

Model Probabilistik

 

Secara abstrak, Naive Bayes adalah model probabilitas bersyarat: model ini memberikan probabilitas {\displaystyle p(C_{k}\mid x_{1},\ldots ,x_{n})} untuk setiap K kemungkinan hasil atau kelas {\displaystyle C_{k}} diberikan contoh masalah untuk diklasifikasikan, diwakili oleh vektor

{\displaystyle \mathbf {x} =(x_{1},\ldots ,x_{n})} mengkodekan beberapa n fitur (variabel independen).

Masalah dengan rumusan di atas adalah jika jumlah fitur n besar atau jika suatu fitur dapat mempunyai nilai yang banyak, maka mendasarkan model seperti itu pada tabel probabilitas tidak mungkin dilakukan. Oleh karena itu, model tersebut harus diformulasi ulang agar lebih mudah diterapkan. Dengan menggunakan teorema Bayes, probabilitas bersyarat dapat diuraikan menjadi:
 

{\displaystyle p(C_{k}\mid \mathbf {x} )={\frac {p(C_{k})\ p(\mathbf {x} \mid C_{k})}{p(\mathbf {x} )}}\,}

 

Dalam bahasa Inggris sederhana, dengan menggunakan terminologi probabilitas Bayesian, persamaan di atas dapat ditulis sebagai

{\displaystyle {\text{posterior}}={\frac {{\text{prior}}\times {\text{likelihood}}}{\text{evidence}}}\,}
 

Dalam prakteknya, yang menarik hanya pada pembilang pecahan tersebut, karena penyebutnya tidak bergantung pada {\displaystyle C}dan nilai fiturnya  {\displaystyle x_{i}} diberikan, sehingga penyebutnya secara efektif konstan. Pembilangnya setara dengan model probabilitas gabungan{\displaystyle p(C_{k},x_{1},\ldots ,x_{n})\,}

Ini dapat diulas kembali dengan menggunakan aturan rantai untuk aplikasi berulang dari definisi probabilitas kondisional:

{\displaystyle {\begin{aligned}p(C_{k},x_{1},\ldots ,x_{n})&=p(x_{1},\ldots ,x_{n},C_{k})\\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2},\ldots ,x_{n},C_{k})\\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2}\mid x_{3},\ldots ,x_{n},C_{k})\ p(x_{3},\ldots ,x_{n},C_{k})\\&=\cdots \\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2}\mid x_{3},\ldots ,x_{n},C_{k})\cdots p(x_{n-1}\mid x_{n},C_{k})\ p(x_{n}\mid C_{k})\ p(C_{k})\\\end{aligned}}}

 

Kini asumsi independensi bersyarat yang "naif" mulai berlaku: asumsikan bahwa semua fitur ada di dalamnya {\displaystyle \mathbf {x} } bersifat saling independen, bergantung pada kategorinya {\displaystyle C_{k}}. Berdasarkan asumsi ini,
 

{\displaystyle p(x_{i}\mid x_{i+1},\ldots ,x_{n},C_{k})=p(x_{i}\mid C_{k})\,.}
 

Dengan demikian, model gabungan dapat dinyatakan sebagai

{\displaystyle {\begin{aligned}p(C_{k}\mid x_{1},\ldots ,x_{n})\varpropto \ &p(C_{k},x_{1},\ldots ,x_{n})\\&=p(C_{k})\ p(x_{1}\mid C_{k})\ p(x_{2}\mid C_{k})\ p(x_{3}\mid C_{k})\ \cdots \\&=p(C_{k})\prod _{i=1}^{n}p(x_{i}\mid C_{k})\,,\end{aligned}}}

dimana ∝ menunjukkan proporsionalitas sejak penyebutnya {\displaystyle p(\mathbf {x} )} dihilangkan.

Artinya berdasarkan asumsi independensi di atas, distribusi bersyarat atas variabel kelas {\displaystyle C} adalah:
 

{\displaystyle p(C_{k}\mid x_{1},\ldots ,x_{n})={\frac {1}{Z}}\ p(C_{k})\prod _{i=1}^{n}p(x_{i}\mid C_{k})}
 

dengan bukti {\displaystyle Z=p(\mathbf {x} )=\sum _{k}p(C_{k})\ p(\mathbf {x} \mid C_{k})} erupakan faktor penskalaan yang hanya bergantung pada, dengan bukti merupakan faktor penskalaan yang hanya bergantung pada , yaitu konstanta jika nilai variabel fitur diketahui.

Membangun pengklasifikasi dari model probabilitas

Membangun pengklasifikasi dari model probabilitas melibatkan pengintegrasian model fitur independen turunan, yaitu model probabilitas naif Bayes, dengan aturan keputusan. Pendekatan yang umum adalah memilih hipotesis dengan probabilitas tertinggi untuk meminimalkan kesalahan klasifikasi, yang dikenal sebagai aturan keputusan maksimum a posteriori atau MAP. Pengklasifikasi yang sesuai, pengklasifikasi Bayes, menentukan label kelas {\displaystyle {\hat {y}}=C_{k}} untuk beberapa k sebagai berikut:

{\displaystyle {\hat {y}}={\underset {k\in \{1,\ldots ,K\}}{\operatorname {argmax} }}\ p(C_{k})\displaystyle \prod _{i=1}^{n}p(x_{i}\mid C_{k}).}

Formulasi ini mencari label kelas yang memaksimalkan produk probabilitas sebelumnya dari kelas tersebut dan probabilitas bersyarat dari fitur-fitur yang diberikan pada kelas tersebut.

Teori dan Praktik Naive Bayes Klasifikasi

Naive Bayes adalah algoritma klasifikasi yang telah terbukti efektif dalam berbagai aplikasi, mulai dari filter spam hingga klasifikasi dokumen. Namun, untuk memahami bagaimana algoritma ini bekerja, penting untuk memahami konsep dasarnya.

Pertama-tama, Naive Bayes adalah model probabilitas yang bersifat kondisional. Ini berarti bahwa algoritma ini menilai probabilitas untuk setiap kelas berdasarkan pada nilai-nilai fitur yang diamati. Untuk membangun klasifier dari model probabilitas ini, kita memadukan model tersebut dengan aturan keputusan. Salah satu aturan umum adalah aturan keputusan MAP (Maximum a Posteriori), di mana kita memilih hipotesis yang paling mungkin untuk meminimalkan probabilitas kesalahan klasifikasi.

Untuk menghitung probabilitas prior sebuah kelas, kita dapat menggunakan pendekatan sederhana dengan menganggap kelas-kelas memiliki probabilitas yang sama (equiprobable), atau kita bisa menghitung perkiraan probabilitas kelas dari set data pelatihan. Selanjutnya, untuk mengestimasi parameter untuk distribusi fitur, kita harus mengasumsikan suatu distribusi atau membuat model nonparametrik dari fitur-fitur berdasarkan pada set data pelatihan.

Ada dua model peristiwa (event models) yang umum digunakan dalam Naive Bayes: model Gauss dan model multinomial. Model Gauss digunakan untuk data kontinu, sementara model multinomial cocok untuk data diskrit seperti yang ditemui dalam klasifikasi dokumen.

Model Gauss mengasumsikan bahwa nilai-nilai kontinu yang terkait dengan setiap kelas didistribusikan secara normal. Di sisi lain, model multinomial menganggap sampel sebagai frekuensi munculnya suatu peristiwa yang dihasilkan oleh suatu distribusi multinomial. Model Bernoulli, bagaimanapun, merupakan pilihan yang baik untuk data biner atau Boolean, seperti yang sering terjadi dalam klasifikasi dokumen.

Dalam prakteknya, Naive Bayes dapat diaplikasikan secara luas. Dengan menggunakan teknik semi-supervised learning, kita bahkan dapat meningkatkan kinerja klasifikasi dengan memanfaatkan data yang tidak berlabel. Ini memungkinkan kita untuk mengoptimalkan model kita bahkan ketika sumber daya yang tersedia terbatas.

Naive Bayes telah terbukti sebagai algoritma yang kuat dan efisien dalam klasifikasi, terutama dalam situasi di mana data terbatas. Dengan pemahaman yang tepat tentang konsep dasarnya dan penerapan teknik yang sesuai, kita dapat memanfaatkan kekuatan algoritma ini dalam berbagai konteks aplikasi.

Keunggulan Naive Bayes: Meskipun Naif, Tetap Efektif 

Meskipun Naive Bayes mengandalkan asumsi independensi yang sering kali tidak akurat, klasifier ini memiliki beberapa sifat yang membuatnya sangat berguna dalam praktik. Salah satunya adalah pemisahan distribusi fitur kondisional kelas yang memungkinkan setiap distribusi untuk diestimasi secara independen sebagai distribusi satu dimensi. Ini membantu mengurangi masalah yang timbul dari "kutukan dimensi", seperti kebutuhan akan set data yang berkembang secara eksponensial dengan jumlah fitur.

Meskipun Naive Bayes sering kali gagal menghasilkan perkiraan yang baik untuk probabilitas kelas yang benar, hal ini mungkin tidak menjadi keharusan untuk banyak aplikasi. Misalnya, klasifier Naive Bayes akan membuat keputusan klasifikasi aturan MAP yang benar selama kelas yang benar diprediksi sebagai lebih mungkin daripada kelas lainnya. Hal ini berlaku terlepas dari apakah perkiraan probabilitas sedikit atau bahkan sangat tidak akurat. Dengan cara ini, klasifier secara keseluruhan dapat cukup tangguh untuk mengabaikan kekurangan serius dalam model probabilitas naif yang mendasarinya.


Disadur dari: en.wikipedia.org/wiki/Naive_Bayes_classifier