45017830 Algoritma Data Mining Decision Tree Naive Bayes Dll

  • View
    610

  • Download
    1

Embed Size (px)

Transcript

ALGORITMA DATA MINING A. DECISION TREE 1. Konsep Decision Tree Mengubah data menjadi pohon keputusan (decision tree) dan aturan-aturan keputusa n (rule). Sebagai contoh misalnya ingin membuat aturan yang dapat digunakan untu k menentukan apakah seseorang mempunyai potensi untuk menderita hipertensi atau tidak berdasarkan data usia, berat badan dan jenis kelamin. 2. Penggunaan Decision Tree Beberapa contoh pemakaian decision tree antara lain: Diagnosa penyakit tertentu seperti hipertensi, kanker, stroke dan lain-lain. Pemilihan produk seperti rumah , kendaraan, komputer dan lain-lain Pemilihan pegawai teladan sesuai dengan krit eria tertentu. Deteksi ganguan pada komputer atau jaringan komputer seperti Dete ksi Entrusi, deteksi Virus (trojan dan varians) Masih banyak lainnya. 3. Algoritma Decision Tree a. Konsep Data Data dinyatakan dalam bentuk tabel dengan atribut dan record. Atr ibut menyatakan suatu parameter yang dibuat sebagai kriteria dalam pembentukan t ree. Misalkan untuk menentukan main tenis, kriteria yang diperhatikan adalah cua ca, angin dan temperatur. Salah satu atribut merupakan atribut yang menyatakan d ata solusi per-item data yang disebut dengan target atribut. Sebagai gambaran pe rhatikan tabel berikut : b. Proses Dalam Decision Tree Mengubah bentuk data (tabel) menjadi model tree Me ngubah model tree menjadi rule Menyederhanakan rule (pruning) c. Perhitungan Ent ropi Entropi merupakan suatu besaran yang digunakan untuk menentukan nilai root awal yang akan dijadikan pembentukan tree. 1

Entroy (S) adalah jumlah bit yang diperkirakan dibuuthkan untuk dapat mengekstra k suatu kelas ( + atau - ) dari sejumlah data acak pada ruang sampel S. Entropy bisa dikatakan sebagai kebutuhan bit untuk menyatakan suatu kelas. Semakin kecil nilai entropy , maka semakin baik untuk digunakan dalam mengekstrak suatu kelas . Panjang kode untuk menyatakan informasi secara optimal adalah log2 p bits untuk data yang mempunyai probabilitas p. Sehingga jumlah bit yang diperkirakan untuk mengekstraksi S ke dalam kelas adalah -p log2 p q log2 q. Rumus Entropi (S) = -p loq2 p q log2q atau Entropi (S) = -p 2loq p q 2log q Dimana : o S adalah ruang(data) sample yang digunakan untuk training o p adalah jumlah data yang bersolusi positif (mendukung) pada data sampel untuk kriteria t ertentu. o q adalah jumlah yang bersolusi negatif (tidak mendukung) pada data sa mpel untuk kriteria tertentu. 4. Contoh Misalnya dicari aturan yang dapat digunakan untuk menentukan apakah seseorang me nderita hipertensi atau tidak. Data yang diambil sebanyak 8 sampel dengan perkir aan bahwa yang mempengaruhi seseorang menderita hipertensi atau tidak adalah usi a, berat badan dan jenis kelamin. Dimana masing-masing atribut yang diduga berpe ngaruhi tersebut memiliki nilai (intance): Usia mempunyai instance Muda dan Tua Berat Badan mempunyai instance Underweight, Average dan Overweight Jenis Kelamin mempunyai instance Pria dan Wanita Langkah-langkah untuk menyelesaikan kasus diatas dengan algoritma Decision Tree adalah: a. Menentukan Node Terpilih Untuk menentukan node terpilih, gunakan nila i Entropy dari setiap kriteria dengan data sampel yang ditentukan. 2

Node terpilih adalah kriteria dengan entropy terkecil. Memilih node awal Entropy untuk Usia :

Lakukan perhitungan untuk semua kriteria, hasil perhitungannya misalnya seperti dibawah ini:

