KLASIFIKASI ALGORITMA NAIVE BAYES

 KLASIFIKASI ALGORITMA NAIVE BAYES

A.    Pengertian Naive Bayes

Metode Naive Bayes merupakan sebuah metoda klasifikasi yang berakar pada teorema Bayes. Metode pengklasifikasian dg menggunakan metode probabilitas dan statistik yg dikemukakan oleh ilmuwan Inggris Thomas Bayes, yaitu memprediksi peluang di masa depan berdasarkan pengalaman di masa sebelumnya sehingga dikenal sebagai Teorema Bayes. Ciri utama darir Naïve Bayes Classifier ini adalah asumsi yg sangat kuat (naïf) akan independensi dari masing-masing kondisi / kejadian.

Menurut Olson Delen (2008) menjelaskan Naïve Bayes untuk setiap kelas keputusan, menghitung probabilitas dg syarat bahwa kelas keputusan adalah benar, mengingat vektor informasi obyek. Algoritma ini mengasumsikan bahwa atribut obyek adalah independen. Probabilitas yang terlibat dalam memproduksi perkiraan akhir dihitung sebagai jumlah frekuensi dr ” master ” tabel keputusan.

Naive Bayes Classifier bekerja sangat baik dibanding dengan model classifier lainnya. Hal ini dibuktikan oleh Xhemali , Hinde Stone dalam jurnalnya “Naïve Bayes vs. Decision Trees vs. Neural Networks in the Classification of Training Web Pages” mengatakan bahwa “Naïve Bayes Classifier memiliki tingkat akurasi yg lebih baik dibandingmodel classifier lainnya”.

B.    Kelebihan & Kekurangan Naive Bayes

Keuntungan penggunan adalah bahwa metoda ini hanya membutuhkan jumlah data pelatihan ( training data ) yg kecil unt menentukan estimasi parameter yg diperlukan dalam proses pengklasifikasian. Karena yg diasumsikan sebagai variable independent, maka hanya varians dr suatu variable dalam sebuah kelas yg dibutuhkan unt menentukan klasifikasi, bukan keseluruhan dr matriks kovarians.

Kegunaan Naïve Bayes

·       Mengklasifikasikan dokumen teks seperti teks berita ataupun teks akademis

·       Sebagai metode machine learning yang menggunakan probabilitas

·       Untuk membuat diagnosis medis secara otomatis

·       Mendeteksi atau menyaring spam

·       Kelebihan Naïve Bayes

·       Bisa dipakai untuk data kuantitatif maupun kualitatif

·       Tidak memerlukan jumlah data yang banyak

·       Tidak perlu melakukan data training yang banyak

·       Jika ada nilai yang hilang, maka bisa diabaikan dalam perhitungan.

·       Perhitungannya cepat dan efisien

·       Mudah dipahami

·       Mudah dibuat

·       Pengklasifikasian dokumen bisa dipersonalisasi, disesuaikan dengan kebutuhan setiap orang

·       Jika digunakan dalaam bahasa pemrograman, code-nya sederhana

·       Bisa digunakan untuk klasifikasi masalah biner ataupun multiclass

Kekurangan Naïve Bayes

·       Apabila probabilitas kondisionalnya bernilai nol, maka probabilitas prediksi juga akan bernilai nol

·       Asumsi bahwa masing-masing variabel independen membuat berkurangnya akurasi, karena biasanya ada korelasi antara variabel yang satu dengan variabel yang lain

·       Keakuratannya tidak bisa diukur menggunakan satu probabilitas saja. Butuh bukti-bukti lain untuk membuktikannya.

·       Untuk membuat keputusan, diperlukan pengetahuan awal atau pengetahuan mengenai masa sebelumnya. Keberhasilannya sangat bergantung pada pengetahuan awal tersebut Banyak celah yang bisa mengurangi efektivitasnya
Dirancang untuk mendeteksi kata-kata saja, tidak bisa berupa gambar

Algoritma Naive Bayes merupakan sebuah metoda klasifikasi menggunakan metode probabilitas dan statistik yg dikemukakan oleh ilmuwan Inggris Thomas Bayes. Algoritma Naive Bayes memprediksi peluang di masa depan berdasarkan pengalaman di masa sebelumnya sehingga dikenal sebagai Teorema Bayes. Ciri utama dr Naïve Bayes Classifier ini adalah asumsi yg sangat kuat (naïf) akan independensi dari masing-masing kondisi / kejadian.

