2. Kemudian tambahkan nilai 0 ke sekeliling matriks, sehingga didapatkan
matris dengan ukuran 5x5 atau m+2 x n+2 3.
Tambahkan window dengan ukuran 3x3. Mulai dari matriks A1,1 letakkan
4. Nilai yang akan diganti adalah element tengah
5. Ulangi prosedur ini untuk semua nilai matriks input dengan menggeser
2.3.3 Cropping
Cropping pada pengolahan citra berarti memotong satu bagian dari citra sehingga diperoleh citra yang diharapkan. Ukuran pemotongan citra tersebut
berubah sesuai dengan ukuran citra yang diambil. Cropping dilakukan pada koordinat x,y sampaipada koordinat m,n. Oleh karena itu, pertama kali yang
harus lakukan adalah menentukan koordinat-koordinat tersebut. Penulis menyebutnya koordinat X
L
, Y
T
, X
R
dan Y
B
dimana x memiliki koordinat X
L
sampai X
R
X
L
x X
R
dengan selang [X
L
, X
R
] dan y memiliki koordinat Y
T
sampai Y
B
Y
T
y Y
B
dengan selang [Y
T
, Y
B
] didapat X
L
, Y
T
adalah koordinat titik sudut kiri atas dan X
R
, Y
B
adalah koordinat titik sudut kanan bawah maka ukuran pemotongan citra dapat dirumuskan sebagai berikut Arief, 2010:
w’ = X
R
– X
L
– 1 2.3
h’ = Y
B
– Y
C
-1 2.4
dimana: w’ = ukuran lebar citra hasil cropping
h’ = ukuran tinggi citra hasil cropping
2.3.4 Thinning
Thinning adalah operasi morfologi yang digunakan untuk menghapus piksel foreground yang terpilih dari gambar biner, bisanya digunakan untuk proses
Universitas Sumatera Utara
mencari tulang dari sebuah objek skeletonization. Thinning bertujuan untuk mengurangi ukuran dari suatu image image size dengan tetap mempertahankan
informasi dan karakteristik penting dari image tersebut Pardede, 2010. Terdapat cukup banyak algoritma untuk image thinning dengan tingkat
kompleksitas, efisiensi dan akurasi yang berbeda-beda. Citra yang digunakan untuk proses thinning adalah citra biner, jika data masukannya berupa citra
RGB maka haruslah citra tersebut dimanipulasi menjadi citra grayscale, citra grayscale merupakan syarat guna menghasilkan suatu citra biner. Namun untuk
mengubah citra grayscale menjadi citra biner dilakukan proses thresholding dahulu. Sehingga diperoleh citra threshold, jika citra threshold sudah diperoleh
maka citra biner dapat dicari. Citra biner ini yang kemudian akan diproses dalam proses thinning. Citra hasil dari algoritma thinning biasanya disebut dengan skeleton
kerangka. Umumnya suatu algoritma thinning yang dilakukan terhadap citra biner
seharusnya memenuhi kriteria-kriteria sebagai berikut: 1.
Skeleton dari citra kira-kira berada di bagian tengah dari citra awal sebelum dilakukan thinning.
2. Citra hasil dari algoritma thinning harus tetap menjaga struktur
keterhubungan yang sama dengan citra awal. 3.
Suatu skeleton seharusnya memiliki bentuk yang hampir mirip dengan citra awal.
4. Suatu skeleton seharusnya mengandung jumlah piksel yang
seminimal mungkin namun tetap memenuhi kriteria-kriteria sebelumnya Hasil dari operasi thinning pada citra biner yang sederhana dapat dilihat
pada gambar 2.4. Dimana gambar 2.4a merupakan citra asli sebelum dilakukan proses thinning dan gambar 2.4b merupakan citra hasil proses thinning.
Universitas Sumatera Utara
a b
Gambar 2.4 a Pola awal b Pola hasil Thinning Sebagian besar algoritma thinning merupakan algoritma yang besifat
iteratif. Dalam sebuah penelusuran piksel sisi diperiksa berdasarkan beberapa kriteria untuk menentukan apakah suatu piksel sisi dihapus atau tidak.
Banyaknya jumlah penelusuran yang terjadi dihitung berdasarkan jumlah loop perulangan yang terjadi. Ada beberapa jenis algoritma thinning yaitu sequential
dan paralel. Jenis sequential menggunakan hasil dari penelusuran sebelumnya dan hasil yang didapatkan sejauh ini dalam penelusuran yang sekarang untuk
memproses piksel yang sekarang. Jadi pada setiap ujung penelusuran sejumlah piksel telah diproses terlebih dahulu. Hasil ini dapat digunakan secepatnya untuk
memproses piksel selanjutnya. Sedangkan jenis parallel, hanya hasil dari penelusuran sebelumnya yang mempengaruhi keputusan untuk menghapus suatu
titik pada penelusuran yang sekarang. Algoritma ZhangSuen adalah algoritma thinning untuk citra biner,
dimana piksel background citra bernilai 0, dan piksel foreground region bernilai 1. Algoritma ini cocok digunakan untuk bentuk yang diperpanjang elongated
dan dalam aplikasi OCR Optical Character Recognition. Algoritma ini terdiri dari beberapa penelusuran, dimana setiap penelusurannya terdiri dari 2
langkah dasar yang diaplikasikan terhadap titik objek titik batas region. Titik objek ini dapat didefinisikan sebagai sembarang titik yang pikselnya bernilai 1,
dan memiliki paling sedikit 1 piksel dari 8-ketetanggaannya yang bernilai 0. Setiap iterasi dari metode ini terdiri dari dua sub-iterasi yang berurutan
yang dilakukan terhadap contour points dari wilayah citra. Contour point adalah setiap piksel dengan nilai 1 dan memiliki setidaknya satu 8-neighbor yang memiliki
nilai 0. Dengan informasi ini, langkah pertama adalah menandai contour point
Universitas Sumatera Utara
p untuk dihapus jika semua kondisi ini dipenuhi: a 2
≤ Np
1
≤ 6; b Sp
1
= 1; c p
2
. p
4
. p
6
= 0; d p
4
. p
6
. p
8
= 0;
dimana Np
1
adalah jumlah tetangga dari p
1
yang tidak 0; yaitu, Np
1
= p
2
+ p
3
+ ... + p
8
+ p
9
dan Sp
1
adalah jumlah dari transisi 0-1 pada urutan p
2
, p
3
, ..., p
8
, p
9
. Dan pada langkah kedua, kondisi a dan b sama dengan langkah pertama, sedangkan
kondisi c dan d diubah menjadi: c
‟ p
2
. p
4
. p
8
= 0; d
‟ p
2
. p
6
. p
8
= 0;
Langkah pertama dilakukan terhadap semua border pixel di citra. Jika salah satu dari keempat kondisi di atas tidak dipenuhi atau dilanggar maka nilai
piksel yang bersangkutan tidak diubah. Sebaliknya jika semua kondisi tersebut dipenuhi maka piksel tersebut ditandai untuk penghapusan.
Piksel yang telah ditandai tidak akan dihapus sebelum semua border points selesai diproses. Hal ini berguna untuk mencegah perubahan struktur data. Setelah
langkah 1 selesai dilakukan untuk semua border points maka dilakukan penghapusan untuk titik yang telah ditandai diubah menjadi 0. Setelah itu
dilakukan langkah 2 pada data hasil dari langkah 1 dengan cara yang sama dengan langkah 1 sehingga, dalam satu kali iterasi urutan algoritmanya terdiri dari:
1. Menjalankan langkah 1 untuk menandai border points yang akan
dihapus, 2.
hapus titik-titik yang ditandai dengan menggantinya menjadi angka 0, 3.
menjalankan langkah 2 pada sisa border points yang pada langkah 1 belum
dihapus lalu yang sesuai dengan semua kondisi yang seharusnya dipenuhi pada langkah 2 kemudian ditandai untuk dihapus,
4. hapus titik-titik yang ditandai dengan menggantinya menjadi angka 0.
Universitas Sumatera Utara
Prosedur ini dilakukan secara iteratif sampai tidak ada lagi titik yang dapat dihapus, pada saat algoritma ini selesai maka akan dihasilkan
skeleton dari citra awal Zhang Suen, 1984.
2.3.5 E kstraksi C iri F eature E xtraction F eature extraction merupakan suatu metode untuk mendapatkan karateristik dari
suatu citra dalam hal ini citra tersebut merupakan suatu karakter berupa huruf dan angka. Dengan
feature exktraction maka citra yang satu dengan yang lain dapat dibedakan dengan memperhatikan ciri yang terdapat pada citra itu sendiri.
Beberapa metode feature extraction yang ada adalah sebagai berikut Mulyo et al.,
2004:
1. Pixel Mapping
Pixel mapping merupakan metode feature extraction yang sederhana. Metode ini merupakan kelanjutan proses
thresholding, dimana suatu citra telah berubah warnanya menjadi hitam atau putih.
Pixel mapping merupakan suatu pemetaan dari citra yang disimpan ke dalam array, dimana piksel yang
berwana hitam mempunyai nilai 1 sedangkan piksel yang berwarna putih mempunyai nilai 0. Contoh dari penerapan
pixel mapping dapat dilihat pada gambar 2.5.
{ 0 0 0 1 1 1 1 0 0 0; 0 0 1 1 0 0 1 1 0 0;
0 0 1 1 0 0 1 1 0 0; 0 0 1 1 0 0 1 1 0 0;
0 0 1 1 1 1 1 1 0 0; 0 1 1 0 0 0 0 1 1 0;
0 1 1 0 0 0 0 1 1 0; 1 1 0 0 0 0 0 0 1 1}
G ambar 2.5 C ontoh F eature E xtraction dengan Pixel Mapping
Universitas Sumatera Utara
2. Image Compression Pada metode ini citra dibagi menjadi nxn daerah. Misalkan input citra berukuran
32x32 piksel dan citra dibagi menjadi 8x8 daerah, dimana masing-masing daerah terdiri dari 4x4 piksel gambar 2.8.
G ambar 2.6 C itr a ber ukur an 32 x 32 piksel yang ter bangi menjadi 8 x 8 daer ah
Pada gambar 2.6 terlihat bahwa citra asli yang berukuran piksel menjadi citra berukuran piksel, dimana setiap 1 pikselnya mewakili piksel citra asli. Dengan
kata lain bahwa setiap daerah piksel dikompresi menjadi 1 nilai pixel.
G ambar 2.7 C itr a ber ukur an 32 x 32 piksel setelah dikompr esi menjadi 8 x 8 piksel
Pada gambar 2.7 terlihat bahwa setiap pixel mempunyai nilai feature extraction yang berbeda. Daerah-daerah tersebut mempunyai nilai antara 0 dan 1, hal
tersebut dapat dilihat pada tingkat keabu-abuan warna tiap pikselnya. Untuk mencari nilai image compression dari tiap piksel, digunakan persamaan berikut:
� =
1 � � �
∑ ∑
��, �
�−1 �=0
�−1 �=0
2.5
Universitas Sumatera Utara
dimana: v = nilai image compression
M = jumlah piksel daerah dalam satu baris N = jumlah piksel daerah dalam satu kolom
fx,y = jumlah binary pixel pada suatu posisi x,y
2.3.6 Segmentasi
Segmentasi digunakan untuk mendapatkan karakter dari suatu citra kata. Adapun metode segmentasi yang dipakai dengan menggunakan algoritma
Heuristic Lecolinet Baret, 1994; Rodrigues Gay Thome 2000. Metode dari algoritma
segmentasi Heuristic berdasarkan terhadap sebuah konstruksi pengambilan
keputusan dengan sistem tree dan berdasarkan pada penggunaan profil histogram
yang telah tercipta dan diproporsikan oleh suatu kata. Profil proyeksi merupakan sebuah struktur data yang digunakan untuk
menyimpan sejumlah piksel yang bukan merupakan background ketika suatu
citra diproyeksikan melalui sumbu X dan Y pada persamaan 2.6. Setiap sel dari
vektor proyeksi dikaitan dengan jumlah piksel yang terletak di atas posisi threshold yang telah ditentukan, biasanya warna latar belakang background
persamaan 2.7 dan 2.8 sebuah proyeksi histogram alternatif mengambil rata- rata dari intensitas piksel yang terkait Rodrigues Gay Thome 2000.
�, � → ��, � 2.6
�� = ∑ �
� ℎ
�=0
, � ∈ [0, �]
2.7
�
�
= ∑
�
� �
�=0
, � ∈ [0, ℎ]
2.8
Dimana X dan Y merupakan sumbu horizontal dan vertikal, h
Universitas Sumatera Utara
merepresentasikan ketinggian gambar ukuran vertikal untuk X atau lebar ukuran
horizontal bagi Y dan v merepresentasikan ukuran dari gambar. Ide utama
dari metode yang termasuk dalam konstruksi tree dengan proses pengulangan,
terletak dari data pada histogram yang telah mencapai performa yang ditentukan. Tingkat kesuksesan ditentukan dari kriteria
heuristic tersebut. Algoritma
Heuristic merupakan metode dimana proses segmentasi dimulai dengan pencarian titik-titik segmentasi yang valid melalui metode
ekstraksi sebuah kata. Proses segmentasi ini dapat lebih dipahami proses kerjanya dengan memperhatikan kondisi histogram dari tiap-tiap karakter yang
masih dalam 1 kelompok kata. Untuk membantu proses segmentasi, maka pada saat prosess pemotongan kata dilakukan juga pengecekan terhadap ketentuan
tipografi. Pada dasarnya ada tiga jenis tipografi dari kata yang terbentuk. Dari ketiga pola di atas sangat membantu dalam proses segmentasi. Hal ini dapat dilihat
ketika dilakukannya proses histogram vertikal.
a
b
c G ambar 2.8a C itr a asli b H istogr am hor izontal http: ser c.car leton.edu
c H istogram vertikalhttp: www.blogdivvy.com
Universitas Sumatera Utara
Dari pola histogram gambar 2.8b dan gambar 2.8c yang dilakukan pada citra asli gambar 2.8a , maka dapat telihat bahwa titik pemotongan karakter
dilakukan saat tinggi kurva mendekati nilai X atau Y minimum.
2.4 J ar ingan Sar af T iruan J ST
Kecerdasan buatan atau Artificial Intelligence AI adalah bagian dari Computer Science yang mencoba memberikan kemampuan manusia seperti manusia
kepada komputer. Salah satu cara untuk memberikan computer kemampuan manusia adalah dengan menggunakan jaringan saraf tiruan. Otak manusia
merupakan contoh dari jaringan saraf tiruan. Otak manusia terdiri dari jaringan yang terdiri dari miliaran neuron yang saling terhubung. Neuron adalah sel
individual yang dapat memproses informasi dan kemudian mengaktifkan neuron yang lain untuk melanjutkan proses Heaton, 2005.
Jaringan saraf tiruan adalah merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran
pada otak manusia tersebut. Istilah buatan digunakan karena jaringan saraf ini diimplementasikan dengan menggunakan program computer yang
mampu menyelesaikan sejumlah proses perhitungan selama proses
pembelajaran. Sistem pemrosesan informasi yang memiliki karakteristik kinerja tertentu yang sama dengan jaringan saraf biologis. Jaringan saraf tiruan telah
dikembangkan sebagai generalisasi model matematika dari kognisi manusia atau saraf biologis, berdasarkan asumsi bahwa:
1. Pengolahan informasi terjadi pada elemen-elemen
sederhana yang disebut neuron. 2.
Sinyal dilewatkan di antara neuron melalui link koneksi. 3.
Sambungan setiap link memiliki bobot terkait, dalam jaringan saraf yang khas, mengalikan sinyal yang
ditransmisikan.
Universitas Sumatera Utara
4. Setiap neuron menerapkan fungsi aktivasi biasanya nonliniear untuk
input jumlah bobot sinyal input untuk menentukan sinyal output Fausett, 1994
2.4.1 K onsep dasar jar ingan syaraf tiruan
Jaringan saraf tiruan adalah prosesor tersebar paralel yang sangat besar yang memiliki kecenderungan untuk menyimpan pengetahuan yang bersifat
pengalaman dan membuatnya siap untuk digunakan. JST menyerupai otak manusia dalam dua hal, yaitu:
1. Pengetahuan diperoleh jaringan melalui proses belajar.
2. Kekuatan hubungan antar sel syaraf neuron yang dikenal sebagai
bobot-bobot sinaptik digunakan untuk menyimpan pengetahuan.
Pembagian arsitektur jaringan saraf tiruan bias dilihat dari kerangka kerja dan skema interkoneksi. Kerangka kerja jaringan saraf tiruan bisa dilihat jumlah
lapisan layer dan jumlah node pada setia lapisan. Lapisan-lapisan penyusun
jaringan saraf tiruan dapat dibagi menjadi tiga, yaitu 1.
Lapisan input Node-node di dalam lapisan input disebut unit-unit input. Unit-unit
input menerima input dari dunia luar. Input yang dimasukkan merupakan penggambaran dari suatu masalah.
2. Lapisan Tersembunyi
Node-node di dalam lapisan terembunyi disebut unit-unit tersembunyi. output dari lapisan ini tidak secara langsung dapat diamati.
3. Lapisan Output
Node-node pada lapisan output disebut unit-unit output. Keluaran atau output dari lapisan ini merupakan output jaringan saraf tiruan terhadap
suatu permasalahan Mengenai pengelompokan jaringan saraf tiruan, ada pula yang membaginya
Universitas Sumatera Utara
ke dalam dua kelompok, yaitu jaringan saraf tiruan umpan maju feed-forward
networks dan jaringan saraf tiruan berulangumpan balik recurrentfeedback networks.
Jaringan saraf tiruan umpan maju adalah graf yang tidak mempunyai loop, sedangkan jaringan saraf tiruan berulangumpan balik dirincikan dengan adanya
loop-loop koneksi balik.
Pendapat lain mengenai arsitektur jaringan saraf tiruan adalah sebagai berikut :
1. Jaringan lapis tunggal single layer net
Jaringan yang memiliki arsitektur jenis ini hanya memiliki satu buah lapisan bobot koneksi. Jaringan lapisan-tunggal terdiri dari unir-unir input yang menerima sinyal
dari dunia luar, dan unit-unit output dimana nilainya dapat dilihat sebagai respon dari jaringan saraf tiruan tersebut.
2. Jaringan multilapis multilayer net
Merupakan jaringan dengan satu atau lenih lapisan tersembunyi. Jaringan multilapis memiliki kemampuan lebih dalam memecahkan masalah bila
dibandingkan dengen single layer net, namun pelatihannya mungkin lebih rumit.
3. Jaringan kompetitif
Pada jaringan ini sekumpulan neuron bersaing untuk menapatkan hak menjadi aktif.
2.4.2 M odel syar af neuron
Sebuah neuron adalah sebuah unit pengeolahan informasi yang merupakan
dasar untuk pengoperasian jaringan saraf tiruan. Gambar 2.8 Haykin, 1999 menunjukkan model dari sebuah
neuron, yang merupakan bentuk dasar untuk
Universitas Sumatera Utara
merancang jaringan saraf tiruan. Satu neuron terdiri dari tiga bagian dasar yaitu Siang, 2009:
1. Himpunan unit-unit yang dihubungkan dengan jalur koneksi. Jalur-jalur
tesebut memiliki bobotkeluaran yang berbeda-beda. Bobot yang bernilai positif akan memperkuat sinyal dan yang bernilai negatif akan
memperlemah sinyal yang dibawanya. Jumlah, struktur dan pola hubungan antar unit-unit tersebut akan menentukan arsitektur jaringan dan
juga model yang terbentuk. 2.
Suatu unit penjumlahan yang akan menjumlahkan input-input sinyal yang sudah dikalikan dengan bobotnya.
3. Fungsi aktivasi yang akan menentukan apakah sinyal dari input neuron
akan diteruskan ke neuron lain ataukan tidak
����� ������ � �
1
→ �
�1
�
2
→ �
�2
… �
�
→ �
��
v
k
G ambar 2.9 M odel Nonlinear Neur on 2.4.3 F ungsi A ktivasi dan E rror
Fungsi aktivasi merupakan bagian penting dalam tahap perhitungan JST karena dipakai untuk menentukan keluaran dari suatu neuron. Beberapa fungsi
aktivasi yang dipakai dalam JST adalah: 1.
Fungsi sigmoid biner logsig Fungsi ini pada umumnya digunakan untuk jaringan syaraf yang dilatih dengan
menggunakan metode backpropagation. Fungsi sigmoid biner memiliki nilai antara
0 sampai 1. Oleh karena itu, fungsi ini sering digunakan untuk jaringan syaraf yang membutuhkan nilai
output yang terletak pada interval 0 sampai 1.
Fungsi sigmoid biner dirumuskan sebagai:
∑ Fx
Universitas Sumatera Utara
�� =
1 1+
�
−�
2.9
2.Fungsi sigmoid bipolar tansig
Fungsi sigmoid bipolar hampir sama dengan fungsi sigmoid biner, hanya saja
fungsi ini memiliki range antara 1 sampai
-1. Fungsi sigmoid bipolar
dirumuskan sebagai:
�� =
1 −�
−�
1+ �
−�
2.10
Pada tahap pembelajaran di dalam algoritma propagasi balik, diperlukan suatu kondisi untuk menghentikan proses pembelajaran. Berbagai kondisi seperti
squared error, total squared error, dan mean squared error dapat digunakan untuk menghentikan proses pembelajaran. Definisi dari masing-masing
kondisi tersebut diatas adalah sebagai berikut: 1.
Squared error, adalah jumlah dari masing-masing kuadrat dari perbedaan antara target yang telah ditentukan dengan keluaran yang
dihasilkan oleh jaringan setiap neuron pada lapisan keluaran. 2.
sum squared error SSE, adalah jumlah squared error untuk setiap pasangan pelatihan.
3. mean squared error MSE, bisa berarti squared error dibagi dengan
jumlah neuron pada lapisan keluaran atau sum squared error dibagi
dengan jumlah pasangan pelatihan. Pada umumnya digunakan
total squared error di dalam algoritma propagasi balik, tetapi pada dasarnya ketiga kondisi tersebut mempunyai kemiripan
yaitu sebagai informasi error yang telah didefinisikan untuk menghentikan
proses pembelajaran. Harga dari error yang telah didefinisikan, sebelumnya sudah
ditentukan dan jika harga
Universitas Sumatera Utara
error yang dihitung pada tahap pembelajaran lebih kecil dari harga error yang telah didefinisikan maka proses pembelajaran dihentikan. Harga dari
error yang didefinisikan untuk menghentikan proses pembelajaran akan menentukan ketepatan jaringan pada saat pengenalan pola dan lamanya proses
pembelajaran. Semakin kecil harga error yang didefinisikan akan menyebabkan
semakin tinggi tingkat ketepatan jaringan pada saat pengenalan pola nanti, tetapi proses pembelajaran menjadi semakin lama dan sebaliknya.
��� =
1 2
∑ ∑ �
��
− �
�� 2
� �
2.11
Dimana: n = banyaknya pola pelatihan k = banyaknya keluaran
t
kn
= nilai terget keluaran yang diinginkan y
kn
= nilai keluaran actual
2.4.4 Pr oses B elajar Belajar merupakan suatu proses dimana parameter-parameter bebas JST
diadaptasikan melalui suatu proses perangsangan berkelanjutan oleh lingkungan dimana jaringan berada. Berdasarkan algoritma pelatihannya, maka JST terbagi
menjadi dua yaitu:
1. Supervised Learning Pembelajaran Terawasi
Metode pembelajaran ini memerlukan pengawasan dari luar atau pelabelan data sampel yang digunakan dalam proses belajar. Dimana Jaringan belajar dari
sekumpulan pola masukan dan keluaran. Sehingga pada saat pelatihan diperlukan pola yang terdiri dari vector masukan dan vektor target yang
diinginkan. Vektor masukan dimasukkan ke dalam jaringan yang kemudianmenghasilkan vektor keluaran yang selanjutnya dibandingkan dengan
vektor target. Selisih kedua vector tersebut menghasilkan galat error yang
Universitas Sumatera Utara
digunakan sebagai dasar untuk mengubah matriks koneksi sedemikian rupa sehingga galat semakin mengecil pada siklus berikutnya.
2. Unsupervised Learning Pembelajaran tak Terawasi
Metode pembelajaran ini jaringan saraf tiruan mengorganisasi dirinya sendiri untuk membentuk vektor-vektor input yang serupa, tanpa menggunakan data atau
contoh-contoh pelatihan. Struktur menggunakan dasar data atau kolerasi antara pola-pola data yang dieksplorasi. Paradigma pembelajaran ini mengorganisasi
pola-pola ke dalam kategori-kategori berdasarkan kolerasi yang ada.
2.4.5 Pr opagasi B alik Metode propagasi balik merupakan metode yang sangat baik dalam menagani
masalah pengenalan pola-pola kompleks. Metode ini merupakan metode jaringan saraf tiruan yang popluler. Beberapa contoh aplikasi yang melibatkan metode ini
adalah pengompresian data, pendeteksian virus computer, pengidentifikasian objek, sintesis suara dari teks, dan lain-lain.
Istilah “propagasi baik” atau “perambatan kembali” diambil dari cara kerja jaringan ini, yaitu bahwa gradient
error unit-unit tersembunyi diturunkan dari penyiaran kembali
error-error yang diasosiasikan dengan unit-unit output. Hal ini karena nilai target untuk unit-unit trersembunyi tidak diberikan.
Metode ini menurunkan gradien untuk meminimalkan penjumlahan error kuadrat output jaringan. Nama lain dari propagasi balik adalah aturan
delta yang digeneralisasi.
2.4.5.1A r sitektur
Di dalam jaringan propagasi balik, setiap unit yang berada di lapisan input terhubung dengan setiap unit yang ada di lapisan tersembunyi. Hal serupa
berlaku pula pada lapisan tersembunyi. Setiap unit yang ada di lapisan tersembunyi terhubung dengan setiap unit yang ada di lapisan output. Pada
gambar 2.9 terdapat arsitektur JST propagasi balik dengan menggunakan satu
Universitas Sumatera Utara
layer tersembunyi Fausett, 1994. Jaringan saraf tiruan propagasi balik terdiri dari banyak lapisan
multilayer neural networks: 1.
Lapisan input 1 buah. Lapisan input terdiri dari neuron-neuron atau unit-unit input, mulai dari unit input 1 sampai unit input
n. 2.
Lapisan tesembunyi minimal 1. Lapisan tersembunyi terdiri dari unit-unit tersembunyi mulai dari unit tersembunyi 1 sampai unit
tersembunyi p.
3. Lapisan output 1 buah. Lapisan output terdiri dari unit-unit outut
mulai dari unit output 1 sampai unit output m. n, p, m masing-masing
adalah bialangan integer sembarang menurut arsitektur jaringan saraf tiruan yang dirancang. v
0j
dan w
0k
masing-masing adalah bias untuk unit tersembunyi ke-j dan unit output ke-k. Bias v
j0
dan w
k0
berprilaku sepertu bobot di mana output bias ini selalu sama dengan 1. v
ji
adalah bobot koneksi antara unit ke-i lapisan input dengan unit ke-j lapisan
tersembunyi, sedangkan w
kj
adalah bobot koneksi antara unit ke-j lapisan tersembunyi dengan unit ke-k lapisan output.
2.4.5.2 J umlah L apisan T er sembunyi yang Digunakan
Satu buah lapisan tersembunyi bisa dikatakan cukup memadai untuk menyelesaikan masalah sembarang fungsi pendekatan. Dengan menggunakan
lebih dari satu buah lapisan tersembunyi, kadang-kadang suatu masalah lebih mudah untuk diselesaikan. Mengenai banyaknya jumlah lapisam tersembunyi
yang dibutuhkan, tidak terdapat ketentuan khusus Puspitaningrum, 2006. 2.4.5.3 J umlah Neur on di L apisan T er sembunyi
Menentukan jumlah neuron di lapisan tersembunyi merupakan bagian terpenting dalam menentukan rancangan arsitektur jaringan saraf tiruan secara
keseluruhan. Meskipun lapis tersembunyi ini tidak berinteraksi dengan lingkungan eksternal, lapisan ini memiliki pengaruh besar terhadap hasil
Universitas Sumatera Utara
akhir jaringan. Jumlah lapis tersembunyi dan jumlah neuron pada masing- masing lapis tersembunyi harus dipertimbangkan dengan cermat.
Menggunakan terlalu sedikit neuron di lapisan tersembunyi akan menghasilkan sesuatu yang disebut
underfitting. Underfitting terjadi ketika terlalu sedikit neuron di lapisan tersembunyi untuk dapat mendeteksi sinyal dalam satu
set data yang rumit. Sebaliknya mennggunakan terlalu banyak neuron di lapisan tersembunyi akan menghasilkan sesuatu yang disebut
overfitting. Overfitting terjadi ketika jaringan saraf memiliki banyak kapasitas pengolahan informasi
sehingga sedikitnya jumlah informasi yang terdapat pada data pelatihan tidak cukup untuk melatih semua neuron di lapisan tersembunyi.
Ada banyak aturan yang digunakan untuk menentukan jumlah neuron di lapis an tersembunyi. Berikut adalah beberapa diantaranya adalah Heaton,
2005: 1.
Jumlah neuron lapisan tersembunyi harus diantara ukuran lapisan input dan lapisan output.
2. Jumlah neuron lapisan tersembunyi harus 23 dari ukuran neuron
input, ditambah ukuran lapisan output. 3.
Jumlah neuron lapis tersembunyi tidak pernah lebih dari dua kali ukuran lapisan input.
2.4.5.4A lgor itma
Cara kerja jaringan propagasi balik adalah sebagai berikut, mula-mula jaringan diinisialisasi dengan bobot yang diset dengan bilangan acak. Lalu
contoh-contoh pelatihan dimasukkan ke dalam jaringan. Contoh pelatihan terdiri dari pasangan vektor input dan vektor target. Keluaran dari jaringan
berupa sebuah vektor output aktual. Selanjutnya vektor output aktual jaringan dibandingkan dengan vektor output target untuk mengetahui apakah output
jaringan sudah sesuai dengan yang diharapkan output aktual sudah sama dengan output target.
E rror yang timbul akibat perbedaan antara output aktual dengan output target tersebut kemudian dihitung dan digunakan untuk mengupdate bobot-bobot
Universitas Sumatera Utara
yang relevan dengan jalan mempropagasikan kembali error. Setiap perubahan
bobot yang terjadi diharapkan dapat mengurangi besar error. Epoch siklus setiap
pola pelatihan seperti ini dilakukan pada semua set pelatihan sampai unjuk kerja jaringan mencapai tingkat yang diinginkan atau sampai kondisi berhenti terpenuhi.
Setelah proses sele sai, barulah diterapkan algoritma aplikasi.
Algoritma propagasi balik dapat dibagi ke dalam 2 bagian: 1.
Algoritma pelatihan Terdiri dari 3 tahap: tahap umpan maju pola pelatihan input, tahap
pemprogasibalikan error, dan tahap pengaturan bobot.
2. Algoritma aplikasi
Yang digunakan hanyalah tahap umpan maju saja.
Berdasarkan gambar 2.9 berikut adalah proses pelatihan JST propagasi balik dengan sebuah lapis tersembunyi Fausett, 1994:
a. Algoritma Pelatihan
Salah satu dari fungsi aktivasi yang djelaskan pada sub bab 2.3.3 dapat digunakan pada algoritma standar propagasi balik. Bentuk data terutama
nilai-nilai target merupakan faktor penting dalam memilih fungsi yang sesuai. Berikut ini adalah algoritma pelatihan propagasi balik.
1. Inisialisasi bobot-bobot dengan menggunakan nilai acak yang kecil.
2. W hile kondisi berhenti tidak terpenuhi do langkah ke-2 sampai langkah ke-9
3. Untuk setiap pasangan pola pelatihan, lakukan langkah ke-3 sampai
langkah Ke-8. 4.
Setiap unit input x
i
dari unit ke-1 sampai unit ke- n pada lapisan input
mengirimkan sinyal input ke semua unit yang ada dilapisan atasnya ke lapisan tersembunyi.
5. Pada setiap unit di lapisan tersembunyi z
j
dari unit ke-1 sampai unit ke- p; i=1,...,n; j=1,...,p sinyal output lapisan tersembunyinya dihitung dengan
Universitas Sumatera Utara
menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input berbobot
z
i
: �
�
= ��
�0
∑ �
�
�
�� �
�=0
2.12
kemudian dikirim ke semua unit di lapisan atasnya. 6.
Setiap unit di lapisan output y
k
dari unit ke-1 sampai unit ke- m;
i=1,...,n; k=1,...,m dihtung sinyal outputnya dengan menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input bebobot
z
j
bagi lapisan ini:
�
�
= ��
�0
∑ �
�
�
�� �
�=1
2.13
Tahap propagasi perambatan balik error:
7. Setiap unit output y
k
dari unit ke-1 sampai unit ke- m; j=1,...,p;
k=1,...,m menerima pola target t
k
lalu informasi kesalahan lapisan output δ
k
dihitung. δ
k
dikirim ke lapisan bawahnya dan digunakan untuk menghitung besar koreksi bobot dan bias
∆w
kj
dan ∆w
k0
antara lapisan tersembunyi dengan lapisan output:
�
�
= �
�
− �
�
�
′
�
�0
+ �
�
�
��
2.14 ∆�
��
= ∝ �
�
�
�
2.15 ∆�
�0
= ��
�
2.16
8. Pada setiap unit di lapisan tersembunyi dari unit ke-1 sampai unit ke-
p; i=1,...,n; j=1,...,p; k=1,...,m dilakukan perhiutngan informasi kesalahan lapisan tersembunyi
δ
j
. δ
j
kemudian digunakan untuk menghitung besar koreksi bobot dan bias
∆v
ji
dan ∆v
j0
antara lapisan input dan lapisan tersembunyi.
�
�
= ∑
�
�
�
�� �
�=1
�
′
�
�0
∑ �
�
�
�� �
�=1
2.17
Universitas Sumatera Utara
∆�
��
= � �
�
�
�
2.18 ∆�
�0
= ��
�
2.19 9.
Pada setiap unit output y
k
dari unit ke-1 sampai unit ke- m dilakukan
peng-update-an bias dan bobot j=0,...,p; k=1,...,m sehingga bias dan
bobot baru Menjadi:
�
��
���� = �
��
���� + ∆�
��
2.20
Dari unit ke-1 sampai unit ke- p di lapisan tersembunyi juga dilakukan
pengupdate-an pada bias dan bobotnya i=0,...,n; j=1,...,p:
�
��
���� = �
��
+ ∆�
��
2.21 10.
Tes kondisi berhenti
b. A lgor itma A plikasi
Setelah dilakukan pelatihan, jaringan sarar tiruan propagasi balik dapat diterapkan dengan hanya menggunakan tahap umpan maju
feedforward pada fase pelatihan. Berikut merupakan algoritma dari aplikasi propagasi balik.
1. Inisialisasi bobot. Bobot ini diambil dari bobot-bobot terakhir yang
diperoleh dari algoritma pelatihan. 2.
Untuk setiap vektor input, lakukan langkah ke-2 sampai ke-4. 3.
Setiap unit input x
i
dari unit ke-1 sampai unit ke- n pada lapisan
input; i=1,...,n menerima sinyal input pengujian x
i
dan menyiarkan sinyal
x
i
ke semua unit pada lapisan di atasnya unit-unit tersembunyi
4. Setiap unit di lapisan tersembunyi z
j
unit ke-1 sampai unit ke- p;
i=1,...,n; j=1,...,p menghitung sinyal outputnya dengan
menerapkan fungsi aktivasi terhadap penjumlahan sinyal-sinyal input
x
i.
Sinyal output dari lapisan tersembunyi kemudian dikirim ke semua unit pada lapisan di atasnya, dengan menggunakan persamaan
2.15 pada proses pelatihan:
Universitas Sumatera Utara
�
�
= ��
�0
∑ �
�
�
�� �
�=1
5. Setiap unit output y
k
ke-1 sampai unit ke- m; j=1,...,p; k=1,...,m
menghitung sinyal outputnya dengan menerapakan fungsi aktivasi terhadap sinyal-sinyal input bagi lapisan ini, yaitu sinyal-sinyal
input z
j
dari lapisan tersembunyi, dengan menggunakan persamaan 2.16 pada proses pelatihan :
�
�
= � �
�0
� �
�
�
�� �
� =1
2.4.6
Optimalitas A r sitektur B ackpropagation
Masalah utama yang terdapat dalam backpropagation ialah lamanya proses
iterasi yang dilakukan. Backpropagation tidak dapat memastikan berapa epoch
yang harus dilalui sampai pola yang diinginkan terpenuhi. Oleh karena itu terdapat beberapa cara
yang digunakan untuk mengoptimalkan proses iterasi Puspitaningrum, 2006, yaitu:
1. Pemilihan bobot dan bias awal
Bobot awal merupakan unsur yang terpenting dalam pembentukan jaringan yang baik, karena bobot awal mempengaruhi kecepatan iterasi
jaringan dalam mengenali pola. Bobot awal standar yang biasa dipakai dalam melakukan proses komputasi dinilai memberikan waktu yang lama.
Inisialisasi Nguyen Widrow merupakan modifikasi sederhana bobot-bobot
dan bias ke unit tersembunyi yang mampu meningkatkan kecepatan jaringan dalam proses pelatihan jaringan.
Inisialisasi Nguyen Widrow
didefinisikan dengan persamaan:
� = 0,7 ��
�
2.22
Universitas Sumatera Utara
Dimana: n = jumlah neuron pada lapisan input
p = jumlah neuron pada lapisan tersembunyi β = faktor skala
Prosedur inisialisasi Nguyen Widrow ialah:
a. Inisialisasi bobot-bobot v
ji
lama dengan bilangan acak dalam interval [- 0.5, 0.5]
b. Hitung
��
��
� = ��
�1 2
+ �
�2 2
… + �
�� 2
2.23 c.
Bobot baru yang dipakai sebagai inisialisasi
�
��
=
� �
��
���� ��
�
�
2.24
d. Bias baru yang dipakai sebagai inisialisasi v
j0
= bilangan acak dalam interval
[ −�, �]
2.25
2. Momentum
Penambahan parameter momentum dalam tahap pengoreksian nilai bobotdapat mempercepat proses pelatihan yaitu dengan memodifikasi nilai
bobot pada iterasi t+1 yang nilainya ditentukan oleh nilai bobot pada
iterasi ke- t dan t-1. μ adalah konsanta yang menyatakan parameter
momentum yang nilainya 0 ≤ μ ≤1.
2.5 Data F low Diagram DF D Data Flow Diagram DFD adalah suatu model logika data atau proses
yang dibuat untuk menggambarkan dari mana asal data dan kemana tujuan data
Universitas Sumatera Utara
yang keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan
pada data tersebut. DFD menunjukan hubungan antar data pada sistem dan proses pada sistem. Dengan kata lain DFD merupakan suatu cara untuk
menggambarkan bangaimana data dip roses dalam sebuah sistem Sommerville, 2007.
DFD dapat digunakan untuk mewakili sistem atau perangkat lunak pada setiap level abstraksi. DFD dapat dibagi menjadi beberapa level yang mewakili
tingkatan aliran informasi dan detail fungsional. Oleh karena itu DFD menyediakan mekanisme untuk pemodelan fungsional serta pemodelan arus informasi. Menurut
Yourdan dan DeMarco 1987 komponen DFD terdiri dari: 1.
Terminator mewakili entitas eksternal yang berkomunikasi dengan sistem yang sedang dikembangkan. Biasanya terminator dikenal
external entity.
2. Komponen proses menggambarkan bagian dari sistem yang
mentransformasikan input menjadi output. 3.
Komponen data store digunakan untuk membuat model sekumpulan paket data dan diberi nama dengan kata benda jamak yang biasanya
database. 4.
Alur data merupakan komponen yang menunjukan arah menuju ke dan keluar dari suatu proses.
Adapun lambang DFD yang digunakan terdapat pada gambar 2.10.
Terminator Proses
Storage alur Data
G ambar 2.10 K omponen Data F low Diagram DFD level 0 disebut juga sebuah model dasar sistem atau model
konteks diagram konteks, yang mewakili element seluruh perangkat lunak
Universitas Sumatera Utara
sebagai satu gelembung proses tunggal dengan data input atau output yang ditunjukkan dengan panah keluar dan panah masuk Pressman, 2001.
Notasi dasar yang digunakan untuk mengembangkan sebuah DFD tidak dengan sendirinya cukup menjelaskan persyaratan untuk perangkar lunak.
Notasi grafid harus ditambah dengan teks deskriptif. Spesifikasi proses PSPEC dapat digunakan untuk menentukan rinciaan pengolahan tersirat oleh
gelembung dalam DFD. Spesifikasi proses menggambarkan masukan ke fungsi algoritma yang diterapkan untuk mengubah input dan output yang dihasilkan.
Selain itu PSPEC menunjukkan pembatasan dan keterbatasan yang ditetapkan pada proses fungsi, karakteristik kinerja yang dapat mempengaruhi cara
dimana proses tersebut dilaksanakan.
2.5 Plat nomor K endar aan Tanda Nomor Kendaraan Bermotor TNKB, atau sering kali disebut plat
nomor atau nomor polisi nopol, adalah plat aluminium tanda kendaraan bermotor di Indonesia yang telah didaftarkan pada Kantor Bersama Samsat.
Spesifikasi teknis dari Tanda Nomor Kendaraan Bermotor : 1.
Panjang plat nomor kendaraan buat mobil 39,5 cm 2.
Lebar plat nomor kendaraan buat mobil 13,5 cm 3.
Panjang plat nomor kendaraan buat motor 27,5 cm 4.
Lebar plat nomor kendaraan buat motor 11 cm 5.
Latar belakang untuk plat kendaraan pribadi warna hitam
Universitas Sumatera Utara
BAB III METODOLOGI PENELITIAN