Pengaruh Kombinasi Algoritma Nguyen Widrow Dan Adaptive Learning Rate Pada Jaringan Syaraf Tiruan Backpropagation Untuk Pengenalan Karakter Alfanumerik

(1)

SYARAF TIRUAN

PENGENALAN

PROGRAM STUDI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

UNIVERSITAS SUMATERA UTARA

TIRUANBACKPROPAGATIONUNTUK

PENGENALAN KARAKTERALFANUMERIK

TESIS

ANINDA MULIANI

127038015

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014

UNTUK

ALFANUMERIK

TEKNIK INFORMATIKA


(2)

PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW

DAN ADAPTIVE LEARNING RATE PADA JARINGAN

SYARAF TIRUAN BACKPROPAGATION UNTUK

PENGENALAN KARAKTER ALFANUMERIK

Diajukan untuk melengkapi tugas dan memenuhi

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INF

UNIVERSITAS SUMATERA UTARA

PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW

DAN ADAPTIVE LEARNING RATE PADA JARINGAN

SYARAF TIRUAN BACKPROPAGATION UNTUK

PENGENALAN KARAKTER ALFANUMERIK

TESIS

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika

ANINDA MULIANI

127038015

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014

PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW

JARINGAN

SYARAF TIRUAN BACKPROPAGATION UNTUK

PENGENALAN KARAKTER ALFANUMERIK

syarat memperoleh ijazah

PROGRAM STUDI S2 TEKNIK INFORMATIKA


(3)

PERSETUJUAN

Judul Tesis : PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW DAN ADAPTIVE LEARNING RATE

PADA JARINGAN SYARAF TIRUAN

BACKPROPAGATION UNTUK PENGENALAN KARAKTER ALFANUMERIK

Kategori : TESIS

Nama Mahasiswa : ANINDA MULIANI Nomor Induk Mahasiswa : 127038015

Program Studi : Magister (S2) Teknik Informatika

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2, Pembimbing 1,

Dr. Erna Budhiarti Nababan, M.IT Prof. Dr. Muhammad Zarlis

Diketahui / Disetujui Oleh,

Program Studi Magister (S2) Teknik Informatika, Ketua,

Prof. Dr. Muhammad Zarlis NIP. 19570701 198601 1 003


(4)

PERNYATAAN

PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW DAN ADAPTIVE LEARNING RATE PADA JARINGAN SYARAF

TIRUAN BACKPROPAGATION UNTUK PENGENALAN KARAKTER ALFANUMERIK

TESIS

Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 24 Juli 2014

Aninda Muliani 127038015


(5)

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN

AKADEMIS

Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini:

Nama : Aninda Muliani

NIM : 127038015

Program Studi : Teknik Informatika Jenis Karya Ilmiah : Tesis

Dengan pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak bebas Royalti Non-Eksklusif (non-Exlusive Royalty Free Right) atas tesis saya yang berjudul:

PENGARUH KOMBINASI ALGORITMA NGUYEN WIDROW DAN ADAPTIVE LEARNING RATE PADA JARINGAN SYARAF TIRUAN BACKPROPAGATION

UNTUK PENGENALAN KARAKTER ALFANUMERIK

Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk data-base, merawat dan mempublikasikan Tesis saya tanpa minta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta.

Dengan pernyataan ini dibuat dengan sebenarnya.

Medan, 24 Juli 2014

Aninda Muliani NIM 127038015


(6)

Telah diuji pada Tanggal : 24 Juli 2014

PANITIA PENGUJI TESIS

Ketua : Prof. Dr. Muhammad Zarlis

Anggota : 1. Dr. Erna Budhiarti Nababan, M.IT 2. Prof. Dr. Herman Mawengkang 3. Prof. Dr. Tulus, Vor. Dipl. Math, M.Si 4. Dr. Mahyuddin, M.IT


(7)

RIWAYAT HIDUP

DATA PRIBADI

Nama Lengkap (berikut gelar) : Aninda Muliani, M.Kom

Tempat dan Tanggal Lahir : Padangsidimpuan, 29 November 1986 Alamat Rumah : Jl. Surya Haji Komplek Taman Surya

Indah No.3 Medan 20371

Telepon/Faks/HP : 085214910829

E-mail : anindamh@gmail.com

Instansi Tempat Bekerja : Politeknik LP3M

Alamat Kantor : Jl.Iskandar Muda No. 4-5 Medan

DATA PENDIDIKAN

SD : SD Negeri 26 Padangsidempuan TAMAT : 1999 SLTP : MTsN Model Padangsidempuan TAMAT : 2002 SLTA : SMAN 1 Plus Matauli Sibolga TAMAT : 2005 S1 : S1 Teknik Informatika UIN Jakarta TAMAT : 2012


(8)

KATA PENGANTAR

Bismillahirrahmanirrohim. Alhamdulillahirobbil’alamin, Puji Syukur penulis panjatkan kehadirat Allah SWT, yang telah melimpahkan rahmat dan hidayahNya, sehingga tesis ini dapat diselesaikan tepat pada waktunya. Penulis mengucapkan ribuan terimakasih kepada:

1. Rektor Universitas Sumatera Utara, Bapak Prof. Dr. dr. Syahril Pasaribu DTM&H, M.Sc (CTM), Sp. A(K) atas kesempatan yang telah diberikan kepada penulis untuk dapat mengikuti dan menyelesaikan pendidikan Program Magister.

2. Dekan Fakultas Ilmu Komputer Universitas Sumatera Utara, Bapak Prof. Dr. Muhammad Zarlis atas kesempatan yang telah diberikan kepada penulis untuk menjadi mahasiswa Program Magister pada Program Pascasarjana Fasilkom-TI Universitas Sumatera Utara.

3. Ketua Program Studi Magister Teknik Informatika, Bapak Prof. Dr. Muhammad Zarlis. Sekretaris Program Studi Teknik Informatika, Bapak M. Andri Budiman, ST, M.Comp. Sc, MEM. Beserta seluruh Staf Pengajar Program Studi Magister Teknik Informatika Program Pascasarjana Fakultas Ilmu Komputer Universitas Sumatera Utara.

4. Terimakasih tak terhingga dan penghargaan yang setinggi-tingginya atas bimbingan, pengarahan dan dorongan yang telah diberikan selama penyusunan tesis ini kepada Bapak Prof. Dr. Muhammad Zarlis, selaku Promotor/Pembimbing Utama, demikian juga kepada Ibu Dr. Erna Budhiarti Nababan, M.IT selaku Promotor/Pembimbing Kedua yang dengan penuh kesabaran menuntun dan membimbing penulis hingga selesainya tesis ini dengan baik.

5. Terimakasih yang tak terhingga serta penghargaan setinggi-tingginya juga penulis ucapkan kepada Bapak Prof. Tulus, Vor. Dipl. Math, M.Si, Bapak Prof. Dr. Herman Mawengkang, dan Bapak Dr. Mahyuddin, M.IT sebagai pembanding yang telah memberikan saran dan masukan serta arahan yang baik demi penyelesaian tesis ini.

6. Terimakasih yang tak terhingga juga penulis ucapkan kepada suami dan kedua orangtua serta keluarga besar yang dengan senantiasa mendoakan serta


(9)

memberikan dukungan penuh hingga tiada mampu penulis untuk membalasnya.

7. Staff Pegawai Pasca Sarjana S2 Teknik Informatika serta rekan mahasiswa/i seangkatan (2012) yang telah banyak membantu penulis selama perkuliahan. Dan seluruh pihak yang tidak dapat penulis sebutkan satu persatu dalam tesis ini, sekali lagi terima kasih atas segala bantuan dan doa yang telah diberikan.

Dengan penuh kesadaran dan rendah hati, penulis menyadari bahwa penelitian ini masih jauh dari kesempurnaan, hal ini karena keterbatasan, kemampuan, dan pengetahuan penulis. Harapan penulis semoga penelitian ini bermanfaat bagi penulis khususnya dan pembaca pada umumnya. Sekali lagi penulis mengucapkan terimakasih. Semoga kiranya Allah SWT membalas kebaikan yang telah diberikan.

Medan, 24 Juli 2014 Penulis,

Aninda Muliani NIM 127038015


(10)

ABSTRAK

Jaringan syaraf tiruan backpropagation merupakan metode yang sangat baik dalam proses pengenalan pola mengingat kemampuannya dalam mengadaptasikan kondisi jaringan dengan data yang diberikan dengan proses pembelajaran. Selain itu, backpropagation juga memiliki kemampuan mengurangi error dengan melakukan koreksi bobot secara terus menerus hingga mencapai target maksimal. Namun dibalik kelebihannya tersebut, backpropagation memiliki kelemahan yang sangat menonjol, yaitu membutuhkan waktu yang cukup lama dalam proses pembelajaran. Untuk itu diperlukan sebuah pengembangan metode yang dapat mempercepat proses pembelajaran. Adaptive learning rate dan pembobotan dengan inisialisasi Nguyen-Widrow merupakan kombinasi dua metode yang dapat meningkatkan kecepatan pembelajaran backpropagation. Aplikasi diuji pada 72 citra alfanumerik yang sudah mengalami kerusakan. Hasil pengujian yang dilakukan pada pengenalan citra alfanumerik meningkatkan proses pembelajaran sampai dengan 15 kali lebih cepat (dalam satuan detik), dibandingkan dengan backpropagation biasa, dengan tingkat akurasi maksimum 90%.

Kata kunci : Pengenalan citra, Backpropagation, Adaptive learning rate, Nguyen-Widrow, Kecepatan


(11)

THE EFFECT OF NGUYEN WIDROW AND ADAPTIVE LEARNING RATE COMBINATION IN BACKPROPAGATION NEURAL NETWORKS FOR

ALPHANUMERIC RECOGNITION ABSTRACT

Backpropagationneural networkis anexcellent methodin pattern recognition process due to it’sability inadaptingnetwork conditions withdata providedthroughthe learningprocess. In addition, the backpropagationcan minimize the network error by performing errorcorrectioncontinuouslyuntil it reaches themaximum target. However, behindtheseadvantages, backpropagationhas the really stands out disadvantage, that it takesa long timein the learning process. So it needsadevelopingmethod thatcanacceleratethe learningprocess. Adaptivelearning rateandweighting byNguyen-Widrow initializationis a combinationof twomethodsthatcanincrease thespeed ofbackpropagationlearning. This method has been tested on 72 brokenimages of alphanumeric. Results ofthe tests improvethe learningprocessup to 15times faster(in seconds), comparedwiththe standardbackpropagation, witha maximumaccuracy rate of90%.

Keywords: Image recognition, Backpropagation, Adaptivelearning rate, NguyenWidrow, Speed


(12)

DAFTAR ISI

Hal.

HALAMAN JUDUL i

PENGESAHAN ii

PERNYATAAN ORISINALITAS iii

PERSETUJUAN PUBLIKASI iv

PANITIA PENGUJI v

RIWAYAT HIDUP vi

KATA PENGANTAR vii

ABSTRAK ix

ABSTRACT x

DAFTAR ISI xi

DAFTAR TABEL xiv

DAFTAR GAMBAR xv

BAB I PENDAHULUAN. 1

1.1. Latar Belakang 1

1.2. Perumusan Masalah 2

1.3. Batasan Masalah 2

1.4. Tujuan Penelitian 3

1.5. Manfaat Penelitian 3

1.6. Sistematika Penulisan 3

BAB II LANDASAN TEORI 5

2.1. Citra Digital 5

2.2.1 Grayscaling 5

