Klasifikasi sidik jari menggunakan support vector

advertisement
sampai 31. Nilai 0 artinya minutiae memiliki
sudut antara 0o sampai 11.25o. Nilai 1 artinya
minutiae memiliki sudut antara 11.25o sampai
22.50o, dan seterusnya sampai nilai 31.
Masing-masing jenis memiliki rentang yang
selisihnya 11.25o.
Klasifikasi
Klasifikasi dilakukan dengan menggunakan
classifier SVM dengan menggunakan kernel
RBF. Sebagai perbandingan akan dilakukan
juga klasifikasi menggunakan classifier KNearest Neighbour (KNN) dan Naïve Bayes.
Pengujian
Data diuji menggunakan metode pengujian
3-fold cross validation. Total data set akan
dibagi ke dalam 3 kelompok (fold). Kemudian
dilakukan proses training secara berulang.
Pada setiap pengulangan, 2 fold akan menjadi
data training, dan 1 lainnya menjadi data
testing. Proses ini dilakukan sebanyak 3 kali
sehingga semua fold pernah berperan sebagai
data training atau pun data testing. Dalam
setiap pengulangan akan dihitung nilai akurasi
sehingga akurasi akhir adalah rata-rata nilai
akurasi dari tiga kali pengulangan yang
dilakukan.
Keterangan:
t : Jumlah data (dalam data testing) yang
diklasifikasikan secara benar
n : Jumlah data testing
Evaluasi dan Analisis Hasil
Evaluasi dilakukan dengan melakukan
penghitungan nilai akurasi. Nilai akurasi
diperoleh dengan melakukan prediksi terhadap
data menggunakan model klasifikasi. Dari hasil
prediksi ini kemudian dihitung jumlah data
yang diklasifikasikan secara benar dan salah.
Evaluasi juga dilakukan dengan melihat kinerja
SVM dalam mengklasifikasikan citra sidik jari,
ketika dibandingkan dengan classifier yang
lain, seperti Naïve Bayes dan KNN.
feature-feature yang dicobakan dengan hasil
yang ditampilkan pada Tabel 3.
1. Feature 1, Jumlah BIF dan RIG setiap
region
Feature 1 mengambil karakterisitik dari
citra sidik jari, yaitu lokasi bifurcation dan
ridge ending. Untuk setiap region, dihitung
jumlah bifurcation dan ridge ending. Sehingga
feature 1 memiliki format:
b1,b2,…,b25,r1,r2,…,r25, C
Keterangan:
bk : Jumlah BIF pada region k
rk : Jumlah RIG pada region k
k : Region,
C : Kelas target citra sidik jari
2. Feature 2, jumlah jenis BIF/RIG setiap
region + jumlah jenis theta setiap region
Jenis BIF/RIG dikodekan dengan angka 0
sampai dengan 9. Jenis theta dikodekan dengan
angka 0 sampai dengan 31. Contoh
pengambilan data untuk feature ke 2
ditampilkan pada Gambar 10. Format penulisan
feature adalah sebagai berikut:
br01,br02,…,br025,br11,br12,…br125,
…br91,br92,…br925,
θ01, θ02,…, θ025, θ11, θ12,…,
θ125,…, θ311, θ 312,…, θ3125,C
Keterangan:
k
: Region,
brgk : Jumlah jenis BIF/RIG pada region
k,
θjk : Jumlah jenis theta h pada region k,
C
: Kelas target citra sidik jari
HASIL DAN PEMBAHASAN
Pemilihan Feature
Eksperimen pertama yaitu pemilihan
feature, menggunakan classifier SVM dengan
menggunakan kernel polynomial (poly kernel),
dan C = 1. Dalam eksperimen ini dilakukan
beberapa percobaan dengan menggunakan
feature yang berbeda. Berikut ini adalah
Gambar 10 Contoh pengambilan feature
jumlah jenis BIF/RIG setiap
region dan jumlah jenis theta
setiap region pada region 21.
7
Tabel 3 Hasil eksperimen pemilihan feature
Feature
Feature 1
Feature 2
Akurasi (%)
40.7
74.0
Keterangan:
Feature 1 : Jumlah BIF dan RIG setiap region
Feature 2 : Jumlah jenis BIF/RIG + Jumlah
jenis theta setiap region
Program yang Digunakan
Penelitian ini menggunakan
program sebagai berikut:
1.
2.
3.
4.
program-
Mindtct (eksternal)
Wsq2Min
Min2Arff
Weka 3.6.2 (eksternal)
Program-program tersebut digunakan dalam
proses yang berbeda dalam klasifikasi. Gambar
11 mengilustrasikan tentang proses klasifikasi
dan program yang digunakan.
jenis minutiae, kemiringan minutiae, dan
ketetanggaan antara minutiae satu dengan yang
lain.
Wsq2Min
adalah
program
yang
dikembangkan dalam penelitian ini dengan
bahasa Java. Program ini digunakan bersama
dengan program mindtct. Pada siklus hidupnya,
mindtct hanya dapat memroses satu file,
sehingga untuk memroses file wsq yang
jumlahnya lebih dari satu harus dilakukan
pemanggilan ulang terhadap program mindtct.
Agar proses ekstraksi dapat berjalan lebih cepat
dan cukup satu pemanggilan, mindtct perlu
dikombinasikan dengan Wsq2Min. Masukan
dari program Wsq2Min adalah directory
tempat file wsq berada, dan keluarannya adalah
file min.
Program Min2Arff adalah program yang
dikembangkan dalam penelitian ini juga
menggunakan bahasa Java. Program ini
berperan dalam proses pemilihan feature
untuk proses klasifikasi. Masukan untuk
program Min2Arff adalah file min, dan
keluarannya adalah file arff. File arff adalah
standar file yang digunakan oleh program
weka. File arff berisi informasi hasil ekstraksi
feature.
Weka adalah program dalam bahasa Java,
yang dibuat oleh Universitas Waikato. Weka
adalah program machine learning, yang
digunakan untuk melakukan teknik-teknik data
mining seperti klasifikasi dan clustering.
Masukan untuk program Weka adalah file arff,
dan keluarannya adalah model klasifikasi.
Model klasifikasi yang diperoleh akan
digunakan untuk memprediksi data ke dalam
kelas yang sudah ditentukan.
Pemilihan Classifier dan Konfigurasi
Parameter
Gambar 11 Proses klasifikasi dan program
yang digunakan.
Mindtct adalah program yang dibuat dalam
bahasa C oleh NBIS. Mindtct berperan dalam
proses ekstraksi citra sidik jari. Masukan dari
program mindtct adalah file citra berformat
wsq. Sedangkan keluarannya berupa file plain
text berekstensi min. File min memberikan
informasi jumlah minutiae, lokasi minutiae,
Dalam penelitian ini classifier yang
digunakan adalah SVM, KNN, dan Naïve
Bayes. Feature yang digunakan adalah feature
yang memberikan akurasi terbaik pada
eksperimen pertama yaitu feature yang
menggunakan jenis BIF/RIG setiap region dan
jumlah jenis theta setiap region. Hasil
perbandingan
nilai
akurasi
dengan
menggunakan beberapa classifier ditampilkan
pada Tabel 4.
8
Tabel 4
Hasil klasifikasi
classifier
Classifier
Naïve Bayes
KNN (K=15)
SVM
dari beberapa
Akurasi
56.1%
66.6%
77.5%
Dari eksperimen pemilihan classifier,
diperoleh kesimpulan bahwa classifier SVM
memberikan akurasi yang lebih baik
dibandingkan dengan classifier Naïve Bayes
dan KNN. Selanjutnya akan dilakukan
beberapa eksperimen dengan menggunakan
parameter pada SVM yang berbeda. Hasil
eksperimen konfigurasi parameter SVM
ditampilkan pada Tabel 5. Nilai akurasi terbaik
yaitu 79.7% diperoleh dengan menggunakan
kernel RBF (Gamma = 0.1) dan C = 10.
Tabel 5 Hasil eksperimen pemilihan parameter
pada SVM
A
B
C
D
E
F
1
RBF
1
0.01
-
76.8
2
RBF
10
0.01
-
77.8
77.5
3
RBF
20
0.01
-
4
RBF
30
0.01
-
76.7
75.9
5
RBF
50
0.01
-
6
RBF
100
0.01
-
75.4
7
RBF
10
0.05
-
78.7
8
RBF
10
0.1
-
79.7
9
Polynomial
10
-
1
73.2
10
Polynomial
10
-
2
79.4
11
Polynomial
10
-
3
79.5
Keterangan:
A : Nomor
B : Kernel
C : Constraint
D : Gamma
E : Eksponen
F : Akurasi (%)
memberikan informasi pergerakan lengkungan
sudut minutiae.
Feature jenis BIF/RIG dan theta akan
diekstrak dalam bentuk region. Dari percobaan
yang telah dilakukan region berukuran 5x5
memberikah akurasi yang lebih baik. Tabel 2,
menampilkan
hasil
percobaan
dengan
menggunakan variasi beberapa ukuran region.
Pemilihan ukuran region yang terlalu kecil
(sedikit), memberikan variasi yang kecil
sehingga arah pergerakan ridge tidak dapat
diidentifikasi lebih detail, sebaliknya region
yang lebih besar (banyak), akan menghasilkan
atribut pada instance menjadi banyak,
sehingga komputasi menjadi lebih berat.
Classifier yang digunakan adalah SVM
dengan menggunakan kernel RBF (gamma =
1.0) dan C = 10. Berdasarkan literatur yang
dipelajari, pada banyak kasus SVM
memberikan
hasil
yang
lebih
baik
dibandingkan dengan classifier yang lain
(Nugroho et al. 2005). Dalam penelitian ini
terbukti bahwa untuk seluruh data yang
dicobakan, SVM mampu mengklasifikasikan
secara benar lebih banyak jika dibandingkan
dengan Naïve Bayes
dan KNN. Hasil
klasifikasi dan sebaran citra sidik jari setiap
kelas dapat dilihat dengan memperhatikan
confusion matrix dalam Tabel 6.
Tabel 6 Confusion matrix dari klasifikasi citra
sidik jari dengan menggunakan
feature jumlah jenis BIF/RIG +
jumlah jenis theta dan classifier
SVM (gamma = 0.1) dan C=10
L
R
W
A
T
l
689
40
95
20
49
Kelas hasil klasifikasi
r
w
a
46
68
0
615
78
0
84
844
0
25
2
0
28
6
0
Keterangan:
L : Left loop
R : Right loop
W : Whorl
t
1
2
0
2
1
A : Arch
T : Tented Arch
Analisis
Feature untuk merepresentasikan citra
sidik jari diambil dari level ke dua sidik jari,
yaitu jumlah jenis BIF/RIG setiap region dan
jumlah jenis theta setiap region. Jumlah jenis
BIF/RIG mampu memberikan model atau pola
lokasi jenis minutiae dan hubungan minutiae
satu dengan yang lain. Jumlah jenis theta akan
Bagian baris (menggunakan huruf kapital)
adalah kelas yang sebenarnya. Sedangkan
bagian kolom (mengunakan huruf kecil)
adalah kelas hasil prediksi yang dilakukan
oleh model. Contoh pembacaan dari 804
instance Left loop, 689 instance yang
diidentifikasi sebagai Left loop, sedangkan 46
diidentifikasikan sebagai Right loop, 68
9
sebagai Whorl, 0 sebagai Arch, dan 1 yang
diidentifikasi sebagai Tented arch.
Dari confusion matrix pada Tabel 6 kita
mendapatkan
informasi
sebaran
hasil
klasifikasi untuk setiap kelas. Tabel 7
menunjukkan jumlah instance dan akurasi
untuk setiap kelas.
Tabel 7 Jumlah instance dan akurasi setiap
kelas
Kelas
L
R
W
A
T
Jumlah instance
804
735
1023
49
84
Akurasi (%)
85.7
83.7
82.5
0.0
1.2
Tabel 7 menunjukkan bahwa akurasi untuk
kelas Arch dan Tented Arch lebih kecil
dibanding dengan tiga kelas lainnya. Hal ini
berbanding lurus dengan jumlah instance kelas
tersebut yang jumlahnya relatif sedikit
dibanding kelas yang lain. Sehingga dapat
disimpulkan bahwa jumlah data training
berpengaruh terhadap tingkat akurasi.
Klasifikasi citra sidik jari menggunakan
SVM dengan feature berbasis minutiae,
memberikan akurasi 79.7%. Dalam penelitian
ini SVM memberikan model klasifikasi yang
lebih baik daripada classifier yang lain (KNN
dan Naïve Bayes).
Saran
Penelitian ini menghasilkan akurasi 79.7% .
Nilai tersebut masih dapat ditingkatkan dengan
mengevaluasi hal-hal berikut:
1. Model klasifikasi yang lebih baik dapat
diperoleh
dengan
mengoptimalkan
praproses pada citra.
2. Feature yang digunakan dapat dipilih dari
feature global pada citra sidik jari dengan
menggunakan gabor filter (Munir & Javed
2004).
3. Untuk mendapatkan model yang robust
pada setiap kelas, jumlah data training
setiap kelas harus sama.
4. Optimasi
parameter
SVM
dengan
mengevaluasi fungsi algoritme genetika
atau particle swam optimization.
DAFTAR PUSTAKA
KESIMPULAN DAN SARAN
Kesimpulan
Feature yang digunakan berasal dari
feature lokal sidik jari, yaitu feature berbasis
minutiae. Pada penelitian ini, feature yang
dapat memberikan representasi sidik jari paling
baik adalah dengan menggunakan jumlah jenis
BIF/RIG setiap region dan jumlah jenis theta
setiap region. Jumlah jenis BIF/RIG akan
memberikan
model
sebaran
minutiae,
sedangkan theta akan memberikan model arah
pergerakan minutiae.
Dari literatur yang dipelajari, pada banyak
kasus SVM mampu memberikan model
klasifikasi yang lebih baik dibandingkan
dengan classifier yang lain (Nugroho et al.
2005). Berhubungan dengan hal ini, SVM
digunakan untuk inisialisasi classifier pada
proses pemilihan feature. Setelah dilakukan
perbandingan dengan Naïve Bayes dan KNN,
SVM dapat mengklasifikasikan lebih baik di
antara yang lain. Beberapa parameter dipilih
dan ditentukan untuk mendapatkan model yang
lebih baik. Ada dua parameter yang harus
ditentukan, yaitu nilai C dan kernel. Dengan
menggunakan metode coba-coba, model
terbaik diperoleh dengan menggunakan nilai C
= 10 dan kernel RBF, dengan gamma = 0.1.
Cristianini N, Taylor JS. 2000. An Introduction
to Support Vector Machines and Other
Kernel
Based
Learning
Methods.
Cambridge University Press.
Dass SC, Jain AK. 2004. Fingerprint
Classification Using Orientation Field Flow
Curves. Michigan State University: Proc.
Indian Conference on Computer Vision,
Graphics and Image Processing; Kolkata
16-18 Desember 2004. Kolkata: Allied
Publishers. hlm 650-655.
Gonzales RC, RE Woods. 2002. Digital Image
Processing. Ed. ke-2. New Jersey: Prentice
Hall.
Guvenir HA, Demiroz G, Ilter N. 1998.
Learning
Differential
Diagnosis
of
Erythemato-squamous Diseases Using
Voting Feature Intervals. [tesis]. Ankara:
Departemen of Computer Engeneering and
Information Science, Bilkent University.
Jain AK, Pankanti, S 2000. Fingerprint
Classification and Matching. Di dalam:
Bovik AC, editor. Handbook of Image and
Video Processing. Austin: Academic Press.
Lee HC, Gaensslen RE. 2001. Advances in
Fingerprint Technology. Ed. ke-2. New
York: CRC Press.
10
Download