Naive Bayes Classifier bekerja sangat baik dibanding dengan model classifier lainnya. Hal ini dibuktikan pada jurnal Xhemali, Daniela, Chris J. Hinde, and Roger G. Stone. “Naive Bayes vs. decision trees vs. neural networks in the classification of training web pages.” (2009), mengatakan bahwa “Naïve Bayes Classifier memiliki tingkat akurasi yg lebih baik dibanding model classifier lainnya”.

Keuntungan penggunan adalah bahwa metoda ini hanya membutuhkan jumlah data pelatihan (training data) yang kecil untuk menentukan estimasi parameter yg diperlukan dalam proses pengklasifikasian. Karena yg diasumsikan sebagai variabel independent, maka hanya varians dari suatu variabel dalam sebuah kelas yang dibutuhkan untuk menentukan klasifikasi, bukan keseluruhan dari matriks kovarians.

C.    Tahapan Algoritma Naive Bayes

Tahapan dari proses algoritma Naive Bayes adalah:

-       Menghitung jumlah kelas / label.

-       Menghitung Jumlah Kasus Per Kelas

-       Kalikan Semua Variable Kelas

-       Bandingkan Hasil Per Kelas

Persamaan Teorema Bayes

Keterangan :
x : Data dengan class yang belum diketahui

c : Hipotesis data merupakan suatu class spesifik

P(c|x) : Probabilitas hipotesis berdasar kondisi (posteriori probability)

P(c) : Probabilitas hipotesis (prior probability)

P(x|c) : Probabilitas berdasarkan kondisi pada hipotesis

P(x) : Probabilitas c

Rumus diatas menjelaskan bahwa peluang masuknya sampel karakteristik tertentu dalam kelas C (Posterior) adalah peluang munculnya kelas C (sebelum masuknya sampel tersebut, seringkali disebut prior), dikali dengan peluang kemunculan karakteristik karakteristik sampel pada kelas C (disebut juga likelihood), dibagi dengan peluang kemunculan karakteristik  sampel secara global ( disebut juga evidence). Karena itu, rumus diatas dapat pula ditulis sebagai berikut :

Nilai Evidence selalu tetap untuk setiap kelas pada satu sampel. Nilai dari posterior tersebut nantinya akan dibandingkan dengan nilai nilai posterior kelas lainnya untuk menentukan ke kelas apa suatu sampel akan diklasifikasikan. Penjabaran lebih lanjut rumus Bayes tersebut dilakukan dengan menjabarkan (c|x1,…,xn) menggunakan aturan perkalian sebagai berikut :

Dapat dilihat bahwa hasil penjabaran tersebut menyebabkan semakin banyak dan semakin kompleksnya faktor faktor syarat yang mempengaruhi nilai probabilitas, yang hampir mustahil untuk dianalisa satu persatu. Akibatnya, perhitungan tersebut menjadi sulit untuk dilakukan. Disinilah digunakan asumsi independensi yang sangat tinggi (naif), bahwa masing masing petunjuk saling bebas (independen) satu sama lain. Dengan asumsi tersebut, maka berlaku suatu kesamaan sebagai berikut:

D.    Contoh Perhitungan Naive Bayes

-       Contoh 1

Data Testing : X = (age <= 30, income = medium, student = yes, credit_rating = fair)

P(Ci)
P(buys_computer = “yes”) = 9/14 = 0.643

P(buys_computer = “no”) = 5/14 = 0.357

P(X|Ci)
P(Age = “<=30” | buys_computer = “yes”) = 2/9 = 0.222

P(Age = “<=30” | buys_computer = “no”) = 3/5 = 0.6

P(Income = “medium” | buys_computer = “yes”) = 4/9 = 0.444

P(Income = “medium” | buys_computer = “no”) = 2/5 = 0.4

P(student = “yes” | buys_computer = “yes”) = 6/9 = 0.667

P(student = “yes” | buys_computer = “no”) = 1/5 = 0.2

P(credit_rating = “fair” | buys_computer = “yes”) = 6/9 = 0.667