2.2.2 Binarization 5

2.2.3 Image Thinning 5

2.2. Jaringan Syaraf Biologi 6

2.3. Jaringan Syaraf Tiruan 8


(13)

2.3.2 Bentuk dan Arsitektur Jaringan Syaraf Tiruan 11

2.3.3 Fungsi Aktivasi 13

2.4. Proses Pembelajaran 16

2.4.1. Proses Pembelajaran Terawasi 17

2.4.2. Proses Pembelajaran Tidak Terawasi 18

2.5. Backpropagation 18

2.6. Adaptive Learning Rate 18

2.7. Inisialisasi Pembobotan Nguyen Widrow 19

2.8. Riset-Riset Terkait 20

BAB III METODOLOGI PENELITIAN 22

3.1. Spesifikasi Perangakat Keras dan Perangkat Lunak yang Digunakan 22

3.2. Data yang Digunakan 22

3.3. Pra-Pengolahan Citra 23

3.3.1. Normalisasi (Scaling) 23

3.3.2. Pembentukan Matriks Biner 24

3.3.3. Pembentukan Matriks Tulang 25

3.3.4. Ekstraksi Fitur 27

3.4. Pelatihan Jaringan Menggunakan Nguyen Widrow dan Adaptive

Learning Rate 28

3.5. Perancangan Jaringan Propagasi Balik 31

3.5.1. Arsitektur Jaringan Propagasi Balik 31

3.5.2. Algoritma Backpropagation 32

BAB IV HASIL DAN PEMBAHASAN 33

4.1. Hasil Pembobotan dengan metode Nguyen Widrow 33 4.2. Hasil Trainingdata dengan Metode Nguyen Widrowdan Adaptive

Learning Rate 34

4.3. Hasil Trainingdata dengan Metode Nguyen Widrow dan Adaptive

Learning Rate 36

4.4. Pembahasan 39

4.4.1. Pembobotan Awal 39


(14)

4.4.1.2. Pembobotan Awal dengan metode Nguyen Widrow 42 4.4.2. Pelatihan (Training) Backpropagation 49

BAB V KESIMPULAN DAN SARAN 56

5.1.Kesimpulan 56

5.2.Saran. 56

DAFTAR PUSTAKA 55

LAMPIRAN 1DAFTAR PUBLIKASI ILMIAH PENULIS 57


(15)

DAFTAR TABEL

Hal.

TABEL 4.1 Hasil Training Data 36

TABEL 4.2 Hasil Pengujian Data 37

TABEL 4.3 Contoh pembobotan secara acak 39

TABEL 4.4 Bobot input ke hidden layer (sebelum inisialisasi) 42 TABEL 4.5 Bobot input ke hidden layer sesudah inisialisasi 46


(16)

DAFTAR GAMBAR

Hal.

GAMBAR 2.1 NeuronBiologis 8

GAMBAR 2.2 NeuronBuatan 8

GAMBAR 2.3 Struktur neuronjaringan saraf 10

GAMBAR 2.4 Neuron berinput tunggal 12

GAMBAR 2.5 Jaringan Saraf multilayer 13

GAMBAR 2.6 Fungsi Undak Biner 14

GAMBAR 2.7 Fungsi Threshold 14

GAMBAR 2.8 Fungsi Aktivasi Bipolar 15

GAMBAR 2.9 Fungsi Aktivasi Bipolar (dengan threshold) 15 GAMBAR 3.1 Diagramgaris besar sistem; a) Pelatihan, b) Pengujian 23

GAMBAR 3.2 Tahapanpra-pengolahan citra 23

GAMBAR 3.3 Citra hasil normalisasi; a) citra asal, b) citra hasil normalisasi 24

GAMBAR 3.4 Citra hasil binerisasi 24

GAMBAR 3.5 Diagram Pembentukan Matriks Biner 25

GAMBAR 3.6 Pembentukan matriks tulang; a) citra biner, b) citra hasil thinning 26

GAMBAR 3.7 Citra hasil ekstraksi fitur 27

GAMBAR 3.8 Diagram ekstraksi fitur 27

GAMBAR 3.9 Diagram alur proses training citra alfanumerik 30

GAMBAR 3.10 Arsitektur Jaringan 31

GAMBAR 4.1 Bobot akhir yang disimpan pada saat proses training 34

GAMBAR 4.2 Proses pada saat training 35


(17)

ABSTRAK

Jaringan syaraf tiruan backpropagation merupakan metode yang sangat baik dalam proses pengenalan pola mengingat kemampuannya dalam mengadaptasikan kondisi jaringan dengan data yang diberikan dengan proses pembelajaran. Selain itu, backpropagation juga memiliki kemampuan mengurangi error dengan melakukan koreksi bobot secara terus menerus hingga mencapai target maksimal. Namun dibalik kelebihannya tersebut, backpropagation memiliki kelemahan yang sangat menonjol, yaitu membutuhkan waktu yang cukup lama dalam proses pembelajaran. Untuk itu diperlukan sebuah pengembangan metode yang dapat mempercepat proses pembelajaran. Adaptive learning rate dan pembobotan dengan inisialisasi Nguyen-Widrow merupakan kombinasi dua metode yang dapat meningkatkan kecepatan pembelajaran backpropagation. Aplikasi diuji pada 72 citra alfanumerik yang sudah mengalami kerusakan. Hasil pengujian yang dilakukan pada pengenalan citra alfanumerik meningkatkan proses pembelajaran sampai dengan 15 kali lebih cepat (dalam satuan detik), dibandingkan dengan backpropagation biasa, dengan tingkat akurasi maksimum 90%.

Kata kunci : Pengenalan citra, Backpropagation, Adaptive learning rate, Nguyen-Widrow, Kecepatan


(18)

THE EFFECT OF NGUYEN WIDROW AND ADAPTIVE LEARNING RATE COMBINATION IN BACKPROPAGATION NEURAL NETWORKS FOR

ALPHANUMERIC RECOGNITION ABSTRACT

Backpropagationneural networkis anexcellent methodin pattern recognition process due to it’sability inadaptingnetwork conditions withdata providedthroughthe learningprocess. In addition, the backpropagationcan minimize the network error by performing errorcorrectioncontinuouslyuntil it reaches themaximum target. However, behindtheseadvantages, backpropagationhas the really stands out disadvantage, that it takesa long timein the learning process. So it needsadevelopingmethod thatcanacceleratethe learningprocess. Adaptivelearning rateandweighting byNguyen-Widrow initializationis a combinationof twomethodsthatcanincrease thespeed ofbackpropagationlearning. This method has been tested on 72 brokenimages of alphanumeric. Results ofthe tests improvethe learningprocessup to 15times faster(in seconds), comparedwiththe standardbackpropagation, witha maximumaccuracy rate of90%.

Keywords: Image recognition, Backpropagation, Adaptivelearning rate, NguyenWidrow, Speed


(19)

BAB I PENDAHULUAN

1.1. Latar Belakang Masalah

Jaringan saraf tiruan (JST)sebagai salah satu sistem pengolah informasi yang memiliki karakteristik kinerja menyerupai jaringan saraf biologis berkembang sangat pesat. Perkembangan ini seiring dengan munculnya berbagai masalah yang tidak dapat diselesaikan secara efisien oleh proses komputasi konvensional, karena algoritma yang ada tidak dapat diformulasikan secara eksplisit dan membutuhkan informasi dalam jumlah yang besar. (Kristanto, 2004)

Ada beberapa metode dalam jaringan saraf tiruan, salah satunya adalah metode backpropagation. Backpropagation merupakan algoritma terbaik di antara algoritma lainnya, seperti perceptron dan delta rule (Mutasem, 2009). Backpropagation juga merupakan metode yang sangat baik dalam proses klasifikasi mengingat kemampuannya dalam mengadaptasikan kondisi jaringan dengan data yang diberikan dengan proses pembelajaran (Kristanto, 2004). Ciri dari metode ini adalah meminimalkan error pada output yang dihasilkan oleh jaringan. Dengan kata lain, backpropagation menggunakan error output untuk mengubah nilai bobot-bobotnya dalam dua arah yaitu arah mundur (backward) dan perambatan maju (forward propagation), ini memungkinkan pembentukan jaringan yang lebih baik dari metode yang lain. Namun dibalik kelebihannya tersebut, backpropagation memiliki kelemahan yang sangat menonjol, yaitu membutuhkan waktu yang cukup lama dalam proses pembelajaran (Haykin, 2008).

Untuk itu diperlukan pengembangan pada metode backpropagation, yakni untuk mempercepat proses pembelajaran mencapai errorterkecil. Salah satu pengembangan yang dapat dilakukan adalah penggunaan teknik adaptive learning rate, dimana parameter learning rate atau tingkat pembelajaran akan selalu berubah-ubah sesuai dengan rumus tertentu. (Moreira & Fiesler, 1995).


(20)

Adaptive learning rate memiliki pengaruh yang cukup baik, dimana nilai error akan lebih cepat menuju global optima (Moreira & Fiesler, 1995). Namun peningkatan kecepatan yang diberikan tidaklah signifikan sehingga diperlukan penambahan pengembangan lainnya yang juga terfokus pada mempercepat proses iterasi jaringan. Metode lain yang dapat digunakan adalah metode pembobotan dengan inisialisasi Nguyen-Widrow. Waktu pembelajaran propagasi balik yang bobot dan biasnya diinisialisasi dengan teknik Nguyen-Widrow lebih cepat dibandingkan bila diinisialisasikan secara acak. (Puspitaningrum, 2006)

