Apa itu pengklasifikasi Naïve Bayes?
Menerapkan Naïve Bayes dengan watsonx.ai Berlangganan pembaruan AI
Ilustrasi dengan kolase piktogram awan, diagram lingkaran, piktogram grafik
Apa itu pengklasifikasi Naïve Bayes?

Pengklasifikasi Naïve Bayes adalah algoritme machine learning terawasi yang digunakan untuk tugas klasifikasi seperti klasifikasi teks. Mereka menggunakan prinsip probabilitas untuk melakukan tugas klasifikasi.

Naïve Bayes adalah bagian dari keluarga algoritma pembelajaran generatif, yang berarti bahwa algoritma ini berusaha memodelkan distribusi input dari kelas atau kategori tertentu. Tidak seperti pengklasifikasi diskriminatif, seperti regresi logistik, pengklasifikasi ini tidak mempelajari fitur mana yang paling penting untuk membedakan antar kelas.

Penyimpanan data untuk AI

Temukan manfaat mengintegrasikan strategi data lakehouse ke dalam arsitektur data Anda, yang mencakup peningkatan untuk meningkatkan skala AI dan peluang pengoptimalan biaya.

Konten terkait

Daftar untuk buku elektronik tentang AI generatif

Lihat tutorial kami untuk mempelajari cara menerapkan pengklasifikasi ini menggunakan Python
Tinjauan singkat statistik Bayesian

Naïve Bayes juga dikenal sebagai pengklasifikasi probabilistik karena didasarkan pada Teorema Bayes. Akan sulit untuk menjelaskan algoritma ini tanpa menjelaskan dasar-dasar statistik Bayesian. Teorema ini, juga dikenal sebagai Aturan Bayes, memungkinkan kita untuk “membalikkan” probabilitas bersyarat. Sebagai pengingat, probabilitas bersyarat merepresentasikan probabilitas suatu peristiwa jika beberapa peristiwa lain telah terjadi, yang direpresentasikan dengan rumus berikut: 

Teorema Bayes dibedakan dari penggunaan kejadian berurutan, di mana informasi tambahan yang diperoleh kemudian berdampak pada probabilitas awal. Probabilitas ini dilambangkan sebagai probabilitas sebelumnya dan probabilitas posterior. Probabilitas prior adalah probabilitas awal dari suatu peristiwa sebelum peristiwa tersebut dikontekstualisasikan dalam kondisi tertentu, atau probabilitas marjinal. Probabilitas posterior adalah probabilitas suatu peristiwa setelah mengamati sepotong data. 

 

Contoh populer dalam literatur statistik dan pembelajaran mesin (tautan berada di luar ibm.com) untuk menunjukkan konsep ini adalah pengujian medis. Misalnya, bayangkan ada seorang individu, bernama Jane, yang mengambil tes untuk menentukan apakah dia menderita diabetes. Katakanlah bahwa probabilitas keseluruhan menderita diabetes adalah 5%; ini akan menjadi probabilitas kami sebelumnya. Namun, jika dia mendapatkan hasil positif dari tesnya, probabilitas sebelumnya diperbarui untuk memperhitungkan informasi tambahan ini, dan kemudian menjadi probabilitas posterior kita. Contoh ini dapat direpresentasikan dengan persamaan berikut, menggunakan Teorema Bayes: 

Namun, karena pengetahuan kami tentang probabilitas sebelumnya tidak mungkin tepat dengan variabel lain, seperti diet, usia, riwayat keluarga, dan lain-lain, kami biasanya memanfaatkan distribusi probabilitas dari sampel acak, menyederhanakan persamaan menjadi P (Y | X) = P (X | Y) P (Y)/P (X)

 

Kembalinya ke Naïve Bayes