Berdasarkan perhitungan entropy diatas, maka diperoleh atribut BERAT BADAN sebag ai node awal karena memiliki entropy terkecil. b. Menyusun Tree Dari hasil perhitungan entropy, maka dapat disusun tree awal se perti gambar berikut :

Node berikutnya dapat dipilih dengan cara mencari bagian yang mempunyai nilai + dan - . Pada contoh diatas hanya berat=overweight yang mempunyai nilai + dan -, maka semuanya pasti memiliki leaf node. Untuk menyusun leaf node dilakukan satu persatu. Penentuan leaf node untuk cabang berat = overweight 3

Dari perhitungan diatas, terlihat bahwa hasil perhitungan Entropy Usia dan Kenis Kelamin menunjukkan nilai yang sama. Jika terdapat kasus seperti ini, maka cara lain adalah dengan menggunakan bantuan pakar untuk menentukan mana yang lebih p enting atau percaya dengan hasil acak. Selanjutnya menyusun tree untuk leaf node , misalnya secara acak dipilih kriteria Jenis Kelamin.

Pada usia=tua ternyata ada 1 data yang menyatakan ya dan 1 data yang menyatakan tidak, keadaan ini perlu dicermati . Pilihan hanya dapat ditentukan dengan campu r tangan seorang pakar. Menyusun node tree lanjutan 4

c. Mengubah Tree menjadi Rule Dari rule yang sudah dihasilkan, maka diperoleh ru le sebagai berikut : Rule 1: IF berat=average OR berat=underweight THEN hiperten si=tidak Rule 2: IF berat=overweight AND kelamin=wanita THEN hipertensi=ya Rule 3: IF berat=overweight AND kelamin=pria AND usia=muda THEN hipertensi=ya Rule 4: IF berat=overweight AND kelamin=pria AND usia=tua THEN hipertensi=tidak d. Meny ederhanakan dan Menguji Rule (Pruning) Menguji Rule untuk Prediksi Kesalahan (error) : 1/8 x 100% = 12,5 % Akurasi Prediksi : 7/8 x 100% = 87,5% Me nyederhanakan Rule 1) Membuat tabel distribusi terpadu dengan menyatakan semua n ilai kejadian pada setiap rule. 5

2) Menghitung tingkat independensi antara kriteria pada suatu rule, yaitu antara atribut dan target atribut dengan Uji Statistik Chi-Square Kriteria Berat Badan H0 : Berat Badan tidak dependent terhadap Hipertensi H1 : Berat Badan dependens i terhadap Hipertensi Selanjutnya dihitung tingkat dependensi antara kriteria Be rat Badan terhadap Hipertensi : Derajat Kebebasan adalah (jumlah baris-1)(jumlah kolom -1) =(2-1)(3-1) dan nilai tingkat keercayaan =5%. Didapatkan nilai 6.27. 2 y ng didapat dari tabel distribusi Chi-Square adalah Karena nilai 2hitung > 2t bel y itu 19,2 > 6,27 maka Tolak H0 artinya kriteria berat ini dependent sehingga tidak dapat dihilangkan Kriteria Jenis Kelamin H0 : Jenis Kel amin tidak dependent terhadap Hipertensi H1 : Jenis Kelamin dependensi terhadap Hipertensi Dengan cara yang sama dengan cara perhitungan untuk kriteria Berat Ba dan, maka didapatkan nilai 2hitung sebes r 0,71 dan 2t bel y itu 3,89 dengan demikian 2hitung < 2t bel artinya Terima H0 sehingga kriteria jenis kelamin ini independent terhadap hipertensi da n dapat dihilangkan. Kriteria Usia H0 : Usia tidak dependent terhadap Hipertensi H1 : Usia dependensi terhadap Hipertensi Dengan cara yang sama dengan cara perh itungan untuk kriteria Berat Badan, maka didapatkan nilai 2hitung sebes r 2,13 dan 2t bel y itu 3,89 dengan demikian 2hitung < 2t bel artinya Terima H0 sehingga kriteria usia ini independent terhadap hipertensi dan dapat d ihilangkan. 6

