Naive Bayes Classifier Kajian Teori .1 Penambangan Data

1. Terakhir mencari nilai probabilitas data test. Misalkan diketahui umur 29 tahun, berpenghasilan tinggi high, Bukan pelajar, dan peringkat rating credit_rating fair, maka perhitungan probabilitas untuk menentukan apakah dia membeli komputer atau tidak adalah: PX|Y=yes = PYesE1=30|YesPE2=high|YesPE3=No|YesPE4=fair|Yes = 0.640.060.060.080.15 = 3.61 10 -5 PX|Y=no = PE1=30|NoPE2=high|NoPE3=No|NoPE4=fair|No = 0.360.130.10.160.1 = 7.93 10 -5 Setelah didapatkan hasil likelihood maka hasil tersebut dibagi dengan total hasil likelihood supaya mendapatkan nilai probabilitas, maka: PX|Y=yes = 3.61 10 -5 3.61 10 -5 +7.93 10 -5 =0.31 PX|Y=no=7.93 10 -5 3.61 10 -5 +7.93 10 -5 =0.69 Berdasarkan hasil perhitungan tersebut, probabilitas tidak 0,69 lebih besar jika dibandingkan dengan probabilitas ya 0,31, sehingga dapat disimpulkan bahwa untuk kasus ini orang yang berumur 29 tahun, berpenghasilan tinggi, bukan pelajar, dan memiliki credit rating fair masuk dalam kelas orang yang tidak membeli computer. 2.2.3 K-Nearest Neighbor K-Nearest Neighbor KNN termasuk kelompok instance-based learning. Algoritma ini juga merupakan salah satu teknik lazy learning. KNN dilakukan dengan mencari kelompok k objek dalam data training yang paling dekat mirip dengan objek pada data baru atau data testing . Algoritma K-Nearest Neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. Nearest Neighbor adalah pendekatan untuk mencari kasus dengan menghitung kedekatan antara kasus baru dan kasus lama yaitu berdasarkan pada pencocokan bobot dari sejumlah fitur yang ada. Untuk mendefinisikan jarak antara dua titik yaitu titik pada data training x dan titik pada data testing y maka digunakan rumus Euclidean, seperti yang ditunjukkan pada persamaan 1 .................1 Dengan D adalah jarak antara titik pada data training x dan titik data testing y yangakan diklasifikasi, dimana x=x1,x2,…,xi dan y=y1,y2,…,yi dan I merepresentasikan nilai atribut serta n merupakan dimensi atribut. Pada fase training, algoritma ini hanya melakukan penyimpanan vektor-vektor fitur dan klasifikasi data training sample. Pada fase klasifikasi, fitur-fitur yang sama dihitung untuk testing data yang klasifikasinya tidak diketahui. Jarak dari vektor baru yang ini terhadap seluruh vektor training sample dihitung dan sejumlah k buah yang paling dekat diambil. Langkah-langkah untuk menghitung metode Algoritma K-Nearest Neighbor: a. Menentukan Parameter K Jumlah tetangga paling dekat. b. Menghitung kuadrat jarak Euclid queri instance masing-masing objek terhadap datasampel yang diberikan. c. Kemudian mengurutkan objek-objek tersebut ke dalam kelompok yang mempunyai jarak Euclid terkecil. d. Mengumpulkan kategori Y Klasifikasi Nearest Neighbor. e. Dengan menggunakan kategori Nearest Neighbor yang paling mayoritas maka dapatdiprediksi nilai queri instance yang telah dihitung. Contoh K-Nearest Neighbor Berikut contoh kasus yang akan diselesaikan dengan metode K-Nearest Neighbor: Tabel 2.5 Tabel data buys_computer RID Age Income Student Credit_Rating Class 1. 29 High No Fair No 2. 29 High No Excelent No 3. 31..40 High No Fair Yes 4. 41 Medium No Fair Yes 5. 41 Low Yes Fair Yes 6. 41 Low Yes Excelent No 7. 31..40 Low Yes Excelent Yes 8. 29 Medium No Fair No 9. 29 Low Yes Fair Yes 10. 41 Medium Yes Fair Yes 11. 29 Medium Yes Excelent Yes 12. 31..40 Medium No Excelent Yes 13. 31..40 High Yes Fair Yes 14. 41 Medium No Excelent No Vektornya adalah sebagai berikut: Tabel 2.6 Data Numerik buys computer Age Income Student Credit_Rating Class 1 3 2 1 No 1 3 2 2 No 2 3 2 1 Yes 3 2 2 1 Yes 3 1 1 1 Yes 3 1 1 2 No 2 1 1 2 Yes 1 2 2 1 No 1 1 1 1 Yes 3 2 1 1 Yes 1 2 1 2 Yes 2 2 2 2 Yes 2 3 1 1 Yes 3 2 2 2 No 1. Menghitung Euclidean Distance Misalkan kita memiliki dua buah titik, titik A dan titik B yang masing masing dapat dipresentasikan dalam bentuk vektor sebagai berikut: A = Titik representasi dari data yang kita training. B= Titik representasi dari data yang kita testing. A = [a 1 a 2 a 3 …. a n ] T B = [b 1 b 2 b 3 …. b n ] T Maka jarak Euclid antara kedua titik tersebut dapat dicari dengan rumus: D 2 = a 1 -b 1 2 + a 2 -b 2 2 + a 3 -b 3 2 + ….. + a n -b n 2 atau D= √ a 1 -b 1 2 + a 2 -b 2 2 + a 3 -b 3 2 + ….. + a n -b n 2 Misalkan diketahui umur 29 tahun, berpenghasilan tinggi high, Bukan pelajar, dan peringkat rating credit_rating fair, maka perhitungan probabilitas untuk menentukan apakah dia membeli komputer atau tidak jika ditentukan memiliki 1 jarak terdekat k adalah: Vektor data testing: Tabel 2.7 Data testing KNN Age Income Student Credit_Rating 1 3 2 1 Membandingkan dengan rumus Euclidean Distance: D1x,y =√1-1 2 +3-3 2 +2-2 2 +1-1 2 =0 D2x,y =√ 1-1 2 +3-3 2 +2-2 2 +1-2 2 =1 D3x,y =√ 1-2 2 +3-3 2 +2-2 2 +1-1 2 =1 D4x,y =√ 1-3 2 +3-2 2 +2-2 2 +1-1 2 =2,23 D5x,y =√ 1-3 2 +3-1 2 +2-1 2 +1-1 2 =3 D6x,y =√ 1-3 2 +3-1 2 +2-1 2 +1-2 2 =3,16 D7x,y =√ 1-1 2 +3-2 2 +2-2 2 +1-1 2 =2,64 D8x,y =√ 1-2 2 +3-1 2 +2-1 2 +1-2 2 =1 D9x,y =√ 1-1 2 +3-1 2 +2-1 2 +1-1 2 =2,23 D10x,y =√ 1-3 2 +3-2 2 +2-1 2 +1-1 2 =2,44 D11x,y =√ 1-1 2 +3-2 2 +2-1 2 +1-2 2 =1,73 D12x,y =√ 1-2 2 +3-2 2 +2-2 2 +1-2 2 =1,73 D13x,y =√ 1-2 2 +3-3 2 +2-1 2 +1-1 2 =1,41 D14x,y =√ 1-3 2 +3-2 2 +2-2 2 +1-2 2 =2,44 Kemudian setelah itu dibandingkan jaraknya, dan setelah dibandingkan dicari 1 jarak paling dekat. Berdasarkan hasil perhitungan tersebut D1 adalah jarak yang paling dekat 0, sehingga dapat disimpulkan bahwa dapat disimpulkan bahwa untuk kasus ini orang yang berumur 29 tahun, berpenghasilan tinggi, bukan pelajar, dan memiliki credit rating fair masuk dalam kelas orang yang tidak membeli computer. 2.2.4 K-Fold Cross Validation Pada penelitian ini metode yang digunakan untuk menguji pola klasifikasi adalah metode k-fold cross validation. Dalam k-fold cross validation, data dibagi menjadi k bagian, D1, D2,..Dk, dan masing-masing D memiliki jumlah data yang sama. Kemudian lakukan proses perulangan sebanyak k, dimana dalam setiap perulangan ke-i, Di akan dijadikan data testing, dan sisanya akan digunakan sebagai data training. Sebagai contoh, misalkan akan dilakukan metode cross validation dengan menggunakan 3 fold. Pertama pilih salah satu fold menjadi data testing, kemudian gunakan fold sisanya sebagai data training. Hal ini dilakukan berulang untuk semua kombinasi data training-testing.Untuk mengilustrasikan metode ini, perhatikan Gambar 2.9. Gambar 2.2 Ilustrasi 3-fold Cross Validation 2.2.5 Pengukuran Akurasi Klasifikasi Keakuratan hasil klasifikasi dapat diukur dengan menggunakan confusion matrix. Confusion matrix adalah media yang berguna untuk menganalisis seberapa baik classifier dapat mengenali tupel dari kelas yang berbeda Tan, Steinbach, Kumar, 2006. Misalkan terdapat dua kelas, maka akan diistilahkan menjadi tupel positif dan tupel negatif. True positive mengacu pada tupel positif yang diberi label dengan tepat oleh classifier, sementara true negatif adalah tupel negatif yang diberi label dengan tepat oleh classifier.False positive adalah tupel negatif yang diberi label dengan tidak tepat. Demikian pula, false negative adalah tupel positif yang diberi label dengan tidak tepat.Istilah-istilah ini berguna ketika menganalisis kemampuan classifier dan diringkas dalam Gambar 2.10. Gambar 2.3 Confusion Matrix untuk matrix 2×2 Tan, Steinbach, Kumar, 2006 Misalkan terdapat confusion matrix 2×2 seperti pada Gambar 2.10, maka rumus yang akan digunakan untuk menghitung akurasi adalah sebagai berikut: Rumus 2.6 diatas dapat juga didefinisikan seperti pada rumus berikut: 2.2.6 Kanker Payudara 2.2.6.1 Definisi Kanker Payudara Kanker payudara muncul sebagai akibat sel-sel yang abnormal terbentuk pada payudara dengan kecepatan tidak terkontrol dan tidak beraturan. Sel tersebut merupakan hasil mutasi gen dengan perubahan bentuk, ukuran maupun fungsinya Lippman, 1998. Lebih dari 70 penderita kanker payudara ditemukan sudah dalam stadium lanjut Moningkey, 2000. Gambar 2.4 Perbedaan sel normal dengan sel kanker Weaver, 2002 2.2.6.2 Epidemiologi Di Indonesia setiap tahunnya diperkirakan terdapat 100 penderita kanker baru setiap 100.000 penduduk seiring peningkatan angka harapan hidup, sosial ekonomi serta perubahan pola penyakit Tjindarbumi, 2000. Kasus baru kanker payudara pada wanita di Amerika Serikat tahun 2005 adalah 211.240 dengan kematian 40.410, di Indonesia terdapat 114.649 penderita National CancerInstitute, 2005. Di RSUP. Dr. Sardjito Yogyakarta pasien kanker payudara yang dirawat ada 252 orang pada tahun 2005. Pada tahun 2006 di Amerika Serikat, kasus kanker payudara wanita saja menempati urutan pertama 32 dan penyebab kematian kedua setelah kanker paru Anonim, 2007.

