Pengenalan aksara Lampung menggunakan jaringan syaraf tiruan backpropagation dengan modified direction feature extraction

(1)

i

PENGENALAN AKSARA LAMPUNG MENGGUNAKAN JARINGAN SYARAF TIRUAN BACKPROPAGATION DENGAN MODIFIED

DIRECTION FEATURE EXTRACTION

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika

Oleh: Ronny Gunadi

135314008

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA


(2)

ii

PATTERN RECOGNITION OF LAMPUNG CHARACTER USING ARTIFICIAL NEURAL NETWORK BACK PROPAGATION WITH

MODIFIED DIRECTION FEATURE

A THESIS

Presented as Partial Fulfillment of Requirements to Obtain Sarjana Komputer Degree in Informatics Engineering Department

By : Ronny Gunadi

135314008

INFORMATICS ENGINEERING STUDY PROGRAM INFORMATICS ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY

YOGYAKARTA 2017


(3)

iii


(4)

iv


(5)

v MOTTO

“We do not need magic to change the world. We carry all the power we need inside ourselves already. We have the power to imagine better” – J.K Rowling


(6)

vi


(7)

(8)

viii ABSTRAK

Perkembangan teknologi saat ini semakin pesat yang dampaknya memudahkan kehidupan masyarakat luas di berbagai macam bidang, termasuk bidang pendidikan dan pelestarian budaya. Salah satunya untuk pengembangan aksara daerah yang merupakan salah satu budaya lokal yang harus dipertahankan nilainya. Contoh perkembangan teknologi yang ada saat ini adalah memungkinkannya suatu sistem yang mampu belajar sendiri, seperti layaknya manusia. Teknologi ini dinamakan dengan jaringan syaraf tiruan. Salah satu contoh terapannya adalah dengan adanya suatu sistem yang mampu mengenali suatu pola secara otomatis yang kemudian memberikan informasi terkait dengan pola yang dikenali oleh sistem.

Dalam penelitian ini nantinya akan dihasilkan sistem yang mampu mengenali secara otomatis aksara Lampung yang kemudian diterjemahkan menjadi huruf pada umumnya. Sistem yang akan dibangun ini menerapkan jaringan syaraf tiruan untuk pemodelan sistemnya dan modified direction feature sebagai metode ekstraksi cirinya. Percobaan proses pengenalan dengan Jaringan Syaraf Tiruan Propagasi Balik dengan melakukan optimalisasi arsitektur jaringan menghasilkan akurasi 92,5% dengan menggunakan 1 lapisan tersembunyi dengan jumlah neuron pada lapisan tersembunyai 1 sebanyak 40 neuron.

Kata Kunci : Pengenalan Pola, Modified Direction Feature, Jaringan Syaraf Tiruan Backpropagation


(9)

ix ABSTRACT

Nowadays, the fast growing of technology development facilitates the society’s life in various aspects such as education and cultural preservation. The effect is important in order to develop the regional script that is one of the local cultures that must be maintained its value. Today, the example of the development of technology makes a possibility of a system that can learn by itself as a human. This technology is called artificial neural network. The application example of this technology is the existence of a system that is able to recognize a pattern automatically then provides information related to the patterns recognized by the system.

The result of this research is a system that is able to recognize automatically Lampung script then it is translated into a letter in general. The system that will be built, applying artificial neural network for modeling its system and modified direction feature as a method of extraction character.

The experiment of recognition process with an artificial neural network of back propagation by optimizing the network architecture yielded 92.5% accuracy. It uses 1 hidden layer with the neurons number in the existing layer 1 is 40 neurons.

Keywords : Pattern Recognition, Modified Direction Feature, artificial neural network of back propagation


(10)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik.

Penulis menyadari bahwa dalam penyusunan tugas akhir ini penulis mendapatkan banyak dukungan dari berbagai pihak, mulai dari kritik, saran, serta doa yang penulis sangat butuhkan demi lancarnya pengerjaan tugas akhir ini dan mendapatkan hasil yang baik. Pada kesempatan ini penulis akan menyampaikan ucapan terima kasih kepada :

1. Tuhan Yesus Kristus yang senantiasa melimpahkan rahmat dan karunia-Nya dalam pengerjaan tugas akhir ini.

2. Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

3. Dr. Cyprianus Kuntoro Adi, SJ., M.A., M.Sc. selaku dosen pembimbing tugas akhir yang telah dengan sabar dan penuh perhatian membimbing penulis dalam pengerjaan tugas akhir ini.

4. Dr. Anastasia Rita Widiarti M.Kom selaku Ketua Program Studi Teknik Informatika Universitas Sanata Dharma yang selalu memberikan dukungan dan perhatian serta saran kepada mahasiswa tingkat akhir dalam pengerjaan tugas akhir.

5. Puspaningtyas Sanjoyo Adi, S.T., M.T., selaku dosen pembimbing akademik yang selalu memberikan bimbingan, waktu, dan saran kepada penulis.

6. Kedua orang tua tercinta Bapak Salim Gunadi dan Ibu Rohani yang selalu mendoakan, memotivasi dan memberikan dukungan moral maupun materi kepada penulis sehingga tugas akhir ini dapat terselesaikan.

7. Seluruh dosen Teknik Informatika atas ilmu yang telah diberikan selama perkuliahan dan pengalaman-pengalaman yang berarti bagi penulis.


(11)

(12)

xii DAFTAR ISI

HALAMAN COVER ... i

TITLE PAGE ... ii

HALAMAN PERSETUJUAN PEMBIMBING ... iii

HALAMAN PENGESAHAN ... Error! Bookmark not defined. MOTTO ... v

PERNYATAAN KEASLIAN KARYA ... Error! Bookmark not defined. LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... Error! Bookmark not defined. ABSTRAK ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR GAMBAR ... xv

DAFTAR TABEL ... xviii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan Penelitian ... 3

1.4 Luaran ... 3

1.5 Manfaat Penelitian ... 3

1.6 Batasan Masalah ... 3

1.7 Sistematika Penulisan ... 4

BAB II LANDASAN TEORI ... 5

2.1 Citra ... 5

2.1.1 Citra Biner ... 5

2.1.2 Citra Skala Keabuan ... 6

2.1.3 Citra RGB ... 7


(13)

xiii

2.2.1 Huruf Pokok dari Aksara Lampung ... 9

2.2.2 Anak huruf dari aksara Lampung ... 9

2.3 Pengenalan Pola ... 10

2.4 Pemotongan / Cropping ... 11

2.5 Resizing ... 11

2.6 Penipisan ... 11

2.4.1 Algoritma Rosenfeld ... 13

2.7 Ekstraksi Ciri ... 16

2.5.1 Modified Direction Feature (MDF) ... 16

2.5.1.1 Diretion Feature (DF) ... 16

2.5.1.2 Transition Feature (TF) ... 17

2.5.1.3 Menentukan nilai Modified Direction Feature ... 17

2.8 Normalisasi ... 21

2.8.2 Normalisasi Z-score ... 22

2.8.3 Normalisasi Minmax ... 22

2.9 Jaringan Syaraf Tiruan ... 22

2.7.1 Arsitektur Jaringan ... 23

2.7.2 Backpropagation ... 24

2.8 Mempercepat Pelatihan Backpropagation ... 29

2.9 Confusion Matrix ... 35

BAB III METODOLOGI PENELITIAN ... 37

3.1 Tahapan Penelitian ... 37

3.1.1 Studi Pustaka ... 37

3.1.2 Pengumpulan Data ... 37

3.1.3 Pembuatan Alat Uji ... 37

3.1.4 Pengujian ... 38

3.2 Skenario Sistem ... 38

3.2.1 Gambaran Umum Sistem ... 38

3.3 Desain Alat Uji ... 49

3.3.1 Form Menu Utama ... 49

3.3.2 Form Menu Data Training dan Ekstraksi Ciri ... 50


(14)

xiv

3.4 Kebutuhan Sistem ... 51

BAB IV IMPLEMENTASI DAN ANALISIS HASIL ... 53

4.1 Implementasi Sistem ... 53

4.2 Hasil dan Analisis Hasil ... 61

4.2.1 Pengujian Variasi Arsitektur Jaringan ... 61

4.2.2 Implementasi User Interface ... 80

4.2.3 Pengujian Data Tunggal ... 81

BAB V PENUTUP ... 84

5.1 Kesimpulan ... 84

5.2 Saran ... 84

DAFTAR PUSTAKA ... 85


(15)

xv

DAFTAR GAMBAR

Gambar 2.1 Citra biner ... 6

Gambar 2.2 Citra grayscale ... 7

Gambar 2.3 Citra RGB ... 7

Gambar 2.4 menunjukkan huruf pokok aksara Lampung (Iskar,2012) ... 9

Gambar 2.5 Perubahan citra setelah dilakukan penipisan ... 12

Gambar 2.6 Contoh piksel (P1) dengan 8 tetangga (8-adjacency) ... 13

Gambar 2.7 Contoh piksel P1 sebagai titik batas utara ... 13

Gambar 2. 8 Contoh piksel P1 sebagai titik batas timur ... 13

Gambar 2.9 Contoh piksel P1 sebagai titik batas barat ... 13

Gambar 2.10 Contoh piksel P1 sebagai titik batas selatan ... 14

Gambar 2.11 Dua contoh dimana P1 adalah 4-endpoint ... 14

Gambar 12 Dua contoh dimana P1 adalah sebuah 8-endpoint ... 14

Gambar 13 Dua contoh dimana P1 adalah 4-titik terisolasi ... 14

Gambar 2.14 Contoh piksel P1 adalah sebuah 8-titik terisolasi ... 15

Gambar 2.15 Dua contoh dimana P1 bukanlah 4-simple point ... 15

Gambar 2.16 Dua contoh dimana P1 bukan merupakan 8-simple point ... 15

Gambar 2.17 Contoh hasil perhitungan DT dan LT (Bluemenstein,2007) ... 18

Gambar 2.18 menunjukkan hasil perhitungan MDF setelah di-re-sampled matriks (Bluemenstein,2007) ... 21

Gambar 2.19 menunjukkan arsitektur jaringan single layer (Siang,2005). ... 23

Gambar 2.20 menunjukkan arsitektur jaringan multi layer (Siang, 2005) ... 24

Gambar 2.21 Ilustrasi Arsitektur Jaringan Backpropagation (Siang,2005) ... 25

Gambar 2.22 Efek Penghalusan Momentum (Hagan & Demuth, 1996). ... 30

Gambar 2.23 Lintasan dengan momentum (Hagan & Demuth, 1996). ... 31

Gambar 2.24 Lintasan Variable Learning Rate (Hagan & Demuth, 1996). ... 33

Gambar 3.1 Diagram blok sistem ... 38

Gambar 3.2 Diagram blok preprocessing ... 40

Gambar 3.3 Contoh hasil ekstraksi ciri MDF ... 42

Gambar 3.4 Hasil ekstraksi ciri awal... 42

Gambar 3.5 Hasil mean dan standar deviasi ... 43

Gambar 3.6 Hasil setelah dinormalisasi z-score ... 43

Gambar 3.7 Nilai minimum dan maksimum data ... 43

Gambar 3 8 Hasil setelah dinormalisasi min-max ... 44

Gambar 3.9 Arsitektur jaringan 1 hidden layer ... 45

Gambar 3.10 Arsitektur jaringan dengan 2 hidden layer ... 47


(16)

xvi

Gambar 3.12 Tampilan menu utama ... 50

Gambar 3.13 Tampilan menu pelatihan data dan ekstraksi ciri ... 50

Gambar 3.14 Tampilan menu identifikasi aksara Lampung ... 51

