JURNAL APLIKASI FISIKA VOLUME 7 NOMOR 1 FEBRUARI 2011

Download JURNAL APLIKASI FISIKA. VOLUME 7 NOMOR 1. FEBRUARI 2011. 1. Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan. Dengan Metode ...

0 downloads 405 Views 438KB Size
JURNAL APLIKASI FISIKA

VOLUME 7 NOMOR 1

FEBRUARI 2011

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan Dengan Metode Pembelajaran Backpropagation Arifin, Okvian Tumanan Universitas Hasanuddin Alamat : Jl. Perintis Kemerdekaan Km.10 Abstrak Pada penelitian ini digunakan jaringan saraf tiruan metode propagasi balik untuk mengidentifikasi sidik jari. Sebelum masuk ke dalam jaringan, citra sidik jari mengalami proses ekstraksi ciri untuk mendapatkan ciri penting dari citra. Hasil dari proses ini adalah sebuah matriks 1 x 19 yang kemudian menjadi masukan pada jaringan propagasi balik. Jaringan yang digunakan memiliki 4 layar, antara lain layar masukan dengan 19 neuron, layar tersembunyi pertama dengan 73 neuron, layar tersembunyi ke-dua dengan 95 neuron dan layar keluaran dengan 4 neuron. Hasil evaluasi menunjukkan jaringan mampu mengenali 100% dari 320 data latih dan 79,37% dari 160 data uji. Kata kunci: Jaringan saraf tiruan, propagasi balik, sidik jari. Backpropagation method of Artificial neural network was used in this research to identificate personal fingerprint. Before proced in artificial neural network, the fingerprint image was ekstracted to get the importance fiture of the image. From this fiture ekstraction, backpropagation network got the 1 x 19 matrix wich would be the input for backpropagation network. This network has 4 layer, they are input layer with 19 neuron, the first hidden layer with 73 neuron, the second hidden layer with 95 neuron, and output layer with 4 neuron. The evaluation results show that network could recognize 100% of 320 training data, and 79.37% of 160 testing data. Keywords: Artificial neural network, backpropagation, fingerprint.

perbankan, militer, kepolisian dan lainnya. Untuk tujuan ini berbagai teknik identifikasi sidik jari telah dikembangkan, baik itu dengan cara manual ataupun dengan cara digital. Karena fiture pola sidik jari yang begitu kompleks dan padat, maka proses pengidentifikasian sidik jari dibantu dengan metode-metode komputasi yang mampu mengekstraksi ciri khusus dari sidik jari. Untuk memenuhi syarat ini digunakan metode jaringan saraf tiruan yang telah terbukti handal dalam proses pengidentifikasian pola gambar, termasuk gambar sidik jari.

1. Pendahuluan Identifikasi biometrik didasarkan pada karakteristik alami manusia, yaitu karakteristik fisiologis dan karakteristik perilaku seperti wajah, sidik jari, suara, telapak tangan, iris dan retina mata, DNA, dan tanda tangan. Identifikasi biometrik memiliki keunggulan dibanding dengan metode konvensional dalam hal tidak mudah untuk dipalsukan(2). Sidik jari merupakan salah satu karakteristik fisiologis yang sampai saat ini paling banyak digunakan untuk pengidentifikasian personal, hal ini disebabkan oleh karena sidik jari memiliki sifat yang permanen dan tidak pernah berubah kecuali mendapatkan kecelakaan yang serius, dan juga sidik jari unik untuk setiap orang. Dari sifatsifat ini, sidik jari dapat digunakan sebagai sistem identifikasi yang dapat digunakan dalam aplikasi teknologi informasi misalnya sebagai keamanan akses pada suatu daerah atau sistem, database untuk kepentingan

2. Jaringan Saraf Tiruan Jaringan saraf tiruan (artificial neural network) atau disingkat JST, adalah sistem komputasi di mana arsitektur dan operasi diilhami dari pengetahuan tentang sel saraf biologis didalam otak dan juga merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba mensimulasi

1

2

JAF, Vol. 7 No. 1 (2011), 1-11