Pengklasifikasi Naïve Bayes bekerja secara berbeda karena mereka beroperasi berdasarkan beberapa asumsi utama, sehingga mendapat gelar “naif”. Hal ini mengasumsikan bahwa prediktor dalam model Naïve Bayes bersifat independen secara kondisional, atau tidak terkait dengan fitur lain dalam model. Hal ini juga mengasumsikan bahwa semua fitur memberikan kontribusi yang sama terhadap hasil. Meskipun asumsi ini sering dilanggar dalam skenario dunia nyata (misalnya, kata berikutnya dalam email bergantung pada kata yang mendahuluinya), asumsi ini menyederhanakan masalah klasifikasi dengan membuatnya lebih mudah ditangani secara komputasi. Artinya, hanya satu probabilitas yang diperlukan untuk setiap variabel, yang pada gilirannya membuat penghitungan model menjadi lebih mudah. Meskipun asumsi independensinya tidak realistis, algoritma klasifikasi bekerja dengan baik, terutama dengan ukuran sampel yang kecil.

Dengan asumsi itu dalam pikiran, kita sekarang dapat memeriksa kembali bagian-bagian dari pengklasifikasi Bayes Naïve lebih dekat. Mirip dengan Teorema Bayes, ini akan menggunakan probabilitas bersyarat dan prior untuk menghitung probabilitas posterior menggunakan rumus berikut: 

Sekarang, mari bayangkan contoh penggunaan klasifikasi teks untuk menggambarkan cara kerja algoritma Naïve Bayes. Bayangkan penyedia email yang ingin meningkatkan filter spam mereka. Data pelatihan akan terdiri dari kata-kata dari email yang telah diklasifikasikan sebagai "spam" atau "bukan spam". Dari sana, probabilitas bersyarat kelas dan probabilitas sebelumnya dihitung untuk menghasilkan probabilitas posterior. Pengklasifikasi Naïve Bayes akan beroperasi dengan mengembalikan kelas, yang memiliki probabilitas posterior maksimum dari sekelompok kelas (mis. "spam" atau "bukan spam") untuk email tertentu. Perhitungan ini diwakili dengan rumus berikut:

Karena setiap kelas mengacu pada bagian teks yang sama, kita sebenarnya dapat menghilangkan penyebut dari persamaan ini, menyederhanakannya menjadi: 

Keakuratan algoritma pembelajaran berdasarkan dataset pelatihan kemudian dievaluasi berdasarkan kinerja dataset tes.  

Probabilitas bersyarat kelas 

Untuk membongkar ini sedikit lagi, kita akan melangkah lebih dalam ke bagian-bagian individual, yang terdiri dari rumus ini. Probabilitas bersyarat kelas adalah kemungkinan individu dari setiap kata dalam email. Ini dihitung dengan menentukan frekuensi setiap kata untuk setiap kategori—yaitu. “spam” atau “bukan spam”, yang juga dikenal sebagai estimasi kemungkinan maksimum (MLE). Dalam contoh ini, jika kita memeriksa frasa, "Dear Sir", kita hanya akan menghitung seberapa sering kata-kata tersebut muncul di semua email spam dan non-spam. Ini dapat diwakili oleh rumus di bawah ini, di mana y adalah “Dear Sir” dan x adalah “spam”.

Probabilitas sebelumnya

Probabilitas sebelumnya persis seperti yang kami jelaskan sebelumnya dengan Teorema Bayes. Berdasarkan set pelatihan, kita dapat menghitung probabilitas keseluruhan bahwa email adalah “spam” atau “bukan spam”. Probabilitas sebelumnya untuk label kelas, “spam”, akan direpresentasikan dalam rumus berikut: 

Probabilitas sebelumnya bertindak sebagai "bobot" untuk probabilitas bersyarat kelas ketika dua nilai dikalikan bersama, menghasilkan probabilitas posterior individu. Dari sana, perkiraan maksimum a posteriori (MAP) dihitung untuk menetapkan label kelas spam atau bukan spam. Persamaan akhir untuk persamaan Naïve Bayes dapat direpresentasikan dengan cara berikut: 

Atau, dapat direpresentasikan dalam ruang log sebagai bayes naif biasanya digunakan dalam bentuk ini: 

Mengevaluasi pengklasifikasi Naïve Bayes Anda 

Salah satu cara untuk mengevaluasi pengklasifikasi Anda adalah dengan memplotkan matriks kebingungan, yang akan memplotkan nilai aktual dan prediksi dalam sebuah matriks. Baris umumnya mewakili nilai aktual sementara kolom mewakili nilai yang diprediksi. Banyak panduan akan menggambarkan gambar ini sebagai plot 2 x 2, seperti di bawah ini:

Namun, jika Anda memprediksi gambar dari nol hingga 9, Anda akan memiliki plot 10 x 10. Jika Anda ingin mengetahui berapa kali pengklasifikasi "mengacaukan" gambar 4 dengan 9, Anda hanya perlu memeriksa baris ke-4 dan kolom ke-9.

Jenis pengklasifikasi Naïve Bayes

Tidak hanya ada satu jenis pengklasifikasi Naïve Bayes. Jenis yang paling populer berbeda berdasarkan distribusi nilai fitur. Beberapa di antaranya termasuk: 

  • Gaussian Naïve Bayes (GaussianNB): Ini adalah varian dari pengklasifikasi Naïve Bayes, yang digunakan dengan distribusi Gaussian—yaitu distribusi normal—dan variabel kontinu. Model ini dipasang dengan mencari mean dan deviasi standar tiap-tiap kelas. 
  • Multinomial Naïve Bayes (MultinomialNB): Jenis pengklasifikasi Naïve Bayes ini mengasumsikan bahwa fitur-fiturnya berasal dari distribusi multinomial. Varian ini berguna ketika menggunakan data diskrit, seperti jumlah frekuensi, dan biasanya diterapkan dalam contoh penggunaan pemrosesan bahasa alami, seperti klasifikasi spam. 
  • Bernoulli Naïve Bayes (BernoulliNB): Ini adalah varian lain dari pengklasifikasi Naïve Bayes, yang digunakan dengan variabel Boolean—yaitu variabel dengan dua nilai, seperti Benar dan Salah atau 1 dan 0. 

Semua ini dapat diimplementasikan melalui Scikit Learn (tautan berada di luar ibm.com) Pustaka Python (juga dikenal sebagai sklearn).

Keuntungan dan kerugian dari pengklasifikasi Naïve Bayes
Keuntungan
  • Kurang rumit: Dibandingkan dengan pengklasifikasi lainnya, Naïve Bayes dianggap sebagai pengklasifikasi yang lebih sederhana karena parameternya lebih mudah untuk diperkirakan. Hasilnya, ini adalah salah satu algoritme pertama yang dipelajari dalam kursus ilmu data dan machine learning.  
  • Timbangan dengan baik: Dibandingkan dengan regresi logistik, Naïve Bayes dianggap sebagai pengklasifikasi yang cepat dan efisien yang cukup akurat ketika asumsi independensi bersyarat berlaku. Ini juga memiliki persyaratan penyimpanan yang rendah. 
  • Dapat menangani data berdimensi tinggi: Contoh penggunaan, seperti klasifikasi dokumen, dapat memiliki jumlah dimensi yang tinggi, yang dapat menyulitkan pengklasifikasi lain untuk mengelolanya. 
Kekurangan:   
  • Tunduk pada frekuensi nol: Frekuensi nol terjadi ketika variabel kategorikal tidak ada di dalam set pelatihan. Sebagai contoh, bayangkan kita mencoba mencari estimator kemungkinan maksimum untuk kata, "sir" yang diberikan kelas "spam", tetapi kata, "sir" tidak ada dalam data pelatihan. Probabilitas dalam kasus ini adalah nol, dan karena pengklasifikasi ini mengalikan semua probabilitas bersyarat secara bersamaan, ini juga berarti probabilitas posteriornya adalah nol. Untuk menghindari masalah ini, penghalusan laplace dapat dimanfaatkan. 
  • Asumsi inti yang tidak realistis: Meskipun asumsi independensi bersyarat secara keseluruhan berkinerja baik, asumsi tersebut tidak selalu berlaku, sehingga menyebabkan klasifikasi yang salah. 
Aplikasi pengklasifikasi Naïve Bayes