Jaringan saraf tiruan, selama ini banyak diterapkan dalam menyelesaikan permasalahan-permasalahan tentang pengenalan pola (pattern recognition), signal processing dan peramalan (Purnomo, 2001). Salah satu contoh aplikasi pengenalan pola yang cukup kompleks adalah pengenalan karakter alfanumerik ([‘A’….’Z’] dan [‘0’…’9’]. (Puspitaningrum, 2006)

Untuk itu penulis mencoba melakukan penelitian menggunakan kombinasi algoritma Nguyen Widrow dan adaptive learning rate yang meneliti tentang sejauh mana pengaruh kedua algoitma tersebut pada jaringan syaraf tiruanbackpropagation dapat mempercepat pengenalan pola karakter alfanumerik. Karenanya judul penelitian tesis yang diusulkan adalah “Pengaruh Kombinasi Algoritma Nguyen Widrow Dan Adaptive Learning Rate Pada Jaringan Syaraf Tiruan Backpropagation Untuk Pengenalan Karakter Alfanumerik”.

1.2. Perumusan Masalah

Pengenalan karakter menggunakan pembelajaran backpropagation biasa masih tergolong lambat, oleh karena itu diperlukan suatu metode yang dapat meningkatkan kecepatan proses pembelajaran dalam mengenali karakter alfanumerik.

1.3. Batasan Masalah

Dalam penelitian ini telah ditentukan batasan-batasan dari topik yang dibahas sehingga cakupan pembahasan tidak terlalu luas dan fokus utama penelitian tidak menjadi kabur. Beberapa batasan masalah yang ditentukan pada penelitian ini dijabarkan sebagai berikut:


(21)

1. Media yang digunakan dalam penelitian ini adalah citra digital. Pengaruh kombinasi algoritma Nguyen-Widrow dan adaptive learning rate pada jaringan syaraf backpropagationakan menjadi topik utama pada penelitian ini. 2. Implementasi penelitian dilakukan pada jaringan syaraf backpropagation dengan pengembangan metode Nguyen-Widrow dan adaptive learning rate dalam mengenali karakter alfanumerik.

3. Ukuran default huruf atau angka adalah tinggi 10 piksel dan lebar 10 piksel. 4. Citra karakter yang digunakan adalah huruf kapital dan angka dengan tipe

tulisan Arial.

1.4.Tujuan Penelitian

Penelitian ini bertujuan untuk mengenali karakter alfanumerik dengan pembelajaran backpropagation menggunakan algoritma Nguyen-Widrow dan adaptive learning rate.

1.5. Manfaat Penelitian

Manfaat yang diharapkan dari hasil penelitian ini adalah sebagai berikut:

1. Dapat mengetahui sejauh mana pengaruh penggunaan algoritma Nguyen Widrow dan adaptive learning rate terhadap kecepatan mencapai ketelitian pada jaringan syaraf tiruan backpropagation dalam mengenali karakter alfanumerik.

2. Menambah wawasan penulis dalam penggunaan jaringan syaraf tiruan untuk mengenali pola.

1.6.Sistematika Penulisan

Penulisan tesis ini menggunakan sistematika penulisan yang membagi pembahasan penelitian dalam lima bagian utama, yang terdiri atas :

Bab I Pendahuluan

Bab ini berisi pendahuluan yang berisi latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, dan sistematika penulisan tesis.


(22)

Bab ini membahas tentang teori-teori yang digunakan untuk memahami permasalahan yang berkaitan dengan pengenalan karakter citra alfanumerik menggunakan metode Nguyen-Widrow dan adaptive learning rate pada jaringan syaraf tiruan backpropagation.

Bab III Metodologi Penelitian

Bab ini berisi metode yang digunakan untuk menyelesaikan masalah dan perancangan dari sistem yang dibangun serta spesifikasi kebutuhan perangkat keras dari sistem. Bab IV Hasil dan Pembahasan

Pada bab ini dibahas mengenai hasil penelitian yang didapat dan pembahasan mengenai hasil tersebut.

Bab V Kesimpulan dan Saran

Bab ini berisi kesimpulan dari hasil penelitian dan berisi saran yang diberikan untuk pengembangan sistem selanjutnya.


(23)

BAB II

LANDASAN TEORI

2.1. Citra Digital

Citra digital dapat didefenisikan sebagai fungsi f(x,y) yaitu dua dimensi, dimana x dan y merupakan koordinat spasial dan f(x,y) disebut dengan intensitas atau tingkat keabuan citra pada koordinat x dan y. Sedangkan image processing adalah suatu metode yang digunakan untuk mengolah atau memanipulasi gambar dalam bentuk dua dimensi. Image processing dapat juga dikatakan segala operasi untuk memperbaki, menganalisa, atau mengubah suatu gambar (Gonzales & Woods, 2002).

2.1.1. Grayscaling

Grayscalingmerupakan proses perubahan nilai pixel dari warna (RGB) menjadi grey-level (Gonzales & Woods, 2002). Pada dasarnya proses ini dilakukan dengan meratakan nilai pixel dari 3 nilai RGB menjadi 1 nilai. Untuk memperoleh hasil yang lebih baik, nilai pixel tidak langsung dibagi menjadi 3 melainkan terdapat presentasi dari masing-masing nilai tersebut. Untuk mengubah gambar RGB menjadi grayscale dapat menggunakan rumus Wu (2007) yaitu : Gray = 0.2989 * R + 0.5870 * G + 0.1140 * B

Keterangan : R = Red (merah) G = Green (hijau) B = Blue (biru) 2.1.2. Binarization

Gambar hitam putih relatif lebih mudah dianalisa dibandingkan dengan gambar berwarna. (Wu, 2007). Karena itu sebelum dianalisa, gambar dikonversikan terlebih dahulu menjadi binary image. Proses konversi ini disebut binarization. Dalam proses binerisasi, warna yang ada dikelompokkan menjadi 0 (hitam) dan 1 (putih). Pengelompokannya berdasarkan pada suatu konstanta ambang batas (level). Jika nilai


(24)

pixel lebih besar sama dengan level, maka nilai outputnya adalah 1, dan sebaliknya, jika nilai pixel lebih kecil dari level, maka nilai outputnya adalah 0.

2.1.3. Image Thinning

Thinning atau disebut juga skeletonizing adalah suatu metode untuk merepresentasikan transformasi suatu bentuk gambar ke bentuk graph dengan mereduksi informasi tertentu dalam gambar tersebut (Ahmad, 2005). Thinning ini biasa digunakan untuk mencari bentuk dasar dari suatu gambar dengan menghilangkan informasi yang tidak diperlukan.

2.2. Jaringan Syaraf Biologi

Otak manusia berisi sekitar 10 milyar sel saraf atau neuron-neuronyang membentuk jaringan dan berfungsi memroses informasi yang masuk. Sekumpulan neuron (saraf) yang saling terhubung ini berfungsi untuk memberikan sebuah tanggapan atas sebuah rangsangan yang mengenainya. Setiap rangsangan memiliki tanggapan-tanggapan tersendiri dari sebuah neuron tersebut terhadap jenis rangsangan yang mengenainya (Kristanto, 2004).

Sebuah neuron memiliki 3 tipe komponen yaitu dendrit (bagian yang menerima rangsang dari axon), soma (badan sel saraf) dan axon (bagian sel yang berhubungan dengan dendrit sel saraf lain dan membentuk simpul yang disebut sinapsis). Dendrit dapat menerima banyak sinyal dari neuron lain. Sinyal adalah impuls listrik yang dipancarkan menyebrangi celah sinapsis yang disebabkan proses kimia. Tindakan dari pancaran proses kimia mengubah sinyal yang datang (secara khas, dengan penskalaan frekuensi sinyal yang diterima). Proses tersebut sama dengan sifat bobot dalam jaringan saraf tiruan (Puspitaningrum, 2006)

Soma, atau badan sel menjumlahkan sinyal yang datang. Ketika masukan cukup diterima, sel menjadi aktif, saat itulah sel mengirimkan sinyal melaui axonnya ke sel lain. Kejadian ini menimbulkananggapan bahwa setiap sel saraf berada dalam keadaan aktif atau tidak aktif, pada setiap satuan waktu. Sehingga pengiriman sinyal dikenali sebagai kode biner. Kenyataannya, frekuensi dari keadaan aktif bervariasi, sesuai dengan kekuatan sinyal yakni kuat atau lemah magnitudenya. Pencocokan dengan kode biner ini dilakukan untuk menentukan tahap-tahap dalam tiap waktu diskrit dan menjumlahkan semua aktivitas (sinyal diterima atau dikirim) pada tahap tertentu berdasarkan satuan waktu.


(25)

Transmisi sinyal dari neurontertentu disempurnakan dengan hasil kerja energi potensial neuron yang disebabkan perbedaan konsentrasi ion-ion dari setiap sisi sarung pelindung axon neuron (sumsum otak manusia). Ion-ion kebanyakan secara langsung melibatkan zat-zat potassium, sodium dan klorida.

Beberapa fitur penting proses elemen dari jaringan saraf tiruan yang berasal dari cara kerja jaringan saraf biologi :

a. Elemen pemroses menerima beberapa sinyal.

b. Sinyal memungkinkan dimodifikasi oleh bobot pada sinapsis penerima. c. Elemen pemroses menjumlahkan bobotinput.

d. Dalam lingkungan yang sesuai (jumlah input yang sesuai), neuron mengirimkan outputtunggal.

e. Output dari neuron khusus memungkinkan dipindahkan ke beberapa neuron lain (melalui cabang axon).

Beberapa fitur jaringan saraf tiruan yang dipelajari darineuronbiologi:

a. Pemrosesan informasi bersifat lokal (meskipun cara berbeda dalam proses transmisi, seperti aksi beberapa hormon, memungkinkan penganjuran cara control proses yang bersifat keseluruhan).

b. Memori terdistribusi :

1. Memori yang berjangka panjang berada dalam sinapsis neuron atau bobot. 2. Memori jangka pendek merespon sinyal kiriman oleh neuron.

c. Kekuatan sinapsis dapat dimodifikasi oleh pengalaman.

d. Neuronpengirim untuk sinapsis mungkin bersifat pengeksitasi atau penghambat. Karakteristik penting lain jaringan saraf tiruan yang merupakan bagian dari sistem saraf biologi adalah toleransi kesalahan/kekurangan data. Sistem saraf biologi memiliki toleransi kesalahan dalam 2 aspek :

a. Dapat mengenali banyak input sinyal yang beberapa diantaranya berbeda dengan yang pernah dikenali sebelumnya. Sebagai contoh kemampuan manusia untuk mengenali seseorang dari suatu gambaran atau mengenali seseorang setelah periode yang lama.


(26)

Adapun perbandinga dan gambar 2.2.

2.3. Jaringan Syaraf Tiruan

Artificial Neural Network dari Artificial Intelligence.

memiliki karakteristik menyerupai juga Haykin (2008) menyata untuk memodelkan cara otak Mesin ini memiliki kemampuan dan menjadikan pengetahuan yang dimili

Jaringan syaraf merupakan mencoba mensimulasikan

digunakan karena jaringan

komputer yang mampu menyelesaikan pembelajaran (Kristanto, 2004)

perbandingan kedua jaringan tersebut dapat dilihat pada

Gambar 2.1 Neuron Biologis

Gambar 2.2.NeuronBuatan

ngan Syaraf Tiruan

Network atau Jaringan Syaraf Tiruan (JST) adalah salah Intelligence. JST merupakan suatu sistem pemrosesan informasi karakteristik menyerupai jaringan syaraf biologi (Fausett, 1994).

(2008) menyatakan bahwa JST adalah sebuah mesin yang cara otak manusia mengerjakan fungsi atau tugas-tugas memiliki kemampuan menyimpan pengetahuan berdasarkan enjadikan pengetahuan yang dimiliki menjadi bermanfaat.

syaraf merupakan representasi buatan dari otak manusia mensimulasikan proses pemebelajaran otak manusia tersebut. Istilah

jaringan saraf diimplementasikan dengan menggunaka mampu menyelesaikan sejumlah proses perhitungan selama ran (Kristanto, 2004)

pada gambar 2.1

h salah satu cabang pemrosesan informasi yang (Fausett, 1994). Demikian mesin yang dirancang tugas tertentu. berdasarkan pengalaman

manusia yang selalu tersebut. Istilah buatan menggunakan program perhitungan selama proses


(27)

Jaringan Saraf Tiruan merupakan sistem pemrosesan informasi yang memiliki karakteristik kemampuan yang secara umum mirip dengan jaringan saraf biologi. Jaringan saraf tiruan telah dikembangkan sebagai turunan model matematika dari kesadaran manusia atau saraf biologis, karena berdasar pada asumsi bahwa:

a. Pemrosesan informasi terjadi pada beberapa elemen sederhana yang disebut neuron.

b. Sinyal lewat diantara neuronmenciptakan jaringan koneksi.

c. Setiap koneksi penghubung memiliki bobot yang terhubung, yang dalam jaringan saraf tertentu mengalikan sinyal yang ditransmisikan.

d. Setiap neuron mempunyai fungsi aktrivasi (biasanya non linier) pada jaringan inputnya (jumlah dari bobot sinyal input) untuk menentukan sinyal outputnya. Karakteristik dari jaringan saraf tiruan adalah :

a. Pola hubungan antar neuron( yang menjadi arsitekturnya).

b. Metode penentuan bobot dalam koneksi (disebut sebagai proses latihan, pembelajaran, atau Algoritma ).

c. Fungsi aktivasi.

Jaringan saraf biologis terdiri atas sel–sel yang disebut neuron. Pada jaringan saraf tiruan, juga terdapat istilah neuron atau sering disebut unit, sel, node. Setiap neuron terhubung dengan neuron–neuron yang lain melalui layer dengan bobot tertentu. Bobot disini melambangkan informasi yang digunakan oleh jaringan untuk menyelesaikan persoalan. Pada jaringan saraf biologis, bobot tersebut dapat dianalogikan dengan aksi pada proses kimia yang terjadi pada synaptic gap. Sedangkan neuron mempunyai internal state yang disebut aktivasi. Aktivasi merupakan fungsi dari inputyang diterima. Suatu neuronakan mengirimkan sinyal ke neuron–neuron yang lain, tetapi pada suatu saat hanya ada satu sinyal yang dikeluarkan walaupun sinyal tersebut ditransmisikan ke beberapa neuron yang lain. Sistem jaringan saraf banyak digunakan dalam berbagai bidang antara lain kedokteran, bisnis, keuangan, maupun elektronika termasuk pemrosesan sinyal dan sistem kontrol. (Heaton, 2008)

2.3.1. Komponen Jaringan Saraf Tiruan

Ada beberapa tipe jaringan saraf, tetapi hampir semuanya memiliki komponen– komponen yang sama. Seperti halnya otak manusia, jaringan saraf juga terdiri dari


(28)

bobot bobot Input

dari neuron –

Output ke neuron – neuron

beberapa neuron, dan ada hubungan antara neuron–neuron tersebut. Neuron–neuron tersebut akan mentransformasikan informasi yang diterima melalui sambungan keluarnya menuju ke neuron–neuron yang lain. Pada jaringan saraf, hubungan ini dikenal dengan nama bobot. Informasi tersebut disimpan pada nilai tertentu pada bobot tersebut. Pada gambar 2.3 menunjukkan struktur neuronpada jaringan saraf.

Gambar 2.3 Struktur neuronjaringan saraf

Jika kita lihat, neuron buatan ini sebenarnya mirip dengan sel neuron biologis. Neuron-neuronbuatan tersebut mempunyai cara kerja yang sama pula dengan neuron - neuron biologis. Informasi (disebut: input) akan dikirim neuron dengan bobot kedatangan tertentu. Input ini akan diproses suatu fungsi perambatan yang akan menjumlahkan nilai–nilai semua bobot yang datang. Hasil penjumlahan ini kemudian akan dibandingkan dengan suatu nilai ambang (threshold) tertentu melalui fungsi aktivasi setiap neuron. Apabila input tersebut melewati suatu nilai ambang tertentu, maka neurontersebut akan diaktifkan, tetapi kalau tidak, neuron tersebut tidak akan diaktifkan. Apabila neuron tersebut diaktifkan, maka neuron tersebut akan mengirimkan output melalui bobot–bobot outputnya ke semua neuron yang berhubungan dengannya.

Pada jaringan saraf, neuron–neuron akan dikumpulkan dalam lapisan–lapisan (layer) yang disebut dengan lapisan neuron (neuron layers). Biasanya neuron–neuron pada satu lapisan akan dihubungkan dengan lapisan–lapisan sebelum dan sesudahnya (kecuali lapisan input dan lapisan output). Informasi yang diberikan pada jaringan saraf akan dirambatkan dari lapisan ke lapisan, mulai dari lapisan input sampai ke lapisan outputmelalui lapisan yang lainnya, yang sering dikenal dengan nama lapisan tersembunyi (hidden layer). Tergantung pada algoritma pembelajarannya, bisa jadi informasi tersebut akan dirambatkan secara mundur pada jaringan. Beberapa jaringan saraf ada juga yang tidak memiliki lapisan tersembunyi, dan ada juga jaringan saraf dimana neuron–neuronnya disusun dalam bentuk matriks.

Σ

Fungsi aktivasi


(29)

2.3.2. Bentuk Dan Arsitektur Jaringan Saraf Tiruan

Pada umumnya neuron yang terletak pada lapisan yang sama akan memiliki keadaan sama. Faktor terpenting dalam menentukan kelakuan suatu neuron adalah fungsi aktivasi dan pola bobotnya. Pada setiap lapisan yang sama, neuron–neuron akan memiliki fungsi aktivasi yang sama. Apabila neuron–neuron dalam suatu lapisan (misalkan lapisan tersembunyi) akan dihubungkan dengan neuron–neuron pada lapisan yang lain (misalkan lapisan output), maka setiap neuronpada lapisan tersebut (misalkan lapisan tersembunyi) juga harus dihubungkan dengan lapisan lainnya (misalkan lapisan output). Ada beberapa bentuk arsitektur jaringan saraf, antara lain: a. Jaringan dengan lapisan tunggal (single layer net)

Jaringan ini hanya memiliki satu lapisan dengan bobot–bobot terhubung. Jaringan ini menerima input yang kemudian secara langsung akan mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi.

Sebuah neuron berinput tunggal diperlihatkan pada gambar 2.4. Input skalar p dikalikan dengan skalar weight w untuk kodisi (bentuk) wp, salah bentuk ini yang dikirim ke dalam penjumlah. Input yang lain, 1, adalah dikalikan dengan biasb dan dilewatkan ke dalam penjumlah. Output dari penjumlah n sering kali digunakan sebagai input net, yang berjalan ke dalam fungsi transfer f, yang menghasilkan output neuron skalar a. (“fungsi aktivasi” disebut juga fungsi transfer dan “offset” disebut juga bias).

Bobot w berhubungan dengan sebuah kekuatan gabungan dari sel badan yang direpresentasikan dengan penjumlahandan fungsi transfer, dan output neuron a mengambarkan signal dalam axon.


(30)

Gambar 2.4 Neuron berinput tunggal

Output neuron dihitung sebagai berikut:

wp b

f

a  ……… (2.1)

Jika untuk sesaat, w3,p2 dan b1.5, kemudian

 

32 1.5

f

 

4.5 f

a   ……… (2.2)

Output nyata bergantung pada fakta-fakta fungsi transfer yang dipilih. Bias lebih mirip dengan bobot, kecuali jika mempunyai input konstan 1. Akan tetapi, jika kita tidak menginginkan bias di dalam sebuah bagian neuron, bias ini bisa diabaikan. Penting untuk w dan bdiatur keduanya dalam bentuk neuron berparameter skalar.

b. Jaringan dengan banyak lapisan (multilayer)

Jaringan ini memiliki satu atau lebih lapisan yang terletak diantara lapisan inputdan lapisan outputnya (memiliki satu atau lebih lapisan tersembunyi). Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang lebih sulit dari pada jaringan dengan lapisan tunggal, tetapi pembelajarannya lebih rumit. Jaringan ini pada banyak kasus lebih sukses dalam menyelesaikan masalah. (Shihab, 2006)


(31)

Gambar 2.5 Jaringan saraf multilayer

2.3.3. Fungsi Aktivasi

Ada beberapa fungsi aktivasi yang sering digunakan dalam jaringan saraf tiruan, antara lain:

1. Fungsi Undak Biner

Fungsi Undak Biner merupakan jaringan lapisan tunggal yang menggunakan fungsi undak (step function) untuk mengkonversikan inputdari suatu variabel yang bernilai kontinyu ke suatu outputbiner (0 atau 1).

W2

X1 X2 X3

Z2 Z1

Y

MATRIX BOBOT KE-2 NILAI INPUT

LAPISAN INPUT

MATRIX BOBOT KE 1

LAP. OUTPUT HIDDEN LAYER

V11

V12 V21

V22

V31

V32

W1


(32)

Gambar 2.6. Fungsi Undak Biner

2. Fungsi Threshold

Fungsi undak biner dengan menggunakan nilai ambang sering juga disebut dengan nama fungsi nilai ambang (threshold) atau fungsi Heaviside. Fungsi undak biner (dengan nilai ambang θ) dirumuskan sebagai berikut dan gambarnya dapat dilihat pada gambar 2.7:

Gambar 2.7. Fungsi Threshold

3. Fungsi Bipolar

Fungsi bipolar dengan Symetric hard limit sebenarnya hampir sama dengan fungsi undak biner, hanya saja output yang dihasilkan berupa 1, 0, -1.

0

x

y

1

0, jika x ≤ 0

1, jika x> 0 1, jika x > 0 y =

{0, jika x ≤ 0 1, jika x> 0

0 x

y 1 y =


(33)

y = 0, jika x ≤ 0 y y = 1, jika x = 0 1 y = -1, jika x < 0

0 x -1

Gambar 2.8. Fungsi Aktivasi Bipolar 4. Fungsi Bipolar (dengan threshold)

Fungsi bipolar dengan thresholdsebenarnya hampir sama dengan fungsi undak biner, hanya saja output yang dihasilkan berupa 1, 0 atau -1. Fungsi bipolar dengan nilai ambang 0 dirumuskan pada Gambar 2.9, hanya saja output yang dihasilkan berupa 1, 0, atau –1. Fungsi ini dirumuskan sebagai berikut:

y = 0, jika x <= 0 y

y = 1, jika x = 0 1

y = -1, jika x < 0

0 x

-1

Gambar 2.9. Fungsi Aktivasi Bipolar (dengan threshold)

5. Fungsi Linear(Identitas)

Fungsi ini memiliki nilai outputyang sama dengan nilai inputnya, dirumuskan sebagai berikut:

Y = x

6. Fungsi Saturating Linear

Fungsi ini akan bernilai 0 jika inputnya kurang dari –½, dan akan bernilai 1 jika inputnya lebih dari ½. Sedangkan jika nilai input terletak antara -½ dan ½, maka


(34)

outputnya akan bernilai sama dengan nilai inputnya ditambah ½. Fungsi saturating linearini dirumuskan sebagai berikut:

             5 . 0 5 . 0 5 . 0 5 . 0 0 0 1 x jika x x jika x jika Y

7. Fungsi Symetric Saturating Linear

Fungsi ini akan bernilai –1 jika inputnya kurang dari –1, dan akan bernilai 1 jika inputnya lebih dari 1. Sedangkan jika nilai input terletak antara -1 dan 1, maka outputnya a0kan bernilai sama dengan nilai inputnya.

8. Fungsi Sigmoid Biner

Fungsi ini digunakan untuk jaringan saraf yang dilatih dengan menggunakan metode backpropagation, mempunyai range 0 sampai 1. Biasanya digunakan untuk jaringan saraf yang membutuhkan nilai output yang terletak pada interval 0 sampai dengan 1, juga pada jaringan saraf yang nilai outputnya 0 atau 1. Fungsi ini dirumuskan sebagai berikut:

y = f(x) = x e  1

1

……… (2.3) dengan f’(x) = f(x)(1-f(x)).

9. Fungsi Sigmoid Bipolar

Fungsi ini hampir sama dengan fungsi sigmoid biner, tetapi outputfungsi ini memiliki range 1 sampa –1. Fungsi ini dirumuskan sebagai berikut:

y = f(x) = x x e e 2 2 1 1     ……… (2.4)

2.4. Proses Pembelajaran

Pada otak manusia, informasi yang dilewatkan dari satu neuron ke neuron yang lainnya berbentuk rangsangan listrik melalui dendrit. Jika rangsangan tersebut

Y =

{

1

-1 Jika x ≥1 Jika –1 ≤ x ≤ 1


(35)

diterima oleh suatu neuron, maka neuron tersebut akan membangkitkan output ke semua neuron yang berhubungan dengannya sampai neuron tersebut sampai ke tujuannya yaitu terjadinya suatu reaksi. Jika rangsangan yang diterima terlalu halus, maka output yang dibangkitkan oleh neuron tersebut tidak akan direspon. Tentu sangatlah sulit memahami bagaimana otak manusia itu belajar. Selama proses pembelajaran, terjadi perubahan yang cukup berarti pada bobot–bobot yang menghubungkan antar neuron. Apabila ada rangsangan yang sama yang diterima oleh neuron, maka neuronakan memberikan reaksi dengan cepat. Tetapi, apabila nantinya ada rangsangan yang berbeda dengan apa yang diterima oleh neuron, maka neuron akan beradaptasi untuk memberikan reaksi yang sesuai. (Heaton, 2008)

Jaringan saraf akan mencoba mensimulasikan kemampuan otak manusia untuk belajar. Jaringan saraf tiruan juga tersusun atas neuron dan dendrit. Tidak seperti model biologis, jaringan saraf memiliki struktur yang tidak dapat diubah, dibangun oleh sejumlah neuron, dan memiliki nilai tertentu yang menunjukkan seberapa besar koneksi antar neuron (dikenal dengan nama bobot). Perubahan yang terjadi selama pembelajaran adalah perubahan nilai bobot. Nilai bobot akan bertambah, jika informasi yang diberikan oleh neuron yang bersangkutan tersampaikan, sebaliknya jika tidak disampaikan oleh suatu neuronke neuronyang lain, maka nilai bobot yang menghubungkan keduanya akan dikurangi. Pada saat pembelajaran dilakukan pada input yang berbeda, maka nilai bobot akan diubah secara dinamis hingga mencapai nilai yang cukup seimbang. Apabila nilai ini telah tercapai yang mengindikasikan bahwa tiap–tiap input telah berhubungan dengan output yang diharapkan. Ada beberapa metode untuk proses pembelajaran pada jaringan saraf tiruan ini, diantaranya :

2.4.1. Pembelajaran Terawasi (Supervised Learning)

Metode pembelajaran jaringan saraf disebut terawasi jika output yang diharapkan telah diketahui sebelumnya. Pada proses pembelajaran, satu pola inputakan diberikan ke satu neuron pada lapisan input. Pola ini akan dirambatkan disepanjang jaringan saraf hingga sampai ke neuron pada lapisan output. Lapisan output ini akan membangkitkan pola output yang nantinya akan dicocokkan dengan pola output targetnya. Apabila terjadi perbedaan antara output hasil pembelajaran dengan pola target, maka disini akan muncul error. Apabila error ini masih cukup besar, mengindikasikan bahwa masih perlu dilakukan lebih banyak pembelajaran lagi.


(36)

2.4.2. Pembelajaran Tak Terawasi (Unsupervised Learning)

Pada metode pembelajaran yang tak terawasi ini, tidak memerlukan target output. Pada metode ini, tidak dapat ditentukan hasil seperti apakah yang diharapkan selama proses pembelajaran. Selama proses pembelajaran, nilai bobot disusun dalam suatu range tertentu tergantung pada nilai input yang diberikan. Tujuan pembelajaran ini adalah mengelompokkan unit–unit yang hampir sama dalam suatu area tertentu. Pembelajaran ini biasanya sangat cocok untuk pengelompokan (klasifikasi) pola (Sholahudin, 2001).

2.5. Backpropagation

Metode propagasi balik merupakan metode yang sangat baik dalam menangani masalah pola-pola kompleks. Istilah ‘propagasi balik’ diambil dari cara kerja jaringan ini, yaitu bahwa gradien error unit-unit tersembunyi diturunkan dari penyiaran kembali error-error yang diasosiasikan dengan unit-unit output. Hal ini karena nilai target untuk unit-unit tersembunyi tidak diberikan. Metode ini menurunkan error untuk meminimkan penjumlahan error kuadrat output jaringan. (Fredric, 2001)

2.6. Adaptive Learning Rate

Adaptive Learning Rate merupakan pendekatan atau metode yang bertujuan untuk meningkatkan efektifitas dari parameter tingkat pembelajaran atau learning rate, dimana tingkat pembelajaran merupakan parameter yang berfungsi meningkatkan kecepatan belajar dari jaringan backpropagation. (Dhaneswara, 2004)

Adaptive Learning Rate muncul karena penelitian yang dilakukan pada nilai pembelajaran yang konstan menyebabkan metode jaringan backpropagation menjadi tidak efisien, dikarenakan sangat bergantung pada nilai tingkat pembelajaran yang dipilih. Pemilihan tingkat pembelajaran yang tidak tepat akan menyebabkan jaringan sangat lambat mencapai local optima, karena alasan tersebut muncullah pendekatan adaptive learning rate.

Implementasi adaptive learning rate adalah mengganti nilai learning rate yang digunakan dalam koreksi bobot pada jaringan pada tiap iterasi menggunakan persamaan yang diusulkan oleh Plagianakos ( Plagianakos, 1998) sebagai berikut :


(37)

dimana :

wt+1 = bobot baru untuk iterasi berikutnya wt = bobot pada iterasi saat (t)

λt = adaptive learning rate

ΔE (wt

) = fungsi error pada bobot iterasi saat (t)

Sedangkan adaptive learning rate(λt) yang digunakan adalah :

(λk) =

αk, αα ≤μ μαk−1

……… (2.6)

2.7. Inisialisasi Pembobotan Nguyen Widrow

Berdasarkan penelitian yang dilakukan, nilai bobot awal random berada dalam interval -1 sampai dengan 1. Jika menggunakan Nguyen Widrow sebagai pembobotan awal maka jumlah bobotnya akan disesuaikan, sehingga bobot awal dapat bertambah maupun berkurang dari nilai awal (Puspitaningrum, 2006). Dengan pembobotan awal menggunakan metode Nguyen Widrow maka jumlah node pada hidden layer akan menentukan besar bias yang akan digunakan dari input layer menuju hidden layer. Bobot dan Bias yang didapat dengan metode Nguyen Widrow sangat dipengaruhi oleh beberapa hal antara lain :

1. Jumlah node pada input layer

Jumlah node pada input layer juga memberikan pengaruh pada nilai bobot dan bias yang dihasilkan dengan metode Nguyen Widrow. Jumlah node pada input layer adalah tergantung jumlah dari input data yang diteliti.

2. Jumlah nodepada hidden layer

Jumlah node pada hidden layer sangat berpengaruh dalam menentukan nilai bobot dan bias. Jika jumlah node pada hidden layer semakin besar maka faktor skala juga semakin besar. Jika faktor skala besar maka nilai bobot juga akan bertambah dan interval bias dari input layer menuju hidden layerakan semakin besar. Penambahan bias pada pembelajaran dengan metode back propagationakan meningkatkan jumlah keluaran (sinyal keluaran) dari sebuah lapisan.


(38)

Nilai awal yang digunakan dalam metode Nguyen Widrow dapat bertambah dan berkurang. Nilai awal yang dimaksud adalah nilai yang berada pada interval -0,5 – 0,5. Hal ini disebabkan karena metode Nguyen Widrow akan menyesuaikan untuk pengenalan pola.

Untuk mendapatkan bias dari input layer menuju hidden layer yang akan digunakan maka terlebih dahulu dicari faktor skala. Faktor skala Nguyen-Widrow didefinisikan sebagai:

β = (0.7 (p)1/n

)……… (2.6) dimana :

n = banyak unit input p = banyak unit hidden β = faktor skala

Prosedur Inisialisasi dengan menggunakan metode Nguyen Widrow. 1. Hitung nilai faktor skala (β).

Dengan faktor skala tersebut, tentukan bobot-bobot antara unit input ke unit tersembunyi (Vij) dengan rumus :

Vij(lama) = bilangan acak antara –β dan β ……… (2.7) 2. Menghitung ||Vj||

||V1|| =√V11 + V21 + V31 + V41 + … … … + V100.1 …… (2.8)

3. Lakukan inisialisasi ulang bobot-bobot dengan cara: Vij(baru) =β. ( )

|| || ……… (2.9)

2.8. Riset-riset Terkait

Terdapat beberapa riset yang telah dilakukan oleh banyak peneliti berkaitan dengan metode backpropagation pada pengenalan pola dengan atau tanpa meggunakan metode Nguyen-Widrow dan adaptive learning rate seperti yang akan dijelaskan di bawah ini :

Setyo Nugroho (2005), melakukan penelitian tentang Algoritma Quickprop dan metode Active Learningdapat meningkatkan kecepatan training.


(39)

Mutasem K.S.A, dkk (2009), meneliti tentang algoritma backpropagation dan membandingkannya dengan metode lain seperti perceptron dan delta rule, kemudian menyimpulkan bahwa algoritma backpropagation merupakan algoritma terbaik di antara algoritma lainnya.

M. Anif (2013), mengembangkan aplikasi text-recognition dengan klasifikasi neural network pada huruf hijaiyah gundul. Peneliti melakukan penelitian dengan menambahkan beberapa learning class tentang karakter huruf dan angka Arab dan menggunakan metode incremental agar dapat dilakukan dengan cepat, mudah dan akan lebih efisien dalam menambah atau mengurangi fitur dari aplikasi inti.

Mufida Khairani (2013), mengembangkan metode backpropagation dengan menggunakan adaptive learning rate dalam pengenalan pola angka dan huruf. Hasil penelitian ini menunjukkan penggunaan adaptive learning rate dapat meningkatkan kecepatan training menuju global optima, tetapi peningkatannya tidak signifikan. Romanus Damanik (2013), melakukan penelitian tentang analisis penggunaan algoritma Nguyen-Widrow untuk identifikasi penyakit ginjal. Pada penelitian ini disimpulkan bahwa waktu trainingdengan pembobotan Nguyen-Widrow lebih cepat dibandingkan dengan pembobotan secara acak pada jaringan backpropagationbiasa.


(40)

BAB III

METODOLOGI PENELITIAN

Bab ini merangkummetodologi penelitianyang membentukprogram penelitiankeseluruhan, membahas dan menganalisis pemecahan masalahyang dihasilkan.

3.1. Spesifikasi Perangkat Keras dan Perangkat Lunak yang Digunakan

Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk membuat sistem adalah sebagai berikut:

1. Prosesor Pentium Intel Core i5 2. Kapasitas Hard Disk 500 GB

3. Memory RAM yang digunakan 4 GB 4. Sistem Operasi Microsoft Windows 7 5. Tools Microsoft Visual Basic

6. Scanner Canon MP 258

3.2. Data yang Digunakan

Data dan sampel yang akan digunakan adalah citra digital yang berbentuk huruf dan angka tipe Arial, di kertas putih dengan tinta berwarna hitam. Setelah pengambilan data, data tersebut di-scan dan hasil scanningdisimpan dalam format jpeg.

Untuk melakukan pengenalan citra berbentuk huruf dan angka menggunakan jaringan syaraf tiruan harus melalui tahapan tententu sehingga dapat menjadi masukan yang baik bagi jaringan syaraf tiruan. Jumlah data yang digunakan sebanyak 26 pola huruf alfabet dan 10 angka bertipe Arial dengan berbagai kondisi tertentu, dimana untuk data pelatihan digunakan 3 kondisi sedangkan untuk data pengujian sebanyak 2 kondisi.


(41)

(42)

Berikut diagram proses secara keseluruhan :

3.3. Pra-Pengolahan Citra

Sebelum ke tahap jaringan syaraf tiruan, data yang telah diambil terlebih dahulu dilakukan proses prapengolahan citra. Pada sistem ini prapengolahan yang dilakukan adalah normalisasi, binerisasi, thinningdan feature extraction.

Gambar 3.2. Tahapan pra-pengolahan citra

3.3.1 Normalisasi (Scaling)

Ukuran citra yang telah di-crop berbeda-beda sehingga belum bisa digunakan sebagai masukan standar untuk diekstraksi. Citra tersebut haruslah dinormalisasi terlebih dahulu yaitu dengan menggunakan ukuran citra yang sesuai untuk diekstrakkan yaitu 100x100 pixel. Contoh citra hasil pemotongan yang dinormalisasi dapat dilihat pada Gambar 3.3.

Input Citra

Pra-Pengolahan Citra

Training NN

Output

Simpan Hasil

Input Citra

Recognition NN

Output

Tampilkan Hasil

Gambar 3.1. Diagram garis besar sistem; a) Pelatihan, b) Pengujian

(a) (b)

Pra-Pengolahan Citra


(43)

Gambar 3.3. Citra hasil normalisasi; a) citra asal, b) citra hasil normalisasi