proses pembelajaran pada otak manusia tersebut. JST dapat digambarkan sebagai model matematis dan komputasi untuk fungsi aproksimasi non-linear, klasifikasi data cluster dan regresi non-para-metrik. Sebuah simulasi dari model saraf biologi didasarkan pada asumsi sebagai berikut[1]: 1. Pemrosesan informasi terjadi pada elemen sederhana yang disebut neuron. 2. Isyarat mengalir di antara sel saraf atau neuron melalui suatu sambungan penghubung. 3. Setiap sambungan penghubung memiliki bobot yang bersesuaian. Bobot ini akan digunakan untuk menggandakan/mengalikan isyarat yang dikirim melaluinya. 4. Setiap sel saraf akan menerapkan fungsi aktifasi terhadap isyarat hasil penjumlahan berbobot yang masuk kepadanya untuk menentukan isyarat keluarannya. Sistem jaringan saraf tiruan juga disebut brain metamorph, computational neuroscience, atau parallel distributed processing serta conection. Jaringan saraf tiruan tersusun dari sejumlah besar elemen yang melakukan kegiatan yang analog dengan fungsi-fungsi biologis neuron yang paling elementer. Jaringan saraf tiruan dapat belajar dari pengalaman, melakukan generalisasi atas contoh-contoh yang diperolehnya dan mengabstraksi karakteristik esensial input bahkan untuk data yang tidak relevan(3). Berbeda dengan metode lain, algoritma untuk jaringan saraf tiruan beroperasi secara langsung dengan angka sehingga data yang tidak numerik harus dirubah menjadi data numerik. Dibandingkan dengan cara penghitungan konvensional, jaringan saraf tiruan tidak memerlukan atau mengunakan suatu model matematik atas permasalahan yang dihadapi. Oleh karena itu jaringan saraf tiruan juga dikenal sebagai model free-estimator[7]. Algoritma pelatihan jaringan saraf perambatan galat mundur terdiri atas dua langkah, yaitu perambatan maju dan perambatan mundur. Langkah perambatan maju dan perambatan mundur ini dilakukan pada jaringan untuk setiap pola yang diberikan

selama jaringan mengalami pelatihan. Jaringan perambatan galat mundur terdiri atas tiga lapisan atau lebih unit pengolah. Gambar 1 menunjukkan jaringan perambatan galat mundur dengan tiga lapisan pengolah, bagian kiri sebagai masukan, bagian tengah disebut sebagai lapisan tersembunyi dan bagian kanan disebut lapisan keluaran. Ketiga lapisan ini terhubung secara penuh.

X

Y

Z

X

Y

Z

X

Y

Z

X

Y

Z

Gambar 1 Jaringan Backpropagation dengan tiga lapisan

Perambatan maju dimulai dengan memberikan pola masukan ke lapisan masukan. Pola masukan ini merupakan nilai aktivasi unit-unit masukan. Dengan melakukan perambatan maju dihitung nilai aktivasi pada unit-unit di lapisan berikutnya. Pada setiap lapisan, tiap unit pengolah melakukan penjumlahan berbobot dan menerapkan fungsi sigmoid untuk menghitung keluarannya. Untuk menghitung nilai penjumlahan berbobot digunakan rumus(5): n

Sj

w0

ai w ji

(1)

i 0

Dengan: a i

masukan yang berasal dari unit

i , w ji = bobot sambungan dari unit i ke unit

j , dan w 0 = bias. Setelah nilai S j dihitung, fungsi sigmoid diterapkan pada S j untuk

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan……….……..(Arifin dkk)

membentuk

f ( S j ) . Fungsi sigmoid ini

mempunyai persamaan[5]:

f (S j )

1 1 e

sj

(2)

Hasil perhitungan f ( S j ) ini merupakan nilai aktivasi pada unit pengolah j . Nilai aktivasi ini dikirimkan ke seluruh unit keluaran dengan melakukan penjumlahan berbobot seperti halnya dari masukan ke lapisan tersembunyi j , kemudian diaktivasi dengan fungsi sigmoid. Setelah perambatan maju selesai dikerjakan maka jaringan siap melakukan perambatan mundur[1]. Hal yang dilakukan pada langkah perambatan mundur adalah menghitung galat dan mengubah bobot-bobot pada semua interkoneksinya. Di sini galat dihitung pada semua unit pengolah dan bobotpun diubah pada semua sambungan. Perhitungan dimulai dari lapisan keluaran dan mundur sampai lapisan masukan. Hasil keluaran dari perambatan maju dibandingkan dengan target jaringan. Berdasarkan perbedaan ini kemudian dihitung galat untuk tiap-tiap lapisan pada jaringan. Galat didapatkan dengan menghitung selisih antara nilai target dengan keluaran jaringan.