2.2.6.3 Etiologi

Penyebab kanker payudara belum diketahui secara pasti. Faktor risiko yang sangat berpengaruh terhadap timbulnya kanker payudara antara lain genetik, faktor endokrin, dan faktor lingkungan. a. Faktor Endokrin Faktor endokrin akan mempengaruhi insidensi pada kanker payudara, diantaranya adalah total durasi lamanya menstruasi, early menarche menstruasi di umur dini, nulliparity wanita yang tidak memiliki anak dan melahirkan anak pertama di umur 30 tahun akan meningkatkan risiko lama hidup pada perkembangan kanker payudara Dipiro, 2003. b. Faktor Genetik Sekitar 5-10 kanker payudara terjadi akibat adanya kelainan genetik yang diturunkan anggota keluarga. Hal ini akan meningkatkan risiko timbulnya kanker tipe tertentu misalnya sindroma Li-Fraumeni, mutasi pada kromosom 1q, 3p, 13q, 17p menimbulkan kanker payudara pada umur lebih muda. Lebih dari 50- 85 wanita dengan mutasi gen BRCA-1 atau BRCA-2 akan terkena kanker payudara Anonim, 2003b. c. Faktor Lingkungan Makanan, nutrisi, dan terpapar senyawa radioaktif dapat memicutimbulnya kanker payudara Anonim, 2003b.

