Perancangan Sistem Jaringan Saraf Tiruan Propagasi Balik Tiga Faktor Dalam Pengenalan Sidik Jari

� = �0 | | 3.7 Keterangan: Wn adalah nilai koefisien wavelet citra hasil normalisai yang digunakan sebagai input untuk jaringan saraf tiruan. W adalah nilai koefisien wavelet citra sebelum dinormalisasi |k| adalah nilai maksimum yang dapat dicapai koefisien wavelet citra pada level dekomposisi n Hasil koefisien pada transformasi wavelet level 1 pada gambar 3.11 di atas kemudian dinormalisasi dengan menggunakan persamaan 3.7 sehingga menghasilkan koefisien seperti di bawah ini. Gambar 3.14 Koefisien wavelet ternormalisasi Setiap dekomposisi wavelet sebanyak n- level akan menyebabkan tinggi dan lebar subcitra pada level tersebut menjadi 2 -n dari tinggi dan lebar citra aslinya. Dengan demikian, jika ukuran citra input adalah 180 x 180, maka ukuran koefisien transformasi wavelet diskrit pada level 4 sesuai penelitian adalah 11x 11.

3.2 Perancangan Sistem

Model dasar sistem yang akan dibuat pada tugas akhir ini dapat digambarkan pada flowchart berikut ini gambar 3.15 1 -1 1 -1 -1 1 -1 1 1 1 0 0 -1 1 0 0 Universitas Sumatera Utara Mulai Preprocessing Menentukan Arsitektur JST dan parameter JST Training JST Testing JST Pengenalan Output Selesai Gambar 3.15 Flowchart Sistem

3.2.1 Perancangan Jaringan Saraf Tiruan Propagasi Balik

Jaringan saraf tiruan propagasi balik yang digunakan pada penelitian ini merupakan jaringan saraf tiruan dengan menggunakan 3 lapisan yaitu lapisan masukan input layer, lapisan tersembunyi hidden layer dan lapisan keluaran output layer. Setiap lapisan akan memiliki neuron-neuron yang jumlahnya tergantung dari permasalahan yang akan diselesaikan. Data masukan pada penelitian ini sesuai dengan dimensi citra 11 x 11 piksel yang menghasilkan nilai fitur dari hasil ekstraksi fitur sebesar 121, maka jumlah neuron pada lapisan masukan sebanyak 121. Universitas Sumatera Utara Untuk menentukan jumlah neuron pada lapisan keluaran, adalah bagaimana cara mendefinisikan target keluaran dari suatu penelitian. Dalam penelitian ini terdapat 10 pemilik sidik jari yang digunakan sebagai objek, maka terdapat 5 pola target keluaran. Dengan demikian, pendefinisian pola target keluaran pada penelitian ini adalah sebagai berikut: Tabel 3. 1 Susunan Data Pelatihan DATA MASUKAN DATA TARGET Pemilik-1 00001 Pemilik -2 00010 Pemilik -3 00011 Pemilik -4 00100 Pemilik -5 00101 Pemilik -6 00110 Pemilik -7 00111 Pemilik -8 01000 Pemilik -9 01001 Pemilik -10 01010 Berdasarkan pendefinisian di atas maka dapat disimpulkan bahwa lapisan keluaran pada penelitian ini memiliki neuron keluaran sebanyak 5 buah neuron. Dalam menentukan jumlah neuron pada lapisan tersembunyi, penelitian ini menggunakan formula charytoniuk Reavindo, 2009: = ∗ 3.8 Keterangan: L = jumlah neuron pada lapisan tersembunyi N = jumlah neuron pada lapisan masukan M = jumlah neuron pada lapisan keluaran Dengan demikian, pada penelitian ini menggunakan jumlah neuron pada lapisan tersembunyi sebanyak 25 neuron. Berikut akan dijelaskan mengenai arsitektur jaringan saraf tiruan propagasi balik yang akan digunakan Universitas Sumatera Utara x 1 x 2 x 3 x 121 z 1 z 2 z 3 z 25 y 1 y 2 y 3 y 5 b 1 b 2 v 0,1 v 0,2 v 03 V 0,21 w 0,1 w 0,2 w 0,3 w 0,5 v 1,1 v 1,2 v 1,3 v 1,21 v 2,1 v 2,2 v 2,3 v 2,21 v 3,1 v 3,2 v 3,3 v 3,21 v 125,2 V 121,25 w 1,1 w 1,2 w 1,3 w 1,5 w 2,1 w 2,2 w 2,3 w 2,5 w 3,1 w 3,2 w 3,3 w 3,5 w 25,1 w 25,2 w 25,3 w 25,5 V 125,1 v 125,3 Gambar 3.16 Arsitektur jaringan saraf tiruan propagasi balik Keterangan: X = input neuron pada input layer Z = hidden neuron pada hidden layer Y = output neuron pada output layer Vij,.., Vn = bobot dari input layer ke hidden layer Wij,…,Wn = bobot dari hidden layer ke output layer Fungsi aktivasi yang akan digunakan dalam penelitian ini yaitu fungsi sigmoid biner logsig karena output yang diinginkan pada range [0,1], perhitungan error menggunakan MSE Mean Square Error dengan target error yang ingin dicapai yaitu 0.001. Menggunakan inisialisasi bobot Nguyen Widrow. Laju pembelajaran learning rate yang digunakan dalam range [0.1-0.9], nilai momentum yang digunakan dalam range [0.1-0.9], faktor proporsional yang digunakan pada range [0.001-0.009] sesuai penelitian yang dilakukan Reavindo2009. Maksimum epoch yang diberikan kepada Input layer Hidden layer Output layer Universitas Sumatera Utara sistem sebesar 10000 epoch. Pada penelitian ini, diuji beberapa parameter yang mampu memberikan persentase pengenalan yang baik.

