Neural Network Backpropagation Neural Network

13 13

6. Fungsi Sigmoid Tangent TanSig

Fungsi aktivasi ini sama dengan fungsi sigmoid bipolar, nilai outputnya antara -1 sampai 1. Rumus yang digunakan untuk fungsi aktivasi ini adalah: y = fx = 1 − 1 + 2.7

2.2.2. Neural Network Backpropagation

Backpropagation merupakan metoda pembelajaran neural network yang terawasi supervised. Backpropagation biasanya digunakan oleh perceptron yang memiliki banyak lapisan layer untuk mengubah nilai bobot-bobot yang terhubung ke neuron- neuron yang ada pada lapisan tersembunyi hidden layer . Algoritma backpropagation saat pertama dijalankan melakukan tahapan perambatan maju forward . Error yang diperoleh dari proses tahap perambatan maju selanjutnya diproses ke arah mundur backward untuk mengubah nilai bobot-bobotnya. Pada perambatan maju, neuron-neuron diaktifkan dengan fungsi aktivasi seperti sigmoid, tansig atau pure linear. x1 x2 x3 z1 z2 y 1 1 b2 b12 w1 w2 v11 v12 v21 v22 v31 v32 b11 Gambar 2.7 Arsitektur neural network backpropagation Universitas Sumatera Utara 14 14 Arsitektur neural network backpropagation dapat dilihat pada gambar 2.7. Jaringan ini terdiri atas 3 tiga lapisan neuron-neuron yakni 3 tiga unit neuron pada lapisan input x1, x2, x3, 2 dua neuron pada lapisan tersembunyi hidden layer dan 1 satu neuron pada lapisan output.

2.2.2.1 Algoritma Backpropagation

Algoritma backpropagation sebagai berikut: - Inisialisasi bobot awal weights dengan nilai random yang kecil. - Tetapkan maksimum Epoch, Target Error dan Learning Rate α - Inisialisasi Epoch=0, MSE=1 - Lakukan langkah di bawah ini selama EpochMaksimumEpoch dan MSETargetError: 1. Epoch = Epoch + 1 2. Feed Forward: a. Setiap unit input X i , i=1,2,3,…,n menerima sinyal xi dan meneruskannya ke semua unit pada lapisan atasnya. b. Setiap unit pada hidden layer Zj, j=1,2,3,..,p menjumlahkan sinyal-sinyal input terbobot : z_in = b1 x v 2.8 Gunakan fungsi aktivasi untuk menghitung sinyal output: z j = z 2.9 selanjutnya kirimkan sinyal tersebut ke lapisan di atasnya unit-unit output c. Setiap unit output y k , k=1,2,3,..,m melakukan penjumlahan sinyal-sinyal terbobot : y_in = b2 z w 2.10 gunakan fungsi aktivasi untuk menghitung sinyal outputnya: Universitas Sumatera Utara 15 15 y k =f y_in k 2.11 selanjutnya kirim sinyal tersebut ke semua unit pada lapisan atasnya yakni unit-unit output. Backpropagation: d. Setiap unit output y k , k=1,2,3,..,m menerima target pola yang berhubungan dengan pola pembelajaran, selanjutnya hitung informasi errornya: δ2 k = t k – y k f’y_in k 2.12 φ2 k = δ k z j 2.13 β2 k = δ k 2.14 lalu hitung koreksi bobot yang akan digunakan untuk memperbaiki nilai w jk : ∆w jk = αφ2 jk 2.15 Hitung juga koreksi bias yang akan digunakan untuk memperbaiki nilai b2 k : ∆b2 k = αβ2 k 2.16 Langkah d ini hanya untuk 1 satu lapisan tersembunyi, lakukan hal yang sama bila lapisan tersembunyi lebih dari 1 satu. e. Setiap unit tersembunyi Z j , j=1,2,3,..,p menjumlahkan delta inputnya dari unit-unit yang berada pada lapisan di atasnya: δ _in = δ2 w =1 2.17 Untuk menghitung error, kalikan nilai ini dengan turunan fungsi aktivasinya: δ1 j = δ _in f’z_in j 2.18 φ1 ij = δ1 j x j 2.19 β1 j = δ1 j 2.20 Universitas Sumatera Utara 16 16 kemudian hitung koreksi bobot yang akan digunakan untuk memperbaiki nilai v ij . ∆v ij = αφ1 ij 2.21 hitung juga koreksi bias yang nantinya akan digunakan untuk memperbaiki nilai b1 j : ∆b1 j = αβ1 j 2.22 f. Setiap unit output y k , k=1,2,3,..,m memperbaiki bias dan bobotnya j=0,1,2,..,p: w jk baru = w jk lama + ∆w jk 2.23 b2 k baru = b2 k lama + ∆b2 k 2.24 Setiap unit tersembunyi zj, j=1,2,3,…,p memperbaiki bias dan bobotnya i=0,1,2,…n: v ij baru = v ij lama + ∆v ij 2.25 b1 j baru = b1 j lama + ∆b1 j 2.26 3. Hitung Mean Square Error MSE

2.3. Algoritma Pengisian Pixel Bresenham

Algoritma pengisian pixel Bresenham adalah algoritma untuk menentukan urutan pengisian pixel yang mendekati garis lurus antara dua koordinat. Algoritma ini biasanya digunakan untuk menggambar garis pada layar komputer dan merupakan algoritma pengisian pixel paling awal yang dikembangkan pada komputer grafis. Gambar 2.8 menampilkan algoritma garis Bresenham dalam bentuk pseudo-code. Selain membuat garis pada layar komputer, algoritma garis Bresenham digunakan untuk menggambar garis pada memori penyangga buffer sebelum hasil penggambarannya ditransfer secara perangkat keras ke layar komputer. Teknik ini disebut double-buffering, tujuannya untuk menghindari flicker, mempercepat dan memperhalus tampilan pada layar komputer. Meskipun saat ini penggambaran garis pada layar komputer telah digantikan sepenuhnya oleh Graphical Processing Unit GPU, namun untuk keperluan tertentu algoritma garis Bresenham tetap digunakan. Universitas Sumatera Utara