error t o output

(3)

Nilai error ini akan digunakan untuk menghitung Sum Square Error (SSE). Nilai SSE inilah yang nantinya akan menentukan apakah perhitungan akan dilanjutkan atau dihentikan. Perhitungan akan dilanjutkan jika nilai SSE keluaran lebih besar dari SSE yang sudah ditentukan, dihentikan jika lebih kecil dari galat yang ditentukan [7].

3.

3

Pola Sidik Jari

Sidik jari yang dimiliki oleh setiap orang adalah unik dan tidak ada sidik jari yang sama, sehingga sidik jari dapat dikatakan sebagai identitas diri seseorang. Berdasarkan klasifikasi yang telah dikembangkan hingga saat ini, sidik jari dapat dikelompokkan dalam tiga pola kelompok besar, antara lain arch, loop, dan whorl. Ketiga pola sidik jari ini, masih dibagi kedalam sub-sub pola yang lebih khusus

Whorl

Arch

Loop

Gambar 2. Tiga kelompok besar sidik jari

Pola sidik jari Whrol terbagi atas lima sub pola, yaitu Plain Whorl, Sentral Pocket Loop, Double Loop, Accidental, dan Eternal Pocket. Pola sidik jari Arch terbagi atas dua sub pola, yaitu Plain Arch, dan Tented Arch. Pola sidik jari Loop juga terbagi atas dua sub pola, yaitu Ulnair Loop, dan Radial Loop. Di samping pola yang sudah disebutkan, keunikan sidik jari juga didukung oleh adanya fitur sidik jari yang berupa guratan-guratan khusus yang disebut “minutiae”. 4. Metode Penelitian Penelitian dilakukan dalam beberapa tahap yaitu: proses pengambilan data, proses pengolahan citra, proses pelatihan JST, dan proses pengujian. Proses pengambilan data hingga pada proses pelatihan jaringan sajikan pada gambar 3.

4

JAF, Vol. 7 No. 1 (2011), 1-11

Proses pelatihan JST

Proses pengolahan citra

JST

Hasil

Proses pengujian

Gambar 3. Diagram Blok proses identifikasi sidik jari

Scan gambar

Numerik ciri

Ekstraksi ciri

Penentuan derajat keabuan

Partisi gambar

Filterisasi gambar

Binerisasi gambar

Gambar 4. Diagram blok Proses pengolahan citra

Proses pengolahan gambar sidik jari diawali dengan pengambilan sidik jari. Gambar sidik jari diambil dengan menggunakan tinta stempel, lalu ditempelkan pada kertas yang memiliki permukaan rata dan tidak menyerap tinta stempel, agar gambar tidak terhambur. Jumlah gambar sidik jari yang diambil dari setiap orang berjumlah 30 gambar, 20 data di antaranya akan menjadi data pelatihan, dan sisanya akan menjadi data pengujian. Setelah dicetak gambar kemudian discan untuk menjalani proses selanjutnya. Sebelum gambar diidentifikasi di dalam jaringan saraf tiruan, terlebih dahulu gambar harus melewati beberapa langkah pengolahan yang antara lain adalah seperti yang terlihat dalam gambar 4. Penentuan derajat keabuan dilakukan dengan mengubah piksel-piksel gambar ke dalam bentuk numerik. Nilai dari derajat abuan itu sendiri berkisar antara 0 sampai 255[4].

Setelah menentukan derajat keabuan, gambar tersebut kemudian difilter untuk mendapatkan gambar yang lebih halus. Setelah gambar melalui proses ini, maka akan didapatkan hasil gambar yang terlihat jelas guratannya. Gambar yang telah difilter kemudian dirubah ke dalam bentuk biner, untuk memperoleh citra hitam putih. Cara yang kita gunakan adalah dengan menentukan nilai batas derajat keabuan(8). Dalam penelitian ini digunakan nilai batas derajad keabuan 70, dengan ketentuan bahwa di atas nilai batas derajat keabuan bernilai 1 atau berwarna putih, sedangkan di bawah nilai batas derajat keabuan bernilai 0 atau hitam. Partisi gambar sidik jari dilakukan dengan membagi gambar menjadi 19 bagian dengan cara sebagai berikut: citra dibagi dua secara vertikal dan horizontal, citra dibagi tiga secara vertikal dan horizontal, dan citra dibagi

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan……….……..(Arifin dkk)