3.3.2 Pembentukan Matriks Biner (Binarization)

Matriks biner citra ini menghasilkan citra hitam putih yang bersih dari tingkat keabuan (grayscale). Pada tahap ini setiap nilai pixel RGB akan diambil nilai rata-ratanya untuk kemudian dicek, jika nilai yang dihasilkan kurang dari nilai threshold yang ditentukan maka nilai pixel tersebut diubah menjadi warna hitam, sebaliknya jika lebih besar dari nilai konstan maka akan diubah menjadi warna putih. (Sutoyo, 2009)

Gambar 3.4. Citra hasil binerisasi

Jika citra dari nilai pixel pada koordinat (x,y) berwarna hitam maka nilai matriks biner pada baris i dan kolom j adalah 1, jika sebaliknya 0. Adapun diagram alir proses dari matriks biner ini dapat dilihat pada gambar 3.5:


(44)

Gambar 3.5. Diagram Pembentukan Matriks Biner

3.3.3 Pembentukan Matriks Tulang (Thinning)

Tahapan selnajutnya adalah menggunakan proses thinning. Proses thinning dilakukan supaya mendapatkan kerangka dari objek karakter pada citra. Proses thinning ini bertujuan membentuk matriks dari citra tulisan tangan menjadi hanya 1 pixel. Algoritma yang dipakai dalam proses thinning ini adalah algoritma Zhang-Suen yang belum dimodifikasi ( Zhang dan Suen, 1984).

