Implementasi Algoritma Support Vector Machine (SVM) Untuk Penentuan Seleksi Atlet Pencak Silat
Vol. 2, No. 10, Oktober 2018, hlm. 3843-3848 http://j-ptiik.ub.ac.id
Implementasi Algoritma Support Vector Machine (SVM) Untuk Penentuan
Seleksi Atlet Pencak Silat
1 2 3 Eni Hartika Harahap , Lailil Muflikhah , Bayu RahayudiProgram Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya
1
2
2 Email: enihartika96@gmail.com, lailil@ub.ac.id, ubay1@ub.ac.id
Abstrak
Pencak silat merupakan seni beladiri tradisional yang berasal dari Indonesia. Seiring perkembangan zaman pencak silat tidak hanya digunakan untuk melindungi dan mempertahankan diri dari lawan, namun juga diikut ajangkan dalam suatu perlombaan. Penentuan hasil akhir dalam seleksi perlombaan yang masih menghitung manual menjadi kendala utama juri saat ada salah satu pihak yang tidak bisa menerima kekalahan. Terlebih kurangnya pemahaman dari penyelenggara seleksi dalam hal perwasitan dan penjurian yang dapat mempengaruhi mental pesilat, dan menimbulkan perselisihan pihak lain karena perbedaan persepsi saat seleksi. Untuk mengatasi permasalahan tersebut dibutuhkan suatu sistem klasifikasi yang mampu mengklasifikasi penerimaan seleksi atlet pencak silat yang layak lolos menggunakan metode support vector machine (SVM) yang mana dengan metode SVM mengklasifikasi data menjadi dua kelas. Data yang digunakan sebanyak 110 data yang dibagi menjadi data latih dan data uji dengan dua kelas hasil penerimaan seleksi yaitu lolos dan tidak lolos. Hasil akurasi dari penelitian ini mendapatkan akurasi terbaik berdasarkan percobaan perbandingan rasio data 70%:30%, dengan menggunakan kernel Polynomial Degree d = 2 dan nilai parameter λ (lamda) = 0,1, γ (gamma) = 0,0001, ε (Epsilon) = 0,000001, C (Complexity) = 0,00001 dan Itermax = 250. Hasil rata- rata akurasi menggunakan metode SVM pada klasifikasi penerimaan seleksi atlet pencak silat sebesar 69,09%.
Kata Kunci : Pencak Silat, Klasifikasi, Support Vector Machine (SVM), Kernel Polynomial Degree.
Abstract
Pencak Silat is a traditional martial art originating from Indonesia. Along with an evolutionof the time pencak silat is not only used to protect and defend themselves from opponents, but also
show in a contest. Determination of the final result in selection that still counts the manual becomes
main obstacle of the jury when one of the parties can’t accept defeat while competing. To overcome
these problems required a classification system that is able to classify enrolment acceptance of the
pencak silat athletes had eligible pass the support vector machine (SVM) method by the SVM
classifying the data into two classes. The data used in this research is 110 whitch is divided into
training data and test data with 2 classes of acceptance of selection is pass and not pass. The best
accuracy result in this research based on experiment ratio of data 70% : 30%, using kernel
Polynomial Degree d = 2 and parameter value λ (lamda) = 0,1, γ (gamma) = 0,0001, ε (Epsilon) =
0.000001, C (Complexity) = 0.00001 and Itermax = 250. Kernel use in this research value of
Polynomial Degree 2. The average result of accuracy using SVM method in the classification
enrolment of the Pencak Silat athletes is 69,09 %.Keywords: Pencak silat, Classification, Support Vector Machine (SVM), Kernel Polynomial Degree.
diikutkan dalam perlombaan yang dinaungi 1.
PENDAHULUAN perkumpulan persilatan (Groot, 2013). Pada
umumnya penentuan seorang atlet pencak silat Pencak Silat merupakan salah satu seni lolos seleksi atau tidak lolos masih beladiri tradisional yang berasal dari Indonesia. menggunakan cara manual yang memungkinan
Di Indonesia pencak silat sendiri sudah dapat
Fakultas Ilmu Komputer Universitas Brawijaya
3843
Zaman Pra Sejarah 2. Zaman Sejarah, yang dibagi menjadi lima yaitu: (a) Zaman Kerajaan-Kerajaan, (b)
hyperplane dengan margin terbesar. Berbagai
MFT Lari 300 m Push Up Sit Up Pull Up Lari 20 m Tripple Hop Shuttle Run 4x5 m Tendangan Sabit 5 detik Tendangan Sabit 10 detik Tendangan 1 menit Pukulan 1 menit Back Up 1.3.
Untuk mendapatkan atlet yang handal, dalam seleksi atlet pencak silat diperlukan beberapa komponen fisik yang harus dilakukan oleh seorang atlet(Groot, 2013).
Seleksi Atlet Pencak Silat
Zaman Kerajaan Islam, (c) Zaman Penjajahan Belanda, (d) Zaman Penjajahan Jepang, dan (e) Zaman Kemerdekaan 1.2.
terdapat kesalahan saat perhitungan nilai hasil akhir. Karena itu diperlukan sebuah sistem yang mampu mengklasifikasikan data seleksi atlet pencak silat berdasarkan kelasnya. Klasifikasi merupakan proses menemukan sekumpulan model maupun fungsi yang menjelaskan dan membedakan data kedalam kelas – kelas tertentu, dengan tujuan menggunakan model tersebut dalam menentukan kelas dari suatu objek yang belum diketahui kelasnya (Han & Kamber, 2006).
Annual Workshop on Computational Learning Theory . Konsep dasar SVM sebenarnya
merupakan kombinasi harmonis dari teori-teori komputasi yang telah ada puluhan tahun sebelumnya, seperti margin hyperplane yang diperkenalkan oleh Aronszajn tahun 1950. Demikian juga dengan konsep-konsep pendukung yang lain. Akan tetapi hingga tahun 1992 belum pernah ada upaya merangkaikan komponen
Berdasarkan penjelasan diatas penulis ingin merancang sebuah aplikasi sistem klasifikasi penerimaan seleksi atlet pencak silat dengan menggunakan metode support vector machine (SVM).
studi empiris menunjukkan bahwa pendekatan SRM pada SVM memberikan error generalisasi yang lebih kecil dibandingkan yang diperoleh dari strategi ERM pada neural netwok maupun metode yang lain (Nugroho, et al., 2003).
untuk meminimalkan error pada training set, dan dalam SVM diwujudkan dengan memilih
(SVM) dikembangkan oleh Boser, Guyon, Vapnik, dan pertama kali dipresentasikan pada tahun 1992 di
machine learning yang difokuskan pada usaha
(ERM) yaitu metode
Risk Minimization
memiliki kelebihan menggunakan Empirical
Support Vector Machine (SVM). Metode SVM
Selain menggunakan metode (ANP- TOPSIS), salah satu metode klasifikasi yaitu
(ANP-TOPSIS). Cara kerja dari metode ini yaitu dengan memecah sebuah masalah yang tidak terstruktur dan terdapat ketergantungan hubungan antar elemennya (Dewayana & Budi, 2009). Akurasi yang didapat yaitu sebesar 83 % dengan data uji sebanyak 44 data (Wicaksono, 2016).
Process and Technique for Order Preference by Similiarity of Ideal Solution
Penentuan penerimaan seleksi atlet sebelumnya pernah dilakukan dengan menggunakan metode Analytic Network
Support Vector Machine (SVM) Support Vector Machine
- – komponen tersebut. Prinsip dasar SVM adalah linear classifier, dan selanjutnya dikembangkan agar dapat bekerja pada problem
1.1. Pencak Silat
Menurut Notosoejitno (1999: 4-6) perkembangan sejarah pencak silat dapat dibagi menjadi dua zaman, yang terdiri dari: 1.
Pencak silat merupakan warisan asli budaya bangsa Indonesia, yang terdiri dari berbagai perguruan/aliran pencak silat. Sejarah lahirnya pencak silat tidak diketahui secara pasti, namun beladiri pencak silat dimungkinkan sudah ada di tanah air sejak peradaban manusia ada di Indonesia.
non-linear dengan memasukkan konsep kernel trick pada ruang kerja berdimensi tinggi
(Chapple, 2004).
Sequential Training memiliki algoritme
yang lebih sederhana dan waktu yang diperlukan lebih cepat. Adapun algoritma
Sequential Training adalah sebagai berikut : 1.
Menginisialisasi
i
dan parameter lain, misalnya λ = 0,003, γ = 0,007, C = 1, IterasiMax = 30 , dan ԑ = 0,00001. Kemudian menghitung matriks Hessian dapat dihitung dengan rumus: .
2. Mulai dari data ke
Data tersebut berasal dari IPSI (Ikatan Pencak Silat Indonesia) kabupaten Jember dan untuk pemilihan data latih dan data uji dilakukan secara acak. Tahap kedua yaitu proses training SVM yang terdiri dari matriks Hessian yang hasilnya akan digunakan untuk perhitungan berikutnya yaitu menghitung nilai
} ], ), 1 ( min{max[ i i i i C E i i i
n j ij j i D E 1
i
|) (| i
α i . Selanjutnya menghitung sequential training yaitu melakukan perhitungan terhadap testing SVM, langkah pertama dalam proses testing adalah menghitung nilai bias, kemudian menghitung nilai K(x i , x test ) yaitu dengan melihat nilai terbesar pada kelas positif dan negatif dengan menggunakan fungsi kernel yang digunakan. Setelah nilai K(x i , x test ) didapatkan langkah selanjutnya adalah menghitung nilai f (x)test , kemudian jika sudah didapat nilai f (x)test maka sudah dapat diklasifikasikan berdasarkan hasil dari nilai f (x)test tersebut. Jika nilai > 0 maka data tersebut masuk pada kategori positif yaitu lolos sedangkan jika bernilai < 0 maka data tersebut masuk dalam kategori negatif yaitu tidak lolos.
i dan nilai
δα
) ) , ( ( 2 j i j i ij
m i i i i m i i i i K x x y x x K y 1 1 ) , ( ) , ( 2 1
K x x y y D
m i i i i K b x x y x f 1
) , ( ) (
aaaaaaaaaaaaaaaaaa dengan nilai b = .
SV didapatkan dari beberapa percobaan, biasanya digunakan threshold > 0. Kemudian dilakukan proses testing untuk mendapatkan keputusan di mana fungsi keputusan yang digunakan adalah
vector (SV), SV = (Threshold SV). Nilai Threshold
3. Langkah kedua dilakukan terus-menerus hingga kondisi iterasi maksimum tercapai atau max . Selanjutnya didapatkan nilai support
c.
b.
sampai l , hitung menggunakan persamaan berikut: a.
2. PERANCANGAN DAN
Gambar 2 Hasil Pengujian Rasio Data
dengan nilai parameter sequential training SVM yang digunakan dalam pengujian ini yaitu λ (lamda) = 0,003, γ (gamma) = 0,007. C (Complexity ) = 1, ε (Epsilon) = 0,00001, Itermax = 30 dan untuk nilai d Kernel Polynomial Degree = 2.
kernel.polynomial.degree
Pada pengujian perbandingan rasio data, jumlah dataset yang digunakan sebanyak 110 data yang terdiri dari 2 kelas. Data tersebut dikelompokkan berdasarkan perbandingan data latih dan data uji yang dipilih secara acak. Rasio perbandingan yang digunakan yaitu 90% : 10%, 80% :20%, 70% : 30%, 60% : 40%, 50% : 50%. Pada pengujian ini kernel yang digunakan yaitu
3. PENGUJIAN DAN ANALISIS Pada pengujian rasio data analisis yang dapat dilakukan yaitu semakin banyak jumlah data latih tidak berpengaruh terhadap tingkat akurasi semakin tinggi begitu sebaliknya sedikit data latih juga tidak membuat akurasi semakin rendah karena pengambilan data secara acak memungkinkan akurasi tidak stabil pada setiap percobaan. Gambar 2 menunjukkan bahwa akurasi paling baik atau paling tinggi saat pembagian data pada rasio perbandingan 70% : 30%.
Gambar 1 Alur Proses Algoritme SVM Berdasarkan Gambar 1, tahap pertama yaitu masukkan dataset dengan format .xls yang mana data dari penelitian ini berupa data atlet seleksi pencak silat yang berjumlah 110 data.
Tahapan proses SVM dapat dilihat pada Gambar 1.
kernel yang digunakan yaitu kernel polynomial yang akan menghasilkan matriks Hessian.
Langkah awal yang digunakan dalam proses SVM adalah mengambil dataset, kemudian tahap selanjutnya perhitungan dengan
IMPLEMENTASI
3.1 Pengujian Rasio Data
3.2 Pengujian λ (lamda)
training SVM ini, konstanta γ (gamma)
Selanjutnya dilakukan pengujian terhadap nilai C pada Gambar 5 yang menunjukkan akurasi terbesar yaitu 61,822% dengan menggunakan variabel tetap yaitu λ (lamda) = 0,1, ε (Epsilon) = 0,000001, γ (gamma) = 0,0001, dan Itermax = 30.
3.4 Pengujian C (complexity)
δα. Nilai δα tersebut akan berkurang yang selisihnya tidak jauh dari nilai konstanta γ (gamma). Sehingga memerlukan proses iterasi lebih banyak untuk mencapai nilai δα yang kurang dari ε (epsilon). Tetapi dengan iterasi yang lebih banyak tersebut memberikan algoritme untuk dapat melakukan proses learning menjadi lebih baik. Sehingga dapat memberikan akurasi yang lebih baik.
ditunjukkan oleh jumlah iterasi yang dibutuhkan untuk mencapai konvergen. Hasil pengujian menunjukkan bahwa semakin kecil nilai konstanta γ (gamma) maka iterasi yang diperlukan semakin banyak dan dapat memberikan akurasi yang lebih baik. Hal ini disebabkan karena nilai konstanta γ (gamma) memengaruhi perhitungan
learning dengan kecepatan tersebut
digunakan untuk mengontrol kecepatan proses
Nilai parameter λ (lamda) yang digunakan yaitu 0,001, 0,01, 0,1, 0,5, 1, 5, 10, 20, dan 50. Nilai parameter sequential training SVM yang digunakan dalam pengujian ini γ (gamma) = 0, 007, ε (Epsilon) = 0,00001, C (Complexity) = 1, Itermax = 30 dan untuk nilai d Kernel
Polynomial Degree =
Gambar 4 Hasil Pengujian Nilai Gamma Pada pengujian parameter konstanta γ
2. Pada Gambar 4 dapat dilihat hasil dari proses pengujian nilai parameter γ (gamma).
Nilai γ (gamma) yang digunakan yaitu 0,00001, 0,0001, 0,001, 0,01, 0,1, 0,1, 1, 1,5, dan 2. Nilai parameter yang digunakan dalam pengujian λ (lamda) = 0,5, ε (Epsilon) = 0,00001, C (Complexity) =1, dan Itermax = 30 dan untuk nilai d Kernel Polynomial Degree =
3.3 Pengujian γ (gamma)
Gambar 3 Hasil Pengujian Nilai Lamda Dari Gambar 3 dapat disimpulkan bahwa nilai λ (lamda) pada saat 0,01 memiliki akurasi paling tinggi sebesar 60,004% dan pada saat nilai λ (lamda) bernilai 1 sampai 20 mengalami kenaikan akurasi yang hampir konvergen. Semakin banyak nilai λ (lamda) tidak menentukan jumlah akurasi semakin besar. Jika nilai lamda terlalu besar dapat mengakibatkan waktu komputasi pada perhitungan matriks hessian lebih lama, yang dikarenakan augmented factor (lamda) dapat menjadikan sistem lambat dalam mencapai konvergensi dan tidak stabilnya pada saat proses pembelajaran (Vijayakumar & Wu, 1999).
2. Penggunaan pembandingan rasio data yaitu pada 70%:30% untuk pengujian selanjutnya, seperti pada Gambar 3 yang menunjukkan hasil dari pengujian nilai parameter λ (lamda).
(gamma) didapatkan akurasi yang berbeda di mana akurasi yang menunjukkan penurunan didapatkan nilai 0,1. Pada metode sequential pengujian λ (lamda) = 0,1, γ (gamma) = 0,00001, ε (Epsilon) = 0,0000001, C (Complexity) = 0,0001 dan Itermax = 30 dan untuk nilai d kernel Polynomial Degree 2. Data yang digunakan dalam pengujian ini yaitu perbandingan rasio data 70%:30%.
sequential training SVM yang digunakan dalam
3.6 Pengujian jumlah Itermax
margin
. Sehingga akurasi yang didapatkan selalu sama. Selain itu nilai C (Complexity) > 0 relatif penting untuk memaksimumkan margin dan meminimumkan jumlah slack (C.Corttes dan V.Vapnik, 1995).
Gambar 7 Hasil Pengujian Itermax Pada skenario ini menunjukkan nilai akurasi paling besar yaitu pada saat iterasi 250 dengan nilai rata
Gambar 5 Hasil Pengujian Nilai Complexity Pada metode sequential training SVM ini, nilai C digunakan untuk mengontrol tradeoff antara margin dan error klasifikasi. Tetapi pada pengujian yang telah dilakukan, nilai C tidak berpengaruh terhadap akurasi. Hal ini disebabkan karena data yang diuji dengan nilai C pada pengujian tersebut memiliki error klasifikasi yang tidak berpengaruh pada
Nilai itermax = 30, 40, 50, 100, 150, 200, 250, 300, 500 dan 1000. Nilai parameter
3.5 Pengujian ε (epsilon)
Gambar 6 Hasil Pengujian Nilai Epsilon Berdasarkan uji coba yang telah dilakukan ditunjukkan bahwa nilai variabel ε (epsilon) yang semakin kecil menghasilkan akurasi yang semakin meningkat. Hal ini disebabkan karena nilai variabel ε (epsilon) yang semakin kecil dapat menghasilkan nilai α yang optimal sehingga dapat menentukan support vector yang tepat. Support vector yang tepat tersebut dapat menghasilkan hyperplane (garis pemisah) untuk memisahkan kedua kelas tersebut semakin optimal.
2. Data yang digunakan dalam pengujian ini yaitu perbandingan rasio data 70% : 30%.
kernel Polynomial Degree
Nilai ε (Epsilon) yang digunakan yaitu 0,000001, 0,00001, 0,0001, 0,001 dan 0,01. Nilai parameter sequential training SVM yang digunakan dalam pengujian λ (lamda) = 0,1, γ (gamma) = 0,00001, C (Complexity) = 0,000001 dan Itermax = 30 dan untuk nilai d
- – rata akurasi sebesar 69,092 % dan akurasi tertinggi yaitu 69,7%. Nilai iterasi akan berhenti jika memenuhi syarat konvergen yaitu
Max(|δα i |)<ε. Meskipun saat
iterasi 250 menghasilkan akurasi yang tinggi, namun pada pengujian data ini semakin besar jumlah iterasi tidak menjamin nilai akurasi yang lebih tinggi karena nilai
α i
belum mencapai nilai konvergen. Pada pengujian iterasi maksimum ini nilai iterasi berhenti berpengaruh pada perubahan nilai
α (alpha).
Menurunnya akurasi disaat iterasi bertambah terjadi karena rasio support vector yang tidak seimbang dan beberapa data terletak jauh dari bidang pemisah (hyperplane) yang ideal.
3.7 Pengujian jumlah Itermax
Pengujian Validasi ini didapatkan dari semua nilai parameter-parameter terbaik kemudian dilakukan percobaan sebanyak lima kali. Data yang digunakan dalam pengujian ini yaitu perbandingan rasio data 70%:30%. Tabel 1 Hasil Cross Validation
Chapple, Olivier. 2004. Support Vector
Machine : Induction principles, Adaptive
Percobaan Akurasi
Tuning and Prior Knowledge . UMR
X1 69,7 7606. Informatics laboratory. University
X2 66,67 of Piere et Marie Curie. X3 66,67 Dewayana, Triwulandari S. dan Budi, Ahmad. X4 72,73
2009. Pemilihan Pemasok Cooper ROD X5 69,7 Menggunakan Metode ANP. J@TI
UNDIP, IV (3). Pp. 212-217. ISSN Rata-rata 69,094 1907 –1434.
Berdasarkan Tabel 1 dapat diketahui Groot, George. 2013. Pencak Silat Seni Beladiri bahwa rata-rata tingkat akurasi dari 5 percobaan
Indonesia . Yogyakarta:Zafana Publishing sebesar 69.094%.
Han, J. & Kamber, M. 2006. Data Mining
Concepts and Techniques . Asma Stephan ed. Amerika : Diane Cerra.
Notosoejitno. 1989. Sejarah Perkembangan
Pencak silat di Indonesia . Jakarta: Humas PB IPSI.
Nugroho, A. S., Witarto, A. B. & Handoko, D.
2003. Support Vector Machine Teori dan Aplikasinya dalam Bioinformatika . S.I. :s.n. Gambar 7 Hasil Cross Validation
Sukowinadi. 1989. Sejarah Pertumbuhan pada pengujian validasi ini dapat disimpulkan
Pencak Silat
. Yogyakarta: Per.P.I bahwa sistem yang dibuat valid karena pada Harimurti. Gambar 7 Grafik Uji Validasi menunjukkan Vijayakumar, Sethu and Si Wu. 1999. tingkat akurasi grafik yang stabil.
Sequential Support Vector Classifiers and Regression . Proceeding International
4. KESIMPULAN
Conference on Soft Computing (SOCO Berdasarkan hasil penelitian, pengujian, ‘99), Genoa, Italy, pp. 610-619. dan analisis tentang klasifikasi seleksi
Wicaksono, Andrew. 2016. Penentuan Seleksi penerimaan atlet pencak silat menggunakan
Atlet Pencak Silat Dengan Metode ANP-
metode Support Vector Machine dapat TOPSIS.
Malang : Universitas Brawijaya. disimpulkan sebagai berikut: 1.
Algoritme Support Vector Machine (SVM) dapat diimplementasikan pada penentuan penerimaan seleksi atlet pencak silat.
2. Rata-rata akurasi terbaik sebesar 69,094% menggunakan kernel polynomial degree 2 dengan kombinasi nilai variabel atau parameter λ (lamda) = 0,1, γ (gamma) = 0,00001, ε (Epsilon) = 0,0000001, C (Complexity) = 0,0001 dan Itermax = 250.
DAFTAR PUSTAKA
C.Cortes dan V. Vapnik. 1995. Machine
Learning, Support Vector Network . Vol 20, Hal 273 – 297.