Gambar 4.1 Data awal aksara Lampung ... 53

Gambar 4.2 Citra aksara Lampung hasil cropping ... 54

Gambar 4.3 Perubahan Citra RGB (a) menjadi citra grayscale (b) ... 54

Gambar 4.4 Citra biner aksara Lampung ... 55

Gambar 4.5 Citra aksara Lampung hasil penipisan ... 55

Gambar 4.6 Hasil data ciri diganti nilai arah dan telah dinormalisasi ... 56

Gambar 4.7 Hasil data setelah dibagi 10 ... 57

Gambar 4.8 Hasil nilai LT (Local Transition) ... 57

Gambar 4. 9 Hasil re-sampled matriks ciri ... 58

Gambar 4. 10 Hasil ciri akhir 1 data citra ... 58

Gambar 4. 11 Hasil ekstraksi ciri semua data ... 59

Gambar 4. 12 Implementasi mencari nilai maksimum dan minimum ... 59

Gambar 4. 13 Implementasi persamaan 2.11 ... 59

Gambar 4. 14 Data hasil normalisasi min-max ... 60

Gambar 4. 15 Implementasi mencari nilai standar deviasi dan rata-rata... 60

Gambar 4. 16 Implementasi mencari nilai modus ... 60

Gambar 4. 17 Implementasi persamaan 2.10 ... 60

Gambar 4. 18 Data hasil normalisasi z-score ... 61

Gambar 4. 19 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training dengan menggunakan normalisasi min-max. 62 Gambar 4. 20 Grafik akurasi dengan menggunakan kombinasi hidden layer 1 dengan neuron sebanyak 40 dan variasi jumlah neuron pada hidden layer 2. ... 64

Gambar 4. 21 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training dengan menggunakan normalisasi min-max. 65 Gambar 4. 22 Grafik akurasi dengan menggunakan kombinasi hidden layer 1 dengan neuron sebanyak 40 dan variasi jumlah neuron pada hidden layer 2. ... 67

Gambar 4. 23 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training dengan menggunakan normalisasi z-score dan dengan menggunakan thinning. ... 68

Gambar 4. 24 Grafik akurasi dengan menggunakan kombinasi hidden layer 1 dengan neuron sebanyak 40 dan variasi jumlah neuron pada hidden layer 2 pada percobaan normalisasi z-score. ... 70

Gambar 4. 25 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training dengan menggunakan normalisasi z-score dan dengan tanpa menggunakan thinning. ... 71


(17)

xvii

Gambar 4. 26 Grafik akurasi dengan menggunakan kombinasi hidden layer 1 dengan neuron sebanyak 40 dan variasi jumlah neuron pada hidden layer 2 pada percobaan normalisasi

z-score. ... 73

Gambar 4. 27 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training tanpa menggunakan normalisasi. ... 74

Gambar 4. 28 Grafik akurasi dengan menggunakan kombinasi hidden layer 1 dengan neuron sebanyak 40 dan variasi jumlah neuron pada hidden layer 2. ... 76

Gambar 4. 29 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training tanpa menggunakan normalisasi. ... 77

Gambar 4. 30 Tampilan menu ekstraksi ciri dan pelatihan keseluruhan data aksara ... 80

Gambar 4. 31 Tampilan menu pengujian data tunggal... 81


(18)

xviii

DAFTAR TABEL

Tabel 2 1 Daftar anak huruf yang terletak di atas huruf pokok ... 9

Tabel 2.2 Daftar anak huruf yang terletak di bawah huruf pokok ... 10

Tabel 2 3 Daftar anak huruf yang terletak di samping huruf pokok ... 10

Tabel 2.4 Nilai arah suatu segmen garis ... 17

Tabel 2.5 Tabel confusion matrix ... 36

Tabel 3.1 Target luaran masing-masing aksara ... 46

Tabel 3.2 Contoh confusion matrix ... 49

Tabel 4. 1 Tabel akurasi 1 ... 63

Tabel 4. 2 Tabel akurasi 2 ... 64

Tabel 4. 3 Tabel akurasi 3 ... 65

Tabel 4. 4 Tabel akurasi 4 ... 67

Tabel 4. 5 Tabel akurasi 5 ... 69

Tabel 4. 6 Tabel akurasi 6 ... 70

Tabel 4. 7 Tabel akurasi 7 ... 72

Tabel 4. 8 Tabel akurasi 8 ... 73

Tabel 4. 9 Tabel akurasi 9 ... 75

Tabel 4. 10 Tabel akurasi 10 ... 76

Tabel 4. 11 Tabel akurasi 11 ... 78


(19)

1 BAB I PENDAHULUAN 1.1 Latar Belakang

Aksara daerah merupakan satu dari begitu banyak warisan budaya masing-masing daerah yang ada di dunia, tak terkecuali dari negara kita Indonesia. Dengan begitu banyak budaya yang ada dan tersebar di seluruh penjuru Nusantara, banyak diantaranya yang kurang dilestarikan. Hal ini tidak lepas dari budaya modern dan luar daerah atau bahkan luar negeri yang masuk ke daerah-daerah di Indonesia. Salah satunya warisan budaya berupa tulisan yang biasa disebut aksara, aksara Lampung salah satunya. Untuk pelestariannya sendiri, pemerintah daerah Lampung sendiri mengaturnya dalam Perda 2 Tahun 2008 tentang pemeliharaan kebudayaan Lampung pada Bab IV Pasal 6 ayat 2 poin e, dimana pemerintah daerah dan masyarakat turut serta dalam pelestarian budaya Lampung, dalam hal ini banyak sekolah-sekolah yang menambahkan muatan lokal berupa mata pelajaran Bahasa Lampung sebagai salah satu tindakan nyata. Berdasarkan peraturan yang ada, aksara Lampung sendiri terdiri dari 20 kata ejaan ditambah dengan 12 anak huruf untuk mengubah vokal dari 20 ejaan yang ada. Awalnya, aksara Lampung ditulis di kulit kayu, bilah bambu, daun lontar ataupun batu, untuk menjaga aksara Lampung ini agar tetap ada, dilakukan begitu banyak proses dokumentasi, mulai dari difoto hingga penyalinan ulang ke media tulis yang lebih baik, sehingga dengan seiring berjalannya waktu, naskah-naskah yang bertuliskan aksara Lampung ini tidak hilang atau musnah.

Seiring perkembangan teknologi, dapat dilakukan proses digitalisasi untuk citra/foto dari naskah berisi aksara Lampung untuk mengubah citra aksara menjadi suatu karakter non-citra. Dalam prosesnya, dibutuhkan banyak langkah-langkah sehingga proses digitalisasi yang berlangsung pun cukup banyak, mulai dari proses pengumpulan data, pemilihan data, preprocessing data, hingga hasil akhirnya berupa


(20)

“Pengenalan Aksara Lampung menggunakan Jaringan Syaraf Tiruan (Munir, M.T dan Adhika Aryantio, 2015), dimana dalam penelitiannya dibangun suatu sistem yang mampu mengenali aksara Lampung. Hasil dari penelitian tersebut didapat akurasi sebesar 90,8 % dengan menggunakan Jaringan Syaraf Tiruan Backpropagationdan dengan menggunakan teknik zoning sebagai ekstraksi cirinya. Berbagai macam ekstraksi ciri dapat dilakukan sebagai salah satu faktor terpenting dalam proses pengenalan suatu citra, salah satunya teknik Modified Direction Feature. Terkait dengan ekstraksi ciri Modified Direction Feature, terdapat beberapa penelitian yang telah dilakukan sebelumnya, salah satunya dalam penelitian yang berjudul “A Modified

Direction Feature for Cursive Character Recognition” (Blumenstein, M dkk, 2004). Dalam penelitian tersebut metode Modified Direction Feature digunakan untuk mengekstraksi ciri suatu karakter huruf dan menghasilkan akurasi sebesar 84,52 % .

Maka dari itu, penulis ingin menguji apakah jaringan syaraf tiruan

Backpropagationdan menggunakan Modified Direction Feature Extraction sebagai metode yang akan digunakan untuk melakukan ekstraksi ciri mampu mengidentifikasi aksara Lampung dapat berjalan dengan baik.

1.2 Rumusan Masalah

Ada beberapa hal yang harus diperhatikan berkaitan dengan proses pengenalan aksara lampung, mulai dari proses awal hingga akhir. Hal tersebut dapat dirumuskan menjadi beberapa rumusan masalah, yaitu :

1. Apakah jaringan syaraf tiruan Backpropagation dan Modified Direction Feature mampu mengidentifikasi aksara Lampung dengan baik ?

Dalam hal ini suatu sistem yang dibangun dikatakan baik apabila mampu menghasilkan akurasi diatas 75%, oleh karena itu perlu diketahui berapa nilai akurasi yang akan dihasilkan ketika dilakukan proses pengenalan aksara Lampung dengan menggunakan Jaringan Syaraf Tiruan Backpropagation dan Modified Direction Feature.


(21)

1.3 Tujuan Penelitian

Untuk menjawab rumusan masalah yang ada, maka tujuan dari penelitian ini adalah untuk mengetahui berapa akurasi yang dihasilkan dari Jaringan Syaraf Tiruan

Backpropagation dan Modified Direction Feature dalam mengidentifikasi aksara Lampung.

1.4Luaran

Luaran dari sistem yang akan dibangun ini adalah suatu sistem perangkat lunak yang mampu mengidentifikasi aksara Lampung dengan baik dan memiliki akurasi yang tinggi.

1.5Manfaat Penelitian

Manfaat dari penelitian ini nantinya dapat digunakan oleh masyarakat luas, terutama tenaga pendidik dan siswa yang mempelajari Bahasa Lampung sebagai media pembantu pembelajaran aksara Lampung sehingga dapat memudahkan pembacaannya.

1.6Batasan Masalah

Diperlukan arahan serta fokus dalam beberapa hal yg terkait dengan penelitian ini, berikut batasan-batasan masalahnya :

1. Aksara Lampung yang digunakan adalah hasil dari penyempurnaan aksara Lampung kuno yang banyak digunakan di sekolah-sekolah.

2. Aksara Lampung yang digunakan memiliki 20 jenis aksara yang dianggap sebagai huruf induk dan tanpa ada tambahan anak huruf yaitu ka, ga, nga, pa, ba, ma, ta, da, na, ca, ja, nya, ya, a, la, ra, sa, wa, ha, gha.

3. Input adalah berupa citra dengan ekstensi file *.jpeg atau *.png.


(22)

1.7Sistematika Penulisan BAB I : PENDAHULUAN

Bab ini berisi latar belakang masalah, rumusan masalah, tujuan, manfaat, batasan masalah, metodologi penulisan serta sistematika penulisan.

BAB II : LANDASAN TEORI

Bab ini berisi tentang teori-teori yang berkaitan dengan penelitian yang dilakukan, yang meliputi objek dan metode yang digunakan, yaitu aksara Lampung dan teori Jaringan Syaraf Tiruan Backpropagation untuk data berupa citra.

BAB III : METODE PENELITIAN

Bab ini berisi gambaran umum metode yang digunakan untuk sistem yang akan dibangun, komponen-komponen yang nantinya dibutuhkan dalam penelitian dan perancangan sistem secara lengkap.

BAB IV : IMPLEMENTASI DAN ANALISIS HASIL

Bab ini membahas analisa hasil perancangan sistem dan pengujian sistem pengenalan aksara Lampung.

BAB V : PENUTUP

Bab ini berisi kesimpulan dari hasil analisa dan saran untuk pengembangan sistem lebih lanjut.


(23)

5 BAB II