sembilan. Dari setiap bagian citra kita mencari pola-pola yang cocok dengan fiture yang dimiliki oleh sidik jari. Fiture ini sendiri akan dinyatakan dalam bentuk nilai numerik. Untuk setiap pola fiture, kita menghitung jumlah kemunculannya dari partisi gambar, kemudian mencari fiture rata-rata dari semua pola fiture yang muncul. Nilai fiture rata-rata inilah yang nantinya akan digunakan sebagai masukan pada jaringan saraf tiruan, sehingga diperoleh sejumlah 19 masukan pada jaringan[4]. Proses pelatihan bertujuan mendapatkan bobot-bobot interkoneksi, di mana bobot-bobot digunakan pada proses pengenalan sidik jari. Satu orang yang sidik jarinya dipelajari oleh jaringan mempunyai satu matriks bobot hasil belajar. Proses pelatihan pada metode backpropagation dilakukan berulang kali hingga beberapa kali iterasi. Jumlah iterasi untuk mendapatkan bobot yang tepat, tergantung pada matriks bobot awal yang

5

digunakan. Sedangkan lamanya iterasi tergantung dari kemampuan memori komputer untuk melakukan komputasi.[1] Proses pengujian Proses pengujian jaringan dilakukan dua tahap[3] 1. Tahap pertama menguji memori jaringan dengan menggunakan data pelatihan. 2. Tahap kedua menguji kemampuan generalisasi jaringan dengan beberapa data sidik jari yang lain dari sumber yang sama. Perancangan Sistem Dalam perancangan sistem pengidentifikasian pola sidik jari dengan jaringan saraf tiruan, digunakan matlab 6.5 sebagai alat bantu komputasi. Proses perancangan ini dibagi dalam tiga tahap, sistem pemrosesan awal, sistem pelatihan jaringan, dan sistem pengujian.

Mulai Inisialisasi bobot

Masukkan Data pelatihan

Hitung keluaran sistem

SSE>newSSE Uji syarat Berhenti SSE

Perubahan bobot

SSE
Selesai Gambar 5. Proses pelatihan jaringan

6

JAF, Vol. 7 No. 1 (2011), 1-11

5. Hasil dan Pembahasan Presentasi hasil yang diperoleh dari penelitian ini meliputi hasil pengolahan awal data masukan, hasil aktivitas pelatihan jaringan yang telah dilakukan, juga meliputi hasil pengujian data latih untuk tiap jaringannya dan juga hasil pengujian data uji untuk mengevaluasi kemampuan jaringan dalam melakukan generalisasi pola. Praproses Metode praproses digunakan untuk mendapatkan ciri khusus dari sebuah karakter sidik jari. Oleh karenanya diperlukan suatu metode ekstraksi ciri yang mampu menjadi representasi untuk setiap karakter sidik jari. Gambar sidik jari yang diambil dari para responden dengan menggunakan tinta stempel berwarna hitam dan di cetak langsung pada kertas dengan permukaan yang tidak menyerap cairan lalu discan dengan resolusi 250 dpi. Gambar diberi nama dengan angka numerik dengan ekstensi JPEG. Dua angka pertama menunjukkan identitas karakter sidik jari, dua angka kedua menunjukkan urutan sidik jari pada identitas sidik jari tertentu. Gambar hasil scan kemudian diproses dalam suatu sistem praproses yang meliputi filterisasi gambar.

