Anda di halaman 1dari 5

BACKPROPAGATION NEURAL

NETWORK
( BP)
PENDAHULUAN
Algoritma pembelajaran propagasi balik digunakan untuk arsitektur
jaringan saraf banyak lapis dan metode pembelajaran yang dipakai adalah
supervised training. Algoritma ini merupakan metode optimasi sederhana yang
fungsinya untuk meminimalisasi error atau kesalahan dari keluaran yang
dihasilkan oleh jaringan syaraf tiruan dengan target dari pola yang diinginkan.
Pelatihan pada propagasi balik terbagi dalam tiga tahap, yaitu: tahap feedforward
(propagasi maju) pada input training pattern (pola pelatihan masukan),
backpropagation of the associated error (propagasi balik), dan adjustment of the
weights (penyesuaian bobot). Setelah proses pembelajaran selesai, maka jaringan
siap dipakai untuk mengenali pola, dimana pada proses pengenalan pola hanya
tahap propagasi maju yang digunakan.
Pada saat pembelajaran harga laju pembelajaran atau digunakan untuk
mengontrol besarnya perubahan bobot. Dengan menggunakan harga yang kecil,
maka dapat mencegah respon yang besar terhadap perhitungan kesalahan pada
saat jaringan mempelajari setiap pola.
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:

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.

total squared error, adalah jumlah squared error untuk setiap pasangan
pelatihan.

mean squared error, bisa berarti squared error dibagi dengan jumlah
neuron pada lapisan keluaran atau total 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 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.

ARSITEKTUR JARINGAN BP
PROSES PEMBELAJARAN BP
Pada tahap propagasi maju, setiap unit masukan menerima sinyal dan
menyebarkan sinyal tersebut ke setiap unit pada lapisan tersembunyi setelah
dikalikan dengan bobotnya masing-masing melalui connection (hubungan) antara
lapisan masukan dengan lapisan tersembunyi. Seluruh sinyal yang masuk ke
setiap unit pada lapisan tersembunyi akan dijumlahkan dan diproses dengan
fungsi aktifasi sehingga akan dihasilkan sinyal keluaran yang langsung disebar ke
setiap unit pada lapisan keluaran (jika memiliki lebih dari satu lapisan
tersembunyi maka sinyal tersebut akan disebar ke lapisan tersembunyi
berikutnya). Setiap unit pada lapisan keluaran akan menerima sinyal dari setiap
unit pada lapisan tersembunyi yang sudah dikalikan dengan bobot pada hubungan
antara lapisan masukan dengan lapisan tersembunyi. Seluruh sinyal yang masuk
ke setiap unit pada lapisan keluaran akan dijumlahkan dan diproses dengan fungsi
aktifasi sehingga akan dihasilkan sinyal keluaran. Seluruh sinyal keluaran dari

setiap unit pada lapisan keluaran merupakan respon dari jaringan saraf tiruan
terhadap satu pola masukan.
Pada tahap propagasi balik, sinyal keluaran dari setiap unit pada lapisan
keluaran akan dibandingkan dengan targetnya masing-masing yang telah
didefinisikan untuk pola masukan tersebut sehingga akan dihasilkan error
(kesalahan) untuk setiap unitnya. Kesalahan yang dihasilkan oleh setiap unit pada
lapisan keluaran digunakan untuk meng-update bobot di antara lapisan
tersembunyi dengan lapisan keluaran dan didistribusikan ke lapisan sebelumnya
yaitu lapisan tersembunyi. Setiap unit pada lapisan tersembunyi akan
menjumlahkan seluruh sinyal kesalahan yang masuk dari setiap unit pada lapisan
keluaran dan menghitung kesalahannya. Sinyal kesalahan yang dihasilkan dari
setiap unit pada lapisan tersembunyi akan digunakan untuk meng-update bobot di
antara lapisan masukan dan lapisan tersembunyi (jika memiliki lebih dari satu
lapisan tersembunyi maka sinyal kesalahan tersebut digunakan untuk mengupdate bobot diantara lapisan tersembunyi dengan lapisan tersembunyi
sebelumnya).
Pada tahap penyesuaian bobot, akan dihitung bobot baru dengan
menjumlahkan bobot lama dengan perubahan bobot di antara lapisan.
Ketiga tahap tersebut dilakukan berulang-ulang untuk setiap pasangan
pelatihan (vektor pelatihan dan target pelatihan). Satu epoch adalah satu cycle
(putaran) dari pasangan pelatihan yang pertama sampai pasangan pelatihan yang
terakhir. Proses pembelajaran memerlukan banyak epoch dan akan berhenti jika
menemukan bobot akhir dengan total kesalahan yang telah didefinisikan di dalam
program.
Algoritma Pembelajaran
Langkah 0: Inisialisasi bobot keterhubungan antara neuron dengan menggunakan
bilangan acak kecil (-0.5 sampai +0.5).
Langkah 1: Kerjakan langkah 2 sampai langkah 9 selama kondisi berhenti yang
ditentukan tidak dipenuhi.