Algoritma Zhang Suen ini menggunakan metode paralel yang mana nilai baru bagi setiap pixel dihasilkan dari nilai pixel pada iterasi sebelumnya. Berikut adalah algoritma thinning dengan Zhang dan Suen :

a. Beri tanda semua pixel 8-tetangga yang memenuhi kondisi 1 sampai dengan 4 b. Hapus piksel tengahnya

c. Beri tanda semua piksel 4-tetangga yang memenuhi kondisi 5 sampai dengan 8 d. Hapus kembali piksel tangahnya


(45)

Dengan kondisi sebagi berikut : 1. 2 ≤ N(p1) ≤ 6

2. S(p1) = 1

3. p2. p4. p6= 0

4. p4. p6. p8= 0

5. 2 ≤ N(p1) ≤ 6

6. S(p1) = 1

7. p2. p4. p6= 0

8. p4. p6. p8= 0

Dimana :

N(p1) = jumlah dari tetangga p1 yang tidak nol

S(p1) = jumlah transisi 0-1 dalam urutan p2, p3, …

Penamaan piksel : p9 p2 p3 p8 p1 p4 p7 p6 p5

Adapun hasil penulangan (thinning) dapat dilihat pada gambar 3.6 :

Gambar 3.6. Pembentukan matriks tulang; a) citra biner, b) citra hasil thinning