Kemudian gambar yang telah mengalami filterisasi itu dirubah ke dalam bentuk biner dengan nilai batas tertentu. Setelah itu gambar dipartisi sesuai dengan porsi yang telah ditentukan, yaitu citra dibagi dua secara vertikal dan horizontal, citra dibagi tiga secara vertikal dan horizontal, dan citra dibagi sembilan, seperti yang diperlihatkan oleh Gambar 6. Setelah mengalami pemotongan, pada setiap potongan gambar dilakukan ekstraksi ciri sesuai dengan fiture yang telah ditentukan. Ekstraksi ciri dilakukan dengan memetakan fiture yang telah dibuat pada gambar sidik jari dengan menggunakan fungsi FFT dan fungsi infersnya IFFT. Sebelumnya telah dicoba metode pencarian secara beruntun, namun cara ini memakan begitu banyak waktu, sehingga proses yang ditanganninya menjadi tidak efisien. Selain itu pula metode pencarian secara beruntun membuat prosesor bekerja keras dan cepat menjadi panas. Fungsi FFT bekerja dengan menganggap semua angka numerik dalam gambar sidik jari, kecuali fiture yang dipetakan adalah noise, sehingga fiture dapat dipetakan dengan sedikit lebih cepat dan tidak terlalu membebani prosesor[2]

Gambar 6. Hasil proses partisi gambar sidik jari

Pelatihan Jaringan Jumlah data latih yang digunakan untuk pelatihan adalah sebesar 20 data latih

untuk setiap karakter sidik jari, sehingga total data latih yang diproses dalam jaringan adalah 320 data latih. Proses pelatihan dilakukan

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan……….……..(Arifin dkk)

secara bertahap, dengan tujuan menjajaki kemampuan jaringan mengenali karakter sidik jari dengan jumlah data pelatihan tertentu. Pelatihan dilakukan dengan 4 sampai 20 data latih untuk setiap karakter sidik jari. Untuk menentukan parameter yang akan digunakan dalam jaringan, dilakukan empat kali proses pelatihan dengan menjadikan parameterparameternya sebagai variabel. Tabel 1. Pelatihan dengan learning rate increase sebagai variabel lr Increase

7

ditunjukkan oleh range 0.1 hingga 0.9. Hal ini ditunjukkan oleh kemampuan jaringan mencapai konvergensi dengan cepat pada range itu. Ini dapat dilihat pada besar SSE yang dicapai. Pada learning rate decrease dengan nilai 1 dan 1.3 di atas pelatihan dihentikan dengan paksa karena besar learning rate dan nilai SSE tidak mengalami perubahan. Tabel 3 Pelatihan dengan konstanta momentum sebagai variabel Me

epoch

lr

SSE

Ket

1

20000

0.0049

0.197573

tdk Konvergen

0.3

5000

0.326752

0.0389279

tdk Konvergen tdk Konvergen

1.01

2161

14.2355

0.00199676

Konvergen

0.6

4997

5.03823

0.0389279

Konvergen

1.03

2347

27.0332

0.00198818

Konvergen

0.9

3658

0.0019999

1.04

4432

16.95

0.0019991

Konvergen

1

1600

2.14405 0.004263 5

Konvergen tdk Konvergen

1.05

3711

13.485

0.00199963

Konvergen

1.07

4492

0.969623

0.00199649

Konvergen

1.09

4654

5.08923

0.00199949

Konvergen

1.1

4452

1.25129

0.0019923

Konvergen

1.4

8713

14.9478

0.0019996

Konvergen

epoch

lr

SSE

Ket

0

5000

0.075893

0.154219

Tabel 1 metunjukkan pelatihan dengan learning rate increase yang berkisar antara 1.01 sampai 1.4, dan nilai pelatihan terbaik terdapat pada range 1.01 sampai 1.1. Hal ini dikarenakan jaringan mampu mencapai konvergensi dengan waktu yang cepat pada renge itu. Ini bisa dilihat pada besar epoch yang dicapai dan kemampuannya mencapai konvergensi yang ditunjukkan oleh nilai SSE yang dicapai. Tabel 2. Pelatihan dengan learning rate decrease sebagai variabel lr decrease

epoch

lr

SSE

Ket

0.1

2436

62.2556

0.0019764

Konvergen

0.3

4882

17.2471

0.00199392

Konvergen

0.5

2299

12.7596

0.00199985

Konvergen

0.7 0.9

4098 4958

23.6516 30.7831

0.00199627 0.00198862

1

4700

0.0171034

34.1904

1.3

4600

0.0105

52.5259

Konvergen Konvergen tdk Konvergen tdk Konvergen

Tabel 2 menunjukkan pelatihan dengan learning rate decrease yang berkisar antara 0.1 sampai 1.3, dan nilai pelatihan terbaik

70