LANDASAN TEORI

Bab ini berisi tentang pembahasan mengenai teori-teori yang berkaitan dengan penulisan dan penelitian Tugas Akhir ini. Teori-teori tersebut terkait dengan Citra, Aksara Lampung, Modified Direction Feature dan Jaringan Syaraf Tiruan

Backpropagation.

2.1 Citra

Citra merupakan suatu kumpulan titik yang dinamakan piksel (pixel atau “picture element) (Kadir, 2013). Titik-titik ini sendiri berisi suatu informasi penting yang menyusun citra tersebut sehingga kita bisa mendapatkan informasi dari citra tersebut, melalui sebuah citra, lebih banyak informasi yang dapat diperoleh dibandingkan dengan melalui kata-kata. Informasi dari suatu citra dapat diketahui dengan proses pengambilan suatu citra digital. Citra sendiri terbagi menjadi 2 tipe jenis citra, yaitu citra diam dan citra bergerak. Citra diam merupakan suatu citra yang tidak ada unsur pergerakan di dalamnya, contohnya seperti foto, sedangkan citra bergerak merupakan serangkaian citra diam yang digerakkan dalam suatu satuan waktu (fps atau

frame per second) sehingga menghasilkan suatu pergerakkan.

2.1.1 Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai

pixel yaitu hitam dan putih, sehingga hanya dibutuhkan nilai 1 bit untuk merepresentasikan nilai setiap piksel dari citra biner. Nilai hitam dan putih ini direpresentasikan dengan nilai 0 untuk piksel berwarna hitam dan 1 untuk piksel berwarna putih. Citra biner biasanya dimanfaatkan untuk pembuatan barcode.


(24)

Citra biner didapatkan dengan menentukan suatu ambang batas (threshold) pada suatu pemrosesan citra. Misalkan ditetapkan nilai ambang sebesar 128, maka untuk nilai piksel yang lebih kecil dari nilai ambang akan diubah menjadi 0, sedangkan untuk nilai piksel yang lebih besar akan diubah menjadi 255.

2.1.2 Citra Skala Keabuan

Citra skala keabuan / grayscale merupakan citra digital yang membutuhkan nilai kedalaman warna 8-bit, dimana nilainya bervariasi dari 0-255. Nilai kernel pada tiap piksel hanya terdiri dari satu dimensi nilai warna intensitas pikselnya, sehingga tidak ada pembagian nilai masing-masing dimensi seperti pada citra warna RGB (Red, Green, Blue). Untuk melakukan konversi dari citra RGB menjadi grayscale yaitu dengan mengambil nilai rata-rata dari nilai R (Red), G (Green) dan B (Blue) sehingga dapat dirumuskan sebagai berikut

= +�+ (2.1)

dimana X merupakan citra baru dengan skala warna keabuan (grayscale). Gambar 2.1 Citra biner


(25)

2.1.3 Citra RGB

Citra RGB merupakan fewsaqaqz citra digital yang sering kita temui dalam kehidupan sehari-hari. Citra RGB memiliki 3 lapis warna., yaitu Red, Green dan Blue

yang kemudian digabungkan sehingga terjadi perpaduan warna antara ketiganya yang menghasilkan warna lainnya. Untuk citra warna, nilai kedalaman warnanya dapat mencapai 224 atau mencapai 16.777.216.

Gambar 2.2 Citra grayscale


(26)

2.2 Aksara Lampung

Aksara Lampung merupakan suatu representasi budaya lokal berupa tulisan-tulisan yang dibaca dalam bahasa daerah Lampung. Bahasa daerah Lampung terbagi kedalam 2 dialek, yaitu : dialek A (Api) dan dialek O (Nyow)(Iskar, 2012). Bahasa Lampung tidak mempunyai tingkatan perbedaan dalam pemakaian bahasa, tetapi hanya cukup mengganti kata ganti orang (subjek) dalam pembicaraan antar sesama, yaitu antar orang muda, antar orang muda dengan orang tua atau antara sesama orang tua. Aksara Lampung tidak jauh berbeda dengan aksara-aksara daerah diluar Jawa. Para ahli berpendapat bahwa aksara ini berasal dari perkembangan aksara Devanagari yang lengkapnya disebut Dewdatt Deva Nagari dari India yang dianggap suci. Hingga saat ini aksara tersebut masih digunakan di India. Meskipun demikian, aksara Lampung sebenarnya sudah ada sejak sebelum pengaruh India memasuki Lampung. Pengaruh budaya India memberikan ‘local genius’ pada aksara Lampung. Jadi, sebenarnya aksara

Lampung ini (dan juga aksara-aksara lain di Indonesia) merupakan aksara orisinil Nusantara. (James Collins, Bahasa Melayu dan Bahasa Sansekerta). Aksara Lampung kini telah mengalami perkembangan dan penyempurnaan dari aksara Lampung kuno yang jauh lebih kompleks. Aksara Lampung kuno dapat dilihat pada tulisan-tulisan piagam lama yang terbuat dari kulit kayu atau tertulis di atas tanduk. Hal ini dapat dilihat pada kitab yang terdapat di bekas Keratuan Darah Putih bertahun 1270 H, yang ditulis dalam aksara Lampung kuno dan Arab Melayu, dengan memakan bahasa Jawa Banten. Sementara aksara Lampung yang lebih baru adalah aksara yang sekarang masih dipakai di kalangan masyarakat Lampung, terutama di kalangan orang tua. Aksara baru ini mulai dibakukan oleh para dewan adat di Lampung pada 23 Februaru 1985. Aksara Lampung sendiri terdiri dari 20 huruf pokok dan 12 anak huruf.


(27)

2.2.1 Huruf Pokok dari Aksara Lampung

2.2.2 Anak huruf dari aksara Lampung 1. Terletak di atas huruf

Tabel 2 1 Daftar anak huruf yang terletak di atas huruf pokok

Nama Bunyi Aksara

Datas An

Ulan I

Ulan E

Bicek E

Tekelubang Ang

Gambar 2.4 menunjukkan huruf pokok aksara Lampung (Iskar,2012)


(28)

Rejunjung R

2. Terletak di bawah huruf

Tabel 2.2 Daftar anak huruf yang terletak di bawah huruf pokok

Nama Bunyi Aksara

Tekelungau Au

Bitan U

Bitan O

3. Terletak di samping huruf

Tabel 2 3 Daftar anak huruf yang terletak di samping huruf pokok

Nama Bunyi Aksara

Tekelingai Ai

Keleniah Ah

Nengen Mati

2.3 Pengenalan Pola

Pengenalan pola merupakan suatu ilmu untuk mengklasifikasikan atau menggambarkan sesuatu berdasarkan pengukuran kuantitatif fitur (ciri) atau sifat dari suatu obyek. Pola sendiri adalah suatu entitas yang terdefinisi dan dapat


(29)

diidentifikasiserta diberi nama. Pola bisa merupakan kumpulan hasil atau pemantauan dan bisa dinyatakan dalam notasi vektor atau matriks (Putra, 2010).

Pengenalan pola pada dasarnya terdiri dari 3 langkah utama, yaitu

preprocessing, ekstraksi ciri dan pengenalan. Preprocessing merupakan langkah awal dimana dilakukan dari keseluruhan data obyek yang ada agar dapat menghasilkan ciri yang lebih baik pada tahap berikutnya. Pada tahap ini informasi yang dianggap penting akan lebih ditonjolkan. Tahap selanjutnya adalah ekstraksi ciri, tahap ini berfungsi untuk menemukan karakteristik pembeda yang mewakili sifat utama suatu data obyek, sekaligus mengurangi jumlah data tersebut menjadi lebih sedikit tetapi representatif. Tahap akhir yaitu pengenalan, pada tahap ini data yang ada akan dikelompokkan menjadi kelas yang sesuai (Putra, 2010).

2.4 Pemotongan / Cropping

Cropping merupakan proses pemotongan citra pada elemen-elemen tertentu dari citra. Proses ini bertujuan untuk mengambil elemen-elemen yang diinginkan dari citra digital. Hasil pemotongan tersebut akan menjadi citra yang akan digunakan dalam proses selanjutnya.

2.5 Resizing

Resizing merupakan proses perubahan ukuran matriks suatu citra menjadi ukuran matriks tertentu.

2.6 Penipisan

Penipisan adalah suatu operasi preprocessing citra dimana nilai biner region /

daerah citra (daerah citra yang dianggap obyek) direduksi menjadi garis yang kira-kira merupakan garis tengah, yang disebut rangka. Tujuan dari peniisan adalah mereduksi komponen citra menjadi suatu informasi yang sifatnya esensial / mendasar sehingga analisis lebih lanjut dan recognition (pengenalan) dapat dilakukan. Berikut contoh hasil penipisan suatu citra.


(30)

Terdapat beberapa persyaratan penipisan yang dijelaskan oleh O’Gorman dan Kasturi, yaitu :

1. Region citra yang terhubung harus ditipiskan menjadi struktur garis yang terhubung juga. Hasil penipisan harsulah mempertahankan

connectivity-nya, ini adalah syarat mendasar dari penipisan. Hal ini menjamin adanya jumlah yang sama antara connected line structures /

struktur garis terhubung yang telah ditipiskan, yaitu hasil penipisannya, dengan connected region / daerah terhubung dari citra aslinya.

2. Hasil penipisan minimal harus 8-connected / 8-terhubung.

3. Perkiraan lokasi endline (titik yang berada diakhir garis) harus dipertahankan.

4. Hasil penipisan harus mendekati garis tengah region.

5. Extraneous Spurs (cabang-cabang pendek yang tidak ada hubungannya) yang dihasilkan dari proses penipisan harus diperkecil.

Selain kelima syarat yang dijelaskan O’Gorman dan Kasturi di atas, beberapa literature sering menyebut satu syarat yaitu one-pixel thickness. Menurut Taussaint, rangka dari suatu citra haruslah terdiri dari sebuah garis tipis. Hal ini dapat dicapai dengan secara berturut-turut menghapus (mengubah dari hitam menjadi putih) piksel-piksel yang berada pada batas dari citra sampai garis yang tersisa lebarnya satu titik saja.

Gambar 2.5 Perubahan citra setelah dilakukan penipisan


(31)

2.4.1 Algoritma Rosenfeld

Algoritma ini membuang berturut-turut dalam model parallel himpunan bagian dari “batas” dari suatu piksel objek. Misalkan P1 adalah sebuah piksel obyek yang merupakan 8-adjacency set seperti ditunjukan dalam gambar berikut

P1 merupakan titik perbatasan utara jika P2 = 0.

P1 merupakan titik perbatasan timur jika P4 = 0

P1 adalah titik perbatasan barat jika P8 = 0

P1 adalah titik perbatasan selatan jika P6 = 0

Gambar 2.6 Contoh piksel (P1) dengan 8 tetangga (8-adjacency)

Gambar 2.7 Contoh piksel P1 sebagai titik batas utara

Gambar 2. 8 Contoh piksel P1 sebagai titik batas timur


(32)

P1 adalah 4-titik endpoint dengan syarat bahwa tepat satu dari 4-tetangga adalah hitam

P1 adalah sebuah 8-titik endpoint dengan syarat tepat satu dari 8 tetangganya adalah hitam

P1 adalah 4-titik terisolasi jika tidak ada satupun dari 4-tetangga adalah hitam.

P1 adalah sebuaah 8-titik terisolasi jika tidak ada satupun dari 8-tetangganya adalah hitam.

Gambar 2.10 Contoh piksel P1 sebagai titik batas selatan

Gambar 2.11 Dua contoh dimana P1 adalah 4-endpoint

