2.3.1 Arsitektur jaringan syaraf tiruan propagasi balik
Propagasi balik memiliki beberapa unit yang ada dalam satu atau lebih lapisan
tersembunyi. Gambar 7 adalah arsitektur propagasi balik dengan
buah masukan ditambah
sebuah bias
sebuah layar
tersembunyi yang terdiri dari unit ditambah sebuah bias, serta
buah unit keluaran. merupakan bobot garis dari unit masukan
ke unit
lapisan tersembunyi
merupakan bobot garis yang menghubungkan bias di unit masukan ke unit lapisan
tersembunyi .
merupakan bobot dari unit lapisan tersembunyi
ke unit keluaran merupakan bobot dari bias di lapisan
tersembunyi ke unit keluaran .
Siang, 2005 2.3.2 Fungsi aktivasi pada jaringan syaraf
tiruan propagasi balik Dalam propagasi balik, fungsi aktivasi
yang dipakai harus memenuhi beberapa syarat berikut, yaitu :
1. Kontinu
2. Terdiferensialkan
3. Merupakan fungsi yang tidak turun.
Salah satu fungsi yang memenuhi ketiga syarat tersebut sehingga sering digunakan
adalah fungsi sigmoid biner yang memiliki kisaran
. Fungsi
sigmoid biner
didefinisikan sebagai berikut : 1
dengan fungsi turunannya adalah : 2
Berikut ini adalah grafik dari fungsi sigmoid biner :
Gambar 8 Grafik fungsi aktivasi sigmoid biner Fungsi lain yang sering digunakan adalah
fungsi sigmoid bipolar dengan kisaran yang didefinisikan sebagai berikut :
3 dengan fungsi turunannya adalah :
4 Berikut ini diberikan grafik dari fungsi
sigmoid bipolar :
Gambar 9 Grafik fungsi aktivasi sigmoid bipolar
Fungsi sigmoid memiliki nilai maksimum . Untuk pola yang targetnya lebih dari , pola
masukan dan keluaran harus terlebih dahulu ditransformasi
sehingga semua
polanya memiliki kisaran yang sama dengan fungsi
sigmoid yang dipakai. Alternatif lain adalah menggunakan fungsi
aktivasi sigmoid hanya pada lapisan yang bukan lapisan keluaran. Pada lapisan keluaran,
fungsi aktivasi yang digunakan adalah fungsi identitas
. Siang, 2005
2.3.3 Pelatihan jaringan syaraf tiruan propagasi balik
Pelatihan propagasi balik meliputi 3 fase, yaitu :
a. Fase 1, umpan maju.
Selama fase umpan maju, sinyal masukan
dipropagasikan ke lapisan tersembunyi menggunakan fungsi aktivasi
yang ditentukan. Keluaran dari setiap unit lapisan
tersembunyi tersebut
selanjutnya dipropagasikan maju lagi ke lapisan
tersembunyi di
atasnya menggunakan
fungsi aktivasi
yang ditentukan. Demikian seterusnya hingga
menghasilkan keluaran jaringan .
Berikutnya, keluaran jaringan dibandingkan dengan target yang harus
dicapai . Selisih
adalah galat yang terjadi. Jika galat ini lebih kecil dari
batas toleransi yang ditentukan, maka iterasi dihentikan. Akan tetapi apabila galat
masih lebih besar dari batas toleransinya, maka bobot setiap garis dalam jaringan
akan dimodifikasi untuk mengurangi galat yang terjadi.
a. Fase 2, umpan mundur.
Berdasarkan selisih , dihitung
faktor yang dipakai
untuk mendistribusikan galat di unit ke
semua unit tersembunyi yang terhubung langsung dengan
. juga dipakai untuk
mengubah bobot garis yang berhubungan langsung dengan unit keluaran.
Dengan cara yang sama, dihitung faktor di setiap unit di lapisan tersembunyi
sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di
lapisan di bawahnya. Demikian seterusnya hingga semua faktor di unit tersembunyi
yang berhubungan langsung dengan unit masukan dihitung.
b. Fase 3, perubahan bobot.
Setelah semua faktor dihitung, bobot semua
garis dimodifikasi
bersamaan. Perubahan bobot suatu garis didasarkan
atas faktor neuron di lapisan atasnya. Sebagai contoh , perubahan bobot garis
yang menuju
ke lapisan
keluaran didasarkan atas
yang ada di unit keluaran.
Siang, 2005
Gambar 10 Alur kerja jaringan syaraf tiruan propagasi balik Ketiga fase tersebut diulang terus menerus
hingga kondisi penghentian yang diinginkan terpenuhi. Umumnya kondisi penghentian
yang sering dipakai adalah maksimum jumlah iterasi atau besarnya galat. Iterasi akan
dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang
ditetapkan, atau jika galat yang terjadi sudah lebih kecil dari batas toleransi yang diizinkan.
Siang, 2005 Algoritma
pelatihan untuk
jaringan propagasi
balik dengan
satu lapisan
tersembunyi dengan fungsi aktivasi sigmoid biner adalah sebagai berikut :
a. Langkah
Inisialisasi semua bobot dengan bilangan acak kecil.
b. Langkah
Jika kondisi penghentian belum terpenuhi, lakukan langkah
. c.
Langkah Untuk setiap pasang data pelatihan,
lakukan langkah .
Fase I umpan maju
d. Langkah
Tiap unit masukan menerima sinyal dan meneruskannya ke unit tersembunyi di
atasnya. e.
Langkah Setiap unit tersembunyi
, jumlahkan bobot sinyal masukannya,
5 dengan
bias pada unit tersembunyi ,
adalah bobot pada unit tersembunyi . Kemudian fungsi aktivasi
digunakan untuk menghitung sinyal keluarannya. Kemudian sinyal ini dikirim
keseluruh unit pada lapisan di atasnya yaitu unit keluaran.
f. Langkah 5
Tiap unit keluaran ,
jumlahkan bobot sinyal masukannya,
6 dengan
bias pada unit keluaran ,
adalah bobot pada unit keluaran .
Kemudian fungsi aktivasi digunakan
untuk menghitung
sinyal keluarannya.
Fase II umpan mundur
g. Langkah 6
Tiap unit keluaran , menerima pola
target yang saling berhubungan pada masukan pola pelatihan kemudian dihitung
galat informasinya,
7 merupakan
target keluaran,
merupakan unit galat yang akan digunakan dalam
perubahan bobot
lapisan di
bawahnya. Kemudian dihitung koreksi bobotnya dengan laju pembelajaran
digunakan untuk memperbaharui bobot ,
8 Kemudian dihitung koreksi bobotnya
digunakan untuk memperbaharui ,
9 h.
Langkah 7 Setiap
unit lapisan
tersembunyi dijumlahkan hasil perubahan masukannya
dari unit-unit lapisan di atasnya, 10
Faktor pada unit tersembunyi : 11
Kemudian dihitung koreksi bobotnya digunakan untuk memperbaharui bobot
, 12
Kemudian dihitung koreksi bobotnya digunakan untuk memperbaharui bobot
, 13
Fase III perubahan bobot
i. Langkah 8
Tiap unit keluaran , perbaharui biasnya
dan bobotnya : 14
Tiap unit
lapisan tersembunyi
perbaharui bias dan bobotnya : 15
j. Langkah 9
Test kondisi berhenti. Siang, 2005
Jika besar Mean Square Error MSE lebih kecil dari toleransi yang telah ditentukan atau
jumlah iterasi pada proses pelatihan sudah mencapai iterasi maksimum, maka proses
selesai. Jika tidak, maka kembali ke langkah 1.
Setelah pelatihan
selesai dilakukan,
jaringan dapat dipakai untuk pengenalan pola. Dalam hal ini, hanya umpan maju langkah 4
dan 5 saja yang dipakai untuk menentukkan keluaran jaringan. Apabila fungsi aktivasi yang
dipakai bukan sigmoid biner, maka langkah 4 dan 5 harus disesuaikan. Demikian juga
turunannya pada langkah 6 dan 7.
Parameter merupakan laju pembelajaran yang menentukan kecepatan iterasi. Nilai
terletak antara nilai dan
. Semakin besar harga , maka akan semakin
sedikit iterasi yang dipakai. Akan tetapi jika nilai terlalu besar, maka akan merusak pola
yang sudah benar sehingga pembelajaran menjadi lambat. Satu siklus pelatihan yang
melibatkan semua pola disebut epoch.
Pemilihan bobot
awal sangat
mempengaruhi jaringan syaraf tiruan dalam mencapai minimum global atau mungkin
lokal saja terhadap nilai galat dan cepat tidaknya
proses pelatihan
menuju kekonvergenan.
Apabila bobot awal terlalu besar maka masukan ke setiap lapisan tersembunyi atau
lapisan keluaran akan jatuh pada daerah dimana turunan fungsi sigmoidnya akan sangat
kecil. Apabila bobot awal terlalu kecil, maka masukan ke setiap lapisan tersembunyi atau
lapisan keluaran akan sangat kecil. Hal ini akan menyebabkan proses pelatihan berjalan
sangat
lambat. Biasanya
bobot awal
diinisialisasi secara random dengan nilai antara sampai
atau sampai
atau interval yang lainnya.
Gambar 11 menunjukkan osilasi pada proses pembelajaran. Bobot-bobot bergerak
di sekitar galat minimum tanpa mampu untuk menjangkaunya arah panah memperlihatkan
lompatan yang
dibuat oleh
proses pembelajaran.
Pemilihan bobot
awal sangat
mempengaruhi jaringan syaraf tiruan dalam mencapai minimum global atau mungkin
minimum lokal terhadap nilai galat dan kecepatan
proses pelatihan
menuju kekonvergenan.
Gambar 11 Osilasi pada proses pembelajaran 2.4 Laju pembelajaran
Dalam standar propagasi balik laju pembelajaran
merupakan suatu
konstanta yang dipakai dalam seluruh iterasinya.
Perubahan dapat
dilakukan dengan memberikan laju pembelajaran yang
berbeda-beda untuk setiap bobotnya atau bahkan laju pembelajaran yang berbeda-
beda untuk tiap bobot dalam tiap iterasinya. Apabila perubahan bobot berada dalam arah
yang sama dalam beberapa pola terakhir dapat dilihat dari tanda suku
yang selalu sama, maka laju pembelajaran yang
bersesuaian dengan bobot ditambah.
Sebaliknya apabila arah perubahan bobot dua pola terakhir berbeda ditandai dengan
suku yang berselang-seling positif-
negatif maka laju pemahaman untuk bobot tersebut harus dikurangi.
Perubahan bobot dalam aturan delta-bar- delta adalah sebagai berikut :
16 Siang, 2005
2.5 Momentum