Tabel 3 menunjukkan pelatihan dengan konstanta momentum yang variatif dari 0 sampai 1, dan kinerja pelatihan terbaik ditunjukkan oleh range 0.6 sampai 0.9. Ini ditunjukkan oleh kemampuan jaringan mencapai konvergensi dengan cepat berada pada range itu. Pada epoch 1600 pelatihan dengan nilai momentum 1 dihentikan dengan paksa, karena nilai learning rate dan SSE tidak menunjukkan perubahan. Tabel 4 Pelatihan dengan maximum error ratio sebagai variabel Mer

epoch

lr

SSE

Keterangan tdk Konvergen

0.9

5000

4.94066

47.7827

1

3109

52.1575

0.00198769

Konvergen

1.01

3189

39.6499

0.00199052

Konvergen

1.02

3907

23.1402

0.00199243

Konvergen

1.03

2275

40.1956

0.00198898

Konvergen

1.04

3262

36.9452

0.001999129

Konvergen

1.06

5000

7.93568

0.00215642

Konvergen

1.08

4053

1.3658

0.00198978

Konvergen

1.1

3552

5.62248

0.00199869

Konvergen

1.3

4839

27.4233

0.00199577

Konvergen

1.5

3069

29.3425

0.00199625

Konvergen

1.8

4018

7.15138

0.00199932

2

1550

2.96222

77

Konvergen tdk Konvergen

Tabel 4 menunjukkan pelatihan dengan maximum error ratio berkisar antara 0.9

8

JAF, Vol. 7 No. 1 (2011), 1-11

sampai 2, dan range dengan kinerja pelatihan terbaik terdapat pada range 1 sampai 1.8. hal ini disebabkan karena pada nilai 0.9 ke bawah dan nilai 2 keatas menyebabkan perubahan learning rate menjadi tidak stabil. Sebagai dasar pemilihan jumlah layar tersembunyi dan jumlah neuron pada tiap layar tersembunyi tersebut dilakukan beberapa pelatihan yang melibatkan tujuh karakter sidik jari , dan tiap karakter digunakan tujuh sidik jari. Data pelatihan itu tercatat pada Tabel 5 dan Tabel 6 berikut ini.

kerja jaringan, jumlah neuron pada pada layar tersembunyi dipilih dengan jumlah yang tidak terlalu besar agar prosesor yang digunakan tidak terbebani oleh perhitungan yang sangat lama. Hasil pelatihan yang menampilkan jumlah epoch yang dicapai berdasarkan jumlah data latih untuk tiap karakter di presentasikan pada Tabel 7 berikut ini. Tabel 7. Epoch yang dicapai pada tiap pelatihan Jumlah data latih

Epoch (iterasi)

4 Data latih

8168

6 Data latih

17730

8 Data lath

86665

10 Data latih

82670

12 Data latih

123480

14 Data latih

346697

16 Data latih

595950

18 Data latih

856341

20 Data latih

870335

Tabel 5 Pelatihan dengan satu layar tersembunyi Pelatihan dengan satu layar tersembunyi Hidden layer Epoch 70 51234 73 41669 80 61797 90 29238 100 25372

Tabel 6 Pelatihan dengan dua layar tersembunyi

1000000 900000

75

95

3566

80

100

3425

90 95

110 105

2322 2800

95

115

2793

100

120

3172

105

125

2509

Data pada Tabel 5 di atas merupakan pelatihan dengan satu layar tersembunyi sedangkan data pada Tabel 6 merupakan pelatihan dengan dua layar tersembunyi. Data menunjukkan bahwa pada penelitian ini dibutuhkan ukuran jaringan yang besar sehingga proses pelatihan dapat berlangsung dengan cepat. Namun untuk mengefisienkan

800000 700000 Epoch

Pelatihan dengan dua layar tersembunyi Hidden layer 1 Hidden layer 2 Epoch 50 75 5075 55 80 3725 60 85 5157 60 90 3647 65 90 3009 70 90 3736 73 95 2073

600000 500000 400000 300000 200000 100000 0 0

5

10

15

20

25

Data latih

Gambar 7. Grafik hubungan antara jumlah data latih dengan epoch yang dicapai