Gambar 2.12 Dua contoh dimana P1 adalah sebuah 8-endpoint


(33)

Sebuah titik perbatasan P1 adalah 4-simple jika berubah dari hitam menjadi putih tidak mengubah 4-connectivity dari sisa piksel hitam dalam tetangga dari P1.

Disini ada 2 contoh yang tidak 4-simple

Sebuah titik perbatasan P1 adalah sebuah 8-simple jika berubah dari hitam menjadi putih tidak mengubah 8-connectivity dari sisa piksel hitam dalam tetangga P1. Berikut adalah contoh yang tidak 8-simple:

Berikut algoritma Rosenfeld penggunaannya bergantung pada berapa a-ketetanggan yang digunakan.

1. Lakukan langkah berikut selagi masih ada piksel yang akan dihapus (berubah dari hitam menjadi putih) :

a. Ubah semua piksel hitam menjadi putih jika mereka merupakan border

utara dari titik yang a-simple tetepai tidak merupakan titik a-terisolasi atau

a-endpoint.

Gambar 2.14 Contoh piksel P1 adalah sebuah 8-titik terisolasi

Gambar 2.15 Dua contoh dimana P1 bukanlah 4-simple point


(34)

b. Ubah semua piksle hitam menjadi putih jika mereka merupakan border

selatan dari titik yang a-simple tetepai tidak merupakan titik a-terisolasi atau a-endpoint

c. Ubah semua piksle hitam menjadi putih jika mereka merupakan border

timur dari titik yang a-simple tetepai tidak merupakan titik a-terisolasi atau

a-endpoint

d. Ubah semua piksle hitam menjadi putih jika mereka merupakan border

barat dari titik yang a-simple tetepai tidak merupakan titik a-terisolasi atau

a-endpoint.

Dengan cara ini maka didapat kerangka dari pola asli inputan. Sifat dari algoritma ini adalah melindungi sifat ketetanggan dari pola input.

2.7 Ekstraksi Ciri

Proses ini merupakan salah satu tahapan paling penting dalam pengenalan aksara Lampung. Dalam prosesnya, nantinya akan dihasilkan suatu informasi penting yang dapat membedakan satu data dengan yang lainnya.

2.5.1 Modified Direction Feature (MDF)

Modified Direction Feature (MDF) bisa digunakan untuk mengekstraksi ciri dalam beberapa kasus tertentu. Teknik ini menggunakan penggabungan 2 teknik ekstraksi ciri lainnya, yaitu Direction Feature (DF) dan Transition Feature (TF) (Bluemenstein, 2006).

2.5.1.1 Diretion Feature (DF)

Direction Feature (DF) adalah proses pencarian suatu nilai ciri dengan menggunakan nilai label arah untuk tiap pikselnya. Arah suatu piksel dikategorikan menjadi 4, yaitu vertikal, horizontal, diagonal kanan, dan diagonal kiri (Bluemenstein, 2004). Untuk masing-masing kategori arah diberi nilai dengan ketentuan sebagai berikut :


(35)

Tabel 2.4 Nilai arah suatu segmen garis

Arah Nilai Bentuk

Vertikal 2

Diagonal kanan 3 Horizontal 4 Diagonal kiri 5

2.5.1.2 Transition Feature (TF)

Transition Feature (TF) merupakan teknik untuk menghitung nilai posisi dan jumlah transisi pada arah horizontal dan vertikal. Transisi merupakan posisi dimana terjadi perubahan dari piksel background menjadi foregroundnamun tidak sebaliknya. Nilai TF didapat dari hasil pembagian antara posisi suatu transisi dengan panjang ataupun lebar suatu citra. Nilai TF dihitung untuk semua 4 arah transisi, yaitu kiri ke kanan, kanan ke kiri, atas ke bawah, dan bawah ke atas. Nilai TF berkisar antara 0-1 dan semakin menurun dari posisi transisi awal hingga posisi akhir transisinya.

2.5.1.3 Menentukan nilai Modified Direction Feature

Nilai MDF merupakan vektor ciri yang didapat setelah menghitung nilai DF dan TF, serta menentukan jumlah transisi yang dipakai. Perbedaan utamanya adalah cara bagaimana vektor cirinya dibuat. Untuk MDF, vektor ciri dibuat berdasarkan perhitungan jumlah transisi dari piksel background ke foreground dari arah vertikal dan horizontal. Pada MDF, selain menghitung nilai Transisi Lokasinya atau Location Transition (LT), nilai Transisi Arah atau Direction Transition (DT) juga disimpan. Oleh karena itu, untuk tiap transisinya, pasangan nilai [LT, DT] disimpan (Bluemenstein, 2014).


(36)

1. Menentukan nilai LT

Untuk menghitung nilai LT, baca data dari tiap baris pada piksel gambar dari kiri ke kanan dan kanan ke kiri. Demkian juga, tiap kolom pada piksel gambar juga dibaca, mulai dari atas ke bawah dan bawah ke atas. Nilai LT dalam tiap arahnya, dihitung sebagai hasil pembagian dari jarak yang dilalui pada suatu gambar. Sebagai contoh, jika suatu transisi dihitung dari kiri ke kanan, maka nilai transisi yang ditemukan terletak semakin ke kiri, maka nilainya lebih besar dibanding dengan nilai transisi yang ditemukan pada bagian kanannya.

2. Menentukan nilai DT

Ketika sebuah transisi pada arah tertentu ditemukan, bersamaan dengan nilai LT, nilai arah (DT) pada posisi tersebut juga disimpan. Nilai DT dihitung dengan membagi nilai arahnya dengan nilai yang telah ditentukan sebelumnya (misalnya pada gambar 2.5, nilai tersebut = 10). Nilai 10 ini dipilih untuk menyederhanakan perhitungan nilai floating-point-nya sehingga nilainya antara 0 dan 1.

Setelah langkah diatas dilakukan, maka didapat 4 vektor dari tiap set cirinya ( 8 vektor totalnya, untuk LT dan DT). Untuk masing-masing nilai LT dan DT, 2 buah vektor akan memiliki dimensi MAX x NC (dimana NC adalah Number of Columns

Gambar 2.17 Contoh hasil perhitungan DT dan LT (Bluemenstein,2007)


(37)

(lebar) dari karakternya) dan 2 vektor sisanya akan menjadi MAX x NR (dimana NR adalah Number of Rows (tinggi) dari karakternya). Lebih lanjut lagi, untuk vektor-vektor diatas dibutuhkan sebuah re-sampling untuk memastikan bahwa ukuran dimensi NC/NR sudah dinormalisasi. Ukuran target dalam re-scaling ditetapkan = 5. Untuk nilai vektor tertentu LT atau DT, dimensi window yang sesuai dihitung dengan menentukan pembagi yang sesuai dari NC/NR, dan rata-rata dari nilai LT/DT yang ada pada tiap window disimpan dalam matriks hasil re-sampled dengan ukuran 5 x 3 (seperti yang ditunjukkan pada gambar 2.5, untuk vektor yang didapat dari arah traversal kiri ke kanan). Bagian re-sampling ini dilakukan untuk tiap nilai vektor transisi yang tersisa, sehingga akan didapat vektor ciri sebanyak 120 atau 160 elemen vektor yang bisa dibentuk, tergantung dengan jumlah transisi yang ditentukan. Jumlah vektor ciri ini ditentukan dengan rumus sebagai berikut :

Total ciri MDF = Feature Pair x Jumlah transisi x Jumlah arah x Ukuran re-sampled

matriks (2.2)

Dengan keterangan Feature Pair [LT, DT] = 2, Jumlah Transisi = 3 atau 4, Jumlah Arah = 4 dan ukuran re-sampled matriks = 5. Algoritma lengkapnya untuk penghitungan location transition dan direction transition ditunjukan pada pseudo-code berikut :

1. Baca semua titik pada suatu citra.

2. Untuk i = 0 sampai jumlah garisnya, dimana i merupakan indeks dari titik pada garis

3. Untuk j = 0 sampai jumlah transisinya, dimana j merupakan nilai transisi yang digunakan.

4. Untuk tiap titik / piksel pada citra, dilakukan pengecekan pada tiap ketetanggaannya dengan menggunakan 8-connectivity.

5. Ubah nilai piksel sesuai dengan piksel disebelahnya sesuai dengan ketentuan pada tabel 2.4.


(38)

6. Setelah ditemukan nilai arahnya, lakukan untuk tiap arahnya: 6.1 Jika arahnya dari kiri ke kanan, maka

LT = − (2.3)

6.2 Jika arahnya dari atas ke bawah, maka

�� = − (2.4)

6.3 Jika arahnya dari kanan ke kiri, maka

�� = (2.5)

6.4 Jjika arahnya dari bawah ke atas, maka

�� = (2.6)

7. Untuk nilai DT(v) = dv / 10 dimana v merupakan indeks titik pada matriks

citranya dan dv merupakan nilai arah pada suatu indeks v.

8. Simpan nilai [LT, DT(v)] sebagai pasangan nilai ciri dalam vektor cirinya.

Seperti yang dijelaskan sebelumnya, ciri awal yang didapat lebih lanjutnya dilakukan local averaging untuk masing-masing arahnya. Lebih jelasnya lagi, algoritmanya seperti yang dijelaskan di bawah ini :

1. Untuk setiap dimensi matriks cirinya 2. Jika pada dimensi kolomnya, maka

L = jumlah kolom 3. Jika lainnya, maka

L = jumlah baris

4. Inisialisasi variabel G sebagai

= (2.7)

5. Untuk i = 0 sampai L, dimana i merupakan jumlah suatu kolom atau baris, dan untuk j = 0 sampai jumlah transisinya

5.1 Buat m = i 5.2 Buat n = i + G


(39)

5.3 Hitung rata-rata LT

 �� = �� + �� + + ⋯ + �� − (2.8)

 �� = �� + �� + + ⋯ + �� − (2.9)

5.4 Simpan [aveLT, aveDT] sebagai pasangan ciri ke dalam re-sampled

matriksnya.

Re-sampled matriks yang digunakan dalam penelitian ini adalah 5. G merupakan representasi dari jumlah elemen (interval) yang dibutuhkan untuk melakukan local averaging . Variabel m dan n merepresentasikan posisi awal dan akhir untuk melakukan local averaging. Hasil akhir yang didapatkan, aveLT dan aveDT,

merupakan nilai rata-rata dari nilai DT dan LT. Berikut salah satu contoh perhitungan MDF dengan menggunakan arah kiri-ke-kanan dan jumlah transisi = 3.

2.8 Normalisasi

Metode normalisasi yang digunakan dalam penelitian ini adalah normalisasi z-score dan normalisasi minmax.

Gambar 2.18 menunjukkan hasil perhitungan MDF setelah di-re-sampled matriks (Bluemenstein,2007)


(40)

2.8.2Normalisasi Z-score

Normalisasi Z-Score umumnya digunakan jika nilai minimum dan maksimum sebuah atribut tidak diketahui (Mustaffa dan Yusof,2011). Normalisasi Z-Score

dirumuskan sebagai berikut :

= − ̅

�� (2.10)

Keterangan

: nilai yang baru : nilai yang lama

�̅ : rata - rata dari atribut A

� : nilai standar deviasi dari Atribut A

2.8.3Normalisasi Minmax

Normalisasi min – max dirumuskan sebagai berikut (Mustaffa dan Yusof, 2011) :

= � − �

� −� (2.11)

Keterangan :

: nilai baru untuk variable X : nilai lama untuk variable X

: nilai minimum dalam data set � : nilai maksimum dalam data set

2.9 Jaringan Syaraf Tiruan

