Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
KOMBINASI INTEGRASI METODE SAMPLING DENGAN NAIVE BAYES UNTUK KETIDAKSEIMBANGAN KELAS PADA PREDIKSI CACAT PERANGKAT LUNAK Sukmawati Anggraeni Putri Sistem Informasi, STMIK Nusa Mandiri Jl. Damai No. 8, Warung Jati Barat (Margasatwa), Jakarta Selatan email:
[email protected] ABSTRAKSI Distribution of the dataset class software engineering experienced imbalance class. This research will analyze the data class is counterbalanced by the sampling technique Naive Bayes algorithm uses four general dataset from NASA repository MDP to find the defect module. Results of this research, sampling techniques consisting of Random Under Sampling, SMOTE (Synthetic Minority Over-sampling Technique) and Resampling shows increase in the percentage of the size of the AUC. Of the three proposed sampling technique, that SMOTE technique gives better results than the other two techniques. Keywords: Sampling Technique, Software Engineering, Naive Bayes, Defect Prediction
disesuaikan untuk Decision Trees, Neural Networks, Naive Bayes dan lain sebagainya. Pada tulisan ini berkaitan dengan meningkatkan kinerja dari classifier Naive Bayes pada dataset yang tidak seimbang. Classifier Naive Bayes merupakan komputasi yang efesien [5] dan memiliki reputasi yang baik pada akurasi prediksinya [6]. Pertama, penelitian yang kami lakukan menujukkan bahwa menggunakan under sample seperti yang diusulkan pada penelitian sebelumnya [3] dapat mengurangi noise yang berlebihan dan menyebabkan kerancuan untuk menentukan keputusan. Pada penelitian ini mengusulkan untuk mengintegrasikan dua jenis strategi pengambilan sampel dengan SMOTE [7] pada kelas minoritas, dan teknik resample[4].
PENDAHULUAN Pendistribusian kelas memiliki kejadian pada masing-masing kelas dalam data set yang memainkan peran penting dalam klasifikasi. Ketidak seimbangan dataset terjadi ketika satu kelas, umumnya salah satu yang mengacu pada konsep mengenai tujuan (kelas positif atau monoritas), yang kurang terwakili dalam dataset. Dengan kata lain, jumlah kelas negatif (mayoritas) lebih banyak dibandingkan dengan jumlah kelas positif. Selain itu kriteria evaluasi yang mengarahkan prosedur pembelajaran, dapat menyebabkan mengabaikan contoh kelas minoritas (yang diketahui sebagai noise) dan karenanya, classifier mungkin memiliki kesulitan untuk mengklasifikasi dalam kasus ini. Sebagai contoh, dapat dipertimbangkan dataset yang memiliki ketidakseimbangan rasio 1:100 (yaitu untuk nilai 1 sebagai contoh dari kelas positif, dan nilai 100 sebagai contoh kelas negatif). Sebuah classifier yang mencoba memaksimalkan akurasi, dapat memperoleh akurasi 99% hanya dengan tidak menggunakan contoh positif, dengan klasifikasi semua kasus yang negatif. Akibatnya, mesin pembelajaran cenderung salah mengklasifikasikan contoh kelas minoritas sebagai mayoritas, dan menyebabkan tingginya tingkat kelas negatif yang palsu [1]. Untuk mengatasi masalah ini, terdapat pendekatan sampling yang diusulkan. Umumnya, teknik sampling termasuk metode over sampling yaitu, metodeRandom Over Sampling[2], sedangkan metode under sampling yaitu Random Under Sampling[3] dan Resample[4]. Pendekatan berbasis algoritma bertujuan untuk meningkatkan kinerja dari classifier berdasarkan pada karakteristik pada classifier tersebut. Contohnya, metode yang khusus
ISBN 978-602-72850-0-2
KAJIAN LITERATUR 1.
Dataset Tidak Seimbangan Masalah ketidakseimbangan kelas merupakan topik yang menarik dalam pembahasan menggunakan pembelajaran mesin. Pendekatan untuk mengatasi masalah ini dapat dibagi menjadi dua arah utama. Pertama, menggunakan pendekatan sampel dan pendekatan berbasis algoritma. 2.
Teknik Sampling Sampling merupakan strategi yang populer untuk menangani noise yang dilakukan untuk menyeimbangkan data pada tahap pra proses data. Oleh karena itu teknik sampling dapat digunakan pada pendekatan klasifikasi yang ada [7][3][4]. Meskipun teknik sampling memiliki kelebihan, namun pendekatan sampling memiliki kekurangan yaitu pada under-sampling, contoh kelas mayoritas mungkin kehilangan informasi yang berguna. 1
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia Sedangkan over-sampling pada kelas positif akan menyebabkan duplikasi berlebihan yang menyebabkan over-fitting. Selain itu, over-sampling dapat meningkatkan jumlah dataset pelatihan, sehingga menyebabkan biaya komputasi yang berlebihan. Meskipun demikian [7] menemukan proses yang dapat mengatasi masalah teknik over-sampling, yaitu algoritma Synthetic Minority Over-sampling Technique (SMOTE) yang menghasilkan artifisial interpolasi data pada proses over-sampling pada kelas minoritas. Algoritma dimulasi dengan mencari k tentang terdekat untuk setiap contoh minoritas, dan kemudian untuk setiap tetangga, secara acak memilih titik dari garis yang menghubungkan tetangga dan contoh itu sendiri. Akhirnya, data pada titik tersebut dimasukan sebagai contoh minoritas baru. Dengan menambahkan contoh minoritas baru menjadi data pelatihan, diharapkan over-fitting dapat teratasi [7].
Tabel1. Confusion Matrix Kelas Nilai Prediksi
Rumus yang digunakan untuk melakukan penghitungan adalah sebagai berikut: ๐๐+๐๐
Akurasi= ๐๐+๐๐+๐น๐+๐น๐ .............................. (2) Kurva ROC (Receiver Operating Characteristics) telah diperkenalkan untuk mengevaluasi kinerja dari algoritma pengklasifikasi. Area Under the ROC (AUC) memberikan sejumlah โringkasanโ untuk kinerja algoritma pengklasifikasi. Area Under the ROC (Receive Operating Characteristic) (AUC) adalah pengukuran nilai tunggal yang berasal dari deteksi sinyal. Nilai AUC berkisar dari 0 sampai 1. Kurva ROC digunakan untuk mengkarakterisasi trade-off antara true positive rate (TPR) dan false positive rate (FPR). Sebuah classifier yang menyediakan area yang luas di bawah kurva adalah lebih dari classifier dengan area yang lebih kecil di bawah kurva [8].
3.
Metode Klasifikasi Ada banyak metode klasifikasi untuk menganalisa efektivitas teknik penyeimbang, sedangkan pada penelitian ini hanya menggunakan satu jenis klasfikasi yaitu klasifikasi probabilistik (Naive Bayes). Algoritma Naive Bayes menggunakan teorema Bayes untuk memprediksi kelas untuk setiap kasus, dengan asumsi atribut independen.Jumlah frekuensi sederhana digunakan untuk memperkirakan probabilitas atribut diskrit. Untuk atribut numerik pada umumnya menggunakan fungsi probabilitas untuk distribusi normal[6], yaitu dengan rumus: ๐ ๐ฅ, ยต, ฯ =
1 2๐๐
๐โ
(๐ฅโ๐ )2 2๐ 2
a.
TeknikAnalisis Pada statistik menyediakan prosedur khusus yang lebih baik untuk menguji signifikan perbedaan antara lebih dari dua klasifikasi yaitu uji friedman untuk uji non parametrik [9]. Uji Friedman merupakan uji non parametrik yang setara dengan ANOVA pada uji parametik. Pada uji Friedman peringkat algoritma untuk setiap data diatur secara terpisah, kinerja algoritma yang baik mendapat peringkat 1 sedangkan untuk yang terbaik diberi peringkat dua. Berikut akan ditampilkan formula dari uji friedman: 12 ๐๐2 = ๐ฅ ๐๐=1(๐
๐ )2 โ [ 3๐ ๐ + 1 ](3)
................. (1)
Dimana: ยต = mean ฯ = standar deviasi ๐ฅ = nilai ๐ = nilai eksponen
๐๐ฅ๐ (๐+1)
Dimana: ๐๐2 = nilai khai โ kuadrat jenjeng dua arah friedman N = jumlah sampel K = banyaknya kelompok sampel 1, 3, 12 = konstanta
4.
TeknikEvaluasidanValidasi Model validasi yang digunakan pada penelitian ini adalah 10 fold cross validation. Kinerja algoritma pembelajaran mesin biasanya dievaluasi oleh confusion matrix seperti yang diilustrasikan pada tabel 1. Kolom merupakan kelas yang diprediksi, sedangkan baris merupakan kelas yang sebenarnya [7]. Pada cofusion marix, TN merupakan contoh negatif yang benar diklasifikasikan (true negative). FP merupakan sejumlah contoh negatif yang tidak benar diklasifikasikan sebagai positif (false positive). FN merupakan jumlah contoh positif yang tidak benar diklasifikasikan sebagai negatif (false negative) dan TP merupakan jumlah contoh positif diklasifikasikan dengan benar (true positive).
ISBN 978-602-72850-0-2
Benar Salah
Nilai Awal Benar Salah TP FP FN TN
Perbandingan statistik dari pengklasifikasi yang baik adalah menggunakan tes non parametrik yang terdiri dari uji Wilcoxon signed ranked untuk perbadingan dari dua pengklasifikasi dan uji Friedman dengan uji Post Hoc yang sesuai untuk perbandingan lebih dari satu pengklasifikasi dengan beberapa dataset [9].
2
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia PEMBAHASAN NASA DATASET MDP
1.
Kerangka Pemikiran Kerangka pemikiran yang digunakan pada penelitian ini terdiri dari beberapa tahap seperti dijelaskan pada gambar . Permasalahan yang akan dibahas pada penelitian ini mengenai dataset cacat perangkat lunak yang memiliki distribusi kelas yang tidak seimbang. Dimana dataset yang tidak seimbang tersebut dapat mempengaruhi kinerja dari classifier Naive Bayes. Penggunaan teknik sampling yang terdiri dari Random Under Sampling, SMOTE dan Resample dapat mengurangi pengaruh ketidak seimbangan tersebut. Kemudian pada tahap akhir untuk mengevaluasi hasil klasifikasi, maka digunakan pengukuran (measurement) dengan Area Under the ROC (Receiver Operating Characteristic) Curve (AUC). Sehingga diperoleh lah kerangka pemikiran yang akan dijelaskan pada gambar 1. FAKTOR
METODE YANG DIUSULKAN
VALIDASI
TUJUAN
10 Cross Validation
Model Validation (10 Fold Cross Validation)
Bayesian Methode (Naive Bayes)
Model Comparison (Friedman Test)
PENGUKURAN
Gambar 2. Metode Yang Diusulkan
3.
Datasets Pada penelitian ini menggunakan data publik yang biasa digunakan oleh para peneliti sebelumnya, yaitu software metrics dari NASA (National Aeronautics and Space Administration) MDP repository. Dataset tersebut terdiri dari CM1, MW1, PC1, dan PC4. Dataset NASA MDP yang dapat diakses bebas oleh umum dan dapat diperoleh melalui halaman website wikispaces (http://nasasoftwaredefectdatasets.wikispaces.com/).
RUS AUC
SMOTE
Perulangan
Resample
10 Cross Validation
Performa Model Prediksi Perangkat Lunak
Al goritma Klasifikasi
Tes Friedman Model Pengukuran
Naive Bayes Parameter Yang Disesuaikan
Penanganan Ketidakseimbangan Kelas
Tabel 2. Dataset Yang digunakan Pada Penelitian
Gambar 1. Kerangka Pemikiran
2.
Metode Yang Diusulkan Metode yang diusulkan dengan melakukan penerapan teknik sampling (RUS, SMOTE dan Resample) Naive Bayes untuk prediksi cacat perangkat lunak. Tahap pertama dengan melakukan pra proses pada data yang tidak seimbangan menggunakan teknik sampling, kemudian dataset dibagi menggunakan metode 10 cross validation yaitu menjadi data training dan data testing, kemudian data training yang telah dilakukan penyeimbangan diproses dengan menggunakan Naive Bayes, sehinga menghasilkan model evaluasi yang diukur dengan nilai Root Mean Square Error (RMSE) dan Area Under the ROC Curve (AUC) yang dijelaskan pada gambar 2.
ISBN 978-602-72850-0-2
Test Data
Performance Report (AUC)
Teknik Sampling
Jumlah Sintesis
Training Data
Learning
DATASET NASA MDP
Jumlah Nearest Neighbors
Sampling Tecnique (RUS, SMOTE, Resample)
Sistem
Bahasa
Instrumen pesawat ruang angkasa Database Software penerbangan untuk satelit yang mengorbit bumi
C C C
Datas et CM1
Total LOC 17K
MW1 PC1 PC4
8K 26K 30K
Setiap dataset yang terdiri dari beberapa modul perangkat lunak, bersama dengan jumlah kesalahan dan atribut kode karakteristik. Pemrosesan awal dataset NASA MDP memiliki 38 atribut ditambah satu atribut cacat atau tidak cacat (defective?). Atribut tersebut terdiri dari jenis atribut Halstead, McCabe, Line of Code (LOC) dan atribut miscellaneous [5].
3
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia pengklasifikasi Naive Bayes, Naive Bayes dengan SMOTE, Naive Bayes dengan Random Under Sampling, dan yang terakhir Naive Bayes dengan SMOTE dan Resample. Langkah-langkah initelahdigunakanuntukmembandingkankeakuratanp engklasifikasidengandantanpateknikpenyeimbang. Hasilpercobaandapatdilihatpadatabel.Presentasepada klasifkasikasitidakmeningkat, tetapi AUC meningkatketikamenggunakanteknik sampling terutamapadateknik SMOTE.
Tabel 3.Spesifikasi dan Atribut NASA MDP Repository LOC Count
LOC_total LOC_blank LOC_code_an d_comment LOC_comment LOC_executabl e Number_of_lin es Atribut Content Halstead Difficulity Effort Error_est Length Level Prog_time Volume Num_operands Num_operators Num_unique_o perands Num_unique_o perators Atribut Cyclomatic_co McCabe mplexity Cyclomatic_de nsity Design_comple xity Essential_com plexity Atribut Branch_count miscellane Call_pairs ous Condition_cou (lainnya) nt Decision_count Decision_densi ty Design_density Edge_count Essential_densi ty Parameter_cou nt Maitenance_se verity Modified_cond ition_count Multiple_condi tion_count Global_data_c omplexity Global_data_d ensity Normalized_cy clomatic_comp l Precent_comm ents Node_count Jumlah atribut kode Jumlah modul Jumlah modul cacat
CM1 X X X
Data set NASA MDP MW1 PC1 PC4 X X X X X X X X X
X X
X X
X X
X X
X
X
X
X
X X X X X X X X X X X
X X X X X X X X X X X
X X X X X X X X X X X
X X X X X X X X X X X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X X X
X X X
X X X
X X X
X X
X X
X X
X X
X X X
X X X
X X X
X X X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Tabel 4.NilaiAkurasi Klasifikasi Naive Bayes Naive Bayes + SMOTE Naive Bayes + RUS Naive Bayes + Resample
X
X
X
X
X
X
X 37 342
X 37 266
X 37 759
41
28
61
X 37 139 9 178
Naive Bayes Naive Bayes + SMOTE Naive Bayes + RUS Naive Bayes + Resample
PC4 0,87
0,76
0,77
0,84
0,82
0,62
0,67
0,62
0,64
0,64
0,72
0,65
0,67
CM1
MW1
0,64
0,73
PC1 0,77
PC4 0,83
0,74
0,75
0,79
0,85
0,73
0,7
0,78
0,8
0,72
0,75
0,77
0,84
Pada tabel 5 menujukkan hasil nilai AUC yang baik pada penggunaan model Naive + SMOTE, dimana terdapat pada semua dataset (CM1, MW1, PC1, PC4) yang digunakan. Perbandingan Kinerja Model Naive Bayes Langkah awal dalam menganalisa data adalah mempelajari karakteristik dari data tersebut. Untuk itu diperlukannya mengetahui pemusatan dan penyebaran data dari nilai tengahnya, nilai ekstrem atau outliernya. Oleh karenanya nantinya dapat diketahui peningkatan kinerja pengklasifikasi (Naive Bayes) untuk memperbaiki model prediksi cacat perangkat lunak. Untuk mengetahui perbandingan kinerja model pengklasifikasi (Naive Bayes) dengan model yang telah dioptimasi, maka akan digambarkan dengan diagram box and whisker plotspadaperbandingan AUC yang dijelaskanpadaGambar
4.
Pelaksanaan Dan HasilEksperimen Pengukuran model digunakan dengan menggunakan 4 dataset NASA MDP (CM1, MW1, PC1, PC4). Model yang diuji menggunakan model ISBN 978-602-72850-0-2
PC1 0,88
Tabel5.Nilai AUC
5.
X
MW1 0,81
Pada tabel 4 menujukkan hasil nilai akurasi yang terbaik pada penggunaan model Naive Bayes, dimana pada keempat dataset yang digunakan (CM1, MW1, PC1, PC4) menujukkan nilai akurasi yang terbaik.
Klasifikasi
X
CM1 0,79
4
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
0,70
0,64
0,80
0,73 0,75 0,70 0,75
0,74 0,73 0,72
0,90
NB + RUS
NB + Resample 0,83 0,85 0,80 0,84
NB + SMOTE
0,77 0,79 0,78 0,77
NB
AUC
0,60 0,50 0,40 0,30
Gambar 3. Diagram Perbandingan AUC Model Prediksi Cacat Perangkat Lunak
0,20
Pada gambar 3 menampilkan penyebaran data padasetiapmodelnyauntukperbandingan AUC. Pada model NB penyebarandatanyatidaksimetris, whiskerbagianbawahboxplot yang lebih, sehinggamenunjukkandistribusi data cenderungmenjulurkearah kiri (negative skewness). Model NB + SMOTEpenyebaran data tidaksimetris, whiskerbagianatasboxplot yang lebihpanjang, sehinggamenunjukkandistribusi data cenderungmenjulurkearah kanan (positive skewness). Pada model NB + RUSpenyebarandatanyatidak simetrisdanwhiskerbagianbawahboxplot yang lebihpanjang, sehinggamenunjukkandistribusi data cenderungmenjulurkearah kiri (negative skewness). Dan pada model NB + Resamplepenyebaran data tidaksimetrisdanwhiskerbagianatas boxplot yang lebihpanjang, sehinggamenunjukkandistribusi data cenderungmenjulurkearahkanan (positive skewness).
0,00
0,10
CM1
KC3
PC1
PC4
Gambar 4. GrafikAUC Perbandingan Antara Metode Usulan dengan Metode Lain
Sebagai perbandingan untuk mengetahui perbedaan setiap model yang diusulkan, maka dilakukanlah penghitungan statistik menggunakan uji statistik yang dapat digunakan terdiri dari uji parametrik dan uji non parametrik. Pada penelitian ini menggunakan uji non parametrik yang terdiri dari uji peringkat bertanda wilcoxon dan uji friedman. Nilai AUC model NB, NB + SMOTE, NB + RUS dan NB + Resample dibandingkan menggunakan uji peringkat bertanda wilcoxon yang akan ditampilkan pada tabel 7. Tabel 7. Nilai P dari AUC Perbandingan Menggunakan Uji Peringkat Bertanda Wilcoxon
6.
Perbandingan Antar Metode Sebagai bukti bahwa metode yang diusulkan (NB + SMOTE) lebih baik, maka dilakukanlah antara metode yang diusulkan dengan metode yang telah diusulkan pada penelitian sebelumnya.
Seperti yang ditampilkan pada tabel 7 Model
NB + SMOTE NB + RUS NB + Resample NB
Tabel 6. AUC Perbandingan Antara Metode Klasifikasi Naive Bayes (Lessmann, et al) Naive Bayes + RUS Naive Bayes + Resample (Requelme, et al) Naive Bayes + SMOTE (MetodeUsulan)
CM1
MW1
0,64
0,73
PC1 0,77
PC4 0,83
0,73
0,70
0,78
0,8
0,72
0,75
0,77
0,84
0,74
0,75
0,79
0,85
NB + RUS 0,06
0,06 0,06
0,461
0,04
1
NB + Resa mple 0,06
NB
0,461
1 0,04
0,04
0,04
meskipun NB + RUS dengan NB, tidak memiliki perbedaan yang signifikan dengan nilai p adalah 1 lebih besar dari alpha (0,05), hasil memperlihatkan bahwa NB + SMOTE dan NB + Resample memiliki perbedaan yang signifikan dengan NB. Nilai p dari NB + SMOTE dengan NB uji friedman adalah 0,04 kurang dari alpha (0,05). Sedangkan nilai p dari NB + Resample dengan NB uji peringkat bertanda wilcoxon adalah 0,04 kurang dari alpha (0,05). Sehingga dapat disimpulkan bahwa NB + SMOTE dan NB + Resample dapat meningkatkan kinerja NB, sedangkan NB + RUS tidak dapat melakukan perbaikan dari kinerja NB pada prediksi cacat perangkat lunak.
Hasilpercobaanditampilkanpadatabel 6. Model klasifikasiterbaikpadasetiap dataset akanditampilkandengancetaktebal. Padagambar 4 menampilkanperbandingan AUC padaempatmetode yang berbedadariempat dataset NASA MDP. ISBN 978-602-72850-0-2
NB + SMO TE
5
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia Nilai AUC model NB, NB + SMOTE, NB + RUS dan NB + Resample dibandingkan menggunakan uji Friedman yang akan ditampilkan pada tabel 8.
N Chi-Square df Asymp. Sig.
Tabel 8. Nilai P dari AUC Perbandingan Menggunakan Uji Friedman Model
NB + SMOTE
NB + SMOTE NB + RUS NB + Resample NB
NB + RUS 0,04
0,04 0,04
1
0,04
1
NB + Resample 0,04
NB
1
1 0,04
Kesimpulan hasil hipotesa dari pengujian friedman pada tabel 4.63 terlihat bahwa asymp sig 0,038, dimana nilai asymp sig mewakili nilai p. Hasil uji memperlihatkan bahwa sig < 0,05, sehingga dapat disimpulkan bahwa empat model yang dilakukan pengujian terdapat perbedaan yang signifikan.
0,04
0,04
UCAPAN TERIMAKASIH Penulis mengucapkan terima kasih kepada kedua orang tuayang selalu mendukung,baik dukungan berupa moril maupun materil. Ucapan terimakasih pula penulis ucapkan kepada para dosen Pascasarjana STMIK Nusa Mandiri yang telah memberikan ilmu yang bermanfaat, sehingga membuka wawasan bagi penulis pada bidang penelitian. Dan tak lupa penulis ucapkan terimakasih kepada para teman yang aktif dalam melakukan penelitian atas ilmu dan diskusi ilmiahnya dalam pengembangan penelitian.
Seperti yang ditampilkan pada tabel 8 meskipun NB + RUS dengan NB tidak memiliki perbedaan yang signifikan dengan nilai p adalah 1 lebih besar dari alpha (0,05), hasil memperlihatkan bahwa NB + SMOTE dan NB + Resample memiliki perbedaan yang signifikan dengan NB. Nilai p dari NB + SMOTE dengan NB uji friedman adalah 0,04 kurang dari alpha (0,05). Sedangkan nilai p dari NB + Resample dengan NB uji friedman adalah 0,04 kurang dari alpha (0,05). Sehingga dapat disimpulkan bahwa NB + SMOTE dan NB + Resample dapat meningkatkan kinerja NB, sedangkan NB + RUS tidak dapat melakukan perbaikan dari kinerja NB pada prediksi cacat perangkat lunak. Nilai AUC model NB, NB + SMOTE, NB + RUS dan NB + Resample dibandingkan menggunakan uji friedman. Untuk hasil rata-rata peringkat dari masing-masing model berdasarkan AUC ditampilkan pada tabel 9 dan untuk hasil pengujian friedman ditampilkan pada tabel 10.
KESIMPULAN Penerapan tekning sampling terutama pada teknik SMOTE dan Resample terbukti dapat meningkatkan kinerja pengklasifikasi Naive Bayes. Namun ada beberapa saran terkait hasil dari penelitian ini dan penelitian lanjutan untuk menangani ketidak seimbangan kelas pada model prediksi cacat perangkat lunak antara lain: a). Pada penelitian ini menggunakan pengklasifikasi Naive Bayes, namun pada penelitian lanjutan dapat menggunakan pengklasifikasi lainnya seperti Logistic Regression, Neural Network dan SVM. b). Pada penelitian ini, menggunakan teknik sampling. Pada penelitian di masa depat dapat menggunakan penggabungan teknik sampling dan ensemble untuk meningkatkan kinerja pada prediksi cacat perangkat lunak.
Tabel 9. Rata-rata Peringkat Model Uji Friedman Berdasarkan Nilai AUC Mean Rank NB NB_SMOTE NB_RUS NB_RESAMPLE
1.50 4.00 2.00 2.50
DAFTAR PUSTAKA
Pada tabel yang memperlihatkan hasil ratarata peringkat diketahui bahwa model NB + SMOTE mendapat respon paling tinggi yaitu 4. Sehingga model NB + SMOTE lebih baik dari model NB murni dengan rata-rata peringkat yaitu 1.50, model NB + RUS dengan nilai rata-rata peringkat yaitu 2,00 maupun model NB + Resample dengan nilai rata-rata peringkat yaitu 2,50.
Tabel 10. Uji Friedman nilai AUC
ISBN 978-602-72850-0-2
4 8.400 3 .038
6
[1]
Y. Liu, X. Yu, J. X. Huang, and A. An, โCombining integrated sampling with SVM ensembles for learning from imbalanced datasets,โ Inf. Process. Manag., vol. 47, no. 4, pp. 617โ631, Jul. 2011.
[2]
I. H. Laradji, M. Alshayeb, and L. Ghouti, โSoftware defect prediction using ensemble learning on selected features,โ Inf. Softw. Technol., 2014.
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia [3]
[4]
[5]
[6]
K. Gao and T. M. Khoshgoftaar, โSoftware Defect Prediction for High-Dimensional and Class-Imbalanced Data,โ Conf. Proc. 23rd Int. Conf. Softw. Eng. Knowl. Eng., no. 2, 2011.
Softw. Eng., vol. 33, no. 1, pp. 2โ13, Jan. 2007.
J. C. Riquelme, R. Ruiz, and J. Moreno, โFinding Defective Modules from Highly Unbalanced Datasets,โ Engineering, vol. 2, no. 1, pp. 67โ74, 2008. S. Lessmann, S. Member, B. Baesens, C. Mues, and S. Pietsch, โBenchmarking Classification Models for Software Defect Predictionโฏ: A Proposed Framework and Novel Findings,โ IEEE Trans. Softw. Eng., vol. 34, no. 4, pp. 485โ496, 2008. T. Menzies, J. Greenwald, and A. Frank, โData Mining Static Code Attributes to Learn Defect Predictors,โ IEEE Trans.
ISBN 978-602-72850-0-2
7
[7]
N. V Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer, โSMOTEโฏ: Synthetic Minority Over-sampling Technique,โ vol. 16, pp. 321โ357, 2002.
[8]
T. M. Khoshgoftaar and K. Gao, โFeature Selection with Imbalanced Data for Software Defect Prediction,โ 2009 Int. Conf. Mach. Learn. Appl., pp. 235โ240, Dec. 2009.
[9]
J. Demsar, โStatistical Comparisons of Classifiers over Multiple Data Sets,โ J. Mach. Learn. Res., vol. 7, pp. 1โ30, 2006.