Pada Gambar 7 terlihat bahwa jaringan mencapai SSE yang diinginkan pada iterasi yang ke 8168, dengan nilai learning rate yang fluktuatif dan cenderung meningkat. Dari data di atas (Tabel 7) secara umum dapat dilihat bahwa semakin besar data latih yang digunakan, maka jaringan akan semakin lama mencapai konvergensi. Hal ini ditunjukkan dengan peningkatan nilai Epoch yang dicapai seiring dengan peningkatan data pelatihan. Dilakukan pula proses pelatihan dengan menggunakan jumlah data masukan yang bervariasi, dengan tujuan untuk menemukan jumlah masukan yang ideal agar jaringan mampu mengakuisisi data. Tahapan

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan……….……..(Arifin dkk)

pelatihannya sendiri dimulai dengan empat data masukan, tujuh data masukan, sembilan data masukan, sepuluh data masukan dan

9

sembilan belas data masukan ini dapat dilihat pada Tabel 9.

Gambar 8. Hasil pelatihan dengan epoch 8168

X1

Y1

Z1

O1

X2

Y2

Z2

O2

X3

Y3

Z3

O3

Z95

O4

X19

Y73

Gambar 9. Arsitektur Backpropagation dengan 2 layar tersembunyi

Proses pelatihan menggunakan fungsi toolbox Matlab trainbpx, dengan fungsi awal untuk inisialisasi bobot dan bias adalah initff. Fungsi trainbpx merupakan toolbox backpropagation dengan menyertakan

momentum dan angka pembelajaran yang adaptif, yang berfungsi untuk mempercepat terjadinya konvergensi. Fungsi initff merupakan toolbox backpropagation yang digunakan untuk menginisialisasi bobot dan

10

JAF, Vol. 7 No. 1 (2011), 1-11

bias dengan algoritma Nyugen-Windrow, dimana inisialisasi dilakukan secara acak dalam rentang nilai tertentu. Adapun jumlah lapisan tersembunyi dan jumlah neuron yang ada dalam tiap lapisan disesuaikan dengan jumlah data latih yang diproses, semakin besar jumlah data latih yang digunakan, maka semakin besar pula jumlah neuron yang dilibatkan dalam jaringan.[1]

Pengujian Jaringan Berdasarkan jumlah data latih yang diproses secara bertahap, didapatkan kemampuan generalisasi jaringan pada data uji seperti yang tercantum pada Tabel 8 berikut ini.

Tabel 8. Hasil pengujin dengan jumlah data latih yang beragam Jumlah data uji yang dikenali dari 10 data uji

Jumlah data latih

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

p

4 data latih

1

2

3

4

3

2

0

1

4

0

5

4

2

4

3

4

24.37

6 data latih

4

2

3

4

6

2

2

3

5

0

5

4

4

4

3

4

34.37

%

8 data latih

4

2

6

3

8

2

4

6

2

5

5

7

2

5

5

6

45

10 data latih

6

3

6

5

8

3

5

5

7

6

5

6

3

3

5

4

50

12 data latih

5

4

6

4

10

4

7

7

8

6

4

9

7

3

2

6

57.5

14 data latih

6

6

4

4

10

3

7

7

6

6

5

6

5

4

2

7

55

16 data latih

7

8

7

7

9

4

7

7

8

8

6

6

6

2

4

7

64.37

18 data latih

8

9

7

7

9

4

8

9

9

7

7

10

6

4

5

8

73.12

20 data latih

10

10

8

7

10

4

10

9

9

8

7

10

7

4

5

9

79.37

yang digunakan untuk tiap karakter sidik jari adalah sepuluh dengan data uji sepuluh. Persentase pengujian data uji (%)

Proses pengujian pada data latih menghasilkan presentase 100 persen dari total 320 karakter sidik jari, sementara dari data yang diperoleh pada Tabel 8 di atas, didapatkan bahwa jaringan mampu mengenali data uji sebesar 79,37% dari total 160 data yang diujikan. Jadi presentase total yang diperoleh dari pengujian data latih dan data uji adalah 93.12%. Secara umum kemampuan jaringan dalam mengenali pola uji ditentukan dari banyaknya pola pelatihan yang dimasukkan dalam jaringan. Semakin besar data latih yang digunakan maka kemampuan jaringan untuk mengenali data uji semakin besar, kecuali pada 12 data latih dan 14 data latih yang menalami penurunan. Hal ini biasanya terjadi jika data tambahan yang masuk menyerupai data sidik jari yang lain. Dalam kasus pengenalan sidik jari ini digunakan data 20 sidik jari untuk tiap karakter, jadi total sidik jari yang dilatihkan adalah 20 x 16 sidik jari atau 320 gambar sidik jari. Tabel 9 menunjukkan persentase pengenalan data uji dengan data latih yang memiliki masukan yang berubah. Data latih