Jaringan syaraf tiruan digunakan dalam proses pemodelan data dari hasil ekstraksi ciri suatu data yang didalamnya terdapat proses pembelajaran sehingga nantinya mampu mengenali data baru yang belum pernah digunakan sebelumnya selama proses pembelajarannya. Jaringan syaraf tiruan merupakan topik yang hangat


(41)

dibicarakan dan mengundang banyak kekaguman karena kemampuannya yang bisa meniru sifat sistem yang diinputkan (Siang, 2009).

Jaringan Syaraf Tiruan ditentukan oleh 3 hal berikut : 1. Pola hubungan antar neuron (arsitektur jaringan).

2. Metode untuk menentukan bobot penghubung (disebut metode training/ learning/algoritma).

3. Fungsi aktivasi. 2.7.1 Arsitektur Jaringan

Beberapa arsitektur jaringan yang sering dipakai dalam jaringan syaraf tiruan antara lain :

1. Jaringan Lapis Tunggal (Single Layer Network)

Dalam jaringan ini, sekumpulan input neuron dihubungkan secara langsung dengan sekumpulan output-nya. Dalam beberapa model (misal perceptron), hanya ada sebuah unit neuron output.

Pada gambar 2.19 terdapat sejumlah n unit masukan (X1,X2,...,Xn) dan k buah

unit keluaran (Y1, Yj, …, Yk) serta bobot yang menyatakan hubungan antara unit

masukan dan keluaran (Wi1, Wj1,…,Wk3). Selama proses pelatihan, bobot-bobot ini

akan diupdate untuk meningkatkan keakuratan hasil keluarannya. Gambar 2.19 menunjukkan arsitektur


(42)

2. Jaringan Lapis Majemuk

Jaringan lapis majemuk merupakan perluasan dari jaringan lapis tunggal. Dalam jaringan ini, selain terdapat masukan (input) dan keluaran (output), terdapat unit-unit lain diantara keduanya, sering disebut sebagai lapis tersembunyi (hidden layer). Dalam jaringan ini, memungkinkan adanya beberapa lapisan tersembunyi, dan pada unit-unit satu lapis tidak saling berhubungan.

Gambar 2.20 adalah jaringan dengan n buah input (X1, X2, …, Xn) dan m buah

output (Y1, Y2, … , Y3) serta sebuah lapis tersembunyi terdiri dari p buah input (Z1, …

, Zp). jaringan ini dapat digunakan untuk menyelesaikan masalah yang lebih kompleks.

2.7.2 Backpropagation

Jaringan Syaraf Tiruan Backpropagation melatih jaringan untuk mendapatkan kesiembangan antara kemampuan jaringan untuk mengenail pola yang digunakan selama proses pelatihan serta kemampuan jaringan untuk memberikan respon yang besar terhadap pola masukan yang serupa (tetapi tidak sama) dengan pola yang digunakan selama proses pelatihan. Backpropagation membandingkan nilai output

dengan nilai target keluarannya dan menghitung nilai errornya untuk tiap unit jaringan. Gambar 2.20 menunjukkan arsitektur jaringan multi


(43)

Vp1

V1i

1. Arsitektur Jaringan Backpropagation

Gambar 2.9 menunjukkan arsitektur Backpropagation dengan sejumlah n buah masukan ditambah sebuah bias, sebuah layer tersembunyi yang terdiri dari p unit ditambah sebuah bias serta sebuah layer keluaran m buah keluaran.

2. Fungsi Aktivasi

Dalam suatu jaringan syaraf tiruan, fungsi aktivasi digunakan untuk menentukan nilai keluaran suatu neuron. Fungsi aktivasi merupakan kombinasi antara nilai masukan dengan bobot serta biasnya. Dalam backpropagation, fungsi aktivasi yang harus dipakai harus memenuhi beberapa syarat yaitu : kontinu, terdifrensial dengan mudah dan merupakan fungsi yang tidak turun. Salah satu fungsi aktivasi yang mememnuhi ketiga syarat tersebut sehingga sering dipakai adalah fungsi sigmoid biner yang memiliki range (0, 1).

= + dengan turunan ′ = − (2.17)

Gambar 2.21 Ilustrasi Arsitektur Jaringan Backpropagation


(44)

Fungsi aktivasi lainnya yang sering dipakai adalah fungsi sigmoid bipolar yang bentuk fungsinya mirip dengan fungsi aktivasi sigmoid biner, tetapi dengan range (-1, 1)

= + − dengan turunan ′ = + � − � (2.18) Fungsi sigmoid memiliki nilai maksimum = 1. Maka untuk pola yang targetnya > 1, pola masukan dan keluaran harus terlebih dahulu ditransformasi sehingga semua polanya memiliki range yang sama seperti fungsi sigmoid yang dipakai. Alternative lain adalah menggunakan fungsi aktivasi sigmoid hanya pada layer yang bukan layer

keluaran. Pada layer keluaran, fungsi aktivasi yang digunakan adalah fungsi identitas : f(x) = x.

3. Pelatihan Standar Backpropagation

Proses pelatihan jaringan syaraf tiruan Backpropagation terdiri dari 3 tahapan, yaitu propagasi maju, propagasi mundur, dan perubahan bobot. Tahapan tersebut akan dilakukan berulang hingga kondisi penghentian terpenuhi.

a. Propagasi Maju

Selama propagasi maju, sinyal masukan (= xi) dipropagasikan ke layer

tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit layer tersembunyi (= zi) tersebut selanjutnya dipropagasikan maju

lagi ke layer tersembunyi di atasnya menggunakan fungsi aktivasi yang ditentukan. Demikian seterusnya hingga menghasilkan keluaran jaringan (=

yk).

Berikutnya, keluaran jaringan (= yk) dibandingkan dengan target yang

harus dicapai (= tk). Selisih tk – yk adalah kesalahan yang terjadi. Jika

kesalahanini lebih kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Akan tetapi apabila kesalahan masih lebih besar dari batas toleransinya, maka bobot setiap garis dalam jaringan akan dimodifikasi untuk mengurangi kesalahan yang terjadi.


(45)

Berdasarkan kesalahan tk dan yk dihitung faktorδk (k = 1,2,…,m) yang

dipakai untuk mendistribusikan kesalahan di unit yk ke semua unit

tersembunyi yang terhubung dengan yk.δk juga dipakai untuk mengubah

bobot garis yang berhubungan langsung dengan unit keluaran.

Dengan cara sama, dihitung δj di setiap unit di layer tersembunyi

sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi pada layer di bawahnya. Demikian seterusnya hingga semua faktor δdi unit tersembunyi yang berhubungan langsung dengan unit masukan dihitung.

c. Perubahan Bobot

Setelah semua faktor δdihitung, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δneuron dilayar atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layar keluaran didasarkan atas δk yang ada di unit keluaran.

Ketiga tahap tersebut diulang terus meneru hingga kondisi penghentian dipenuhi. Umumnya kondisi penghentian yang sering dipakai adalah jumlah iterasi atau kesalahan. Iterasi akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang diijinkan.

Secara umum, algoritma pelatihan jaringan backpropagation adalah sebagai berikut :

1. Inisialisasi semua bobot dengan bilangan acak kecil.

2. Jika kondisi penghentian belum terpenuhi, lakukan langkah 3-10. 3. Untuk setiap pasang data pelatihan, lakukan langkah 4-9.

4. Tiap unit masukan menerima sinyal dan masukan ke unit tersembunyi di atasnya


(46)

5. Hitung semua keluaran di unit tersembunyi zj= (j = 1,2,3,…,p)

= + ∑= (2.19)

= ( ) = + − _ �� (2.20)

6. Hitung semua keluaran jaringan di unit yk (k = 1,2,…,m)

= + ∑ = (2.21)

= = + − − �� (2.22)

7. Hitung faktor δunit keluaran berdasarkan kesalahan di setiap unit keluaran yk (k = 1,2,…,m)

= − ′( ) = (2.23)

Hitung suku perubahan bobot wkj (yang akan dipakai nanti untuk

merubah bobot wkj) dengan laju percepatan α

∆ = ; k = 1,2,…,m ; j = 0,1,…,p

8. Hitung faktor δunit tersembunyi berdasarkan kesalahn di setiap unit tersembunyi zj (j = 1,2, … ,p)

= ∑ = (2.24)

Faktor δunit tersembunyi

= ′ = ( − ) (2.25)

Hitung suku perubahan bobot vji (yang akan digunakan nanti

untuk merubah bobot vji)

∆ = ; j = 1,2,…,p ; i = 0,1,..,n (2.26) 9. Hitung semua perubahan bobot

Perubahan bobot garis yang menuju ke unit keluaran

= + ∆ (k = 1,2, … , m; i=0,1,…,p)

(2.27)


(47)

= + ∆ (j = 1,2, …, p ; i = 0,1,…,n) (2.28) 10. Setelah pelatihan selesai dilakukan, jaringan dapat dipakai untuk

pengenalan pola.

2.8 Mempercepat Pelatihan Backpropagation

Pelatihan standar backpropagation seringkali terlalu lambat untuk keperluan praktis. Beberapa modifikasi perlu dilakukan terhadap pelatihan standar

backpropagation dengan cara mengganti fungsi pelatihannya (Siang, 2009).

Beberapa metode yang dipakai untuk mempercepat pelatihan backpropagation

adalah sebagai berikut :

1. Metode penurunan gradient dengan momentum (traingdm)

Metode ini merupakan metode paling sederhana, tetapi dalam penurunan gradiennya sangat lambat dalam kecepatan proses iterasinya. Hal ini terjadi karena terkadang arah penurunan tercepat bukanlah arah yang tepat untuk mencapai titik minimum globalnya.

Modifikasi metode ini dilakukan dengan menambahkan momentum. Dengan momentum, perubahan bobot tidak hanya didasarkan atas error yang terjadi pada iterasi saat itu. Perubahan bobot saat ini dilakukan dengan memperhitungkan juga perubahan bobot pada iterasi sebelumnya. Dengan demikian kemungkinan terperangkap ke titik minimum lokal dapat dihindari.

Menurut Hagan dan Demuth (1996), sebelum mengaplikasikan momentum ke sebuah jaringan syaraf, akan dibuktikan dalam sebuah ilustrasi efek penghalusan dengan mempertimbangkan urutan pertama filter berikut :

= − + − , (2.29)

dimana w(k) adalah input ke filter, y(k) adalah output filter, dan adalah koefisien momentum yang harus memenuhi


(48)

0 ≤ < 1

Efek dari filter ini ditunjukkan pada gambar . pada contoh ini, input filter diambil dari gelombang sinus

= + sin �6 (2.30)

Dan koefisien momentum ditetapkan pada = 0.9 (a) dan = 0.98 (b). dari gambar tersebut dapat dilihat bahwa osilasi dari filter output kurang dari osilasi filter input. Selain itu, dengan meningkatnya , osilasi pada filter output berkurang. Perhatikan juga bahwa rata-rata filter output sama dengan rata-rata filter input, meskipun dengan meningkatnya , filter output merespon dengan lebih lambat.

Untuk mempersingkat, filter cenderung menurunkan jumlah osilasi, sementara masih melacak nilai rata-rata. Untuk melihat bagaimana hal ini bekerja pada permasalahan jaringan syaraf, pada awalnya parameter pada persamaan berikut diperbarui :

∆ = − − . (2.31)

∆ = − . (2.32)


(49)

Ketika filter momentum ditambahkan untuk merubah parameternya, maka didapatkan persamaan untuk modifikasi momentum backpropagation :

∆ = ∆ − − − − (2.33)

∆ = ∆ − − − (2.34)

