2.4
Artificial Neural Network
2.4.1 Konsep dasar Neural Network Neural Network (Jaringan Saraf Tiruan) merupakan prosesor yang sangat besar dan memiliki kecenderungan untuk menyimpan pengetahuan yang bersifat pengalaman dan membuatnya siap untuk digunakan [9]. Neural Network 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. Pada jaringan syaraf, neuron-neuron akan dikumpulkan dalam lapisan-lapisan
(layer) yang disebut dengan lapisan neuron (neuron layers). Informasi yang diberikan pada jaringan syaraf akan dirambatkan ke lapisan demi lapisan, mulai dari lapisan input sampai ke lapisan output melewati lapisan tersembunyi atau hidden layer. Satu sel syaraf terdiri dari tiga bagian, yaitu: fungsi penjumlah (summing function), fungsi aktivasi (activation function), dan keluaran (output). Secara matematis kita dapat mendiskripsikan sebuah neuron k dengan menuliskan pasangan persamaan sebagai berikut : P
µ k = ∑ wkj x j …………….(2.8) j =1
y k = ϕ (µ k − θ k ) ……………(2.9) dimana x1, x2, …, xp adalah sinyal input; wk1, wk2, …, wkp adalah bobot-bobot sinaptik dari neuron k; µ k adalah linear combiner output; wk adalah threshold; u(.) adalah fungsi aktivasi; dan yk adalah sinyal output dari neuron. Penggunaan threshold memberikan pengaruh adanya affine transformation terhadap output uk dari linear combiner pada model gambar 1 sebagai berikut: Vk = Uk - θk
………………………………………(2.10)
12
Gambar 2.4 Model Matematis Nonlinier Dari Suatu Neuron 2.4.2 Arsitektur Neural Network Hubungan antar neuron dalam jaringan saraf mengikuti pola tertentu, tergantung dari arsitektur jaringan sarafnya. Terdapat 3 jenis arsitektur jaringan saraf [8] yaitu : 1. Jaringan saraf lapisan tunggal (Single Layer) Arsitektur jaringan saraf ini hanya memiliki satu lapisan dengan bobot yang terhubung. Jaringan ini hanya menerima input dan langsung mengolahnya menjadi output tanpa harus melewati lapisan tersembunyi. Jadi ciri – ciri dari arsitektur jaringan ini hanya memiliki 1 lapisan input dan 1 lapisan output tanpa ada hidden layer. 2. Jaringan saraf dengan banyak lapisan (Multi layer) Arsitektur jaringan ini memiliki 1 atau lebih lapisan tersembunyi diantara lapisan input dan lapisan output. Secara umum, terdapat lapisan bobot diantara 2 lapisan yang berseblahan. Jaringan dengan banyak lapisan dapat menyelesaikan masalah yang lebih rumit dibandingkan dengan jaringan lapisan tunggal, tentu dengan pembelajaran yang lebih rumit. 3. Jaringan saraf dengan kompetitif (Competitive layer) Arsitektur jaringan ini memiliki bentuk yang berbeda deban arsitektur lainnya, dimana neuron – neuron dapat saling dihubungkan
13
Dari ketiga jenis arsitektur tersebut yang akan digunakan adalah Jaringan Saraf dengan banyak lapisan (Multi Layer Neural Network) 2.4.3
Metode Pelatihan / Pembelajaran Neural Network Ciri utama dari Neural Network adalah pada kemampuannya dalam hal
learning(belajar). Proses belajar pada Neural Network dapat dilihat sebagai cara untuk memperbaiki arsitektur jaringan dan bobot koneksi. Secara umum proses belajar pada Neural Network digolongkan menjadi dua bagian yaitu [8] : 1. Belajar dengan pengawasan Pada proses belajar dengan pengawasan, haringan diberikan target yang harus dicapai sebagai dasar untuk mengubah hubungan interkoneksi atau bobot pada jaringan. Contoh jaringan yang belajar dengan pengawasan adalah Backpropagation, yang akan digunakan pada sistem. 2. Belajar tanpa pengawasan Pada proses pengawasan, jaringan dibekali dengan pengetahuan dasar berupa parameter dan kemudian mengorganisasikan sendiri hubunganhubungan interkoneksi dalam dirinya atas masukan yang diberikan sehingga dengan demikian target tidak dibutuhkan. Contoh : Adapative Resonance Theory (ART), kohenen, dan adeline 2.4.4 Fungsi Aktivasi Neural Network Ada beberapa pilihan fungsi aktivasi yang digunakan dalam metode backpropagation, seperti fungsi sigmoid biner, dan sigmoid bipolar. Fungsi aktivasi diharapkan dapat mendekati nilai-nilai maksimum dan minimum secara baik. Berikut ini adalah fungsi aktivasi yang sering digunakan yaitu: [10] 1. Sigmoid Biner (logsig) Fungsi ini digunakan untuk jaringan syaraf yang dilatih dengan menggunakan metode backpropagation. Fungsi sigmoid biner memiliki
14
nilai pada range 0 sampai 1. Oleh karena itu, fungsi ini sering digunakan untuk jaringan syaraf yang membutuhkan nilai output yang terletak pada interval 0 sampai 1, namun fungsi ini juga dapat digunakan oleh jaringan syaraf yang nilai outputnya 0 atau 1 =f x =
……………(2.11)
2. Sigmoid Bipolar (tansig) Fungsi sigmoid bipolar hampir sama dengan fungsi sigmoid biner, hanya saja output dari fungsi ini memiliki range antara 1 sampai –1. =f x = 2.5
……….(2.12)
Backpropagation
2.5.1 Arsitektur Backpropagation Backpropagation memiliki beberapa unit yang ada dalam satu lebih layer tersembunyi. Gambar 2.6 adalah arsitektur backpropagation dengan n buah masukan, sebuah layer tersembunyi yang terdiri dari p unit, serta m buah unit keluaran. Vji merupakan bobot garis dari unit masukan xi ke unit layer tersembunyi z (Vj0 merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layer tersembunyi Zj ).Wkj merupakan bobot dari unit layer tersembunyi. Zj ke unit keluaran yk (Wk0 merupakan bobot dari bias di layer tersembunyi ke unit keluaran Yk.)
Gambar 2.5 Arsitektur Backpropagation
15
2.5.2 Pelatihan Backpropagation Pelatihan Backpropagation meliputi 3 fase [10] : •
Fase I : Propagasi Maju Selama propagasi maju, sinyal masukan (= xi) dipropagasikan ke layer tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari setiap unit layer tersembunyi (= Zj ) tersebut selanjutnya dipropagasikan maju lagi ke layer tersembunyi dia atasnya menggunakan fungsi aktivasi yang ditentukan. Demikian seterusnya hingga menghasilkan keluaran jaringan (= Yk ). Algoritma pelatihan untuk jaringan dengan satu layer tersembunyi (dengan fungsi aktivasi sigmoid biner) adalah sebagai berikut : Langkah 0
: Inisialisasi semua bobot dengan bilangan acak kecil
Langkah 1
: Jika kondisi penghentian belum terpenuhi, lakukan langkah
2-9 Langkah 2
: Untuk setiap pasang data pelatihan, lakukan langkah 3-8
Fase I : Propagasi Maju Langkah 3
: Tiap unit masukan menerima sinyal dan meneruskannya ke
unit tersembunyi di atasnya Langkah 4
: Hitung semua keluaran di unit tersembunyi Zj (j =
1,2,3…,p) _
+ ∑
=
= Langkah 5
! =
"_#$%&
……… (2.13) …………(2.14)
: Hitung semua keluaran jaringan di unit yk ( k = 1,2,3….,m) _
'
= (' + ∑
'
= )
'
* =
(' ………… (2.15) +_#$%,
………… (2.16)
16