90 80 70 60 50 40 30 20 10 0 0

5

10

15

20

25

Data Latih

Gambar 10. Grafik jumlah data latih dengan persentase pengujian dengan data uji Tabel 9. Hasil pengujian dengan jumlah masukan yang bervariasi. Jumlah neuron masukan 4 7

Jumlah data uji yang dikenali a

b

c

7 8

5 7

7 9

% 63.3 80

9 10

8 8

8 7

9 9

83.3 80

19

9

8

9

86.7

Pengenalan Pola Sidik Jari Menggunakan Jaringan Saraf Tiruan……….……..(Arifin dkk)

Data pada Tabel 9 menggambarkan kemampuan jaringan yang semakin membesar jika data masukan semakin besar. Namun kita harus membatasi jumlah masukan dalam jumlah tertentu sehingga jaringan dapat bekerja dengan maksimal tanpa mengurangi kecepatannya dalam mencapai konvergensi. Selain data pelatihan dan proses pelatihan, keberhasilan pelatihan jaringan juga ditentukan oleh metode pengambilan dan kualitas gambar, karena jaringan mengenali pola sidik jari dari fitur pola matriks yang dipetakan pada sidik jari. Adanya data yang tidak dikenali oleh jaringan lebih banyak disebabkan oleh gambar yang tidak begitu bagus, dalam hal ini miring, keluar garis, gambar yang terhambur karena jari yang basah pada saat proses pencetakan dan beberapa sebab lain. Selain itu pula proses ekstraksi ciri juga memegang peranan penting, khususnya dalam hal kecepatan konvergensi. Jaringan akan mampu mencapai konvergensi jika ciri yang diekstraksi dari satu sidik jari mempunyai range yang besar dari sidik jari yang lain, karena pada saat proses pelatihan, yang dilakukan jaringan adalah membandingkan satu karakter sidik jari dengan karakter sidik jari yang lain. 6. Kesimpulan Kesimpulan yang diperoleh dari hasil penelitian ini adalah sebagai berikut: 1. Telah dirancang Jaringan saraf tiruan dengan arsitektur backpropagation untuk pengidentifikasian sidik jari dengan mempergunakan satu layar input dengan 19 neuron, dua layar tersembunyi yang

11

terdiri dari layar tersembunyi pertama dengan 73 neuron dan layar tersembunyi ke dua dengan 95 neuron dan satu layar output dengan 4 neuron. 2. Jaringan mampu mengenali 100% data dari 320 data latih yang diujikan dan 79.37% dari 160 data uji. Sehingga total persentase pengenalan adalah 93.12% dari 480 data keseluruhan. Daftar Pustaka [1]. Hermawan, A, 2006, “Jaringan Saraf Tiruan, Teori dan Aplikasinya”, Yogyakarta: Andi Offset, hal 49-57/89-103 [2]. Kulkarni, A D., 1994, “Artificial Neural Network for Image Understanding”, Van Nostrand Reinhold, New York, hal 55 [3]. Purnomo, Mauridhi H & Kurniawan, A, 2006, “Supervised Neural Network dan Aplikasinya”, Yogyakarta: Graha Ilmu, hal 33-46 [4]. Pandjaitan, L W., 2007, “Dasar-dasar Komputasi Cerdas”, Yogyakarta: Andi Offset, hal 89-92 [5]. Hines, W J, 1997, “MATLAB Supplement to Fuzzy and Neural Approaches in Engineering”, John Wiley & Sons, hal 6891 [6]. Siang, J.J., 2004, “Jaringan Saraf Tiruan dan Pemogramannya menggunakan MATLAB”, Yogyakarta, hal 97-113 [7]. Puspitaningrum, D, “Pengantar Jaringan Saraf Tiruan”, Yogyakarta: Andi Offset, 2006, hal 1-4/125-137 [8]. Arhami, M, 2005, “Pemograman MATLAB”, Yogyakarta: Andi Offset.