Ketika mengaplikasikan perubahan ini, maka akan diperoleh hasil seperti pada gambar 2.11

Jika dilihat dari gambar 2.11, bisa diketahui kenapa diberi nama momentum karena filter cenderung membuat lintasan berjalan terus kearah yang sama, semakin besar nilai

maka semakin banyak momentum yang terdapat pada lintasan.

2. Variable Learning Rate (traingda, traingdx)

Dalam pelatihan standar backpropagation, laju pemahaman berupa suatu konstanta yang nilainya tetap selama iterasi. Akibatnya, unjuk kerja algoritma sangat dipengaruhi oleh besarnya laju pemahaman yang dipakai. Secara praktis, sulit untuk


(50)

menentukan besarnya laju pemahaman yang paling optimal sebelum pelatihan dilakukan. Laju pemahaman yang terlalu besar maupun terlalu kecil akan menyebabkan pelatihan menjadi lambat.

Pelatihan akan lebih cepat apabila laju pemahaman dapat diubah besarnya selama proses pelatihan. Jika error saat ini lebih besar dibandingkan error sebelumnya, maka laju pemahaman diturunkan. Jika sebaliknya, maka laju pemahaman diperbesar. Dengan demikian, laju pemahaman dapat dibuat sebesar-besarnya dengan tetap mempertahankan kestabilan proses.

Menurut Hagan dan Demuth (1996), ada pendekatan memvariasi learning rate

(laju pemahaman) yang sederhana yang didasarkan performa sebuah algoritma. Aturan untuk variable learning rate backpropagation adalah sebagai berikut :

a. Jika error kuadrat (pada keseluruhan training set) meningkat lebih dari peresntase yang ditentukan (umumnya 1-5%) setelah perubahan bobot, maka perubahan bobotnya dianaikan, learning rate dikalikan dengan faktor 0 < p < 1, dan koefisien momentum (jika digunakan) diberi nilai nol. b. Jika error berkurang setelah perubahan bobot, maka perubahan bobot

diterima dan learning rate dikalikan dengan faktor > 1. Jika sebelumnya diberi nilai nol, maka akan diubah menjadi nilai aslinya.

c. Jika error kuadrat meningkat namun kurang dari , maka perubahan bobot diterima tetapi learning rate dan koefisien momentum tetap.

Dengan menggunakan parameter awal yang telah digunakan pada gambar 2.11 dan menambahkan parameter baru, dimana = 1,0η, p = 0,7 dan = ζ%, maka akan didapat hasil seperti pada gambar 2.12.


(51)

3. Resilient Backpropagation (trainrp)

Jaringan syaraf tiruan backpropagation umumnya menggunakan fungsi aktvasi sigmoid, yang akan menerima masukan dari rentang tak hingga menjadi keluaran dengan rentang [0,1]. Semakin jauh titik dari x = 0, semakin kecil gradiennya. Pada titik yang cukup jauh dari x = 0, gradiennya mendektai 0. Hal ini mengakibatkan masalah pada waktu menggunakan penurunan tercepat (yang iterasinya didasarkan atas geradien). Gradient yang kecil menyebabkan perubahan bobot juga kecil, meskipun jauh dari titik optimal.

Masalah ini diatasi dalam resilient backpropagation dengan cara membagi arah dan perubhan bobot menjadi dua bagian yang berbeda. Ketika mengginakan penurunan tercepat, yang diambil hanya arahnya saja. Besarnya perubagan bobot dilakukan dengan cara lain (Siang, 2009).

Gambar 2.24 Lintasan Variable Learning Rate (Hagan & Demuth, 1996).


(52)

4. Gradien Conjugate (traincgf, traincgp, traincgb)

Dalam pelatihan standar backpropagation, bobot dimodifikasi pada arah penurunan tercepat. Meskipun penurunan fungsi berjalan cepat, tapi tidak menjamin akan konvergen dengan cepat. Dalam algoritma gradient conjugate, pencarian dilakukan sepanjang arah conjugate.

Menurut Hagan dan Demuth (1996), langkah-langkah dalam gradient

conjugate adalah sebagai berikut :

a. Memilih arah pencarian pertama p0 menjadi gradient negatif :

= − (2.35)

dimana

≡ ∇ |�= � (2.36)

b. Memilih learning rate αk untuk meminimalisasi fungsi bersamaan dengan

arah pencarian :

+ = + (2.37)

c. Memilih arah pencarian selanjutnya berdasarkan persamaan :

= − + − (2.38)

dengan persamaan berikut ini untuk menghitung βk :

= ∆ �− ∆ � − = � − � − = ∆ � − � − (2.39) d. Jika algoritmanya tidak konvergen, maka lanjut ke langkah b.

5. Quasi-Newton (trainlm)

Algoritma Levenberg-marquardt merupakan pengem merupakan pengembangan algoritma backpropagation standar. Pada algoritma backpropagation, proses update bobot dan bias menggunakan negative gradient descent secara langsung sedangkan..AlgoritmaLevenberg-Marquardt menggunakan pendekatan matrik Hesian (H) yang dapat dihitung dengan,

(2.40) Sedangkan gradient dapat digitung dengan,


(53)

(2.41)

Dalam hal ini J merupakan sebuah matrik jacobian yang berisikan turunanan pertama dari error jaringan terhadap bobot dan bias jaringan. Perubahan pembobot dapat dihitung dengan,

(2.42) sehingga perbaikan pembobot dapat ditentukan dengan

(2.43) (2.44) (2.45)

X = fungsi bobot-bobot jaringan dan bias X = [ v

11, v12, . . . , v ij; v 01, v 02, . . . v0j ; w11, w12 . . . wjk ; w01, w02 . . .w0K]

e adalah vector yang menyatakan semua error pada output jaringan

(2.46)

μ = konstanta learning I = matrik identitas 2.9 Confusion Matrix

Confusion matrix merupakan representasi jumlah prediksi yang benar dan salah yang dibuat oleh model klasifikasi disbanding dengan jumlah data keseluruhan. Matriksnya berdimensi nxn, dimana n adalah jumlah nilai target (kelas). Table brikut menampilkan confusion matriks 2 x 2 unuk 2 kelas (positif dan negatif ).


(54)

Tabel 2.5 Tabel confusion matrix

Confusion Target

Matrix Positif Negatif

Model Positif a b

Negatif c d

Tabel 2.5 menunjukan bahwa data sebanyak a dan d dikenali sesuai dengan target kelasnya, sedangkan b dan c merupakan jumlah data yang dikenali tidak sesuai dengan target luarannya.


(55)

37 BAB III

METODE PENELITIAN

Bab ini berisikan analisa kebutuhan sistem terkait dengan data dan metode yang digunakan untuk ekstraksi ciri citra aksara Lampung, penerapan jaringan syaraf tiruan untuk pengenalan pola serta pengujiannya. Selain kebutuhan sistem, dalam bab ini juga berisi tentang gambaran umum sistem yang akan dibangun, mencakup ekstraksi ciri, pengenalan pola, pengujian serta perancangan antarmuka sistem.

3.1Tahapan Penelitian 3.1.1Studi Pustaka

Tahap ini diperlukan untuk memperoleh sumber-sumber teori yang terkait dengan penelitian Tugas Akhir ini. Teori-teori yang terkait dengan penelitian ini seperti tentang aksara Lampung, Jaringan Syaraf Tiruan Backpropagation , ekstraksi ciri dengan Modified Direction Feature, serta PCA (Principal Component Analysis). 3.1.2Pengumpulan Data

Tahap ini dilakukan untuk memperoleh data yang diperlukan untuk melakukan penelitian Tugas Akhir ini. Data yang digunakan dalam penelitian ini adalah data citra aksara Lampung yang merupakan hasil scan tulisan tangan aksara Lampung yang berasal responden yang kemudian di-crop sehingga menjadi data baru yang siap diolah. Data citra aksara Lampung yang digunakan dalam penelitian ini terdiri dari 20 aksara pokok tanpa ada tambahan anak huruf, yaitu ka, ga, nga, pa, ba, ma, ta, da, na, ca, ja, nya, ya, a, la, ra, sa, wa, ha, gha.

3.1.3Pembuatan Alat Uji

Pada tahap ini, akan dirancang suatu alat uji yang dimulai dengan perancangan


(56)

Backpropagation dan Modified Direction Feature untuk mengidentifikasi aksara Lampung serta mendapatkan akurasi dari sistem yang telah dibangun.

3.1.4Pengujian

Pada tahap pengujian ini, dari seluruh data yang ada dibagi menjadi 2 bagian, yaitu 2/3 bagian untuk data pelatihan dan 1/3 untuk data uji, sehingga tidak ada data yang sama di dalam 2 bagian berbeda tersebut.

3.2Skenario Sistem

3.2.1Gambaran Umum Sistem

Gambaran umum sistem yang akan dibangun merupakan sistem pengenalan aksara Lampung, dimana sistem mampu menejemahkan data masukan berupa citra aksara Lampung menjadi informasi mengenai arti dari aksara tersebut ke dalam huruf latin. Dari data awal yang didapat dari hasil scan, dilakukan preprocessing terlebih dahulu sebelum akhirnya data yang ada siap digunakan. Dari data yang ada tersebut, kemudian di-crop sehingga dalam 1 citra hanya terdapat 1 aksara Lampung saja. Setelah itu, dilakukan proses ekstraksi ciri terhadap tiap citra aksaranya dengan menggunakan Modified Direction Feature, sehingga didapat ciri unik untuk tiap 1 citra aksaranya. Setelah didapat cirinya, dilakukan proses pembelajaran untuk tiap ciri yang


(57)

didapat dari tiap citra aksaranya menggunakan model jaringan syaraf tiruan

backpropagation, sehingga dari ciri yang ada, dapat dilakukan klasifikasi untuk tiap ciri dari input citra karakternya. Setelah didapat model jaringan dan klasifikasinya, maka dilakukan testing terhadap sistem yang telah dibangun dengan menggunakan data baru yang belum pernah digunakan sebelumnya dalam proses pembelajaran jaringannya, tetapi tetap dari sumber yang sama. Pada awalnya data yang digunakan untuk testing akan dilakukan ekstraksi ciri yang kemudian akan diproses ke dalam model jaringannya sehingga hasil identifikasi terkait dengan data citra aksara yang digunakan.

3.2.1.1Data

1. Sumber Data

Sumber data berasal dari tulisan tangan aksara Lampung dari responden. Data yang telah di-scan kemudian di-crop sehingga menjadi data baru yang siap diolah.

2. Data yang digunakan

Data awal yang digunakan sebanyak 20 jenis citra aksara yang berbeda yang merupakan aksara pokok, yaitu ka, ga, nga, pa, ba, ma, ta, da, na, ca, ja, nya, ya, a, la, ra, sa, wa, ha, gha, tanpa ada tambahan anak huruf. Data Aksara Lampung adalah citra hasil scan dari hasil pengisian form yang berisi sampel aksara Lampung yang kemudian diisi sebanyak 10 responden.

3.2.1.2Preprocessing

Pada tahap preprocessing ini, dilakukan beberapa tahap sehingga pada akhir tahap ini, data yang tersedia siap untuk diekstraksi cirinya. Berikut diagram yang menujukkan tahapan yang dilakukan dalam preprocessing.


(58)

1. Cropping

Tahap awal dari penelitian ini adalah dengan melakukan cropping. Dari citra yang ada (seperti gambar 3.3 a), dilakukan pemotongan dari kumpulan citra aksara sehingga hanya menjadi citra dengan 1 aksara saja (lihat gambar 3.3 b).

(a) (b)

2. Resize

