Dosen Pengampu :
Dr. Jadi Suprijadi , DEA.
19571219 198403 1 001
Disusun Oleh :
Ilham Melzi 140610160044
Muhammad Rifqi A 140610160067
Kelas B
1.5 ROC (Receiver Operating Characteristic) dan AUC (Area Under Curve)
Kurva ROC dibagi menjadi dua dimensi, yaitu tingkat True Positive pada sumbu y dan tingkat
False Positif pada sumbu x. Sedangkan untuk menentukan klasifikasi mana yang terbaik, dapat
direpresentasikan dengan metode menghitung luas daerah di bawah kurva atau disebut dengan
AUC (Area Under Curve) yang diartikan sebagai probabilitas. Luas daerah di bawah kurva
mengukur kinerja diskriminatif dengan memperkirakan kemungkinan output dari sampel yang
dipilih secara acak dari populasi negatif atau positif. Semakin besar nilai daerah bidang di bawah
kurva maka semakin kuat klasifikasi yang digunakan. Nilai AUC akan berada pada rentang antara
0 sampai dengan 1. Tabel berikut merupakan klasifikasi AUC:
Tabel Klasifikasi AUC
Performansi Klasifikasi
0.9-1.0 Sangat Baik
0.8-0.9 Baik
0.7-0.8 Cukup
0.6-0.7 Rendah
0.5-0.6 Buruk
1.6 Ukuran Akurasi
Berikut adalah beberapa ukuran akurasi yang akan digunakan, yaitu :
1. Accuracy adalah presentase dari jumlah tuple dalam data uji yang diklasifikasikan dengan
benar oleh classifier. Rumus untuk Accuracy adalah sebagai berikut :
𝑇𝑃 + 𝑇𝑁
𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 =
𝑃+𝑁
2. Sensitivity atau Recall adalah persentase tuple positif yang dilabeli sebagai positif.
Rumusnya adalah sebagai berikut :
𝑇𝑃
𝑅𝑒𝑐𝑎𝑙𝑙 =
𝑃
3. Spesificity adalah porsi tuple negatif yang diklasifikasikan dengan benar. Rumus untuk
specivity adalah sebagai berikut :
𝑇𝑁
𝑆𝑝𝑒𝑠𝑖𝑓𝑖𝑐𝑖𝑡𝑦 =
𝑁
4. Precision adalah ukuran kepastian, yaitu berapa persentase tuple yang dilabeli sebagai
postif adalah benar pada kenyataannya. Rumus untuk precision adalah sebagai berikut :
𝑇𝑃
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑃 + 𝐹𝑃
4. Membuat kotak program Neural Net pada process Training dan kotak program Apply
Model serta kotak program Performance pada process Testing
Klik dua kali pada kotak program Cross Validation, kemudian pada bagian Operators
tuliskan Neural Net, setelah itu drag and drop ke dalam process Training. Setelah itu
hubungkan titik tra kepada titik tra pada kotak program SVM, dan hubungkan titik mod
pada kotak program Neural Net kepada mod. Setelah itu, pada bagian Operators tuliskan
Apply Model, kemudian lakukan drag and drop ke dalam process Testing, tuliskan
Performance (Binomial Classification) pada bagian Operators, kemudian drag and drop
ke dalam process Testing. Kemudian menghubungkan titik mod kepada titik mod pada
kotak program Apply Model dan titik tes kepada titik unl pada kotak program Apply Model.
Setelah itu, hubungkan titik lab pada kotak program Apply Model kepada titik lab pada
kotak program Performance. Kemudian menghubungkan titik per pada kotak program
Performance kepada per. Ilustrasinya adalah sebagai berikut :
5. Mengatur parameter yang akan digunakan pada Neural Net, dalam hal ini parameter Neural
Net.learning_rate dan Neural Net.momentum.
Klik satu kali pada kotak program Optimize Parameters (Grid), kemudian klik menu
Edit Parameters Setting. Setelah itu pilih Neural Net dan pilih parameter Neural
Net.learning_rate dan Neural Net.momentum. Untuk Neural Net.learning_rate, Setting
Grid minimumnya dengan angka 0.01 dan maksimumnya dengan angka 0.9. Untuk Neural
Net.momentum, Setting Grid minimumnya dengan angka 0.0 dan maksimumnya dengan
angka 1. Kemudian klik OK, dan jalankan Program tersebut. Setelah itu akan diperoleh
informasi sebagai berikut:
iteration Neural Net.learning_rate Neural Net.momentum accuracy
6 0.455 0 0.92
12 0.01 0.1 0.92
20 0.722 0.1 0.92
23 0.01 0.2 0.92
34 0.01 0.3 0.92
41 0.633 0.3 0.92
45 0.01 0.4 0.92
. . . .
. . . .
. . . .
120 0.811 1 0.64
114 0.277 1 0.64
117 0.544 1 0.62
121 0.9 1 0.54
115 0.366 1 0.52
118 0.633 1 0.5
Dari output di atas, dapat disimpulkan bahwa akurasi terbesar yang digunakan Neural
Net adalah 92% yang diperoleh pada iterasi ke-6 dengan menggunakan learning_rate
sebesar 0.455 dan momentum sebesar 0. Sedangkan akurasi terkecilnya adalah 50% yang
diperoleh pada iterasi ke-118 dengan menggunakan learning_rate sebesar 0.633 dan
momentum sebesar 1.
Kemudian untuk gambar di atas, dapat disimpulkan bahwa terdapat 23 tuple positif
yang dilabeli dengan benar oleh classifier, terdapat 23 tuple negatif yang dilabeli benar
oleh classifier, terdapat 2 tuple negatif yang dilabeli salah oleh classifier, dan terdapat 2
tuple positif yang dilabeli salah oleh classifier.
Nilai 92% menyatakan presisi yang menunjukkan bahwa 92% tuple yang dilabeli
sebagai positif adalah benar pada kenyataannya. Kemudian nilai 92% menyatakan recall
yang menunjukkan bahwa 92% tuple positif yang dilabeli sebagai positif. Nilai 92%
menyatakan spesificity yang merupakan porsi tuple negatif yang diklarifikasikan dengan
benar. Nilai 92% +/- 9.8% menyatakan akurasi yang menunjukkan bahwa 92% +/- 9.8%
jumlah tuple dalam data uji yang diklasifikasikan dengan benar oleh classifier.
Sedangkan untuk gambar di atas, diperoleh bahwa nilai AUCnya adalah 0.933 +/-
0.153, sehingga dapat disimpulkan bahwa pengklasifikasian menggunakan metode ANN
adalah sangat baik.
4. Membuat kotak program SVM pada process Training dan kotak program Apply Model
serta kotak program Performance pada process Testing
Klik dua kali pada kotak program Cross Validation, kemudian pada bagian Operators
tuliskan LibSVM, setelah itu drag and drop ke dalam process Training. Setelah itu
hubungkan titik tra kepada titik tra pada kotak program SVM, dan hubungkan titik mod
pada kotak program SVM kepada mod. Setelah itu, pada bagian Operators tuliskan Apply
Model, kemudian lakukan drag and drop ke dalam process Testing, tuliskan Performance
(Binomial Classification) pada bagian Operators, kemudian drag and drop ke dalam
process Testing. Kemudian menghubungkan titik mod kepada titik mod pada kotak
program Apply Model dan titik tes kepada titik unl pada kotak program Apply Model.
Setelah itu, hubungkan titik lab pada kotak program Apply Model kepada titik lab pada
kotak program Performance. Kemudian menghubungkan titik per pada kotak program
Performance kepada per. Ilustrasinya adalah sebagai berikut:
5. Mengatur parameter yang akan digunakan pada SVM, dalam hal ini parameter kernel type,
gamma, dan C.
Klik satu kali pada kotak program Optimize Parameters (Grid), kemudian klik menu
Edit Parameters Setting. Setelah itu pilih LibSVM dan pilih parameter SVM.kernel_type,
SVM.gamma, dan SVM.C. Untuk SVM.kernel_type, fungsi yang digunakan adalah linear,
poly, rbf, dan sigmoid. Untuk SVM.gamma, Setting Grid minimumnya dengan angka
0.125 dan maksimumnya dengan angka 8. Untuk SVM.C, Setting Grid minimumnya
dengan angka 0.1 dan maksimumnya dengan angka 100. Kemudian klik OK, dan jalankan
Program tersebut. Setelah itu akan diperoleh informasi sebagai berikut:
iteration SVM.kernel_type SVM.gamma SVM.C accuracy
41 linear 8 0.1 0.94
57 linear 2.4875 10.09 0.94
101 linear 2.4875 20.08 0.94
233 linear 2.4875 50.05 0.94
437 linear 8 90.01 0.94
441 linear 0.125 100 0.94
473 linear 6.425 100 0.94
. . . . .
. . . . .
. . . . .
475 rbf 6.425 100 0.4
476 sigmoid 6.425 100 0.4
479 rbf 7.2125 100 0.4
480 sigmoid 7.2125 100 0.4
483 rbf 8 100 0.4
484 sigmoid 8 100 0.4
Dari output di atas, dapat disimpulkan bahwa akurasi terbesar yang digunakan LibSVM
adalah 94% yang diperoleh pada iterasi ke-41 dengan menggunakan tipe kernel linear,
gamma sebesar 8, dan koefisien C sebesar 0.1. Sedangkan akurasi terkecilnya adalah 40%
yang diperoleh pada iterasi ke-483 dengan menggunakan tipe kernel rbf, gamma sebesar
8, dan koefisien C sebesar 100.
Kemudian untuk gambar di atas, dapat disimpulkan bahwa terdapat 23 tuple positif
yang dilabeli dengan benar oleh classifier, terdapat 24 tuple negatif yang dilabeli benar
oleh classifier, terdapat 2 tuple negatif yang dilabeli salah oleh classifier, dan terdapat 1
tuple positif yang dilabeli salah oleh classifier.
Nilai 92% menyatakan presisi yang menunjukkan bahwa 92% tuple yang dilabeli
sebagai positif adalah benar pada kenyataannya. Kemudian nilai 95.83% menyatakan
recall yang menunjukkan bahwa 95.83% tuple positif yang dilabeli sebagai positif. Nilai
92.31% menyatakan spesificity yang merupakan porsi tuple negatif yang diklarifikasikan
dengan benar. Nilai 94% +/- 9.66% menyatakan akurasi yang menunjukkan bahwa 94%
+/- 9.17% jumlah tuple dalam data uji yang diklasifikasikan dengan benar oleh classifier.
Sedangkan untuk gambar di atas, diperoleh bahwa nilai AUCnya adalah 0.983 +/- 0.05,
sehingga dapat disimpulkan bahwa pengklasifikasian menggunakan metode SVM adalah
sangat baik.
2.3 Kesimpulan
1. SVM menghasilkan nilai akurasi yang lebih besar dibanding menggunakan ANN. Nilai
akurasi yang diperoleh dengan menggunakan SVM adalah sebesar 94% +/- 9.17%,
sedangkan nilai akurasi yang diperoleh dengan menggunakan ANN adalah sebesar 92%
+/- 9.8%.
2. Dalam hal presisi, SVM menghasilkan nilai presisi yang sama dengan ANN, yaitu sebesar
92%.
3. Dalam hal recall, SVM menghasilkan nilai recall yang lebih besar dibanding ANN. Nilai
recall yang diperoleh dengan menggunakan SVM adalah sebesar 95.83%, sedangkan nilai
recall yang diperoleh dengan menggunakan ANN adalah sebesar 92%.
4. Dalam hal spesificity, SVM menghasilkan nilai recall yang lebih besar dibanding ANN.
Nilai spesificity yang diperoleh dengan menggunakan SVM adalah sebesar 92.31%,
sedangkan nilai spesificity yang diperoleh dengan menggunakan ANN adalah sebesar 92%.
5. Sedangkan dalam hal AUC, SVM menghasilkan nilai AUC yang lebih besar dibanding
ANN. Nilai AUC yang diperoleh dengan menggunakan SVM adalah sebesar 0.983 +/-
0.05%, sedangkan nilai AUC yang diperoleh dengan menggunakan ANN adalah sebesar
0.933 +/- 0.153%. Walaupun klasifikasi baik menggunakan SNN maupun SVM tergolong
sangat baik, tetapi SVM unggul dalam hal akurasi, recall, dan spesificity, sehingga
pengklasifikasian menggunakan SVM lebih baik dibanding menggunakan ANN.
DAFTAR PUSTAKA
dengan :
1 menyatakan technical skills
2 menyatakan management strategies