(46)

3.3.4 Ekstraksi Fitur (Feature Extraction)

Pada tahap ekstraksi fitur dilakukan agar nilai yang telah dinormalisasikan dapat membentuk sebuah nilai fitur agar mendapatkan nilai-nilai unik dari citra yang telah mengalami proses prapengolahan citra sebelumnya. Setiap data hasil ekstraksi fitur harus benar-benar dapat mewakili karakteristik atau keunikan dari data tersebut. Oleh karena itu diperlukan suatu cara bagaimana agar mendapatkan nilai-nilai unik dari data tersebut sebab data yang akan dianalisis oleh jaringan syaraf tiruan harus direpresentasikan dengan baik ke dalam bentuk numerik ataupun biner.

Pada tahap ini, citra yang berukuran 100x100 pixel dibagi menjadi 10 baris dan 10 kolom dengan masing-masing kolom terdapat 10 piksel, seperti berikut :

Gambar 3.7. Citra hasil ekstraksi fitur

Diagram proses ekstraksi fitur :


(47)

Hasil dari ekstraksi fitur di atas adalah : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 0 1 1 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 1 1 1 1 0 0 0

3.4. Pelatihan Jaringan Menggunakan Nguyen Widrow dan Adaptive Learning Rate

Setelah melakukan tahapan ekstraksi fitur, tahapan berikutnya yaitu klasifikasi dengan menggunakan jaringan syaraf tiruan propagasi balik. Dalam tahapan ini terhadap dua proses yaitu proses pelatihan dan pengujian. Pada proses pelatihan dilakukan proses pelatihan jaringan syaraf tiruan dengan menggunakan nilai fitur yang didapat dari data yang dilatih. Setelah proses pelatihan, masuk ke proses pengujian yaitu dengan menggunakan nilai fitur yang didapatkan dari data yang diuji. Jaringan harus dirancang terlebih dahulu sebelum data dilatih dan diuji.

Pelatihan citra dengan jaringan syaraf tiruan propagasi balik pada penelitian ini menggunakan metode Nguyen-Widrow pada tahap inisialisasi bobot awal dilanjutkan dengan metode adaptive learning rate pada saat koreksi bobot pada proses backward propagation. Secara umum alur proses pelatihan jaringan syaraf tiruan menggunakan metode Nguyen-Widrow dan adaptive learning ratedapat dilihat pada Gambar 3.9 :


(48)

 

n

i ij i j

j v xv

in z

1 0 _

p

i jk i k

j w zw

in y

1 0 _

) _ ( )

(k k k

kty fy in

j k

jk z

W 

k k w 


(49)

Gambar 3.9. Diagram alur proses trainingcitra alfanumerik

m

i

jk k

j w

in

1

_

) _ (

_ j j

j  in fz in

i j

jk x

v 

j j v 

0

jk jk

jk baru w lama w w ( ) ( )

ij ij

ij baru v lama w v ( ) ( )


(50)

3.5. Perancangan Jaringan Propagasi Balik

3.5.1. Arsitektur Jaringan Propagasi Balik

Jaringan syaraf tiruan yang dibangun memiliki satu lapisan input, satu lapisan tersembunyi dan satu lapisan output dengan parameter sebagai berikut.

1. Jumlah Node pada Input Layer

Subjek penelitian ini adalah karakter alfanumerik (huruf dan angka), terdiri dari himpunan karakter huruf besar (26 karakter) dan angka (10 karakter), sehingga didapat 36 karakter. Berdasarkan batasan masalah yang penulis telah jabarkan, ukuran jendela untuk tiap karakter adalah 10x10 piksel, maka jumlah node input pada jaringan harus dapat menampung tiap nilai dari piksel karakter, sehingga jumlah node input yang digunakan adalah 100 node.

2. Jumlah Node pada Output Layer

Output pada jaringan adalah berupa kode ASCII masing-masing karakter yaitu sebanyak 8 digit. Untuk itu harus disusun pola output biner sebanyak 8 node.

3. Jumlah Node pada Hidden Layer

Jumlah unit hidden yang digunakan adalah sebanyak 6 node.

Pada algoritma Nguyen-Widrow, semakin besar jumlah node pada hidden layermaka faktor skala juga akan semakin besar. Jika faktor skala besar maka nilai bobot juga akan bertambah dan interval bias dari input layer menuju hidden layer akan semakin besar juga. Penambahan bias pada pembelajaran dengan metode backpropagation akan meningkatkan sinyal keluaran dari sebuah layer.


(51)

3.5.2. Algoritma Backpropagation

 Inisialisasi bobot (ambil bobot awal dengan nilai random yang cukup kecil).

 Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai FALSE : 1. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran, kerjakan

:

Feedforward :

a. Tiap-tiap unit input (Xi, i=1,2,3,...,n) menerima sinyal xi dan

meneruskan sinyal tersebut ke semua unit pada lapisan yang ada diatasnya (lapisan tersembunyi).

b. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan

sinyal-sinyal input terbobot :

   n i ij i j

j v xv

in z

1 0 _

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya : Zj= f(z_inj)

Dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit output).

c. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menjumlahkan sinyal-sinyal

input terbobot.

   p i jk i k

j w zw

in y

1 0 _

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya : yk=f(y_ink)

Dan kirimkan sinyal tersebut ke semua unit dilapisan atasnya (unit-unit output).

Backpropagation

d. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menerima target pola yang berhubungan dengan pola input pembelajaran, hitung informasi error nya :

) _ ( )

(k k k

kty fy in

Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai wjk) :


(52)

j k

jk z

W 

Hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai w0k) :

k k w



 0

Kirimkan kini ke unit-unit yang ada dilapisan bawahnya.

e. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan delta

inputnya (dari unit-unit yang berada pada lapisan diatasnya) :

  m i jk k j w in 1 _  

Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error :

) _ (

_ j j

j  in fz in

Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij):

i j

jk x

v 

Kemudian hitung koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai v0j):

j j v 

0

f. Tiap-tiap unit output (Yk, k=1,2,3,...,m) memperbaiki bias dan

bobotnya (j=0,1,2,...,p):

jk jk

jk baru w lama w w ( ) ( )

Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) memperbaiki bias dan bobotnya (i=0,1,2,...,n)

ij ij

ij baru v lama w v ( ) ( ) 2. Tes Kondisi berhenti


(53)

BAB IV

HASIL DAN PEMBAHASAN

Pada bab ini akan dibahas tentang sistem yang telah dibuat. Pembahasan meliputi pelatihan dan pengujian yang dilakukan terhadap sistem yang dikembangkan. Pengujian dilakukan dengan tujuan untuk mengetahui kelebihan dan kekurangan dari aplikasi ini.

4.1 Hasil Pembobotan dengan Metode Nguyen Widrow

Untuk melakukan training terhadap citra alfanumerik, angka learning rate dan momentum harus diisi terlebih dahulu. Untuk metode dapat dipilih metode Nguyen Widrow agar pembobotan jaringan diinisialisasikan menggunakan rumus Nguyen Widrow. Penghentian program terdapat dua cara yaitu dengan penentuan maximum epochatau target erroryang telah tercapai.

Setelah data input diisi maka langkah selanjutnya adalah tahap pembobotan. Pada tahap pembobotan akan dihitung bobot dan bias yang akan digunakan untuk pelatihan. Adapun gambar saat dilakukan pembobotan adalah seperti gambar 4.1 :


(54)

Dari gambar 4.1 dapat dilihat bobot akhir yang berhasil disimpan setelah melakukan training pada beberapa data training. Nilai alpha (learning rate) awal yang digunakan adalah adalah 0.1 dan target error adalah 0.001. Pembobotan yang digunakan adalah pemobotan dengan metode Nguyen Widrow. Proses training yang dilakukan akan berhenti pada epoch 100 hal ini disebabkan pada awal proses telah ditentukan maximum epochadalah 100.

