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