3) Mengeliminasi kriteria yang tidak perlu, yaitu yang tingkat independensinya t inggi. Dengan melihat hasil perhitungan nilai dependensi setiap kriteria terhada p hipertensi didapatkan bahwa : Kriteria Berat Badan dependent terhadap Hpertens i Tidak dapat dihilangkan Kriteria Jenis Kelamin tidak dependent terhadap Hipert ensi Dapat dihilangkan Kriteria Usia tidak dependent terhadap Hipertensi Dapat di hilangkan Rule Awal : Rule 1: Rule 2: Rule 3: Rule 4: IF berat=average OR berat= underweight THEN hipertensi=tidak IF berat=overweight AND kelamin=wanita THEN hi pertensi=ya IF berat=overweight AND kelamin=pria AND usia=muda THEN hipertensi=y a IF berat=overweight AND kelamin=pria AND usia=tua THEN hipertensi=tidak Rule Hasil Penyederhanaan 1: Rule 1: Rule 2: Rule 3: Rule 4: IF berat=average OR IF berat=overweight IF berat=overweight IF berat=overweight berat=underweight T HEN hipertensi=tidak THEN hipertensi=ya THEN hipertensi=ya THEN hipertensi=tidak Rule Hasil Penyederhanaan 2: Rule 1: Rule 2: IF berat=average v berat=underweigh t THEN hipertensi=tidak IF berat=overweight THEN hipertensi=ya Menguji Rule Hasil Pruning Kesalahan (error) : 1/8 x 100% = 12,5 % Akurasi Prediksi : 7/8 x 100% = 87,5% 7

B. NAIVE BAYES 1. Konsep Naive Bayes Simple naive Bayesian classifiermerupakan salah satu metode pengklasifikasi berp eluang sederhana yang berdasarkan pada penerapan Teorema Bayes dengan asumsi ant ar variabel penjelas saling bebas (independen).Algoritma ini memanfaatkan metode probabilitas dan statistik yang dikemukakan oleh ilmuwan Inggris Thomas Bayes, yaitu memprediksi probabilitas di masa depan berdasarkan pengalaman di masa sebe lumnya. Dua kelompok peneliti, satu oleh Pantel dan Lin, dan yang lain oleh Micr osoft Research memperkenalkan metode statistik Bayesian ini pada teknologi anti spam filter. Tetapi yang membuat algoritma Bayesian filtering ini popular adalah pendekatan yang dilakukan oleh Paul Graham. Dasar dari teorema naive digunakan dalam pemrograman adalah rumus Bayes berikut ini: P (A|B) = (P(B|A) * P(A))/P(B) Artinya Peluang kejadian A sebagai B ditentukan dari peluang B saat A, peluang A , dan peluang B. 2. Penggunaan Naive Bayes Contoh penggunaan Algoritma Naive Bayes antara lain: Untuk klasifikasi Dokumen ntuk deteksi SPAM atau fitering SPAM Dan masalah klasifikasi lainnya U

3. Algoritma Naive Bayes Teorema Bayes: P(C|X) = P(X|C)P(C) / P(X) Dimana : P(X) bernilai konstan utk semu a klas P(C) merupakan frek relatif sample klas C Dicari P(C|X) bernilai maksimum , sama halnya dengan P(X|C)P(C) juga bernilai maksimum Masalah menghitung P(X|C) tidak mungkin Apabila diberikan k atribut yang saling bebas (independence), nilai probabilitas dapat diberikan sebagai berikut. P(x1,,x k|C) = P(x1|C) x x P(xk|C) Jika atribut ke-i bersifat diskret, maka P(xi|C) dies timasi sebagai frekwensi relatif dari sampel yang memiliki nilai xi sebagai atri but ke i dalam kelas C. Namun jika atribut ke-i bersifat kontinu, maka P(xi|C) d iestimasi dengan fungsi densitas Gauss. 1 f ( x) x dengan 8 e 2 2 2 2 = deviasi standar.

= mean, dan

4. Contoh Misalnya terdapat ingin diketahui apakah suatu objek masuk dalam ketegori dipili h untuk perumahan atau tidak dengan algoritma Naive Bayes Classifier. Untuk m