Bersama dengan sejumlah algoritme lainnya, Naïve Bayes termasuk dalam keluarga algoritme data mining yang mengubah data dalam jumlah besar menjadi informasi yang berguna. Beberapa aplikasi Naïve Bayes meliputi:

  • Penyaringan spam: Klasifikasi spam adalah salah satu aplikasi Naïve Bayes yang paling populer yang dikutip dalam literatur. Untuk membaca lebih dalam tentang contoh penggunaan ini, lihat bab ini dari Oreilly (tautan berada di luar ibm.com).  
  • Klasifikasi dokumen: Klasifikasi dokumen dan teks berjalan seiring. Contoh penggunaan Naïve Bayes yang populer lainnya adalah klasifikasi konten. Bayangkan kategori konten situs media Berita. Semua kategori konten dapat diklasifikasikan di bawah taksonomi topik berdasarkan setiap artikel di situs. Federick Mosteller dan David Wallace dikreditkan dengan aplikasi pertama dari inferensi Bayesian dalam makalah mereka di tahun 1963 (tautan berada di luar ibm.com). 
  • Analisis sentimen: Meskipun ini adalah bentuk lain dari klasifikasi teks, analisis sentimen biasanya dimanfaatkan dalam pemasaran untuk lebih memahami dan mengukur opini dan sikap seputar produk dan merek tertentu. 
  • Prediksi kondisi mental: Dengan menggunakan data fMRI, naïve bayes telah dimanfaatkan untuk memprediksi kondisi kognitif yang berbeda di antara manusia. Tujuan dari penelitian ini (tautan berada di luar ibm.com) adalah untuk membantu dalam memahami kondisi kognitif yang tersembunyi dengan lebih baik, khususnya di antara pasien cedera otak.
Produk terkait
IBM Cloud Pak for Data

IBM Cloud Pak for Data adalah platform data terbuka dan dapat diperluas yang menyediakan struktur data untuk membuat semua data tersedia untuk AI dan analitik, di cloud mana pun.

Pelajari lebih lanjut tentang IBM Cloud Pak untuk Data
IBM Watson Studio

Membangun, menjalankan, dan mengelola model AI. Siapkan data dan buat model di cloud apa pun menggunakan kode sumber terbuka atau pemodelan visual. Memprediksi dan mengoptimalkan hasil Anda.

Pelajari lebih lanjut IBM Watson Studio
watsonx.ai

Ambil langkah selanjutnya untuk mulai mengoperasionalkan dan menskalakan AI generatif dan machine learning untuk bisnis.

Jelajahi watsonx.ai
Sumber daya Pembelajaran langsung dan gratis untuk teknologi AI generatif

Pelajari konsep dasar untuk AI dan AI generatif, termasuk rekayasa prompt, model bahasa yang besar, dan proyek sumber terbuka terbaik.

Analisis Pengklasifikasi Naïve Bayes pada Distribusi Entropi Rendah

Dalam makalah ini, IBM Research mendemonstrasikan secara empiris bagaimana penurunan entropi dari distribusi fitur bersyarat kelas memengaruhi kesalahan pengklasifikasi naif Bayes.

Analisis Karakteristik Data yang Mempengaruhi Kinerja Naïve Bayes

Dengan menggunakan simulasi Monte Carlo, IBM Research menunjukkan bahwa Naive Bayes bekerja paling baik dalam dua kasus: fitur yang sepenuhnya independen dan fitur yang bergantung pada fungsi.

Pelajari algoritma klasifikasi menggunakan Python dan scikit-learn

Jelajahi dasar-dasar pemecahan masalah machine learning berbasis klasifikasi, dan dapatkan studi komparatif tentang beberapa algoritme terpopuler saat ini.

Mengklasifikasikan data menggunakan algoritma Naif Bayes Multinomial

Gunakan scikit-learn untuk menyelesaikan tugas klasifikasi teks populer (pemfilteran spam) menggunakan Multinomial Naive Bayes.

Ambil langkah selanjutnya

Latih, validasi, lakukan tuning, dan terapkan AI generatif, model dasar, dan kemampuan machine learning dengan IBM watsonx.ai, studio perusahaan generasi berikutnya untuk pembangun AI. Bangun aplikasi AI dalam waktu singkat, dengan sedikit data.

Jelajahi watsonx.ai Pesan demo langsung