Pada tahap ini, dilakukan resizing atau mengubah ukuran matriks citra menjadi ukuran 60 x 60 dengan menggunakan fungsi MATLAB imresize. Hal ini dilakukan

Gambar 3.2 Diagram blok preprocessing

Gambar 3.4 Data awal sebelum di-cropping (a) dan sesudah


(59)

karena pada tahapan sebelumnya, hasil ukuran matriks citranya berbeda, sehingga nantinya lebih mudah dalam melakukan proses ekstraksi ciri.

3. Grayscaling

Tahap selanjutnya, data citra aksara Lampung yang telah di-crop diubah skala warnanya menjadi citra dengan skala keabuan dengan menggunakan fungsi matlab

rgb2gray. 4. Binerisasi

Setelah didapat citra aksara Lampung dengan skala warna keabuan, diperlukan tahap binerisasi yang mengubah intensitas nilai piksel citra menjadi 0 dan 1 saja, dimana 0 direpresentasikan sebagai warna hitam dan 1 direpresentasikan sebagai warna putih pada citra. Dalam hal ini, digunakan fungsi dari MATLAB yaitu im2bw.

5. Thinning

Tahap thinning atau penipisan merupakan tahap akhir preprocessing. Pada tahap ini, citra biner aksara Lampung akan diubah ketebalan pikselnya sehingga untuk setiap data citra aksara Lampungnya menjadi citra kerangka dengan ketebalan 1 piksel. Hasil proses thinning ini nantinya yang digunakan untuk melakukan ekstraksi ciri. Thinning

dilakukan dengan menggunakan metode Rosenfeld.

3.2.1.3Ekstraksi Ciri

Setelah didapat kerangka citra aksara, maka dilakuakn ekstraksi ciri. Metode ekstraksi ciri yang digunakan adalah modified direction feature. Metode ini dipilih karena banyak digunakan dalam proses ekstraksi ciri terkait dengan citra huruf yang memiliki banyak lengkungan.

Proses ekstraksi ciri dalam tahap pelatihan dilakukan pada semua data citra aksara Lampung dengan menentukan nilai arah tiap piksel berdasarkan segmen garisnya yang kemudian di normalisasi berdasarkan nilai dominan tiap segmennya. Nilai arah ini kemudian digunakan untuk menentukan nilai DT dan LT yang merupakan hasil ekstraksi ciri tiap citranya.


(60)

Untuk setiap inputnya, ciri yang dihasilkan sebanyak 120. Jumlah ini ditentukan dari persamaan 2.10.

3.2.1.4Normalisasi

Tahap selanjutnya yaitu tahap normalisasi. Metode normalisasi yang digunakan pada penelitian ini adalah normalisasi z-score dan min-max. 1. Normalisasi Z-score

Dari data hasil ekstraksi ciri yang ada, maka dilakukan normalisasi dengan metode z-score. Normalisasi dilakukan pada data yang dominan / paling banyak muncul dari seluruh data hasil ekstraksi ciri. Berikut merupakan tahapan normalisasi

z-score :

a. Dari data hasil ekstraksi ciri di bawah ini

Dicari nilai rata-rata dan standar deviasi semua data. Gambar 3.5 Contoh hasil ekstraksi ciri MDF


(61)

Gambar 3.6 Hasil mean dan standar deviasi

b. Setelah didapatkan nilai mean dan standar deviasinya, maka normalisasi ini diterapkan pada data yang bersifat dominan dengan menggunakan persamaan 2.10. Berikut hasil data yang telah dinormalisasi.

2. Normalisasi min-max

Dari data hasil ekstraksi ciri yang ada, maka dilakukan normalisasi dengan metode min-max. Normalisasi dilakukan pada data yang dominan / paling banyak muncul dari seluruh data hasil ekstraksi ciri. Berikut merupakan tahapan normalisasi min-max :

a. Dari data hasil ekstraksi ciri pada Gambar 3.5, dicari nilai maksimum dan minimum dari semua data yang ada.

Gambar 3.8 Nilai minimum dan maksimum data Gambar 3.7 Hasil setelah dinormalisasi z-score


(62)

b. Setelah didapatkan nilai minimum dan maksimumnya, maka normalisasi ini diterapkan pada data hasil ekstraksi ciri dengan menggunakan persamaan 2.11. Berikut hasil data yang telah dinormalisasi.

Dalam penelitian ini, kedua metode normalisasi dilakukan. Dari hasil kedua metode normalisasi tersebut akan dibandingkan metode mana yang akan menghasilkan tingkat akurasi yang lebih tinggi.

3.2.1.5Jaringan Syaraf Tiruan

Dari hasil ekstraksi ciri yang telah dinormalisasi, untuk proses selanjutnya, jaringan syaraf tiruan dipilih sebagai metode pengenalan pola yang mampu menghasilkan akurasi yang tinggi dari pengujian sampel diluar data sampel yang digunakan dalam proses pembelajarannya.

Pada subbab selanjutnya, akan dibahas tentang arsitektur jaringan syaraf yang akan digunakan.

3.2.1.6Model/Arsitektur Jaringan Syaraf Tiruan

Arsitekur jaringan yang digunakan dalam proses pelatihan dan pengujian antara lain arsitektur backpropagation dengan 1 hidden layer dan 2 hidden layer. Untuk tiap arsitektur jaringannya, akan dilakukan percobaan dengan beberapa kombinasi seperti variasi jumlah neuron input yang disesuaikan dengan hasil vektor ekstraki ciri modified


(63)

direction feature dan principal component analysis, jumlah neuron pada hidden layer

dan modifikasi fungsi aktivasinya. Hal ini dilakukan untuk mengetahui akurasi dari sistem yang telah dibangun.

1. Arsitektur jaringan dengan 1 hidden layer

Pada gambar 3.10 adalah gambar model jaringan dengan 1 hidden layer yang akan digunakan dalam proses pengujian jaringan dengan nilai ekstraksi ciri yang telah dinormalisasi. Berikut penjelasan mengenai gambar di atas :

1. Input (x1, x2, x3, …, xj) merupakan lapian input dalam jaringan syaraf tiruan

yang dipilih berdasarkan nilai feature sesuai nilai yang didapat dari reduksi dimensi ciri, misalnya didapat nilai feature sejumlah 20, maka pada lapisan input ini indeks xj menjadi x20, yang artinya aka nada 20 masukan ke dalam

jaringannya.

2. Hidden layer (y1,y2,y3,…,yj) merupakan lapisan tersembunyi yang

digunakan untuk mentransformasikan nilai input menjadi nilai yang bisa Gambar 3.10 Arsitektur jaringan 1 hidden layer


(64)

diolah sehingga didapat nilai output-nya. Dalam hal jumlah neuron, jumlahnya bisa divariasi baik itu 10, 20, 30 dan seterusnya, sehingga dapat dibandingkan akurasi yang terbaik yang didapat membutuhkan berapa banyak jumlah neuron pada hidden layer.

3. Output (z1,z2,z3,…,z20) merupakan lapisan luaran yang memiliki 20 neuron,

sesuai dengan jumlah aksara Lampung yang digunakan. Nilai luaran pada lapisan output ini direpresentasikan 0 dan 1, sehingga taget luaran untuk masing-masing aksara berbeda yang dikenali adalah sebagai berikut :

Tabel 3.1 Target luaran masing-masing aksara Nilai target luaran Aksara

1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ba 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ca 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Da 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ga 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Gha 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 Ha 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 Ja 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Ka 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 La 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 Ma 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Na


(65)

Nilai target luaran Aksara 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 Nga 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 Nya 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 Pa 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 Ra 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 Sa 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 Ta 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 Wa 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Ya

2. Arsitektur jaringan dengan 2 hidden layer

Pada gambar 3.11 adalah gambar model jaringan syaraf tiruan dengan 2 hidden layer yang digunakan untuk optimalisasi model jaringan yang sebelumnya yang hanya


(66)

menggunakan 2 hidden layer. Sama halnya dengan model jaringan dengan 1 hidden layer, berikut penjelasan mengenai jaringan dengan 2 hidden layer :

1. Input (x1, x2, x3, …, xj) merupakan lapian input dalam jaringan syaraf tiruan

yang dipilih berdasarkan nilai feature sesuai nilai yang didapat dari reduksi dimensi ciri, misalnya didapat nilai feature sejumlah 25, maka pada lapisan input ini indeks xj menjadi x20, yang artinya aka nada 25 masukan ke dalam

jaringannya.

2. Hidden layer 1(y1,y2,y3,…,yj) merupakan lapisan tersembunyi yang

digunakan untuk mentransformasikan nilai input menjadi nilai yang kemudian diteruskan ke hidden layer selanjutnya. Dalam hal jumlah neuron, jumlahnya bisa divariasi baik itu 10, 20, 30 dan seterusnya, sehingga dapat dibandingkan akurasi terbaik yang didapat tersebut membutuhkan berapa banyak jumlah neuron pada hidden layer 1.

3. Hidden layer 1(y1,y2,y3,…,yj) merupakan lapisan tersembunyi yang

digunakan untuk mentransformasikan nilai dari hidden layer sebelumnya sehingga menjadi nilai keluarannya. Dalam hal jumlah neuron, jumlahnya bisa divariasi baik itu 10, 20, 30 dan seterusnya, sehingga dapat dibandingkan akurasi terbaik yang didapat tersebut membutuhkan berapa banyak jumlah neuron pada hidden layer 2. Tujuan ditambahkannya hidden layer ini adalah untuk mengetahui apakah nilai akurasi yang didapat lebih baik dibanding dengan akurasi yang didapat dari hanya menggunakan 1

hidden layer.

4. Output (z1,z2,z3,…,z20) merupakan lapisan luaran yang memiliki 20 neuron,

sesuai dengan jumlah aksara Lampung yang digunakan. Nilai luaran pada lapisan output ini direpresentasikan 0 dan 1, sehingga taget luaran untuk masing-masing aksara berbeda yang dikenali, seperti yang ditunjukkan pada Tabel 3.1.


(67)

3.2.1.6Pengujian

Pengujian dilakukan dengan membagi keseluruhan data menjadi 2 bagian, 2/3 bagian menjadi data untuk proses pelatihan dan 1/3 bagian lainnya menjadi data testing.

Sedangkan untuk mengetahui akurasi dari dari sistem yang telah dibangun, dapat digunakan suatu confusion matrix yang dapat dilakukan dengan ketentuan sebagai berikut :

Tabel 3.2 Contoh confusion matrix

Aksara 1 Aksara 2 … Aksara 20

Aksara 1 x y … Z

Aksara 2 a b … C

… … … … …

Aksara 20 d e … f

Confusion matrix diatas berisi jumlah data masukan yang teridentifikasi ke dalam suatu kelas atau target. Untuk menentukan nilai akurasinya, ditentukan dengan menjumlahkan nilai diagonal pada confusion matrixnya kemudian dibagi dengan keseluruhan jumlah data atau dapat direpresentasikan dengan rumus berikut :

� = � ℎ % (3.2)

3.3Desain Alat Uji

3.3.1 Form Menu Utama

Form menu utama berisikan tombol Training Data yang mengarahkan ke form yang nantinya digunakan untuk melakukan pelatihan data serta proses ekstraksi cirinya. Tombol Identifikasi Aksara digunakan untuk mengarahkan ke form yang digunakan untuk melakukan pengenalan aksara Lampung.


(68)

3.3.2 Form Menu Data Training dan Ekstraksi Ciri