2.6.3.4. Patofisiologi

Identifikasi subtipe histopatologi kanker payudara penting karena ada hubungannya dengan aspek klinik yaitu prediksi metastasis, terapi dan prognosis. a. Dasar klasifikasi subtipe histopatologi kanker payudara yang sering digunakanadalah WHO tahun 1981. Menurut WHO subtipe histopatologi kankerpayudara ada 2 macam yaitu : 1. carcinoma noninvasive Carcinoma noninvasive artinya sel yang membahayakan mengikatkelenjar lain pada lobus, dengan tidak ada bukti penetrasi pada sel tumormenyambung dengan dasar membran di sekitar 2 tipe pada struktur yangdikelilingi jaringan fibrous. Umumnya kanker payudara adalahadenocarcinoma yang berasal dari sel epitel pada pembuluh atau kelenjar.Ada dua bentuk pada carcinoma noninvasive yaitu ductal carcinoma insitudan lobular carcinoma insitu. 2. carcinoma invasif Carcinoma invasif adalah sel yang rusaknya melewati dasar membrandi sekeliling struktur payudara, dimana sel tersebut muncul dan menyebar disekeliling jaringan. Ukuran carcinoma bermacam-macam, kurang dari10mm dan kedalaman lebih dari 80mm, namun yang sering dijumpai yaknikedalaman 20-30mm. Secara klinis akan terlihat kuat dan jelas serta kulitnampak bersisik dengan punting susu tertarik ke dalam Underwood, 2001. b. Anatomi payudara Payudara manusia berbentuk kerucut tetapi sering kali berukuran tidaksama. Payudara memanjang dari tulang rusuk kedua atau ketiga sampai tulang rusuk keenam atau ketujuh, dari tepi sentral ke garis aksilaris anterior. “Ekor”payudara memanjang sampai ke aksila dan cenderung lebih tebal ketimbang daerah payudara lainnya. Payudara normal mengandung jaringan kelenjar, duktus,jaringan otot penyokong, lemak, pembuluh darah, saraf, dan pembuluh limfeGuiliano, 2001.