Langkah 2: Kerjakan langkah 3 sampai langkah 8 untuk setiap pasangan


pelatihan.

Propagasi maju

Langkah 3 : Setiap unit masukan (Xi) menerima sinyal masukan xi, dan
menyebarkannya ke seluruh unit pada lapisan tersembunyi.
Langkah 4:- Setiap unit pada lapisan tersembunyi menjumlahkan seluruh
sinyal yang masuk.
n

z _ in j vo j xi vij
i 1

masukan untuk lapisan tersembunyi.

- Setiap unit pada lapisan tersembunyi memakai fungsi


aktifasi untuk menghasilkan sinyal keluaran.

z j f ( z _ in j )

keluaran dari lapisan tersembunyi.

- zj didistribusikan ke seluruh neuron pada lapisan keluaran.


Langkah 5:- Setiap unit pada lapisan keluaran menjumlahkan seluruh
sinyal yang masuk.
p

y _ ink wok z j w jk masukan untuk lapisan keluaran.


j 1

- Setiap unit pada lapisan keluaran memakai fungsi aktifasi


untuk menghasilkan sinyal keluaran.

yk f ( y _ ink )

keluaran dari lapisan keluaran.

Propagasi balik

Langkah 6:- Setiap unit pada lapisan keluaran menghitung informasi


error antara sinyal yang dihasilkan dengan target dari pola.

k (tk yk ) f ' ( y _ ink )


- Menghitung koreksi beban.

w jk k z j

- Menghitung koreksi bias.

wok k

- Kirimkan k ke unit di bawahnya (lapisan tersembunyi).


Langkah 7:- Setiap unit pada lapisan tersembunyi menjumlahkan seluruh
sinyal yang masuk.

_ in j k w jk

masukan untuk lapisan tersembunyi.

k 1

- Setiap unit pada lapisan tersembunyi menghitung informasi


error.

j _ in j f ' ( z _ in j )

- Menghitung koreksi beban.

vij j xi

- Menghitung koreksi bias.

vo j j

Penyesuaian bobot

Langkah 8:- Update bobot dan bias pada hubungan antar lapisan.
w jk (baru ) w jk (lama) w jk
vij (baru ) vij (lama ) vij

PROSES PENGENALAN BP
Algoritma yang digunakan untuk mengenali suatu pola adalah tahap feed
forward atau propagasi maju yang merupakan tahap awal dari algoritma
pembelajaran propagasi balik.
Algoritma Pengenalan
Langkah 0: Inisialisasi bobot keterhubungan antara neuron yang diambil dari hasil
pembelajaran.
Langkah 1: Kerjakan langkah 2 sampai langkah 4 untuk setiap vektor masukan.
Langkah 2: Untuk i = 1, , n : set aktifasi dari unit masukan xi ;
Langkah 3: Untuk j = 1, , p:
n

z _ in j vo j xi vij .
i 1

z j f ( z _ in j )
Langkah 4: Untuk k = 1, , m :
p

y _ ink wok z j w jk
j 1

yk f ( y _ ink )

Anda mungkin juga menyukai