P(credit_rating = “fair” | buys_computer = “no”) = 2/5 = 0.4

P(X|buys_computer = “yes”) = 0.222 x 0.444 x 0.667 x 0.667 = 0.044

P(X|buys_computer = “no”) = 0.6 x 0.4 x 0.2 x 0.4 = 0.019

P(X|Ci)*P(Ci)
P(X|buys_computer = “yes”)*P(buys_computer = “yes”) = 0.028

P(X|buys_computer = “no”)*P(buys_computer = “no”) = 0.007

Untuk age = “<=30”, income = “medium”, student = “yes”, credit_rating = “fair”, masuk ke kelas buys_computer = “yes” 

-       Contoh 2

Data Testing :

P(Ci)

P(STATUS KELULUSAN = “TEPAT”)  = 8/15

P(STATUS KELULUSAN = “TERLAMBAT”) = 7/15

P(X|Ci)

P(JENIS KELAMIN = “LAKI – LAKI” | STATUS KELULUSAN = “TEPAT”) = 5/8

P(JENIS KELAMIN = “LAKI – LAKI” | STATUS KELULUSAN = “TERLAMBAT”) = 3/7

P(STATUS MAHASISWA = “MAHASISWA” | STATUS KELULUSAN = “TEPAT”) = 5/8

P(STATUS MAHASISWA = “MAHASISWA” | STATUS KELULUSAN = “TERLAMBAT”) = 3/7

P(STATUS PRENIKAHAN = “BELUM” | STATUS KELULUSAN = “TEPAT”) = 4/8

P(STATUS PRENIKAHAN = “BELUM” | STATUS KELULUSAN = “TERLAMBAT”) = 4/7

P(IPK = “2.70” | STATUS KELULUSAN = “TEPAT”) = 0/8

P(IPK = “2.70” | STATUS KELULUSAN = “TERLAMBAT”) = 1/7

P(X|STATUS KELULUSAN = “TEPAT”) = P(KELAMIN = “LAKI – LAKI”, STATUS MAHASISWA = “MAHASISWA”, STATUS PERNIKAHAN = “BELUM”, IPK = 2.70 | STATUS KELULUSAN = “TEPAT”)

= 5/8 * 5/8 * 4/8 & 0/8

= 0

P(X|STATUS KELULUSAN = “TERLAMBAT”) = P(KELAMIN = “LAKI – LAKI”, STATUS MAHASISWA = “MAHASISWA”, STATUS PERNIKAHAN = “BELUM”, IPK = 2.70 | STATUS KELULUSAN = “TERLAMBAT”)

= 3/7 * 3/7 * 4/7 * 1/7

= 0.43 * 0.43 * 0.57 * 0.14

= 0,014

P(X|Ci)*P(Ci)
P(X|STATUS KELULUSAN = “TEPAT”)*P(STATUS KELULUSAN = “TEPAT”) = 0 8/15 = 0

P(X|STATUS KELULUSAN = “TERLAMBAT”)*P(STATUS KELULUSAN = “TERLAMBAT”) = 0.014 * 7/15 = 0.0069

Untuk KELAMIN = “LAKI – LAKI”, STATUS MAHASISWA = “MAHASISWA”, STATUS PERNIKAHAN = “BELUM”, IPK = 2.70, masuk ke kelas STATUS KELULUSAN = “TERLAMBAT”

-       Contoh 3

-       Contoh 4

Karena data berupa bilangan kardinal, maka perlu adanya pemodelan ulang bentuk data tersebut dengan mencari nilai mean dan standart deviasi.

Data Testing

Dimisalkan nilai komposisi male dan female adalah 50:50

Dengan demikian, data testing cenderung masuk ke kelas female karena memiliki angka lebih besar (5.3778*10-4) dibanding kelas male (6.1984*10-9).

Referensi :

https://scikit-learn.org/stable/modules/naive_bayes.html

https://informatikalogi.com/algoritma-naive-bayes/

Komentar

Postingan populer dari blog ini

LENGKAP!! MATERI LIMIT FUNGSI :)

Q-Learning

NILAI MAKSIMUM JEUNG MINIMUM | KALKULUS 1 | BAHASA SUNDA