Klasifikasi Berdasarkan Teorema Bayes Naïve Bayes Classifier
Pendahuluan A statistical classifier: Foundation: Performance: menyelesaikan prediksi probabilitas, sebagai contoh memprediksi peluang keanggotaan suatu class Foundation: Teorema Bayes Performance: pengklasifikasi Bayesian sederhana, memiliki kinerja yang dapat dibandingkan pengklasifikasi decision tree dan neural network
Dasar Teorema Bayes Diketahui X merupakan sample data. Dalam bayes X disebut “evidence” atau fakta Label class tidak diketahui Umumnya X merupakan record data yang disusun dari n atribut H merupakan suatu hypothesis bahwa X termasuk dari class C Classification adalah untuk menentukan P(H|X), peluang hipotesis dari data sample X Dengan kata lain, dicari peluang bahwa record X termasuk kelas C, dengan diketahui atribut yang menjelaskan X. Atau, peluang keluarnya hasil H jika diketahui nilai X tertentu.
Dasar Teorema Bayes (lanjutan) P(H) (prior probability), peluang awal Misal: X akan membeli komputer, tanpa memperhatikan umur, penghasilan, … P(X) (prior probabilitiy) peluang bahwa data sampel X diamati tanpa memperhatikan nilai yang lain P(X|H) (posteriori probability), peluang diamatinya data sampel X dengan mempertimbangkan H Misal: Jika X akan membeli komputer, peluang X adalah berumur 31..40, medium income
Bayesian Theorem Jika diberikan data training X, posteriori probability dari suatu hypothesis H, P(H|X), mengikuti teorema Bayes Dengan kata lain, dapat ditulis sebagai berikut: posteriori = likelihood x prior/evidence Memperkirakan X termasuk dalam kelas Ci jika peluang P(Ci|X) merupakan tertinggi diantara semua P(Ck|X) untuk semua klas k Permasalahan nyata: diperlukan pengetahuan awal dari banyak peluang, hal ini dapat merupakan biaya komputasi yang mencolok
Bayes Learning Misal terdapat beberapa alternatif hipotesa h -> h є H. Bayes Learning: Memaksimalkan hipotesis yang paling mungkin h, maksimum apriori (MAP)
Naïve Bayesian Classifier Di mana: vNB adalah nilai output hasil klasifikasi naïve bayes
Contoh Kasus Data Cuaca dan Keputusan Main cuaca (x1) temperatur (x2) kelembaban (x3) angin (x4) Keputusan cerah panas tinggi kecil tidak besar mendung ya hujan sedang dingin normal Ya (Cuaca= cerah, Temperatur=dingin, Kelembaban=tinggi, Angin=besar) yang tidak ada dalam tabel tersebut
Pembahasan Dalam contoh tersebut ada 14 titik dengan keluaran main atau tidak. Setiap data ditandai dengan atribut cuaca, temperatur, kelembaban dan angin. Akan dipakai naïve bayes untuk menentukan kelas dari data berikut: (Cuaca= cerah, Temperatur=dingin, Kelembaban=tinggi, Angin=besar) yang tidak ada dalam tabel tersebut
Pembahasan (lanjutan)
Pembahasan (lanjutan) Soal: (Cuaca= cerah, Temperatur=dingin, Kelembaban=tinggi, Angin=besar) yang tidak ada dalam tabel tersebut P(main) = 9/14 = 0.64 P(tidak) = 5/14 = 0.36 P(Angin=besar | main) = 3/9 = 0.33 P(Angin=besar | tidak) = 3/5 = 0.60 P(main) P(cerah|main) P(dingin|main) P(tinggi|main) P(besar|main) = 9/14*2/9*3/9*3/9 = 0.0053 P(tidak) P(cerah|tidak) P(dingin|tidak) P(tinggi|tidak) P(besar|tidak) = 5/14*3/5*1/5*4/5*3/5 = 0.0206 Dengan Naïve Bayes disimpulkan untuk tidak main.
Estimasi Probabilitas Alasan: Ada kemungkinan dihasilkan under-estimate probablilitas bias jika data yang diamati dalam juml. kecil atau bisa juga dihasilkan nol karena salah satu probabilitas = 0 Rumus: P(ai|vj) = nc + m*p n + m dimana: n = jumlah data training dimana v=vj nC = jumlah data training dimana v=vj dan a= ai p = prior estimate untuk P(ai|vj) m = ukuran sampel ekuivalen
Contoh Warna a1 Tipe a2 Asal a3 Tercuri? vj merah Sport Domestik Ya Tidak Kuning Import SUV Domestic Merah import sport
Jika ingin mengelompokkan mobil warna merah, asal domestik dan tipe SUV ?? Maka didapatkan nilai-nilai estimasi sbb: (misal m= 3) Ya Tidak Merah: n = 5 nc = 3 p = 0.5 Merah nc = 2 SUV: nc = 1 Domestik:
P(merah|ya) = 3+3*0.5 = 0.56 P(merah|tidak) = 2+3*0.5 = 0.43 5+3 5+3 P(SUV|ya) = 1+3*0.5 = 0.31 P(SUV|tidak) = 3+3*0.5 = 0.56 5+3 5+3 P(domestik|ya) = 2+3*0.5 P(domestik|tdk) = 3+3*0.5 5+3 5 +3 = 0.43 = 0.56 Jika diketahui: P(ya) = 0.5 dan P(tidak)=0.5, maka v=ya bisa dihitung P(ya)P(merah|ya)P(SUV|ya)P(domestik|ya) = 0.5*0.56*0.31*0.43 = 0.037 P(tidak)P(merah|tidak)P(SUV|tidak)P(domestik|tidak) = 0.5*0.43*0.56*0.56 = 0.069 Oleh karena 0.069> 0.037, maka disimpulkan data tersebut dikelompokkaan ‘tidak’.
Klasifikasi dengan data kontinyu Contoh: Berapakah P(Memiliki Rumah=Tidak| Pendapatan=125K) No Status Nikah Pendapatan Memiliki Rumah 1 Belum Menikah 125 Tidak 2 Menikah 100 3 70 4 120 5 Cerai 95 Ya 6 60 7 220 8 85 9 75 10 90
Untuk data kontinyu Keterangan: P menyatakan peluang Xi menyatakan atribut ke i. xi menyatakan nilai atribut ke i. Y menyatakan kelas yang dicari. yi menyatakan sub kelas Y yang dicari. µ menyatakan rata-rata dari seluruh atribut ( ) . menyatakan varian dari seluruh atribut ( ).
Maka peluang tidak memiliki rumah dengan pendapatan 125K sebesar:
Tugas Kelompok (@ 4 orang) Cari1kasus nyata seputar aplikasi klasifikasi (data 20 record minimum) untuk data latih & 5 data uji Lakukan perbandingan 2 metode: KNN (weighted dan Unweighted votting) dengan Naive Bayes Classifier Berapa nilai akurasi tertinggi, rata2 dan terendah Data mix kontinyu & tidak kontinyu untuk setiap setiap fitur dalam satu data set yang terpisah Tidak boleh sama kasus yang dipilih