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.
Temukan manfaat mengintegrasikan strategi data lakehouse ke dalam arsitektur data Anda, yang mencakup peningkatan untuk meningkatkan skala AI dan peluang pengoptimalan biaya.
Daftar untuk buku elektronik tentang AI generatif
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)
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.
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 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:
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.
Tidak hanya ada satu jenis pengklasifikasi Naïve Bayes. Jenis yang paling populer berbeda berdasarkan distribusi nilai fitur. Beberapa di antaranya termasuk:
Semua ini dapat diimplementasikan melalui Scikit Learn (tautan berada di luar ibm.com) Pustaka Python (juga dikenal sebagai sklearn).
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:
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.
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.
Ambil langkah selanjutnya untuk mulai mengoperasionalkan dan menskalakan AI generatif dan machine learning untuk bisnis.
Pelajari konsep dasar untuk AI dan AI generatif, termasuk rekayasa prompt, model bahasa yang besar, dan proyek sumber terbuka terbaik.
Dalam makalah ini, IBM Research mendemonstrasikan secara empiris bagaimana penurunan entropi dari distribusi fitur bersyarat kelas memengaruhi kesalahan pengklasifikasi naif 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.
Jelajahi dasar-dasar pemecahan masalah machine learning berbasis klasifikasi, dan dapatkan studi komparatif tentang beberapa algoritme terpopuler saat ini.
Gunakan scikit-learn untuk menyelesaikan tugas klasifikasi teks populer (pemfilteran spam) menggunakan Multinomial Naive Bayes.