3.2.2 Pelatihan Jaringan Saraf Tiruan Propagasi Balik

Pada saat pelatihan jaringan saraf dapat dipandang sebagai suatu sistem yang belajar Puspitaningrum, 2006. Belajar pada jaringan saraf propagasi balik adalah belajar yang terawasi, dimana terdapat pasangan masukan dan target yang harus dipenuhi sehingga dibutuhkan data masukan dan target untuk suatu pelatihan. Pelatihan diperlukan untuk mencari nilai bobot yang menghubungkan semua neuron sehingga dapat meminimalkan error yang dihasilkan oleh output jaringan. Pelatihan jaringan propagasi balik melibatkan tiga fase. Fase pertama adalah fase maju forward yang dipakai untuk mencari nilai lapisan tersembunyi dan nilai lapisan keluaran menggunakan fungsi aktivasi yang ditentukan. Fase kedua adalah fase mundur backward. Jika hasil keluaran output jaringan tidak sesuai dengan target, maka dilakukan propagasi balik untuk mencari nilai error yang ada di lapisan keluaran dan lapisan tersembunyi. Fase ketiga adalah memperbaharui nilai bobot yang ada di lapisan tersembunyi dan lapisan masukan untuk menurunkan error yang terjadi. Setelah itu dilakukan lagi tahap maju dan propagasi balik jika nilai keluaran tidak sesuai dengan nilai target. Proses ini dilakukan secara berulang sampai jaringan mencapai batasan error yang ditentukan atau sampai pada maksimum iterasi epoch. Flowchart proses pelatihan akan ditampilkan pada gambar 3.17 : Universitas Sumatera Utara Mulai Load Data Pelatihan Inisialisasi bobot, bias,input node, hidden node, output node Input learning rate, momentum, faktor proporsional, target error, max epoch Epoch = 0 Avg_err = 0 C= 0 Data = 0 Train_forward Train_backward Update_weight Use momentum ? Update_weight_momentum Ya Update_weight Tidak Data = data +1 A B C Universitas Sumatera Utara A Data = total_pattern Avg_err = C total_pattern 2 Avg_err = target_error Bobot_terbaik Selesai Epoch = epoch +1 Epoch = max_epoch Selesai Ya Tidak Ya Tidak Ya Tidak B C Gambar 3.17 Flowchart Pelatihan Algoritma pelatihan propagasi balik Pelatihan dengan jaringan saraf propagasi balik yang menggunakan 3 faktor, yaitu laju pembelajaran α, momentum dan faktor proporsional  dilakukan berdasarkan algoritma berikut ini: Langkah 1 : Inisialisasi bobot-bobot awal Universitas Sumatera Utara Langkah 2: Set epoch maksimum = 10000, target error = 0.001, epoch=0 Langkah 3: Epoch = epoch + 1 Langkah 4: For p=1 to pasangan pola pelatihan do. Langkah 4a: Setiap neuron input x i mengirimkan nilai input ke semua neuron yang ada di lapisan atasnya ke lapisan tersembunyi. Propagasi maju forward Langkah 4b: Hitung nilai input pada lapisan tersembunyinya z j = v j0 + x i v ji n i=0 3.9 Langkah 4c: Hitung nilai output lapisan tersembunyi z pj z pj = 1 1 + e −zj 3.10 Langkah 4d: Hitung nilai input dari setiap neuron pada lapisan keluaran y k y k = w k0 + z j w kj n i=0 3.11 Langkah 4e: Hitung nilai output aktual dari setiap neuron pada lapisan keluaran o yk = 1 1 + e −yk o yk = f net y k 3.12 Propagasi Mundurbackward Langkah 4f: Hitung Kesalahan dari setiap neuron pada lapisan keluaran = − 1- 3.13 Langkah 4g: Hitung kesalahan dari setiap neuron j pada lapisan Tersembunyi = 1- =0 3.14 Langkah 4g: Hitung = =1 - 3.15 Langkah 4h: Hitung perubahan bobot-bobot lapisan tersembunyi ∆ = ∝ x i + β∆w zj p − 1+  e k 3.16 Langkah 4i: Hitung perubahan bobot-bobot lapisan keluaran Universitas Sumatera Utara ∆ = ∝ + ∆ − 1+  e k 3.17 Perubahan bobot Langkah 4j: Hitung bobot-bobot lapisan tersembunyi yang baru ∆ = + ∆ 3.18 Langkah 4k:Hitung bobot-bobot lapisan keluaran yang baru ∆ = + ∆ 3.19 Langkah 5:End for Langkah 6: Kerjakan langkah 4 a sampai 4k jika kesalahan error pelatihan kesalahan error pelatihan maksimum atau epoch pelatihan epoch pelatihan maksimum Langkah 7: Selesai Menurut Haykin, 2009 dua kriteria penghentian dalam pelatihan Stopping Criteria, yaitu: 1. Tingkat konvergensi Jaringan dikatakan selesai dan berhenti dalam pelatihan pembelajaran, jika jaringan mencapai konvergen yaitu jika error dari output aktual dan output target sekecil mungkin. Error yang ditemui pada tahap pelatihan pembelajaran dikondisikan dalam dua hal yaitu global minima merupakan kondisi saat berada pada error terendah dan local minima merupakan kondisi error yang bukan merupakan error terendah. Proses pelatihan pembelajaran perlu dilakukan terus menerus sampai berada pada kesalahan pada global minima. Namun, berdasarkan kasus yang ada, kebanyakan jaringan sudah terjebak pada local minima, sehingga pelatihan tidak bisa dilanjutkan. 2. Epoch Epoch merupakan salah satu kriteria yang dapat menghentikan pembelajaran. Jaringan dikatakan selesai dan berhenti dalam pelatihan pembelajaran jika jaringan telah melakukan pelatihan melebihi epoch maksimum. Satu epoch merupakan satu kali jaringan melewati tahap forward, backward dan update bobot. Jaringan yang mencapati tingkat kesalahan sekecil mungkin biasanya Universitas Sumatera Utara membutuhkan epoch yang besar, sehingga pada kriteria ini penghentian dini dapat terjadi.