Form menu ini digunakan untuk melakukan training dan ekstraksi cirinya dari data yang digunakan. Dibutuhkan inputan awal berupa citra aksara yang telah melalui tahap preprocessing sebelumnya. Setelah didapatkan hasil ekstraksi ciri suatu citra aksara, maka hasil tersebut akan disimpan dengan pilihan terjemahan aksaranya.

Gambar 3.5 Tampilan menu utama


(69)

3.3.3 Form Menu Identifikasi Aksara

Form ini digunakan untuk melakukan uji dengan data baru terhadap sistem yang telah dibangun. Pada form ini dibutuhkan data masukan berupa citra aksara Lampung sehingga dapat dilakukan identifikasi dari data masukannya.

3.4Kebutuhan Sistem

Alat yang digunakan dalam proses perancangan sistem : 1. Hardware

Perangkat keras / hardware yang digunakan memiliki spesifikasi sebagai berikut :

1.) Processor : Intel ® Core ™ iη-4200M

2.) RAM : 4GB

3.) Hard Drive : 500 GB

4.) Graphic Interface : NVIDIA GEFORCE 720M

2. Software

Perangkat lunak / software yang digunakan adalah sebagai berikut : 1. Microsoft Windows 8.1 Pro


(70)

Sistem operasi yang digunakan untuk menjalankan perangkat keras serta perangkat lunak lainnya.

2. Matlab 2014 R2014a

Matlab 2014 R2014a digunakan untuk mengimplementasikan rancangan sistem sekaligus untuk menjalankan sistem.


(71)

53

Gambar 4.1 Data awal aksara Lampung BAB IV

IMPLEMENTASI DAN ANALISIS HASIL

Bab ini berisi uraian implementasi dan hasil penelitian yang berupa optimalisasi jaringan syaraf tiruan, variasi percobaan metode training dalam jarigan syaraf tiruan, serta pengujian data tunggal dan uraian mengenai hasil luaran terkait dengan akurasi yang dicapai.

4.1 Implementasi Sistem

Pada subbab ini dibahas tentang proses preprocessing dan ekstraksi ciri dari sistem yang telah dibangun. Sistem dibangun dengan menggunakan bahasa pemrograman MATLAB.

1. Data Aksara

Data aksara yang digunakan berupa citra aksara Lampung yang didapat dari hasil pengisian form. Berikut contoh form beserta isiannya.


(72)

Gambar 4.2 Citra aksara Lampung hasil cropping 2. Cropping dan Resizing

Tahap selanjutnya adala melakukan cropping. Cropping dilakukan secara manual dimana data awal aksara yang berupa citra kumpulan aksara menjadi citra yang hanya berisi satu aksara saja. Setelah itu dilakukan resizing untuk semua citra menjadi 60 x 60. Hal ini dilakukan untuk memudahkan dalam proses ekstraksi ciri.

3. Mengubah Citra Warna

Preprocessing tahap ini merupakan proses perubahan warna pada citra warna, yaitu diubah menjadi citra keabuan dengan menggunakan fungsi rgb2gray pada MATLAB.

(a) (b) Gambar 4.3Perubahan Citra RGB (a) menjadi citra grayscale (b)


(73)

Gambar 4.4 Citra biner aksara Lampung

Gambar 4.5 Citra aksara Lampung hasil penipisan 4. Binerisasi Citra

Dengan menggunakan fungsi im2bw pada MATLAB, citra aksara yang digunakan diubah menjadi citra hitam putih yang hanya memiliki nilai piksel 0 dan 1.

5. Penipisan Citra

Penipisan citra dilakukan dengan menggunakan fungsi Rosenfeld sehingga didapatkan ketebalan citra menjadi 1 piksel.


(74)

Gambar 4.6 Hasil data ciri diganti nilai arah dan telah dinormalisasi 6. Ekstraksi Ciri

Proses ekstraksi ciri dilakukan dengan menggunakan metode Modified Direction Feature (Bluemenstein, 2007). Metode ini digunakan untuk menghitung nilai arah dari suatu garis pada citra aksara dalam 4 arah, yaitu kanan-kiri, kiri-kanan, atas-bawah dan bawah-atas. Hasil yang didapatkan berupa 120 data ciri untuk masing-masing citra aksara yang diproses.

a. Langkah 1

Mengganti nilai tiap piksel dengan ketentuan seperti yang ditunjukkan pada Tabel 2.4.

b. Langkah 2

Langkah selanjutnya adalah menentukan nilai DT dengan membagi nilai tiap piksel dengan elemen pembagai yang telah ditetapkan, yaitu 10.


(75)

Gambar 4.7 Hasil data setelah dibagi 10

Gambar 4.8 Hasil nilai LT (Local Transition) c. Langkah 3

Ulangi langkah 2 untuk menghitung nilai DT dari 4 arah pembacaan matriks yang berbeda, yaitu kiri-ke-kanan, kanan-ke-kiri, atas-ke-bawah dan bawah-ke-atas. d. Langkah 4

Pada langkah ini, dihitung nilai LT dengan menggunakan data yang didapat dari Langkah 1 dengan menggunakan persamaan 2.3.


(76)

Gambar 4. 9 Hasil re-sampled matriks ciri

Gambar 4. 10 Hasil ciri akhir 1 data citra

Dalam menghitung nilai LT, dilakukan sebanyak 4 kali pula dengan arah pembacaan matriks citra yang berbeda, kiri-ke-kanan dengan menggunakan persamaan 2.3, kanan-ke-kiri dengan persamaan 2.5, atas-ke-bawah dengan persamaan 2.4 dan bawah-ke-atas dengan menggunakan persamaan 2.6.

e. Langkah 5

Langkah selanjutnya adalah menghitung nilai rata-rata semua nilai piksel dan melakukan re-sampled matriks sesuai dengan persamaan 2.7.

Dari hasil tersebut, kemudian dengan hasil re-sampled matriks untuk arah lainnya dari nilai DT dan LT digabungkan sehingga didapatkan 120 ciri untuk tiap aksara yang diproses.

Berikut data hasil ekstraksi ciri semua data aksara Lampung yang digunakan dalam penelitian ini.


(77)

Gambar 4. 11 Hasil ekstraksi ciri semua data

Gambar 4. 12 Implementasi mencari nilai maksimum dan minimum

Gambar 4. 13 Implementasi persamaan 2.11

7. Normalisasi

Dalam penelitian ini, dilakukan normalisasi data hasil ekstraksi ciri dengan menggunakan metode min-max dan z-score. Hal ini dilakukan untuk membandingkan metode normalisasi mana yang mampu menghasilkan tingkat akurasi yang lebih tinggi. a. Normalisasi min-max

Normalisasi min-max pada awalnya mencari nilai maksimum dan minimum dari semua data yang ada.


(78)

Gambar 4. 15 Implementasi mencari nilai standar deviasi dan rata-rata

Gambar 4. 16 Implementasi mencari nilai modus

Gambar 4. 17 Implementasi persamaan 2.10

Gambar 4. 14 Data hasil normalisasi min-max Berikut data hasil setelah dilakukan normalisasi.

b. Normalisasi z-score

Normalisasi min-max pada awalnya mencari nilai maksimum dan minimum dari semua data yang ada.

Langkah selanjutnya adalah menemukan nilai yang paling dominan dari data tersebut, karena normalisasi hanya dilakukan pada data yang dominan tersebut.

Dengan menggunakan persamaan 2.10, maka dicari nilai baru untuk data tersebut.


(79)

Gambar 4. 18 Data hasil normalisasi z-score Berikut data hasil setelah dilakukan normalisasi.

4.2 Hasil dan Analisis Hasil

Dalam peneliian yang telah dilakukan, data yang digunakan merupakan 20 jenis huruf aksara Lampung yang didapat dari tulisan tangan 10 orang berbeda. Pada penelitian ini akan dicari model arsitektur jaringan syaraf tiruan yang mampu menghasilkan akurasi terbaik dalam proses pengenalannya. Untuk mendapatkan model jaringan syaraf yang terbaik, dilakukan berbagaim macam percobaan dengan melakukan variasi jumlah hidden layer, jumlah neuron, dan metode training jaringannya. Setelah didapat model jaringan yang terbaik, maka model jaringan tersebut akan digunakan untuk melakukan pengujian data tunggal untuk menunjukkan hasil dari pengenalan yang dilakukan.

4.2.1 Pengujian Variasi Arsitektur Jaringan

Dalam percobaan variasi arsitektur jaringan, digunakan sebanyak 200 data citra aksara. Sebelum dilakukan proses pengenalan, dilakukan terlebih dahulu ekstraksi ciri untuk semua data tersebut, sehingga menghasilkan 120 ciri untuk tiap citranya, sehingga total data yang digunakan untuk percobaan sebanyak 200 x 120 data. Dalam percobaan ini dilakukan beberapa kali percobaan dengan melakukan variasi model arsitektur jaringan syaraf tiruan, jumlah neuron pada hidden layer dan variasi metode normalisasi.


(80)

Gambar 4. 19 Grafik menunjukkan pencapaian akurasi dengan menggunakan variasi jumlah neuron pada hidden layer dan metode training dengan menggunakan

normalisasi min-max. 1. Percobaan 1

Pada percobaan ini, data yang digunakan merupakan data hasil normalisasi

min-max. Percobaan ini dibagi menjadi 2 bagian, yaitu percobaan dengan dan tanpa menggunakan proses penipisan/thinning.

A. Percobaan dengan penggunaan thinning

Percobaan ini dilakukan dengan mengolah data ekstraksi ciri yang dinormalisasi dengan metode min-max dan dalam preprocessing-nya melalui proses penipisan (thinning). Berikut grafik yang menunjukkan hasil dari percobaan tersebut


(81)

Berikut rincian hasil akurasi yang telah dipaparkan sebelumnya pada gambar 4.19. Tabel 4. 1 Tabel akurasi 1

Jumlah Neuron

Variasi Metode Training traingd m traingd x traingd a traincg f traincg p traincg b trainl m trainr p

5 6.25 17.5 16.25 7.5 16.25 18.75 46.25 17.5

10 3.75 52.5 41.25 41.25 40 45 65 33.75

15 5 33.75 20 32.5 50 20 60 77.5

20 11.25 61.25 40 63.75 66.25 80 66.25 72.5

25 11.25 61.25 33.75 51.25 50 48.75 73.75 76.25

30 11.25 65 38.75 51.25 51.25 43.75 75 67.5

35 10 72.5 48.75 71.25 72.5 76.25 90 68.75

40 10 73.75 45 57.5 58.75 63.75 91.25 66.25

45 7.5 66.25 41.25 73.75 57.5 80 90 86.25

50 11.25 61.25 43.75 65 70 71.25 82.5 81.25

55 16.25 65 41.25 61.25 63.75 60 85 77.5

60 13.75 68.75 37.5 63.75 63.75 71.25 90 78.75

Tabel 4.1 merupakan hasil akurasi yang dicapai dengan melakukan variasi arsitektur jaringan, jumlah neuron, serta metode pelatihannya. Dari tabel 4.1 dapat diketahui bahwa akurasi tertinggi adalah 91,25% dengan menggunakan metode

training trainlm (Levenberg-Marquardt) dan menggunakan 1 hidden layer dengan jumlah neuron sebanyak 40.

Tahap percobaan selanjutnya adalah menambahkan 1 hidden layer. Penambahan jumlah hidden layer dilakukan pada arsitektur jaringan yang menghasilkan akurasi tertinggi pada percobaan sebelumnya. Dalam percobaan ini, ditambah dengan hidden layer ke-2 dengan variasi jumlah neuron dan hasilnya ditunjukkan seperti pada gambar berikut.


(1)

113


(2)

114


(3)

115


(4)

116


(5)

117


(6)

118