2.6.3.5. Tanda dan Gejala Klinis

Berupa benjolan pada payudara, eksema punting susu atau pendarahan pada punting susu, tetapi umumnya berupa benjolan yang tidak nyeri. Benjolan itumula-mula kecil, makin lama makin besar lalu melekat pada kulit dan menimbulkan perubahan kulit payudara atau punting susu.Kulit atau punting susu akan tertarik ke dalam retraksi, berwarna merah kecoklatan sampai menjadi udema hingga kulit kelihatan seperti kulit jeruk,mengkerut dan timbul ulkus. Ulkus tersebut makin lama akan semakin membesardan akhirnya akan menghancurkan seluruh payudara dengan bau yang busuk danmenjadi mudah berdarah Anonim, 2000a.

2.6.3.6. Diagnosis

Secara umum diagnosis kanker payudara dibedakan menjadi 2 yaitu skrining dan diagnostik. Yang termasuk skrining antara lain : a. pemeriksaan payudara sendiri SADARI yang dilakukan setahun sekalisetelah umur 20 tahun, b. pemeriksaan payudara oleh dokter yang dimulai pada umur 20 tahun, setiap 3tahun sekali pada umur 20-39 tahun dan setiap tahun sekali setelah umur 40tahun, c. mammografi skrining yang dilakukan pada pasien tanpa gejala untukmendeteksi adanya kanker payudara yang samar Ramli, 2000. Yang termasuk diagnostik Ramli, 2000 : a. anamnesa meliputi tanda, gejala dan faktor risiko, b. pemeriksaan fisik meliputi keadaan umum, dan tanda metastasis Salah satu alternatif tes skrining kanker payudara adalah Fine Breast Needle Cytologi FNA. FNA biasa dilakukan untuk mendeteksi kesalahan pertumbuhan sel yang terdapat pada payudara dan juga mengkonfirmasi yang bukan merupakan kesalahan pertumbuhan sel dari hasil mammografi skrining. FNA dilakukan dengan jarum yang sangat kecil untuk mendapatkan sample darah dari payudara.Sample dari biopsi nantinya akan dikirim ke ahli patologi untuk dianalisa dan dikonfirmasi hasil diagnosanya.

