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.
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 machine learning (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. Misalnya saja 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 probabilitas sebelumnya untuk menghitung probabilitas sesudahnya 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 mengarah pada teks yang sama, kita sebenarnya dapat menghilangkan penyebut dari persamaan ini, mempermudahnya menjadi:
Keakuratan algoritma pembelajaran berdasarkan kumpulan datapelatihan kemudian dievaluasi berdasarkan kinerja kumpulan data 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 diwakili dengan cara berikut:
Atau, dapat direpresentasikan dalam ruang log sebagai bayes naif sering 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 Granite adalah rangkaian model AI kami yang terbuka, berkinerja, dan tepercaya, yang dirancang untuk bisnis dan dioptimalkan untuk menskalakan aplikasi AI Anda. Jelajahi opsi bahasa, kode, deret waktu, dan batasan.
Kami menyurvei 2.000 organisasi tentang inisiatif AI mereka untuk mengetahui apa yang berhasil, apa yang tidak, dan cara Anda untuk maju.
Jelajahi pendekatan pembelajaran yang diawasi seperti mesin vendor pendukung dan pengklasifikasi probabilistik.
Belajar konsep dasar dan bangun keterampilan Anda dengan laboratorium praktis, kursus, proyek terpandu, uji coba, dan lainnya.
Pelajari cara memilih model dasar AI yang paling sesuai untuk contoh penggunaan Anda.
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.
Gunakan AI di bisnis Anda dalam perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.
Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.