4.2Hasil Training Data dengan Metode Nguyen Widrow dan Adaptive Learning Rate

Setelah dilakukan pembobotan maka langkah selanjutnya adalah data dilatih. Pelatihan jaringan saraf tiruan ini berfungsi untuk mengajarkan pola-pola tulisan karakter yang ada sehingga diharapkan jaringan dapat mengenali pola-pola karakter baru yang diberikan. Langkah terakhir adalah bobot disimpan. Cara menyimpan bobot harus benar-benar teliti, bobot harus disimpan di tempat yang sama dan dengan nama yang sama. Kesalahan penyimpanan bobot akan mengakibatkan sistem menggunakan bobot yang tidak tepat (sistem akan menggunakan bobot yang sudah tersimpan terlebih dahulu). Proses saat dilatih dan disimpan dapat dilihat pada gambar 4.2 :

Gambar 4.2. Proses pada saat training

Proses pelatihan akan berhenti jika pada awal ditentukan jumlah maximum epochatau batas error telah tercapai. Hasil pelatihan dengan metode backpropagationbiasa dan


(55)

dengan kombinasi metode Nguyen Widrow dan adaptive learning rate dapat dilihat pada tabel 4.1 :

Tabel 4.1. Hasil Training Data

Input Learning Rate Momentum

Waktu Training(detik) BP Kombinasi

0 0.1 1 0.2534 0.1094

1 0.2 1 0.2688 0.1081

2 0.5 1 0.2634 0.1093

3 0.7 1 0.2713 0.1077

4 0.6 1 0.2855 0.1059

5 0.2 1 0.253 0.1006

6 0.3 1 0.2634 0.1014

7 0.4 1 0.2534 0.1089

8 0.6 1 0.2855 0.1028

9 0.8 1 0.2688 0.1009

A 0.7 1 0.27 0.101

B 0.2 1 0.2792 0.1055

C 0.3 1 0.2554 0.1053

D 0.5 1 0.2634 0.1006

E 0.7 1 0.2713 0.1014

F 0.6 1 0.2855 0.1089

G 0.4 1 0.253 0.1094

H 0.6 1 0.2792 0.1081

I 0.8 1 0.2554 0.1093

J 0.7 1 0.2634 0.1077

K 0.1 1 0.2712 0.1059

L 0.2 1 0.253 0.1006

M 0.5 1 0.2634 0.1014

N 0.7 1 0.2534 0.1089

O 0.2 1 0.2688 0.1094

P 0.3 1 0.2634 0.1081

Q 0.5 1 0.2855 0.1093

R 0.6 1 0.253 0.101

S 0.4 1 0.2792 0.1055

T 0.6 1 0.2554 0.1053

U 0.1 1 0.2688 0.1006

V 0.1 1 0.2534 0.1094

W 0.5 1 0.2792 0.1093

X 0.2 1 0.2713 0.1006

Y 0.3 1 0.2855 0.1055


(56)

4.3 Hasil Pengujian Data dengan Metode Nguyen Widrow dan Adaptive Learning Rate

Langkah selanjutnya setelah training adalah dilakukan pengujian dengan menginput jumlah hidden nodeyang sama pada saat training. Citra yang akan diuji kali ini adalah citra huruf dan angka jenis Arial. Proses saat pengujian adalah seperti gambar 4.3 :

Gambar 4.3. Proses saat Pengujian

Pada tahap pengujian dilakukan dengan menggunakan 72 pola, yaitu 2 jenis karakter Arial (2x36 karakter) yang sudah mengalami perubahan kondisi tertentu untuk dikenali oleh sistem. Hasil pengujian terhadap beberapa data uji dapat dilihat pada tabel 4.2 :

Tabel 4.2. Hasil Pengujian Data

Input Learning Rate Momentum

Waktu Training (detik)

Tingkat Pengenalan BP Kombinasi BP Kombinasi

0 0.1 1 1.3888 0.1076 80% 80%

1 0.2 1 2.355 0.1087 84% 82%

2 0.5 1 1.5863 0.1085 78% 86%

3 0.7 1 3.254 0.1083 78% 84%

4 0.6 1 2.5784 0.1004 82% 78%


(57)

6 0.4 1 0.2634 0.1059 78% 90%

7 0.6 1 0.2855 0.1006 88% 86%

8 0.8 1 0.2792 0.1089 74% 78%

9 0.7 1 0.2554 0.1094 80% 84%

0 0.1 1 0.2634 0.1081 80% 80%

A 0.7 1 2.4428 0.105 78% 90%

B 0.2 1 2.897 0.1143 88% 86%

C 0.3 1 1.6743 0.1156 82% 84%

D 0.5 1 1.9856 0.1028 80% 86%

F 0.6 1 0.2855 0.1089 82% 82%

G 0.4 1 0.253 0.1094 78% 90%

H 0.6 1 0.2792 0.1081 88% 86%

I 0.8 1 0.2554 0.1093 74% 78%

J 0.7 1 0.2634 0.1077 80% 80%

K 0.1 1 0.2712 0.1059 78% 90%

L 0.2 1 0.253 0.1006 88% 86%

M 0.5 1 0.2634 0.1014 82% 82%

N 0.7 1 0.2534 0.1089 78% 90%

O 0.2 1 0.2688 0.1094 88% 86%

P 0.3 1 0.2634 0.1081 78% 90%

Q 0.5 1 0.2855 0.1093 88% 86%

R 0.6 1 0.253 0.101 78% 90%

S 0.4 1 0.2792 0.1055 88% 86%

T 0.6 1 0.2554 0.1053 82% 84%

U 0.1 1 0.2688 0.1006 82% 82%

V 0.1 1 0.2534 0.1094 78% 90%

W 0.5 1 0.2792 0.1093 88% 86%

X 0.2 1 0.2713 0.1006 88% 86%

Y 0.3 1 0.2855 0.1055 78% 90%

Z 0.6 1 0.2688 0.1053 88% 86%

Dari hasil pengujian tersebut dapat dilihat bahwa tingkat pengenalan yang lebih akurat adalah dengan menggunakan metode kombinasi Nguyen Widrow dan adaptive learning ratedengan hasil akurasi mencapai 90% dan waktu yang dibutuhkan untuk pengenalan dengan metode kombinasi Nguyen Widrow dan adaptive learning rate adalah lebih cepat dibanding backpropagasi biasa.


(58)

4.4 Pembahasan

4.4.1 Pembobotan Awal

Analisis terhadap bobot dan bias merupakan hal yang penting. Hal ini disebabkan karena untuk mengurangi error pada metode backpropagation dapat dilakukan dengan menambah dan mengurangi bobot. Pembobotan awal jaringan yang dibangun pada penelitian ini menggunakan pembobotan awal secara acak pada saat menentukan bobot awal di setiap unit input yang menuju hidden layer pada pembelajaran backpropagasi biasa, sedangkan pada metode kombinasi menggunkan inisialisasi Nguyen Widrow.

4.4.1.1 Pembobotan Awal dengan Cara Random

Pembobotan awal dengan cara random dilakukan langsung oleh program. Nilai yang digunakan berada dalam interval 0 sampai dengan 1. Adapaun contoh pembobotan secara random adalah seperti pada tabel :

Tabel 4.3 Contoh pembobotan secara acak

Z1 Z2 Z3 Z4 Z5 Z6

X1 0.5 0.3 0.6 0.8 0.3 0.9

X2 0.6 0.4 1.0 0.6 0.9 0.1

X3 0.5 0.9 0.6 0.4 0.9 0.4

X4 0.3 0.8 1.0 0.4 0.6 1.0

X5 0.4 0.6 0.4 0.3 0.0 0.5

X6 0.9 0.1 0.8 0.1 0.1 0.7

X7 0.2 0.4 0.1 0.1 0.2 0.2

X8 0.8 0.8 0.2 0.7 0.2 0.2

X9 0.9 0.8 0.1 0.6 0.9 0.4

X10 0.5 0.4 0.8 0.8 1.0 0.9

X11 0.1 0.6 1.0 0.7 0.7 0.7

X12 0.9 0.3 0.2 0.7 0.2 0.6

X13 0.9 0.9 0.4 0.4 0.0 0.8

X14 0.7 0.3 0.2 1.0 0.6 0.1

X15 0.3 0.3 0.0 0.6 0.2 0.6

X16 0.9 0.3 1.0 1.0 0.9 0.9

X17 0.4 0.0 0.6 0.7 0.7 0.5

X18 0.4 0.3 0.2 0.9 0.4 0.3

X19 0.8 0.2 0.2 0.2 0.4 0.7

X20 0.5 0.3 0.1 0.1 0.9 0.8

X21 0.6 0.9 1.0 0.5 0.6 0.4


(59)

X23 1.0 0.1 0.9 0.6 0.0 0.3

X24 0.3 0.5 0.0 0.6 0.8 0.8

X25 0.1 0.4 0.5 0.3 0.7 0.1

X26 0.5 0.1 0.4 0.2 0.5 0.6

X27 0.5 0.0 0.6 0.5 0.3 0.2

X28 0.5 0.6 0.7 0.7 0.5 0.9

X29 0.1 0.9 0.4 0.4 0.8 0.6

X30 0.7 0.7 0.5 0.1 0.9 0.4

X31 0.5 0.6 0.3 0.2 0.4 0.7

X32 0.9 0.3 0.6 0.8 0.2 1.0

X33 0.2 0.0 0.9 0.3 1.0 0.8

X34 0.3 0.4 0.6 0.6 0.9 0.0

X35 0.5 0.1 0.6 0.2 0.0 0.5

X36 0.8 0.7 0.7 0.9 0.3 0.8

X37 0.3 0.3 0.1 0.5 0.5 0.6

X38 0.3 0.8 0.3 0.8 0.8 0.9

X39 1.0 0.8 0.9 0.7 0.6 0.8

X40 0.4 0.8 0.8 0.6 0.5 0.3

X41 0.5 0.6 0.5 0.3 0.9 0.1

X42 0.1 0.0 0.5 0.2 0.6 0.1

X43 0.6 0.5 0.9 0.2 0.3 0.1

X44 0.6 0.2 0.2 0.7 0.3 0.1

X45 0.2 0.6 0.9 0.6 0.2 0.2

X46 0.0 0.8 0.4 0.3 0.1 0.8

X47 0.1 0.3 0.1 0.5 0.2 0.3

X48 0.7 0.4 0.8 0.1 0.3 0.4

X49 0.9 0.1 0.1 0.1 0.5 0.4

X50 0.0 0.3 0.5 0.2 0.1 0.2

X51 0.6 0.3 0.3 0.3 0.0 0.9

X52 0.7 0.1 0.8 0.9 0.5 0.7

X53 0.0 1.0 0.2 0.9 1.0 1.0

X54 0.5 0.7 0.8 0.6 0.3 0.8

X55 0.8 0.5 0.4 0.8 0.0 0.6

X56 0.7 0.9 0.9 0.7 0.5 0.8

X57 0.3 0.6 0.2 0.4 0.2 0.1

X58 0.3 0.7 0.8 0.9 0.7 0.8

X59 0.1 0.6 0.3 0.4 0.6 0.6

X60 0.8 0.2 0.9 1.0 0.4 0.1

X61 0.8 0.2 0.2 0.5 0.6 0.1

X62 0.5 0.7 0.6 0.4 0.7 0.9

X63 0.9 0.6 0.2 0.2 0.2 0.4