2.2.7 Metode Hashing atau Hashmap

Map adalah salah satu bentuk struktur data. Hashmap adalah struktur data map yang di berikan kemampuan hashing. hashing adalah salah satu metode pemberian nilai pada string, yang biasanya di pakai untuk pembandingan kesamaan atau kedekatan dari satu string ke string yang lain. Pada proses pencarian pada hashmap yaitu pertama membuat nilai hash pada string yang di cari kemudian membandingkan nilai hash tersebut dengan nilai hash pada semua string yang ada di hashmap atau di struktur data. HashingHashmap merupakan metode untuk menyimpan dan mengambil catatan dari database. Hal ini memungkinkan kita untuk melakukan penyisipan, menghapus, dan mencari catatan berdasarkan nilai kunci pencarian.HashingHashmap adalah metode pencari pilihan karena sangat efisien ketika diterapkan dengan benar. Bahkan, system hash yang diprogram dengan benar biasanya melihat hanya satu atau dua catatan untuk setiap pencarian, insert, atau menghapus operasi. Waktu pencarian data melalui hashing jauh lebih effisien dari pada pencarian data biner pada array yang diurutkan dari n catatan dengan waktu O log n, atau pencarian data dengan binary tree yang mana memiliki waktu Olog n. Namun pada kenyataannya hashing sulit untuk diterapkan dengan benar Nurhaerty,2008. HasingHashmap adalah teknik untuk melakukan penambahan, penghapusan, dan pencarian dengan rata – rata waktu konstan.Selain itu hashing juga dikenal dengan sebutan hash table. Hash tables adalah array dengan sel-sel yang ukurannya telah ditentukan dan dapat berisi data atau key yang berkesesuaian dengan data. Selain itu Hash tables merupakan struktur data yang sering digunakan untuk mengimplementasikan ADT Abstract Data Type pada sebuah Dictionary, yaitu ADT Abstract Data Type yang hanya mengizinkan pencarian, penyisipan, dan penghapusan elemen-elemen yang ada di dalamnya. Ruli dkk, 2008.. Hash Table merupakan solusi elegan untuk menyelesaikan masalah pencarian. Hash Table, seperti HashMap, menyimpan pasangan kuncinilai. Jika kita mengetahui kuncinya, maka kita bisa mencari nilainya di dalam tabel. Jika tabel hash digunakan untuk mengimplementasikan set, maka semua nilainya berisi null. Kita masih harus mencari kuncinya di dalam tabel. Pada hakekatnya hash table merupakan solusi yang sangat effisien dalam mengatasi masalah pencarian pada sebuah data. Hal ini dikarenakan table hash seperti halnya hashmap menyimpan setiap pasangan kunci atau nilai dari setiap data. Jika diketahui sebuah kuncinya maka bukan hal yang mustahil lagi untuk mencari atau mengetahui nilai dari data tersebut. Namun lain halnya jika hash table diimplementasikan pada system set data maka untuk mencari sebuah nilai kita harus mencari kunci di dalam table hash padahal semua nilai yang berada dalam tabel berisi null Anonim. 2012. Dalam tabel hash yang digunakan pada Java, setiap lokasi array sebetulnya adalah suatu list berantai yang berisi pasangan kuncinilai atau mungkin juga list kosong. Jika dua item memiliki kode hash yang sama, maka kedua item tersebut akan ada pada list yang sama. Strukturnya bisa digambarkan sebagai berikut: Gambar 2.5 Struktur kode hash Pada gambar 2.5., hanya ada satu item dengan kode hash 0, tidak ada item dengan kode hash 1, dua item dengan kode hash 2, dan seterusnya. Pada tabel hash yang dirancang dengan benar, hampir semua list berantai berisi nol atau satu elemen saja, dengan rata-rata panjang list kurang dari 1. Meskipun kode hash dari suatu kunci mungkin tidak membawa kita langsung pada kunci yang kita mau, akan tetapi tidak akan lebih dari satu atau dua item yang harus kita cari sebelum kita sampai pada item yang kita inginkan Anonim. 2012.