Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
STUDI KOMPARASI METODE KLASIFIKASI DUA KELAS Budi Santosa dan Devi Rosita Hanum Teknik Industri Institut Teknologi Sepuluh Nopember Email:
[email protected],
[email protected]
ABSTRAK Salah satu metode yang akhir-akhir ini banyak digunakan dan mendapat perhatian lebih dalam pattern recognition adalah Support Vector Machine (SVM). Metode ini dapat digunakan untuk kasus klasifikasi dua kelas, multi kelas, dan regresi. Dalam penelitian ini, SVM diaplikasikan dalam kasus klasifikasi dua kelas. Selanjutnya, performansi Support Vector Machine (SVM) akan dibandingkan dengan beberapa metode klasifikasi lainnya, seperti Linier Discriminant Analysis (LDA), Logistic Regression, dan Decision Tree pada beberapa set data, yaitu Hepatitis-Domain, BreastCancer, Vote, Banana, dan Spiral. Set data ini terdiri dari dua kelompok yaitu yang bisa dipisahkan secara linier dan yang tidak bisa dipisahkan secara linier. Tujuan penelitian ini adalah mengimplementasikan algoritma yang diujikan untuk membandingkan tingkat akurasinya. Metode yang menunjukkan kesalahan klasifikasi terkecil adalah metode yang terbaik. Dari penelitian ini diperoleh bahwa SVM dapat memberikan hasil yang lebih baik walaupun jumlah data training sedikit, berdimensi tinggi dan non-linier. Kata kunci :
Support Vector Machine, Linier Discriminant Analysis, Logistic Regression, Decision Tree, Kesalahan Klasifikasi, Matlab
PENDAHULUAN Dewasa ini, kecermatan dan ketepatan dalam hal klasifikasi data merupakan hal yang sangat penting. Hasil klasifikasi data dengan beberapa metode yang telah dikembangkan akan mempengaruhi sejumlah keputusan, misalnya dalam hal kedokteran (emergency medicine), cuaca, bioinformatika dan bidang-bidang lainnya. Machine Learning berpotensi untuk membantu mengambil sebuah keputusan yang sederhana tetapi akurat. (Tsien et al, 1998) Berdasarkan tinjauan pustaka yang tersedia (Santosa, 2006), terdapat beberapa macam teknik yang digunakan di dalam machine learning untuk kasus klasifikasi, prediksi dan regresi : Kasus klasifikasi Apabila data yang akan diuji belum diketahui labelnya, maka dapat digunakan teknik klaster. Teknik klaster ini memiliki pilihan, antara lain klaster hirarki atau K-means. Kasus prediksi Prediksi data dengan label diskrit dapat digunakan Linier Discriminant Analysis (LDA), Analytical Neural Network (ANN), Support Vector Machine (SVM), dan lain-lain. Kasus regresi Kasus regresi ini khusus untuk output data yang kontinu. Metode yang dapat digunakan adalah regresi linier, Support Vector Regression (SVR) atau Analytical Neural Network (ANN).
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
Dengan adanya beberapa metode yang tersedia, permasalahan yang sering muncul adalah jenis metode yang harus dipilih. Setiap metode tentunya memiliki kelebihan dan kekurangan. Dalam beberapa kasus, kita dapat menerapkan beberapa teknik atau satu teknik dengan parameter yang berbeda. Selanjutnya model tersebut dibandingkan satu sama lain dengan melihat tingkat eror yang dihasilkan. Metode dengan eror terkecil adalah metode dengan tingkat akurasi tertinggi. Namun, satu hal yang perlu ditekankan adalah tidak ada model terbaik untuk semua kasus atau data. Oleh karena itu, perbandingan antara metode yang satu dengan metode yang lain merupakan hal yang menarik untuk diteliti. Metode Support Vector Machine ini banyak diminati dan dikembangkan karena formulasinya berbentuk convex sehingga solusi yang diberikan bersifat global optimal. Seiring dengan berjalannya waktu, algoritma metode Support Vector Machine akan terus berkembang, sehingga metode tersebut pantas untuk dijadikan sebagai metode utama dalam penelitian ini. Oleh karena itu, makalah ini bertujuan untuk memahami metode baru dalam hal klasifikasi data, yaitu Support Vector Machine dan membandingkan tingkat akurasi metode SVM dibandingkan dengan metode Linier Discriminant Analysis (LDA), Logistic Regression (LR), dan Decision Tree (DT). METODE Metode yang digunakan dalam penelitian ini adalah Support Vector Machine, Linier Discriminant Analysis, Decision Tree, dan Logistic Regression. Beberapa penjelasan tentang metode di atas adalah sebagai berikut : a. Support Vector Machine Salah satu metode yang akhir-akhir ini banyak digunakan dan mendapat perhatian lebih dalam pattern recognition adalah Support Vector Machine (SVM). SVM banyak dikembangkan oleh Boser, Guyon, Vapnik. (Santosa, 2006) SVM berusaha menemukan hyperplane yang terbaik pada input space. Prinsip dasar SVM adalah linear classifier, selanjutnya metode ini dikembangkan sehingga dapat bekerja pada problem non linear dengan memasukkan konsep Kernel pada ruang kerja berdimensi tinggi. Gambar 1 memperlihatkan beberapa pattern yang merupakan anggota dari dua buah kelas, yaitu +1 dan -1. Pattern yang tergabung pada kelas -1 disimbolkan dengan warna merah (kotak), sedangkan pattern pada kelas +1 disimbolkan dengan warna kuning (lingkaran). Problem klasifikasi dapat diterjemahkan dengan usaha menemukan garis (hyperplane) yang memisahkan antara kedua kelas. Batas Diskriminan
Kelas -1
Kelas +1
Gambar 1. Hyperplane SVM
ISBN : 979-99735-2-X A-22-2
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
Gambar 2. Hyperplane SVM Terbaik
Garis solid pada Gambar 2 menunjukkan hyperplane yang terbaik, yaitu terletak tepat pada tengah-tengah kedua kelas, sedangkan titik merah dan kuning yang berada pada lingkaran hitam adalah support vector. Usaha untuk mencari lokasi hyperplane ini merupakan inti dari proses pembelajaran SVM. (Nugroho et al, 2003) Pada umumnya masalah dalam domain dunia nyata (real world problem) jarang yang bersifat linear separable. Kebanyakan bersifat non linear. Untuk menyelesaikan problem non linear, SVM dimodifikasi dengan memasukkan fungsi Kernel. Dalam non linear SVM, pertama-tama data dipetakan oleh fungsi ke ruang vektor yang berdimensi lebih tinggi. Pada ruang vektor yang baru ini, hyperplane yang memisahkan kedua kelas tersebut dapat dikonstruksikan. Hal ini sejalan dengan teori Cover yang menyatakan “ Jika suatu transformasi bersifat non linear dan dimensi dari feature space cukup tinggi, maka data pada input space dapat dipetakan ke feature space yang baru, dimana pattern tersebut pada probabilitas tinggi dapat dipisahkan secara linear ”. b. Linier Discriminant Analysis Analisis diskriminan adalah analisis multivariat yang diterapkan untuk memodelkan hubungan antara satu variabel respon yang bersifat kategori dengan satu atau lebih variabel prediktor yang bersifat kuantitatif (Tatham, et al, 1998 yang ditulis oleh Wibowo, 2002). Fungsi ini dibentuk dengan memaksimumkan jarak antar kelas, sehingga memiliki kemampuan untuk membedakan antar kelas. Berdasarkan fungsi ini, pengamatan yang belum diketahui kelasnya dapat ditentukan kelasnya. Oleh karena itu, analisis diskriminan ini dapat dipergunakan sebagai metode pengklasifikasian. Dalam penerapannya, analisis ini mengasumsikan bahwa data pada masing-masing kelas berdistribusi normal multivariat dan mempunyai struktur matrik varian-kovarian yang sama. Pengklasifikasian adalah salah satu analisis statistika yang diperlukan jika ada beberapa kelas yang ingin diketahui apakah kelas-kelas tersebut memang berbeda secara statistik. Kelas-kelas ini terjadi karena ada pengaruh satu atau lebih variabel lain yang merupakan variabel independen. Kombinasi linier dari variabel-variabel ini akan membentuk suatu fungsi diskriminan (Tatham,et al,1998 yang ditulis oleh Wibowo, 2002). Fungsi diskriminan adalah kombinasi linear dari p variabel ini yang memaksimalkan jarak antara dua kelas setelah ditaransformasikan ke dalam satu ruang dimensi.
ISBN : 979-99735-2-X A-22-3
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
c. Regresi Logistik Regresi logistik adalah bentuk khusus analisis regresi dengan variable respon bersifat kategori dan variabel prediktor bersifat kategori, kontinu, atau gabungan antara keduanya. Regresi ini dinamakan dengan regresi logistik karena pembentukan modelnya didasarkan pada bentuk kurva logistik. Model logistik biasanya digunakan untuk mewakili data yang menggambarkan perkembangan atau pertumbuhan yang mula-mula cepat sekali, tetapi lambat laun agak lambat, dimana kecepatan pertumbuhannya makin berkurang sampai akhirnya tercapai suatu titik jenuh (saturation point). (Prayitno, 1981). Persamaan regresi logistik ini tidak menghasilkan nilai pada variabel respon, namun menghasilkan peluang kejadian pada variabel respon. Nilai peluang ini yang dipakai sebagai ukuran untuk mengklasifikasikan pengamatan. Dalam penerapannya, regresi logistik tidak memerlukan asumsi multivariat normal atau kesamaan matrik varian kovarian seperti halnya analisis diskriminan (Hosmer dan Lemeshow, 1989 ditulis oleh Wibowo, 2002). Oleh karena itu metode ini cukup tahan (robust) untuk dapat diterapkan dalam berbagai skala/keadaan data (Tatham, et al, 1998 ditulis oleh Wibowo, 2002). d. Decision Tree Decision tree berkembang melalui pemecahan iteratif dari data ke dalam grupgrup diskrit. Tujuannya untuk memaksimalkan “jarak” antara grup pada tiap pemecahan. Contoh yang kita gunakan sampai saat ini sangatlah sederhana. Tree ini sangat mudah untuk dimengerti dan diinterpretasikan. Akan tetapi, tree bisa menjadi sangat kompleks jika diturunkan dari database dengan ratusan atribut dan variabel respon serta lusinan kelas input. Tree seperti ini akan sangat sulit untuk dimengerti, meskipun tiap path dari tree biasanya dapat dimengerti. Dalam hal ini, decision tree bisa menjelaskan prediksinya. Inilah yang merupakan keuntungan penting dari decision tree. Akan tetapi, kejelasan ini bisa menjadi bumerang, misalnya percabangan dari suatu decision tree mengimplikasikan bahwa suatu presisi yang jarang ditemui dalam dunia nyata. (Kenapa seseorang yang gajinya $40.001 akan menjadi nasabah dengan resiko kredit yang baik sedangkan seseorang dengan gaji $40.000 dianggap tidak memiliki kredit resiko yang baik). EKSPERIMEN Tahapan-Tahapan dalam eksperimen ini dapat dilihat pada Gambar 3 di bawah ini :
Gambar 3. Bagan Eksperimen
Setiap set data yang telah ditetapkan akan diuji dengan menggunakan LDA, Regresi Logistic, Decision Tree, dan Support Vector Machine. Pengujian ini dilakukan dengan jumlah data training yang berbeda-beda. Selain itu, proses pengujian juga terbagi
ISBN : 979-99735-2-X A-22-4
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007 menjadi dua, yaitu pengujian dengan menggunakan preprocessing dan tidak menggunakan preprocessing.
Eksperimen ini diawali dengan Load data ke dalam Matlab, kemudian data tersebut dibagi menjadi dua bagian, yaitu data training dan data testing. Penentuan data training digunakan untuk melatih keempat metode tersebut, sedangkan data test menguji fungsi pemisah yang dihasilkan. Bandingkan variabel respon yang dihasilkan oleh (output aktual dan output prediksi dan hitung persentase jumlah data yang diklasifikasikan ke dalam kelas yang salah. Kesalahan klasifikasi dihitung dengan cara :
Misklasifikasi
Yaktual Yprediktor ,
dimana :
Y aktual : Kelas yang diperoleh dari kondisi aktual. Y prediktor : Kelas yang diperoleh dari fungsi pemisah berdasarkan data training Tahap selanjutnya adalah membandingkan hasil dari masing-masing metode, analilis metode mana yang paling unggul dan analisis terhadap masing-masing metode. Tahapan akhir dalam penelitian ini adalah penarikan kesimpulan atas keseluruhan hasil yang diperoleh dari penelitian yang telah dilakukan. HASIL & DISKUSI Analisa dilakukan secara sistematis dan berdasarkan pengelompokan data uji.
Dalam hal ini, train menyatakan hasil training dan pre menyatakan hasil preprocesing. Persentase misklasifikasi ini dihitung dari total data testing. a. Data Hepatitis-Domain Analisa hasil klasifikasi data Hepatitis adalah sebagai berikut : Tabel 1. Misklasifikasi Hepatitis-Domain (%) Train 1 10
Pre 1 10
Train 2 30
Pre 2 30
Train 3 40
Reg.Log
10
10
40
40
46.67
40
Dec.Tree
20
20
35
35
40
40
SVM RBF
30
20
40
25
40.63
40
SVM Poly
0
20
10
20
40.63
40
LDA
Pre3 40
Berdasarkan Tabel 1, metode SVM Polynomial Training 1 dan 2 menunjukkan kesalahan klasifikasi terkecil. Hal ini dicapai dengan Polynomial pangkat 1 dengan C=50 dan C=100. SVM Polynomial pangkat 1 sama dengan kondisi linier. Data ini bersifat linier. Hal inilah yang membedakan SVM dengan metode lainnya, yaitu memberikan penalti dengan menerapkan konstanta ongkos C. Selain itu, preprocessing sangat mempengaruhi performansi dari metode SVM dan memperlambat peningkatan kesalahan klasifikasi pada metode SVM jika jumlah data training menurun. Variabel prediktor data hepatitis ini bersifat campuran antara continue dan diskrit, LDA sebaiknya digunakan karena akan menghasilkan ketepatan yang lebih tinggi dibanding regresi logistik.(Wibowo, 2002). SVM dengan preprocessing masih tetap unggul bila dibandingkan dengan metode yang lain sehingga SVM merupakan metode yang terbaik untuk data hepatitis domain.
ISBN : 979-99735-2-X A-22-5
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
b. Data Breast-Cancer Analisa hasil klasifikasi data Breast Cancer adalah sebagai berikut : Tabel 2. Misklasifikasi Breast Cancer (%)
LDA
Train 1 0
Pre 1 0
Train 2 2.04
Pre 2 2.04
Train 3 2.74
Pre 3 2.74
Reg.Log
0
0
1.17
1.17
6
6.52
Dec.Tree
3.6
3.6
2.04
2.04
10.63
10.12
SVM RBF
1.2
1.2
1.75
1.75
3.6
3.60
SVM Poly
1.2
1.2
1.46
1.46
3.43
2.57
Pada training 1, metode LDA dan regresi logistik menunjukkan tingkat akurasi yang tinggi. Performansi metode SVM menempati peringkat yang kedua. Selisih error antara metode SVM dengan kedua metode tersebut sangat rendah, yaitu 1.2%. Decision tree menunjukkan tingkat error yang cukup tinggi karena karakteristik decision tree yang lebih cocok untuk atribut yang tidak memiliki banyak jenis. Sama halnya dengan kasus Breast-Cancer training 1, performansi metode SVM pada training 2 masih tetap menjanjikan walaupun tidak selalu menjadi yang terbaik. Decision tree menjadi sangat fluktuatif apabila jumlah data training berubah. Metode yang menghasilkan eror terkecil adalah SVM Polynomial dengan preprocessing. Support Vector Machine dan LDA cenderung stabil dan dapat bertahan pada kondisi di mana data training yang tersedia sangat sedikit. c. Data Vote Analisa hasil klasifikasi data Vote adalah sebagai berikut : Tabel 3. Misklasifikasi Vote (%) Train 1 9.37
Pre 1 9.37
Train 2 4.31
Reg.Log
4.31
13.7
Pre 3 13.74
12.4
12.5
6.90
6.90
10.98
Dec.Tree
13.19
9.37
9.37
4.31
4.31
10.98
10.44
SVM RBF
9.37
9.37
4.31
4.31
8.79
9.34
SVM Poly
9.37
9.37
4.31
4.31
9.89
8.79
LDA
Pre 2
Train 3
Semua variabel prediktor terdiri dari data diskrit dengan kategori 1 atau 0 dan berdimensi tinggi karena memiliki variabel prediktor sebanyak 16. Pada training 1, LDA dan SVM memiliki performansi yang hampir sama. Hal ini disebabkan oleh prinsip dasar dari kedua metode klasifikasi tersebut hampir sama. Regresi logistik lemah pada data dengan dimensi tinggi sehingga tidak dapat menunjukkan hasil yang terbaik. Pada training 2, misklasifikasi tidak hanya disebabkan oleh kemampuan metode untuk mendefinisikan fungsi pemisah, tetapi juga adanya data yang outlier. Sedangkan, training 3 ini memiliki dimensi yang tinggi dan jumlah data training yang terbatas. LDA, Regresi Logistik, dan Decision Tree tampak bermasalah dengan curse of dimentionality.
ISBN : 979-99735-2-X A-22-6
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
d. Data Banana Data banana merupakan data dengan bentuk pisang. Data ini sering digunakan dalam machine learning untuk menguji performansi metode. Tabel 4. Misklasifikasi Banana
LDA
Train 1 41.44
40.43
Train 2 41.89
41.88
Train 3 42.57
Reg.Log
39.49
39.48
45.06
45.05
39.55
39.55
Dec.Tree SVM RBF SVM Poly
13.34
13.34
13.09
13.09
14.37
14.36
9.03
8.89
9.74
9.66
10.98
10.51
21.83
8.76
10.23
9.74
12.71
11.29
Pre 1
Pre 2
Pre 3 11.31
LDA, regresi logistik, decision tree tidak dapat memberikan hasil yang paling optimal pada kasus ini karena bersifat non linear boundary. SVM dengan preprocessing dapat memberikan hasil yang terbaik. SVM RBF dan Polynomial dengan preprocessing menunjukkan eror sebesar 8.89% dan 8.76%. SVM dimodifikasi dengan memasukkan fungsi kernel. Fungsi kernel inilah yang menyebabkan SVM dapat membentuk sebuah fungsi pemisah non-linier. Banyak fungsi kernel yang dapat digunakan tetapi fungsi kernel yang sering direkomendasikan adalah Radial Basis Function (RBF). e. Data Spiral Analisa hasil klasifikasi data Spiral adalah sebagai berikut : Tabel 5. Misklasifikasi Spiral (%) Train 1
Pre 1
Train 2
Pre 2
Train 3
Pre 3
50.6
3.2
51.41
51.41
LDA
55.71
55.71
Reg.Log
52.14
52.14
54
54
56.71
56.71
Dec.Tree SVM RBF SVM Poly
5.71
5.71
8.8
8.8
17.53
17.53
2.14
1.43
3
2.6
6.94
6.71
2.14
2.86
3.8
5.2
7.88
7.76
Pada training 1, SVM mencapai hasil yang optimal pada pola RBF preprocessing dengan pangkat 18 dan C = 3000. Hal ini menunjukkan bahwa spiral dapat diselesaikan secara linier pada pangkat yang tinggi. Jika dilakukan pada pangkat yang rendah, data ini akan sulit dipisahkan. Oleh karena itu, LDA, regresi logistik dan decision tree tidak dapat memberikan hasil yang optimal. Pada training 2, LDA dengan preprocessing mendekati performansi SVM. Hal ini bisa jadi disebabkan oleh pola data spiral sendiri yang nilai data nya tidak memiliki rentangan yang sangat jauh. Jika data tersebut dilakukan preprocessing, maka akan memudahkan proses pembelajaran LDA sehingga dapat dipisahkan secara linier. Dengan demikian, SVM dapat memberikan performansinya yang terbaik dan tidak menemukan kesulitan dalam mengklasifikasikan data spiral karena hyperplane dapat memisahkan secara linier pada feature space yang tinggi.
ISBN : 979-99735-2-X A-22-7
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007 KESIMPULAN
1. 2.
3.
4. 5.
6. 7.
8.
Adapun kesimpulan yang dapat diambil dari hasil penelitian : Metode yang tepat dipilih harus memperhatikan karakteristik data yang diolah. LDA sebaiknya digunakan apabila variabel prediktor bersifat campuran antara continue dan diskrit karena akan menghasilkan ketepatan yang lebih tinggi dibanding regresi logistik. Regresi logistik sebaiknya digunakan pada data yang memiliki variabel prediktor bersifat diskrit karena memiliki ketepatan yang lebih tinggi bila dibandingkan dengan LDA. Decision tree lebih cocok untuk data dengan atribut yang tidak memiliki banyak jenis Hal yang membedakan SVM dengan metode lainnya adalah SVM dimodifikasi dengan memasukkan slack variable yang dilakukan dengan memberikan penalti, yaitu menerapkan konstanta ongkos C untuk mengontrol tradeoff antara margins dan eror klasifikasi. Preprocessing sangat mempengaruhi performansi dan memperlambat peningkatan classification error dari metode SVM. SVM tidak menemukan kesulitan dalam mengklasifikasikan data dengan pola yang rumit karena hyperplane dapat memisahkan secara linier pada feature space yang tinggi. SVM merupakan salah satu metode yang tepat dipakai untuk memecahkan masalah berdimensi tinggi dengan keterbatasan sampel data yang ada.
DAFTAR PUSTAKA
Jaakkola, Tommi S, Machine Learning : Lecture 8, MIT CSAIL. Nugroho, Anto S., Witarto, Arif B., Handoko, Dwi (2003), Support Vector MachineTeori dan Aplikasinya dalam Bioinformatika-, Kuliah Umum Ilmu Komputer.com O’Donnel (2004), Learning Hidden Instruction Sequences using Support Vector Machine Classification, Machine Learning 6.867 Course Project. Prasetyo, Philips (2006), Training Set, Testing Set dan Validation Set, http://DM corner.com. Santosa, Budi (2006), Draft Data Mining dengan Matlab. Santosa, Budi (2006), Draft Data Mining: Teknik Mengenali Pola Data Teori dan Aplikasi Praktis. Schalkoff, Robert (19920, Pattern Recognition, John Wiley & Sons, New York. Tsien, Christine L (1998), Using Classification Tree and Logistic Regression Methods to Diagnose Myocardial Infarction, IMIA, Amsterdam: IOS press. Wahyudi, Doni (2004), Data Maining Email. Tugas Mata Kuliah Keamanan Sistem Informasi, Jurusan Teknik Elektro, Institut Teknologi Bandung. Wibowo, Wahyu (2002), Perbandingan Hasil Klasifikasi Analisis Diskriminan dan Regresi Logistik Pada Pengklasifikasian Data Respon Biner, Tugas Akhir, Jurusan FMIPA Statistika, Institut Teknlogi Sepuluh Nopember, Surabaya.
ISBN : 979-99735-2-X A-22-8
Prosiding Seminar Nasional Manajemen Teknologi V Program Studi MMT-ITS, Surabaya 3 Pebruari 2007
ISBN : 979-99735-2-X A-22-9