3.2.3 Pengujian Jaringan Saraf Tiruan Propagasi Balik

Hasil pelatihan pada jaringan saraf adalah bobot-bobot yang telah mengalami modifikasi selama pelatihan berlangsung. Hermawan 2006, hal: 102 menyatakan bahwa tujuan akhir dari seluruh proses dengan menggunakan pendekatan jaringan saraf tiruan adalah menguji seberapa besar pola atau data dikenali oleh jaringan. Dengan demikian setelah pelatihan berakhir maka selanjutnya hasil pelatihan harus diuji untuk mengetahui tingkat keberhasilan pelatihan dalam waktu pelatihan yang telah ditetapkan. Proses pengujian hanya menggunakan tahap maju forward saja. Hasil dari unit keluaran dibandingkan apakah lebih besar dari 0.5, jika iya maka nilai unit tersebut diubah menjadi 1, dan sebaliknya diubah menjadi 0. Selanjutnya nilai-nilai dari keluaran tersebut dibandingkan dengan fitur sidik jari yang ada. Selanjutnya sistem akan menampilkan sidik jari yang berhasil dikenali. Universitas Sumatera Utara Mulai Load Data Testing Input nilai hasil ekstraksi, bobot pelatihan Hitung nilai output di unit tersembunyi Zj Hitung nilai output di unit keluaran Yk Output 0.5 Output Nilai Keluaran =0 Output Nilai Keluaran = 1 Pencocokan Citra Tampilkan Output Selesai Tidak Ya Gambar 3.17 Flowchart Pengujian Algoritma Pengujian Jaringan Saraf Propagasi Balik Algoritma ini hanya menggunakan tahap maju forward saja Langkah 1 : Inisialisasi bobot dari setiap lapisan yang diambil dari bobot-bobot yang diperoleh dari hasil pelatihan. Universitas Sumatera Utara Langkah 2 : Untuk tiap neuron input, lakukan langkah 2-4 . Langkah 3: Setiap neuron input x i menerima sinyal input pengujian x i dan menyiarkan sinyal x i ke semua unit pada lapisan di atasnya neuron tersembunyi Langkah 4: Setiap neuron di lapisan tersembunyi z j menghitung sinyal outputnya dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input x i . Sinyal output dari lapisan tersembunyi kemudian dikirim ke semua neuron pada lapisan di atasnya, dengan menggunakan persamaan 2.12 pada proses pelatihan: = + =1 Langkah 5: Setiap neuron output y k menghitung sinyal outputnya dengan menerapakan fungsi aktivasi terhadap penjumlahan sinyal- sinyal input bagi lapisan ini, yaitu sinyal-sinyal input z j dari lapisan tersembunyi, dengan menggunakan persamaan 2.14 pada proses pelatihan : = + =1 Langkah 6: Selesai Hasil dari algoritma pengujian tersebut adalah keluaran yang bernilai 0 atau 1. Dari setiap keluaran yang dihasilkan tersebut, maka akan dibandingkan dengan nilai target yang bersesuaian dengan data yang digunakan. Dengan demikian dapat diketahui kemampuan memorisasi atau kemampuan generalisasi dari jaringan saraf tiruan tersebut. Memorisasi adalah kemampuan jaringan untuk mengenal pola yang pernah dipelajari, sedangkan generalisasi adalah kemampuan jaringan menghasilkan respon yang bisa diterima terhadap pola-pola yang sebelumnya telah dipelajari. Kemampuan memorisasi dan generalisasi jaringan diukur dari berapa banyak pola yang dikenali, hal tersebut dapat diketahui melalui nilai keluaran yang dihasilkan oleh jaringan saraf tiruan tersebut. Kemampuan memorisasi jaringan dapat dihitung dengan rumus berikut ini: Universitas Sumatera Utara = × 100 Sedangkan kemampuan generalisasi jaringan dihitung dengan rumus: = × 100

3.3 K-fold Cross Validation