(60)

X65 0.6 0.9 0.4 0.9 0.3 0.4

X66 0.6 0.6 0.0 0.3 0.6 0.1

X67 0.0 0.3 0.0 0.9 0.3 0.7

X68 0.4 0.2 0.4 0.4 0.2 0.7

X69 0.9 1.0 0.7 0.6 0.3 0.6

X70 0.2 0.7 0.6 0.5 1.0 0.2

X71 0.6 0.8 0.2 0.0 1.0 0.9

X72 0.5 0.5 0.0 0.8 0.3 0.6

X73 0.7 0.2 0.4 0.1 0.1 0.2

X74 0.7 0.2 0.0 0.2 0.8 0.4

X75 0.1 0.6 0.1 0.4 0.1 0.9

X76 0.4 0.9 0.8 0.7 0.5 0.4

X77 0.8 0.4 0.8 0.9 0.3 0.6

X78 0.8 0.9 0.7 0.3 0.8 1.0

X79 0.8 0.5 0.1 0.2 0.8 0.2

X80 0.8 0.2 0.0 0.0 0.6 0.3

X81 0.8 0.1 0.4 0.7 0.4 0.2

X82 0.1 0.7 0.4 0.2 0.2 0.4

X83 0.6 0.1 0.9 0.3 0.5 0.3

X84 0.1 0.9 0.1 0.6 0.8 0.6

X85 0.2 0.2 0.2 0.8 0.6 0.9

X86 0.1 0.4 0.9 0.3 0.8 0.0

X87 0.0 0.2 0.8 0.7 0.8 0.4

X88 0.4 0.1 0.3 0.5 0.3 0.1

X89 0.3 0.9 0.8 0.3 0.5 0.7

X90 0.2 0.6 0.4 0.7 0.4 0.8

X91 0.6 0.2 0.9 0.5 0.6 0.0

X92 0.0 0.2 0.7 0.4 0.7 0.7

X93 0.0 0.9 0.0 0.1 0.0 0.1

X94 0.8 0.8 0.7 0.3 0.2 0.7

X95 0.6 0.6 0.1 0.9 0.5 0.8

X96 0.5 0.1 0.0 0.7 0.9 0.4

X97 0.4 0.7 0.3 0.7 0.6 0.7

X98 0.1 0.6 1.0 0.7 0.2 0.0

X99 0.6 0.8 0.7 0.8 0.3 1.0

X100 0.5 0.0 0.1 0.9 0.8 0.8

Untuk pembobotan secara acak maka nilai bobot dari node pertama lapisan input (X1) menuju node pertama lapisan tersembunyi (Z1) yang digunakan adalah 0.5.


(61)

Cara yang sama dilakukan pada setiap unit pada lapisan input X2 sampai dengan X100 menuju unit-unit pada lapisan tersembunyi yaitu Z1 sampai Z6.

4.4.1.2 Pembobotan Awal dengan metode Nguyen Widrow

Berdasarkan penelitian yang dilakukan, nilai bobot awal random (berada pada interval 0 sampai dengan 1) jika digunakan metode Nguyen Widrow sebagai pembobotan awal maka nilai bobotnya dapat bertambah maupun berkurang dari nilai awal. Dengan pembobotan awal menggunaka metode Nguyen Widrow maka jumlah node pada hidden layer akan menentukan besar bobot yang akan digunakan dari input layer menuju hidden layer. Bobot yang didapat dengan metode Nguyen Widrow sangat dipengaruhi oleh jumlah node pada input layer, jumlah node pada hidden layer dan nilai awal yang digunakan.

Prosedur Inisialisasi dengan menggunakan metode Nguyen Widrow.

1. Hitung nilai faktor skala (β). Untuk jumlah input unit = 100 dan hidden unit = 6 maka faktor skalanya adalah :

β = faktor skala = (0.7 (p)1/n ) β = 0.7 (6)1/100

β = 0.7126

Dengan faktor skala tersebut, tentukan bobot-bobot antara unit input ke unit tersembunyi (vij) dengan (2.7) :

Jika faktor skala yang telah didapat bernilai 0.7126, maka vij(lama) = bilangan acak

antara -0.7126 sampai 0.7126.

Bilangan acak tersebut adalah seperti pada tabel 4.4 sebagai berikut : Tabel 4.4. Bobot inputke hidden layer(sebelum inisialisasi)

Z1 Z2 Z3 Z4 Z5 Z6

X1 0.6623 0.667 -0.0083 0.547 0.3134 -0.1123 X2 -0.6088 0.3782 0.6908 0.2515 -0.4395 0.0141 X3 -0.6766 -0.6022 0.304 0.0449 0.487 0.4922 X4 0.6539 0.1432 -0.6256 0.1725 0.2863 0.6528 X5 -0.2262 0.4711 0.1017 -0.0136 -0.0289 -0.1592 X6 0.4667 -0.1692 -0.3073 -0.4154 0.4781 0.4431


(1)

For Y = 8 To 9 For X = 0 To 9

temp = mat_B(Y, X)

mat_C(X + 40, Y - 8) = temp Next X

Next Y For Y = 0 To 49 i = Y

For X = 0 To 1 j = X

temp = mat_C(i, j)

If (temp > 0) And (temp < 100) Then temp1 = 1

mat_Input(i, j) = temp1 Else

temp1 = 0

mat_Input(i, j) = temp1 End If

Next X Next Y

pBar.Value = 20 End Sub

Sub Set_Target()

Dim temp1, temp2, temp3 As Integer For Y = 0 To 49

temp1 = mat_Input(Y, 0) temp2 = mat_Input(Y, 1) temp3 = temp1 Or temp2 mat_target(Y) = temp3 Next Y

End Sub

Private Sub Form_Activate() cmdOpen.Enabled = True cmdProses.Enabled = False cmdTrain.Enabled = False cmdSave.Enabled = False cmdOpen.Enabled = True optTdk.Value = True pBar.Min = 0

pBar.Max = 100 pBar.Visible = False Call Bersih

'Call Segar End Sub


(2)

Private Sub Form_Load() Call Koneksi

Text4.Text = Text4.Text + "ASCII Code's" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "---" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "0 --> 00110000" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "1 --> 00110001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "2 --> 00110010" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "3 --> 00110011" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "4 --> 00110100" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "5 --> 00110101" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "6 --> 00110110" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "7 --> 00110111" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "8 --> 00111000" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "9 --> 00111001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "A --> 01000001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "B --> 01000010" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "C --> 01000011" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "D --> 01000100" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "E --> 01000101" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "F --> 01000110" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "G --> 01000111" Text4.Text = Text4.Text & vbCrLf


(3)

Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "I --> 01001001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "J --> 01001010" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "K --> 01001011" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "L --> 01001100" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "M --> 01001101" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "N --> 01001110" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "O --> 01001111" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "P --> 01010000" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "Q --> 01010001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "R --> 01010010" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "S --> 01010011" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "T --> 01010100" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "U --> 01010101" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "V --> 01010110" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "W --> 01010111" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "X --> 01011000" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "Y --> 01011001" Text4.Text = Text4.Text & vbCrLf

Text4.Text = Text4.Text + "Z --> 01011010" Text4.Text = Text4.Text & vbCrLf

End Sub

Private Sub txtTarget_Change() On Error Resume Next


(4)

Exit Sub Else

Dim liCount As Long Dim liCount2 As Integer Dim liValue As Integer Dim lsResult As String Dim lvArray(7) As Integer

For liCount = 1 To Len(txtTarget) Step 8 For liCount2 = 0 To 7

lvArray(liCount2) = Mid(txtTarget, liCount + liCount2, 1) Next

lsResult = lsResult & RevertBinary(lvArray) Next

lblTarget.Caption = lsResult cmdTrain.Enabled = True cmdTrain.SetFocus End If

End Sub

Function RevertBinary(ByRef SourceArray() As Integer) Dim int_Count As Integer

Dim Results As Integer On Error Resume Next

For int_Count = 0 To 7 Step 1 If int_Count < 7 Then

SourceArray(int_Count) = SourceArray(int_Count) * (2 ^ (7 - int_Count)) End If

Results = Results + SourceArray(int_Count) Next

RevertBinary = Chr(Results) End Function

Sub Resize()

Dim ImageWidth As Single Dim ImageHeight As Single Dim ResizedWidth As Single Dim ResizedHeight As Single Dim DestWidth As Single Dim DestHeight As Single Dim AspectRatio As Single DestWidth = 100

DestHeight = 100 ResizedWidth = 100 ResizedHeight = 100 AspectRatio = 1

Call AdjustImageDimensions(ResizedWidth, ResizedHeight, DestWidth, DestHeight) AspectRatio = (ResizedHeight / ResizedWidth)

Picture2.Cls

Picture2.PaintPicture ipc.Picture, 0, 0, ResizedWidth, ResizedHeight End Sub


(5)

Sub ResizeThin()

Dim ImageWidth As Single Dim ImageHeight As Single Dim ResizedWidth As Single Dim ResizedHeight As Single Dim DestWidth As Single Dim DestHeight As Single Dim AspectRatio As Single DestWidth = 100

DestHeight = 100 ResizedWidth = 100 ResizedHeight = 100 AspectRatio = 1

Call AdjustImageDimensions(ResizedWidth, ResizedHeight, DestWidth, DestHeight) AspectRatio = (ResizedHeight / ResizedWidth)

Pic1.Cls

Pic1.PaintPicture Picture2.Picture, 0, 0, ResizedWidth, ResizedHeight 'Picture2.Visible = False

End Sub

Sub ResizeThin1()

Dim ImageWidth As Single Dim ImageHeight As Single Dim ResizedWidth As Single Dim ResizedHeight As Single Dim DestWidth As Single Dim DestHeight As Single Dim AspectRatio As Single DestWidth = 100

DestHeight = 100 ResizedWidth = 100 ResizedHeight = 100 AspectRatio = 1

Call AdjustImageDimensions(ResizedWidth, ResizedHeight, DestWidth, DestHeight) AspectRatio = (ResizedHeight / ResizedWidth)

Pic3.Cls

Pic3.PaintPicture ipc1.Picture, 0, 0, ResizedWidth, ResizedHeight ipc1.Visible = False

End Sub Sub Resize1()

Dim ImageWidth As Single Dim ImageHeight As Single Dim ResizedWidth As Single Dim ResizedHeight As Single Dim DestWidth As Single Dim DestHeight As Single


(6)

Dim AspectRatio As Single DestWidth = 100

DestHeight = 100 ResizedWidth = 100 ResizedHeight = 100 AspectRatio = 1

Call AdjustImageDimensions(ResizedWidth, ResizedHeight, DestWidth, DestHeight) AspectRatio = (ResizedHeight / ResizedWidth)

Pic3.Cls

Pic3.PaintPicture Pic1.Picture, 0, 0, ResizedWidth, ResizedHeight End Sub

Sub ResizeBin()

Dim ImageWidth As Single Dim ImageHeight As Single Dim ResizedWidth As Single Dim ResizedHeight As Single Dim DestWidth As Single Dim DestHeight As Single Dim AspectRatio As Single DestWidth = 100

DestHeight = 100 ResizedWidth = 100 ResizedHeight = 100 AspectRatio = 1

Call AdjustImageDimensions(ResizedWidth, ResizedHeight, DestWidth, DestHeight) AspectRatio = (ResizedHeight / ResizedWidth)

Pic2.Cls

Pic2.PaintPicture ipc.Picture, 0, 0, ResizedWidth, ResizedHeight ipc.Visible = False