Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PERBANDINGAN ALGORITMA KLASIFIKASI DALAM PENDETEKSIAN PENYAKIT KANKER

staf.cs.ui.ac.id

PERBANDINGAN ALGORITMA KLASIFIKASI DALAM PENDETEKSIAN PENYAKIT KANKER Achmad Nizar Hidayanto, Ika Chandra Hapsari, Meganingrum Arista Jiwanggi, Diane Fitria Fakultas Ilmu Komputer, Universitas Indonesia Depok, Jawa Barat nizar@cs.ui.ac.id, ika.chandra@ui.ac.id, meganingrum.arista81@ui.ac.id, diane.fitria81@ui.ac.id ABSTRACT Cancer is one of the top killer disease. According to data from the WHO in 2008, cancer caused 12.6% deaths in the world after heart disease and infection. One of the difficulties in detecting cancer patients need to perform various lab tests before they are convicted cancer or not. This study aims to make cancer detection based on lab test results that have been done by the patient. There are four lab testsresults that are used as variables for classification. To make detection of cancer, we used several classification algorithms that have been provided by SPSS Clementine 11.1 or Weka 3.6.0, the neural network, C5.0, Logistic, Classification via Regression, and LogitBoost. Neural Network algorithm itself consists of 6 methods, namely Dynamic, Prune, Exhaustive Prune, Quick, RBFN and Multiple. The experiment was done ten times for each algorithm or method. In each experiment, data is processed twice. The results showed that neural network algorithm with Prunes method produces the best results in detecting cancer. Keywords: data mining, cancer, classification, Neural Network, Dynamic, Prune, Exhaustive Prune, Quick, Multiple RBFN, C5, 0, Classification via Regression, Logistic, LogitBoost. INTISARI Kanker merupakan salah satu penyakit pembunuh teratas. Menurut data dari WHO tahun 2008, kanker menyebabkan 12,6% kematian di dunia setelah penyakit jantung dan infeksi. Salah satu kesulitan dalam pendeteksian penyakit kanker adalah perlunya pasien untuk melakukan berbagai macam uji lab sebelum mereka divonis terkena penyakit kanker atau tidak. Penelitian ini bertujuan untuk melakukan deteksi penyakit kanker berdasarkan hasil uji lab yang sudah dilakukan oleh pasien. Terdapat empat hasil uji lab yang dipergunakan sebagai variabel untuk melakukan klasifikasi. Untuk melakukan deteksi penyakit kanker ini, digunakan beberapa algoritma klasifikasi yang sudah disediakan oleh SPSS Clementine 11.1 atau Weka 3.6.0, yaitu Neural Network, C5.0, Logistic, Classification via Regression, dan LogitBoost. Algoritma Neural Network sendiri terdiri dari 6 metode, yaitu Dynamic ,Prune, Exhaustive Prune, Quick, RBFN dan Multiple. Percobaan dilakukan 1 sebanyak sepuluh kali untuk masing-masing algoritma atau metode. Pada tiap percobaan, terdapat dua kali treatment terhadap data yang diolah. Hasil percobaan menunjukkan bahwa algoritma Neural Network dengan metode Prune menghasilkan hasil yang terbaik dalam mendeteksi penyakit kanker. Kata Kunci: data mining, kanker, klasifikasi, Neural Network, Dynamic, Prune, Exhaustive Prune, Quick, RBFN Multiple, C5,0, Classification via Regression, Logistic, LogitBoost. PENDAHULUAN Menurut catatan WHO, kanker merupakan sepuluh besar penyakit pembunuh di dunia[1]. Kanker adalah istilah yang digunakan untuk penyakit di mana sel-sel abnormal membelah tanpa kontrol dan mampu menyerang jaringan sel lain. Sel-sel kanker dapat menyebar ke bagian lain tubuh melalui pembuluh darah dan sistem limfe[2]. Jaringan yang telah diserang oleh sel-sel kanker tidak akan dapat berfungsi normal lagi dan akhirnya berujung pada kegagalan fungsi organ yang mengakibatkan kematian[2]. Kanker merupakan penyakit yang ganas dan sulit disembuhkan jika penyebarannya sudah terlalu luas. Akan tetapi, pendeteksian sel kanker sedini mungkin dapat mengurangi resiko kematian[2]. Pendeteksian sel kanker dapat dilakukan dengan serangkaian uji laboratorium pada pasien. Hasil uji ini kemudian dipergunakan untuk mengklasifikasikan 1 apakah seseorang merupakan benign atau malignant . Data mining banyak digunakan untuk mendeteksi pola pada penderita kanker [10][11][18][19]. Data Mining merupakan kegiatan untuk menggali dan mendapatkan informasi dari data dalam jumlah yang besar[15]. Salah satu penggunaan data mining adalah dalam pengklasifikasian data. Pengklasifikasian merupakan kegiatan dalam mengekstraksi data dan kemudian memprediksi label kategori untuk masing-masing data[13]. Proses klasifikasi dalam kasus ini dapat diterapkan dalam mengolah data hasil uji laboratorium untuk mendeteksi adanya sel kanker atau tidak, kemudian memberikan label benign atau malignant untuk setiap pasien. Dalam proses klasifikasi terdapat banyak algoritma klasifikasi yang dapat digunakan. Suatu algoritma yang dianggap paling baik pada proses klasifikasi suatu permasalahan belum tentu baik juga untuk memecahkan permasalahan yang lain. Dalam suatu penelitian sebelumnya didapatkan kesimpulan tidak ada algoritma yang paling baik untuk diterapkan pada setiap permasalahan yang berbeda[17]. Untuk mendapatkan hasil pendeteksian sel kanker yang paling akurat pada kasus ini, penulis mencoba menggunakan beberapa algoritma klasifikasi. Penulis membandingkan beberapa algoritma yang ada pada tools SPPS Clementine 11.1 ataupun Weka 3.6.0, yaitu Neural Network, C5.0, Logistic, Classification via Regression, dan LogitBoost. Algoritma Neural Network sendiri terdiri dari 1 2 Malignant merupakan penderita kanker sedangkan benign merupakan orang yang tidak menderita kanker [5]. 6 metode, yaitu Dynamic, Prune, Exhaustive Prune, Quick, RBFN dan Multiple. Algoritmaalgoritma ini dipilih karena pada penelitian-penelitian yang telah dilakukan sebelumnya algoritma-algoritma ini memberikan prediksi yang cukup signifikan[6][12][17][19][20]. Hasil klasifikasi dari masing-masing algoritma akan dibandingkan dan dilihat tingkat akurasinya. Dari perbandingan tersebut diharapkan dapat ditentukan algoritma klasifikasi terbaik untuk pendeteksian sel kanker. Setelah didapatkan algoritma serta metode yang memberikan hasil paling akurat, metode tersebut dapat diterapakan untuk memprediksi data tes lain yang sejenis (data tes yang memiliki parameter yang sama). Penelitian ini diharapkan dapat memberikan kontribusi nyata dalam pendeteksian kanker serta melihat pola-pola apa saja yang terkait dalam identifikasi masalah tersebut. METODE DAN IMPLEMENTASI 1.1 Metode dan Algoritma yang digunakan 1.1.1Metode pemilihan atribut Metode yang digunakan untuk melakukan pemilihan atribut adalah metode Pearson Chi-square Correlation. Metode Pearson Chi-square Correlation bekerja dengan cara menghitung selisih antara nilai yang diobservasi dengan nilai yang diharapkan[3]. Pada tahap ini, penulis menentukan korelasi atribut yang ada menjadi kuat, medium, atau lemah. Atribut-atribut yang kemudian dianggap penting akan disertakan dalam pemodelan. 1.1.2Metode pemilihan Record Metode yang digunakan untuk melakukan pemilihan record adalah metode anomali. Metode pendeteksian anomali bekerja dengan cara mencari kasus-kasus yang tidak biasa berdasarkan deviasi dari aturan-aturan kelompok cluster data tersebut berada[3]. Metode anomali bekerja dalam tiga tahap, yaitu modelling, scoring, dan reasoning. Pada tahap modelling, dilakukan proses clustering untuk semua record. Cluster tersebut dibuat berdasarkan kesamaan pada variabel masukan. Fungsi cluster yang dibuat adalah untuk menghitung nilai-nilai statistik yang normal untuk masing-masing cluster. Selanjutnya, pada tahap scoring, dicari kasus-kasus yang tidak biasa pada setiap cluster. Setelah melakukan pemilihan terhadap kasus-kasus yang tidak biasa tersebut, record-record dalam data diurutkan berdasarkan indeks anomali. Record-record yang berada di ranking teratas akan didentifikasi sebagai anomali. Pada tahap reasoning, dilakukan pengurutan untuk variabel pada masing-masing record yang dianggap anomali. Rangking pada record, rangking pada variabel, serta nilai kenormalan suatu data, menjadi dasar untuk menentukan anomali tidaknya sebuah record[3]. 2 Fasilkom UI, Perbandingan Algoritma Klasifikasi dalam Pendeteksian Pemyakit Kanker 1.1.3Metode Klasifikasi 1.1.3.1 Neural Network Algoritma Neural Network dipilih karena memiliki akurasi yang tinggi serta dapat menangani banyak noise pada data[12]. Algoritma Neural Network bekerja dengan meniru sistem saraf pada neuron otak manusia. Neuron tersebut saling terhubung satu sama lain untuk memproses suatu masukan agar menghasilkan output yang benar[3]. Neural Network buatan setidaknya terdiri dari tiga layer, yaitu input layer, hidden layer, serta output layer. Variabel-variabel yang ada dalam data masuk ke dalam layer pertama. Proses-proses internal pengolahan data terdapat pada hidden layer. Jumlah hidden layer dalam sebuah Neural Network bervariasi tetapi sebuah Neural Network setidaknya memiliki satu buah hidden layer. Sedangkan layer terakhir pada algoritma Neural Network merepresentasikan output[15]. Perbedaan antara Dynamic, Prune, Exhaustive Prune, Quick, RBFN serta Multiple terletak pada bagaimana cara mereka membangun model saraf untuk memecahkan masalah. a. Dynamic Ketika metode Dynamic dipilih, topologi yang dipilih untuk setiap training berbeda-beda. Selama tahap training dilakukan penambahan layer sampai mencapai akurasi yang diinginkan. Ada dua langkah pada tahap training dalam metode dynamic, yaitu mencari topologi dan men-train network akhir[3]. b. Prune Pada prinsipnya, metode Prune bekerja dengan cara yang berkebalikan dengan metode dynamic. Metode Prune bekerja dengan cara mulai membangun network yang besar, kemudian secara bertahap memangkas neuron-neuron yang tidak dibutuhkan. Metode Prune terdiri dari dua fase yaitu memangkas hidden neuron dan memangkas masukan neuron. Kedua proses ini dilakukan secara rekursif hingga kriteria berhenti tercapai[3]. c. Exhaustive Prunes Exhaustive Prune merupakan metode yang sama dengan Prune, hanya saja memiliki kriteria-kriteria yang lebih khusus. Hal yang membedakan Prune dan Exhaustive Prune adalah pada nilai parameter-parameter yang digunakan. Sebagai contoh, parameter untuk hidden layer serta persistance memiliki nilai- nilai yang sudah menjadi default dan bukan disesuaikan dengan data training yang ada seperti pada algoritma Prune[3]. d. Quick Metode Quick bekerja dengan cara men-train single Neural Network. Secara default metode Quick memiliki satu buah hidden layer. Network pada metode Quick ini di-train menggunakan metode back-propagation[3]. 3 e. RBFN RBFN merupakan singkatan dari Radial Basis Function Network . RBFN merupakan salah satu jenis Neural Network yang terdiri dari tiga buah layer yaitu input layer, hidden layer, serta output layer. Masukan dan keluaran yang dimiliki oleh RBFN terdiri dari multilayer perceptron. Sedangkan untuk hidden layer pada RBFN terdiri dari cluster yang memiliki fungsi dasar berbasis radial. Fungsi tersebut merepresentasikan jarak antara pusat RBFN dengan vektor dari nilai masukan. Hubungan antara neuron masukan dan neuron receptor di-train terus menerus untuk mendapatkan bobot dari masing-masing connection sehingga didapatkan model prediksi data yang paling tepat[3]. f. Multiple Metode Multiple bekerja dengan cara melakukan traning terhadap semua network yang dibentuk secara pseudoparallel. Masing-masing network yang telah dibentuk di-train hingga masing-masing network itu memenuhi kriteria berhenti. Network yang memilliki nilai akurasi tertingi akan menjadi model final yang digunakan untuk prediksi[3]. 1.1.3.2 C5.0 C5.0 juga merupakan algoritma yang berbasis decission tree. Keunggulan C5.0 dari decission tree yang lain adalah C5.0 memperhitungkan adanya cost saat terjadi kesalahan pada proses pengklasifikasian. Dengan demikian C5.0 dapat mengurangi adanya kesalahan saat proses klasifikasi[3]. 1.1.3.3 Logistic Algoritma Logistic, merupakan algoritma yang dapat diguankan untuk klasifikasi biner. Cara kerja algoritma Logistic adalah dengan menggunakan multinominal regresi[4]. 1.1.3.4 Classification via Regression Classification via regression merupakan salah satu metode yang dapat digunakan untuk menyelesaikan diskriminasi pada kelas yang memiliki dimensi yang rendah. Classifiction via Regression menggunakan pendekatan regresi linear multirespon dengan cara memberikan score untuk membentuk kode yang akan memberikan label ke masing-masing kelas. Score tersebut didapat melalui nilai-nilai regresi dari masukan yang diberikan sehingga setiap kelas yang ada memiliki model regresinya masing-masing[4]. Setiap poin yang dites akan diletakkan pada klasifikasi yang mempunyai nilai regresi ke score yang terdekat[9]. 1.1.3.5 LogitBoost LogitBoost merupakan pengembangan dari Logistic. Cara kerja LogitBoost di tahap awal sama dengan metode Logistic. Pada algoritma LogitBoost dilakukan pemaksimalan prediksi menggunakan probabilitas binomial. Tidak seperti Logistic yang hanya mampu menangani kelas biner, LogitBoost telah mampu menangani multiclass[4]. 1.2 Implementasi Salah satu pemodelan standar yang biasa digunakan pada data mining adalah CrossIndustry Standard Process for Data Mining (CRISP-DM)[7][8][16]. Model ini terdiri dari 6 4 Fasilkom UI, Perbandingan Algoritma Klasifikasi dalam Pendeteksian Pemyakit Kanker proses siklis, yaitu Busines Understanding, Data Understanding, Data Preparation, Modelling, Evaluation, dan Deployment[15]. Penerapan CRISP-DM pada permasalahan dalam makalah ini hanya dilakukan sampai tahap Evaluation saja. 2.2.1 Business Understanding Pada tahap Business Understanding, hal–hal yang dilakukan adalah menentukan Business Objective, memperkirakan situasi sebenarnya, menentukan tujuan data mining, dan mengembangkan rencana proyek[15]. Dalam kasus ini, sasaran yang ingin dicapai adalah untuk melakukan prediksi apakah seseorang terkena kanker atau tidak. Sasaran lain yang ingin dicapai adalah untuk melihat pola-pola apa saja yang terkait dalam justifikasi masalah tersebut. Prediksi tersebut didasarkan pada data pasien berupa usia dan hasil uji laboratorium yang ada sebelumnya. 2.2.2Data Understanding Pada tahap ini dilakukan pemahaman terhadap data yang ada. Data training yang ada merupakan data pasien yang telah diketahui menderita kanker atau tidak. Setiap pasien memiliki atribut berupa usia, dan empat buah hasil uji laboratorium yang diberi label type 1, type 2, type 3, dan type 4. Usia merupakan data dengan tipe diskret, hasil tes 1 dan tes 4 merupakan data kuantitatif dengan tipe ordinal, sedangkan hasil tes 2 dan 3 merupakan data kuantitatif dengan tipe nominal. Dalam Data Understanding ditentukan tiga isu utama yang akan dipecahkan[15]. Isu pertama adalah penentuan permasalahan yang ada secara singkat dan jelas[15]. Dalam kasus ini, permasalahan yang ingin dicari penyelesaiannya adalah identifikasi seseorang merupakan penderita kanker atau bukan. Isu kedua pada tahap Data Understanding adalah pengidentifikasian apakah data-data yang ada relevan atau tidak terhadap hasil yang dicari[15]. Proses identifikasi ini menjadi langkah yang penting karena dengan memilih atribut yang tepat dapat meningkatkan akurasi prediksi data serta mengurangi waktu dan memori komputasi yang diperlukan[3]. Proses identifikasi relevan tidaknya sebuah data dapat dilihat dari korelasi atribut terhadap hasil. Bentuk signifikan dari proses ini adalah dengan menghapus data-data yang dianggap tidak berguna dalam prediksi data. Untuk mencari korelasi antar variabel penulis mermilih untuk menggunakan Pearson chi-square correlation karena Pearson chi-square correlation dianggap sebagai algoritma yang paling baik digunakan untuk data yang categorical maupun continous[3]. Isu terakhir yang ditekankan pada Data Understanding adalah pengidentifikasian variabel yang digunakan. Setiap variabel tersebut diidentifikasi apakah saling independen atau tidak. Hal ini diperlukan untuk mencegah adanya beberapa variabel yang mengandung informasi yang sama (overlapping). Pada awalnya diasumsikan bahwa setiap variabel yang ada saling independen. 5 2.2.3Data Preparation Data-data yang ada masih memiliki kemungkinan mengandung noise. Untuk meningkatkan keakuratan hasil, maka pada tahap ini dilakukan data cleaning. Hal ini dilakukan dengan membuang data-data pencilan (outlier) dan data yang redundant. Dalam data training yang diberikan data pencilan dicari dengan algoritma pendeteksian anomali. Data pencilan yang didapatkan dihilangkan dari data yang ada agar tidak mengganggu prediksi hasil. Pada percobaan kedua dilakukan treatment tambahan pada saat data preparation. Data-data dengan parameter yang semuanya sama (usia, tes type 1, tes type 2, tes type 3, dan tes type 4) tetapi memililki prediksi akhir yang berbeda dihilangkan dari data training. Tujuannya adalah untuk menghilangkan ambiguitas pada saat training. 2.2.4Modeling Dalam tahap modeling terdapat dua hal penting yang harus dilakukan. Langkah pertama adalah melakukan data treatment. Pada langkah data treatment dilakukan pembagian data yang ada menjadi data training dan data testing. Rasio yang digunakan dalam membagi data adalah 80% : 20% untuk data training : data testing. Setelah melakukan data treatment, hal berikutnya yang dilakukan adalah menetukan teknik yang akan digunakan. Pada percobaan ini, penulis penulis mencoba menggunakan beberapa algoritma klasifikasi. Penulis membandingkan beberapa algoritma yang ada pada tools SPPS Clementine 11.1 ataupun Weka 3.6.0, yaitu Neural Network, C5.0, Logistic, Classification via Regression, dan LogitBoost. Algoritma Neural Network sendiri terdiri dari 6 metode, yaitu Dynamic, Prune, Exhaustive Prune, Quick, RBFN, dan Multiple. SKENARIO UJI COBA Dalam melakukan percobaan ini, penulis melakukan dua set percobaan dalam memperlakukan data. Pada set percobaan pertama proses data cleaning hanya digunakan untuk membuang data-data yang dianggap anomali saja. Sedangkan pada set percobaan kedua juga dilakukan data cleaning terhadap data-data yang dianggap inkonsisten. Setelah dilakukan data cleaning terhadap data yang inkonsisten tadi, langkah-lagkah pada set percobaan kedua sama persis dengan set percobaan pertama. 3.1 Percobaan Pertama 3.1.1Penurunan atribut Setelah dilakukan data cleaning, dilakukan penurunan terhadap atribut yang ada. Atribut baru yang penulis buat adalah atribut kelompok usia. Atribut kelompok usia merupakan atribut yang diturunkan dari hasil clustering atribut usia. Tujuan dari penurunan atribut ini adalah memperkecil range nilai dari sebuah atribut, sehingga bisa dijadikan masukan yang akurat bagi algoritma klasifikasi. Atribut usia dikelompokan menjadi enam kelas dengan perincian sebagai berikut: 6 Fasilkom UI, Perbandingan Algoritma Klasifikasi dalam Pendeteksian Pemyakit Kanker a. Kelompok 1 : Usia 18 s.d. 30 b. Kelompok 2 : Usia 31 s.d. 43 c. Kelompok 3 : Usia 44 s.d. 56 d. Kelompok 4 : Usia 57 s.d. 69 e. Kelompok 5 : Usia 70 s.d. 82 f. Kelompok 6 : Usia 83 s.d. 96 Setelah melakukan derive pada atribut kelompok usia, maka atribut usia tidak digunakan lagi. Hal ini bertujuan untuk menghindari overlapping data. 3.1.2Pem-filter-an record Pada tahap ini, dilakukan pembersihan pada data yang dianggap outlier. Data yang outlier dicari dengan metode anomali. Data anomali tersebut diambil sebanyak satu persen dari jumlah data training keseluruhan. Dengan kata lain terdapat delapan buah record yang dihilangkan dari data training. 3.1.3Pem-filter-an atribut Setelah melakukan penurunan atribut serta penyeleksian record, selanjutnya dilakukan penyeleksian atribut yang akan dipergunakan untuk pembentukan model classifier. Pemilihan atribut tersebut dilakukan dengan melihat korelasi antara masing-masing atribut dengan atribut target. Atribut dengan korelasi <0,3 masuk dalam kategory weak, korelasi antara 0,3 sampai 0,6 masuk dalam kelas medium dan korelasi >0,6 masuk dalam kategori strong. Hasil dari pemfilteran attribut ini dirangkum dalam tabel 1. Tabel 1. Hasil Pemfilteran Atribut Nama Atribut Nilai Pearson Chi-Square Label correlation Attribut Type 1 0,504 Medium Type 2 0,548 Medium Type 3 0,554 Medium Type 4 0,063 Weak KelompokUsia 0,417 Medium Dari tabel di atas didapat bahwa tes type 1, type 2, type 3, dan kelompok usia merupakan variabel yang termasuk ke dalam kelas medium. Sedangkan untuk hasil tes type 4 termasuk atribut yang berkorelasi lemah. Dari sini diputuskan untuk tidak menggunakan tes type 4 dalam mengklasifikasi data. Hal ini karena atribut yang memiliki korelasi lemah dapat mengganggu prediksi data. 3.1.4Pemilihan Metode Setelah semua atribut siap dilakukan pemilihan metode yang tepat untuk memprediksi data. Algoritma yang digunakan adalah Neural Network, C5.0, Logistic, Classification via Regression, dan LogitBoost . Algoritma Neural Network sendiri, terdiri dari 6 metode, yaitu 7 Dynamic, Prune, Exhaustive Prune, Quick, RBFN dan Multiple. Pada masing-masing algoritma tersebut dilakukan sepuluh kali percobaan dengan metode 10-fold. Hasil yang diambil adalah akurasi rata-rata sepuluh percobaan tersebut. 3.2 Percobaan Kedua 3.2.1Data cleaning Dari hasil analisis terhadap data training, ditemukan beberapa record dalam jumlah yang cukup signifikan yang hasil klasifikasinya tidak konsisten. Data yang dimasukan dalam kategori tidak konsisten adalah data yang memiliki nilai yang sama untuk semua parameter tetapi memiliki result (hasil) identifikasi penyakit kanker yang berbeda. Ketidakkonsistenan ini bisa disebabkan oleh kesalahan input data yang dilakukan oleh petugas pencatat hasil test lab pasien, atau sebenarnya masih ada atribut lain yang menjadi penentu tetapi tidak dimasukkan dalam data training. Dengan asumsi bahwa tidak terjadi kesalahan dalam proses penginputan data, maka perlu dilakukan treatment khusus terhadap data yang tidak konsisten tersebut. Untuk itu, pada percobaan kedua ini hal pertama yang dilakukan adalah melakukan data cleaning terhadap data yang dianggap tidak konsisten. Data yang tidak konsisten tersebut akan dihapus dari data training apabila tidak memenuhi konsep majority. Konsep majority ini diterapkan dengan melihat hasil klasifikasi terbanyak untuk data yang sama, dengan harapan bahwa kecenderungan hasil klasifikasi nantinya mengikuti pola mayoritas. Untuk menerapkan konsep majority tersebut, penulis melakukan aturan-aturan khusus dalam penghilangan record-record tersebut. Apabila beberapa record dengan parameter yang sama menghasilkan dua output yang berbeda maka semua record yang hasil prediksinya memiliki jumlah record yang lebih sedikit (minoritas) akan dihapus dari data training. Apabila beberapa record dengan parameter yang sama dan hasil yang berbeda masing-masing record memiliki jumlah yang sama maka seluruh record tersebut akan dihilangkan dari data training. Sebagai ilustrasi, dalam data training yang diberikan terdapat data seperti pada tabel 2: Table 2. Ilustrasi Penghapusan Record Kasus Pertama ID Pasien Usia Type 1 Type2 Type3 Type4 Hasil ID0529 43 4 1 1 3 0 ID0270 43 4 1 1 3 0 ID0882 43 4 1 1 3 0 ID0665 43 4 1 1 3 1 ID0831 43 4 1 1 3 1 Karena terdapat lima buah record yang memiliki parameter-parameter yang sama tetapi hasil akhir yang berbeda maka semua record yang merupakan minoritas akan dihapus 8 Fasilkom UI, Perbandingan Algoritma Klasifikasi dalam Pendeteksian Pemyakit Kanker dari data training. Pada tabel diatas, record yang akan dihilangkan dari data training adalah seluruh record yang memiliki hasil satu, yaitu record dengan ID Pasiaen ID0665 dan ID0831. Ilustrasi ketika penghilangan dilakukan pada semua record data yang ada seperti pada tabel 3: Table 3. Ilustrasi Penghapusan Record Kasus Kedua ID Pasien Usia Type 1 Type2 Type3 Type4 Hasil ID0101 42 4 2 1 3 0 ID0388 42 4 2 1 3 1 Karena data pada tabel diatas record-recordnya memiliki parameter yang sama, hasil yang berbeda, serta jumlah record masing-masing hasil sama maka seluruh record diatas akan dihilangkann dari data trianing. Dengan kata lain, record dengan ID Pasien ID0101 dan ID0388 akan dihilangkan. Dari seluruh data training yang diberikan terdapat 69 (8,01%) record yang dihilangkan secara manual. Setelah proses data cleanning selesai, langkah selanjutnaya yang dilakukan, sama persis dengan langkah-langkah pada percobaan pertama, yang meliputi: penurunan atribut, pem-filteran-an record, pem-filter-an atribut, dan pemilihan metode. HASIL UJI COBA Setelah dilakukan percobaan pertama dan kedua sebanyak sepuluh kali pada masingmasing algoritma dengan seed yang berbeda, didapatkan hasil bahwa percobaan kedua menghasilkan tingkat akurasi yang lebih tinggi dibandingkan dengan percobaan pertama. Dari seluruh algoritma yang digunakan pada percobaan ini, diketahui algoritama Neural Network dengan metode Prune, meghasilkan akurasi terbaik, yaitu 90,25%. Hasil ini sejalan dengan beberapa percobaan yang telah dilakukan sebelumnya, yang menyebutkan bahwa algoritma Neural Network merupakan algoritma yang paling baik digunakan untuk melakukan proses klasifikasi [6][12]. Sedangkan algoritma C5.0 yang berbasis decission tree, serta algoritma lain seperti Classification via regression, Logistic,dan LogitBoost yang juga telah terbukti memiliki akurasi yang baik pada penelitian-penalitian sebelumnya, ternyata tidak cocok untuk digunakan pada permasalahan ini. Hal ini dapat dilihat dari algoritma-algoritma ini yang selalu menghasilkan akurasi yang lebih rendah jika dibandingkan dengan Neural Network, baik pada percobaan pertama maupun kedua. Tingkat akurasi rata-rata dari sepuluh kali percobaan untuk masing-masing algoritma dirangkum dalam Tabel 4 dan Tabel 5. Tabel 4 menyajikan hasil percobaan pertama, dimana proses data cleaning nya tidak melakukan eliminasi terhadap record-record yang inkonsisten. Sedangkan Tabel 5 menyajikan hasil percobaan kedua, di mana record-record yang inkonsisten dihapus dari data training. 9 Dari percobaan pertama dan kedua, tampak bahwa akurasi yang dihasilkan pada percobaan kedua lebih baik daripada percobaan pertama. Penjelasan yang paling memungkinkan dari hal ini adalah karena pada percobaan pertama terdapat record-record yang inkonsisten sehingga proses klasifikasi yang dilakukan oleh sistem sifatnya menjadi tidak pasti untuk record-record yang tidak konsisten tersebut. Sedangkan pada percobaan kedua, sistem tentu saja berhasil memberikan hasil klasifikasi yang lebih baik karena recordrecord yang tidak konsisten sudah dihapus dari data training. Dengan demikian, model classifier dari hasil percobaan kedua inilah yang nantinya akan dipergunakan untuk mengklasifikasikan data test yang diberikan oleh panitia. Tabel 4. Hasil Percobaan Pertama, Tanpa Adanya Eliminasi Record yang Inkonsisten No 1. Jenis Algoritma Rata-rata Akurasi (%) Neural Network - Quick 85.07 - Dynamic 86.16 - Multiple 85.50 - Prune 86.53 - RBFN 83.09 - Exhaustive Prune 86.76 2. C5.0 84.88 3. Classification via regression 84,29 4. Logistic 82,29 5. LogitBoost 83,47 Tabel 5. Hasil Percobaan Kedua, Dengan Menghapus Beberapa Record yang Inkonsisten No 1. 10 Jenis Algoritma Rata-rata Akurasi (%) Neural Network - Quick 88.58 - Dynamic 90.23 - Multiple 89.36 - Prune 90.25 - RBFN 87.78 - Exhaustive Prune 90.16 2. C5.0 89.50 3. Logistic 87,72 4. LogitBoost 88,22 Fasilkom UI, Perbandingan Algoritma Klasifikasi dalam Pendeteksian Pemyakit Kanker 5. 88,48 Classification via regression KESIMPULAN Dalam melakukan proses data mining harus dilakukan suatu rangkaian proses yang saling terkait untuk mendapatkan informasi yang dicari. Pada langkah data cleaning apabila dilakukan pemilihan terhadap data yang tepat dapat meningkatkan akurasi prediksi data. Untuk menghilangkan bias dalam melakukan percobaan, salah satu metode yang dapat dipakai adalah metode k-fold. Dalam kasus pada makalah ini, algoritma Neural Network metode Prune dengan penghilangan data yang dianggap tidak konsisten menghasilkan hasil prediksi yang terbaik dalam mendeteksi penyakit kanker dengan tingkat akurasi rata-rata 90,25% . DAFTAR PUSTAKA 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Anon. 2010. <URL:http://www.who.int/mediacentre/factsheets/fs310/en/indeks.html>. Anon. 2010. <URL:http://www.dharmais.co.id/indeks.php/what-is-cancer-id.html>. Anon. 2003. Clementine Algorithms Guide. Chicago: SPSS Inc. Anon.2008.Weka Manual. Hamilton. The University of Waikato. Anon. 2010. <URL:http://www.cancer.gov/dictionary/>. Anbananthen, S.K., Sianaryanan, G., Chekima, A., and Teo, J. “Data Mining Using Artificial Neural Netwrok Tree”. IEEE Xplore. Bošnjak,Z., Grljević, O., and Bošnjak,S. “CRISP-DM as a Framework for Discovering Knowledge in Small and Medium Sized Enterprises Data”. 5th International Symposium on Applied Computational Intelligence and Informatics. Timişoara. Catley, C., Smith, K., McGregor,C., and Tracy,M. 2009. “Extending CsRISP-DM to Incorporate Temporal Data Mining of Multidimensional Medical Data Streams: A Neonatal Intensive Care Unit Case Study”. IEEE Xplore 2009. Chen, P., Lee, T., Lee, Y., and Huang, S. Multiclass Support Vector Classification via Regression. ChenI, Mu-Chen, Liao, H., and Huang, C. 2006. “Predicting Breast Tumor via Mining DNA Viruses with Decision Tree”. IEEE International Conference on Systems, Man, and Cybernetics. Taipei. Du, Junping, and Guo, W. 2005. “Data Mining on Patient Data”. TENCON 2005 IEEE Region 10. Washington. Fang, Niugai, Wang, J., and Qingyu, Sun. 2009. “A New Data Mining Algorithm based on Improved Neural Network”. 2009 Asia-Pacific Conference on Information Processing. IEEE Explore. Han, Jiawei, dan Micheline Kamber. 2001. Data Mining: Concepts and Techniques. San Francisco: Morgan Kaufmann. Lutz, Romana. 2006. “LogitBoost with Trees Applied to the WCCI Prediction Challenge Datasets”. 2006 International Joint Conference on Neural Networks. Vancouver. Olson, David, dan Yong Shi. 2007. Intoduction to Business Data Mining. New York: McGraw-Hill. Pan, Ding. 2009. “CRISP-DM as Formal Framework for Data Mining Process Model”. 2009 Second Asia-Pacific Conference on Computational Intelligence and Industrial Applications. Potter, Ryan. Comparison of Classification Algorithms Applied to Breast Cancer Diagnosis and Prognosis. Wahington. Saravanan, R., and Malika. 2009. “An Effective Classification Model for Cancer Diagnosis Using Micro Array Gene Expression Data”. Proceedings of the 2009 11 International Conference on Computer Engineering and Technology - Volume 01. Washington: IEEE Computer Society. 19. Wu, Chun-Hui, Fank, K., and Chen, T.C. 2009. “Applying Data Mining for Prostate Cancer”. 2009 International Conference on New Trends in Information and Service Science. IEEE 2009. 20. Zambocha, Marta. 2008. “ Data Mining Methods with Trees”. E+M Ekonomie a Management. Proquest. BIODATA PENULIS 1. Nama Lengkap ( dengan gelar ) : Dr. Achmad Nizar Hidayanto Tempat / Tanggal Lahir : Lamongan/ 24 Juli 1976 Alamat lengkap kantor : Fakultas Ilmu Komputer, Universitas Indonesia, Kampus UI Depok E-mail : nizar@cs.ui.ac.id Asal S1, Bidang Ilmu : Ilmu Komputer Asal S1, Bidang Ilmu : Ilmu Komputer Asal S1, Bidang Ilmu : Ilmu Komputer Spesialisasi dan minat keilmuan : Information Retrieval, Data Mining, IT Governance, Information Systems, Distributed Systems 2. Nama Lengkap ( dengan gelar ) : Ika Chandra Hapsari Tempat / Tanggal Lahir : Cilacap/24 Mei 1990 Alamat lengkap kantor : Fakultas Ilmu Komputer, Universitas Indonesia, Kampus UI Depok E-mail : ika.chandra@ui.ac.id Asal S1, Bidang Ilmu : Ilmu komputer Spesialisasi dan minat keilmuan : Sistem Informasi 3. Nama Lengkap ( dengan gelar ) : Meganingrum Arista Jiwanggi Tempat / Tanggal Lahir : Probolinggo / 15 Maret 1990 Alamat lengkap kantor : Fakultas Ilmu Komputer Universitas Indonesia, Kampus UI Depok E-mail : meganingrum.arista81@ui.ac.id Asal S1, Bidang Ilmu : Ilmu Komputer Spesialisasi dan minat keilmuan :Ilmu Komputer 4. Nama Lengkap ( dengan gelar ) : Diane Fitria Tempat / Tanggal Lahir : Solok/ 26 April 1990 Alamat lengkap kantor : Fakultas Ilmu Komputer Universitas Indobesia, Kampus UI Depok E-mail : diane.fitria81@ui.ac.id Asal S1, Bidang Ilmu : Ilmu Komputer Spesialisasi dan minat keilmuan : Ilmu Komputer 12