Perbaikan Metode Backpropagation untuk Pelatihan Jaringan Syaraf Tiruan Multilayer R. Muhammad Subekti 1 1.
P2TRR – BATAN, Kompleks Puspiptek Gedung 31, Serpong, Tangerang 15310
Abstrak Algoritma umum metode backpropagation dalam jaringan syaraf tiruan memiliki beberapa kelemahan iterasi mundur, karena itu dalam penelitian ini dilakukan perbaikan metode backpropagation. Kelemahan tersebut bisa diperbaiki dengan memberikan parameter momentum ( α ) yang mengintegrasikan dirinya ke dalam persamaan umum sebagai learning term. Parameter momentum dan laju belajar pada bagian koreksi bobot diintegrasikan bersama-sama. Persamaan hasil perbaikan adalah sebuah persamaan umum dijumlahkan dengan faktor koreksi bobot
− η (1 − α )∆wn + α∆wn −1 . Namun kecepatan iterasi dari persamaan perbaikan metode backpropagation lebih tinggi minimal 506% dari pada persamaan hasil pengembangan terakhir (advanced backpropagation) pada tingkat ralat 0,01. Hal ini disebabkan efisiensi perbaikan bobot yang sangat tinggi. Aktivasi bobot pada metode backpropagation berbasis momentum term dan metode backpropagation hasil perbaikan memberikan hasil yang tidak signifikan, karena kedua metode tersebut memiliki dasar perhitungan numerik yang sama. Kata kunci : bacpropagation, ralat, konvergensi, kinerja, bobot.
1. Pendahuluan Dalam sepuluh tahun terakhir, kecerdasan buatan berkembang sangat pesat. Jaringan syaraf tiruan merupakan salah satu ilmu yang mendukung perkembangan kecerdasan buatan, bermacam macam aplikasi berbasis jaringan syaraf tiruan telah dikembangkan di berbagai bidang. Misalnya dalam bidang kedokteran di Indonesia, aplikasi analisis kondisi ginjal pasien telah dikembangan dengan baik dan memiliki tingkat keberhasilan 98%
[1]
. Sejalan dengan perkembangan
perangkat lunak dan perangkat keras, teknik analisis jaringan syaraf tiruan membutuhkan terobosan teoritis untuk mempercepat kinerja jaringan. Sebagian besar aplikasi yang telah dikembangkan menggunakan jaringan syaraf tiruan umpan maju dengan pembobot dikoreksi menggunakan metode backpropagation. Tujuan penelitian ini adalah memperbaiki metode backpropagation konvensional supaya kinerja jaringan syaraf tiruan umpan maju meningkat. Peningkatan kinerja jaringan sangat dibutuhkan untuk memenuhi kebutuhan komputasi aplikasi kecerdasan buatan yang semakin kompleks, apalagi perkembangan peningkatan kecepatan perangkat keras belum cukup mengimbangi perkembangan masalah yang harus diselesaikan. Perbaikan metode backpropagation dilakukan dengan mengkoreksi persamaan dasar. Pada kenyataannya penurunan persamaan sampai tingkat paling rendah tidak mampu menghasilkan koreksi yang terbaik, justru dengan melakukan variasi parameter persamaan secara logis mampu menghasilkan kinerja jaringan yang maksimal dengan konsekwensi tidak semua masalah mampu
diselesaikan. Hal ini masih dapat diatasi dengan teknik komputasi gabungan dan selanjutnya hal ini merupakan kelemahan kecil saja. Optimalisasi jaringan diperoleh dari pengalaman-pengalaman dalam penelitian jaringan syaraf tiruan, karena materi optimalisasi melibatkan banyak variasi parameter dan banyak pengujian dari variasi parameter. Tidak menutup kemungkinan trials and errors menghasilkan nilai optimal yang diinginkan. Peningkatan kecepatan perbaikan bobot sesuai dengan ralat yang diinginkan memiliki resiko kegagalan sistem analisis [1]. Untuk memperkecil kegagalan sistem analisis diperlukan data pelatihan yang spesifik sehingga jaringan syaraf tiruan secara teori akan mudah mengklasifikasi pola-pola yang dilatihkan.
2. Dasar Teori 2.1. Jaringan Syaraf Tiruan Umpan Maju Secara biologis gambar di atas menyerupai bangun sel yang sebenarnya. Keluaran dari tiap lapisan sebelumnya merupakan masukan bagi lapisan di mukanya. Dengan jumlah jaringan besar syaraf tiruan memiliki sifat fault-tolerant, yakni kerusakan pada sedikit atau sebagian kecil sel dalam jaringan tidak akan banyak berpengaruh terhadap keluaran sistem [2].
Gambar 1. Skema jaringan syaraf tiruan umpan maju
Gambar 2. Proses umpan maju di titik aktif
Dengan demikian, secara matematis proses umpan maju dilihat dari satu titik aktif seperti yang terlihat pada Gambar 2, persamaan umumnya adalah : P
υ (jl ) = ∑ w (jil ) .xi(l −1)
(1)
i =0
dengan
j
= neuron pada lapisan tersembunyi ke-l
l
= lapisan tersembunyi
x
= masukan dari lapisan aktif
υ
= keluaran dari lapisan aktif
:
w = bobot
p = jumlah neuron Keluaran dari elemen proses di atas merupakan fungsi transfer yang umumnya menggunakan fungsi sigmoid dengan persamaan umum :
y (jl ) =
1 1 + exp(−υ (jl ) )
(2)
Gambar 3. Jenis fungsi transfer yang bisa digunakan dalam jaringan syaraf tiruan Fungsi sigmoid digunakan sebagai fungsi transfer dengan alasan bahwa fungsi sigmoid memiliki gradien yang proporsional dengan refleksi keluaran. Jenis-jenis fungsi lain yang bisa digunakan sebagai fungsi transfer bisa dilihat pada Gambar 3.
2.2. Metode Backpropagation Metode backpropagation dikembangkan oleh Rumelhart yang tidak lain adalah pelatihan delta rule. Ralat global E pada lapisan keluaran jaringan syaraf tiruan umpan maju adalah :
E= Dengan : d j = keluaran yang diharapkan
οj
= keluaran jaringan syaraf tiruan
1 N ∑ (d j − ο j ) 2 2 j
(3)
Ralat ini merupakan inti dari sistem dimana iterasi yang terjadi berusaha memenuhi ralat global yang diinginkan secepat mungkin [3]. Persamaan dasar dari koreksi bobot berkembang dengan meletakkan basis analisis ke arah momentum term, weight decay dan batch learning. Persamaan dasarnya adalah sebagai berikut :
w ji ( n + 1) = w ji ( n ) + ∆ w ji
(4)
Dimana n adalah generasi iterasi. Perubahan bobot yang diperbaiki ∆Wij proporsional dengan gradien negatif
[3,4]
dituliskan sebagai berikut :
∆Wij = −η Faktor proposional
η
∂E ∂w ji
(5)
adalah laju belajar yang mendefinisikan kedalaman langkah iterasi
[5]
. Pemilihan parameter laju
belajar yang terlalu besar membuat bobot yang dihasilkan overshoot terhadap ralat minimum global. Laju belajar terlalu kecil membuat proses konvegensi lambat. Kesalahan parameter laju belajar akan mengakibatkan osilasi di sekitar nilai ralat global minimum.
Gambar 4. Kurva gradien perbaikan bobot Gradien ralat global dapat dituliskan sebagai berikut :
∂E ∂E ∂ο j ∂ν j = ∂w ji ∂ο j ∂ν j ∂w ji dengan : ν j =
∑w
ji
(6)
xi
i
οj
= fungsi tranfer dari (ν j )
Diferensial parsial Persamaan (6) terbagi dalam beberapa persamaan sebagai berikut :
∂E = ∂ο j
∂ ( 12 ∑ (d j − ο j ) 2 ) j
∂ο j
= − (d j − ο j )
(7)
∂ο j ∂a j ∂a j ∂w ji
=
=
∂f (a j ) ∂a j
∂ (∑ w ji xi ) i
∂w ji
= f ' (a j )
(8)
= xi
(9)
Dengan demikian hasil perkalian persamaan di atas adalah :
∂E ∂w ji ∂E ∂w ji
= ( d j − ο j ) f ' ( a j ) xi
(10)
= ( d j − ο j ) f (a j )(1,0 − f ( a j )) xi
(11)
= ( d j − ο j )ο j (1,0 − ο j ) xi
(12)
∂E ∂w ji
∂E ∂w ji
=
δ j xi
(13)
Ralat global dijabarkan sebagai :
δj
= ( d j − ο j )ο j (1,0 − ο j )
(14)
Persamaan ini lazim juga disebut sebagai delta rule [2,6]. Beberapa langkah lain untuk meningkatkan konvergensi adalah perbaikan bobot berbasis momentum term dengan persamaan sebagai berikut [7]:
w ji (n + 1) = w ji (n) + ∆w ji (n) + α∆w ji (n − 1)
(15)
untuk perbaikan bobot berbasis weight decay :
w ji (n + 1) = w ji (n) + ∆w ji (n) − γ∆w ji (n − 1)
(16)
3. Pembahasan Perbaikan Metode Backpropagation Metode backpropagation bekerja dari ralat keluaran jaringan yang diumpankan ke belakang merambat sampai ke lapisan aktif terdepan. Algoritma dasar metode backpropagation memiliki beberapa kelemahan iterasi mundur
[2,5]
.
Pengembangan lebih lanjut berdasarkan persamaan (14) adalah sebuah persamaan umum dijumlahkan dengan faktor koreksi bobot
α [∆W ji (n) − ∆W ji (n − 1)] + ηδ j (n)Yi (n) .
Persamaan gradien lokal sesuai persamaan (14) pada
masing-masing lapisan jaringan dapat ditulis sebagai berikut :
δ (j l ) (n) = y (jl ) (n).(1 − y (jl ) (n) ).∑ δ k(l +1) (n).wkj(l +1) (n) p
k
dimana : j = posisi neuron pada lapisan tersembunyi l.
k = posisi neuron pada lapisan tersembunyi (l+1).
(20)
Penggunaan persamaan (20) untuk masing-masing lapisan jaringan dimana l = L, sehingga dapat ditulis sebagai menjadi :
δ (j L ) (n) = [e (j L ) (n)].[ο j (n)].[(1 − ο j (n) )]
(21)
dimana : j = posisi neuron pada lapisan keluara L. Dengan demikian, aliran proses generalisasi jaringan pada lapisan tersembunyi l adalah sebagai berikut :
w (jil ) (n + 1) = w (jil ) (n) + α [ w (jil ) (n) − w (jil ) (n − 1)] + ηδ (j l ) (n). y i( l −1) (n) dimana :
η
= nilai laju belajar
α
= konstanta momentum
(22)
Gambar 5. Proses koreksi bobot jaringan syaraf tiruan Algoritma metode backpropagation bekerja dengan identifikasi ralat permukaan dan terjadi proses umpan mundur untuk memperbaiki bobot. Selanjutnya sistem akan menguji bobot baru dengan metode umpan maju dan diperoleh keluaran sistem. Proses menuju konvergen diperoleh dengan mengikuti ralat permukaan sesuai dengan persamaan (3) dan semua proses dapat dilihat pada Gambar 5. Bila kita teliti proses iterasi secara lebih mendalam, laju konvergensi akan berjalan lambat saat ralat yang dikehendaki hampir tercapai. Hal ini bisa diperbaiki dengan memberikan laju belajar
η
yang mengintegrasikan dirinya ke dalam persamaan umum sebagai learning term. Langkah ini dilakukan
sebagai modifikasi pertama. Persamaan baku sebagai dasar pengembangan adalah persamaan (4) dan persamaaan (5) sehingga dasar persamaan akan menjadi :
w ji ( n + 1) = w ji ( n ) − η
∂E ∂w ji
(23)
Nilai laju belajar terletak antara 0 sampai 1, namun iterasi berjalan lambat saat ralat hampir tercapai meskipun laju belajar telah dioptimasi. Oleh karena itu perlu dikoreksi dengan modifikasi kedua. Tujuan modifikasi kedua adalah untuk mereduksi permukaan ralat yang sangat dangkal dan memberikan efek lentingan ralat menuju permukaan ralat yang lebih baik. Ketika sistem mendekati ralat yang diinginkan, ∂E ∂w menjadi sangat kecil, hal ini menyebabkan perubahan bobot tidak signifikan. Pada modifikasi kedua dicoba menambahkan momentum persamaan lengkap adalah sebagai berikut :
αδj
ke persamaan (23) dan
[
w (jil ) ( n + 1) = w (jil ) ( n ) − η (1 − α )δ (j l ) ( n ) + αδ
( l −1) j
(n)
]
(23)
Koreksi bobot adalah suatu sistem terpadu yang terdiri dari persamaan (1), persamaan (2), persamaan (21) dan persamaan (22) seperti terlihat pada Gambar 5. 1.00000
Advanced Bp. Momentum
Ralat
0.10000
Bp. Perbaikan
0.01000
0.00100
0.00010 10
20
30
40
50
60
70
80
90
100
Iterasi
Gambar 6. Karakteristik jaringan syaraf tiruan Tabel 1. Perbandingan kinerja beberapa metode backpropagation berdasarkan jumlah iterasi Jumlah Iterasi
Ralat Advanced Bp.
Momentum
Bp. Perbaikan
0,01
56
11
10
0,001
368
23
21
0,0001
9.320
619
458
Tabel 1. Perbandingan kinerja metode backpropagation terhadap metode advanced backpropagation Persentase Kinerja
Ralat
Momentum Term (%)
Bp. Perbaikan (%)
0,01
506
506
0,001
1600
1600
0,0001
1506
2035
Pengujian kinerja jaringan syaraf tiruan menggunakan persamaan baru hasil perbaikan persamaan dasar metode backpropagation terlihat pada Gambar 6, Tabel 1 dan Tabel 2, dimana terlihat karakteristik hasil perbaikan dibandingkan dengan persamaan hasil pengembangan terakhir (Advanced Backpropagation). Kecepatan iterasi minimum yang diperoleh menggunakan persamaan baru ini meningkat sebesar 506 % pada tingkat ralat 0,01. Aktivasi bobot pada metode backpropagation berbasis momentum term dan metode backpropagation hasil perbaikan memberikan hasil yang tidak signifikan, karena kedua metode tersebut memiliki dasar perhitungan numerik yang sama, terlihat pada Persamaan 15 dan Persamaan 23 akan bernilai sama bila laju belajar diberi nilai nol. Dengan demikian, kehandalan metode hasil perbaikan dibandingkan dengan metode berbasis momentum term adalah faktor laju belajar yang bisa menggandakan kecepatan belajar meskipun hasil yang diberikan tidak signifikan.
4. Kesimpulan Persamaan hasil perbaikan untuk pelatihan jaringan syaraf tiruan umpan maju adalah persamaan baru yang merupakan penjumlahan persamaan umum dengan faktor koreksi bobot − η (1 − α )∆wn + α∆wn −1 . Kecepatan iterasi minimum yang diperoleh menggunakan persamaan baru ini meningkat sebesar 506 % pada tingkat ralat 0,01. Aktivasi bobot pada metode backpropagation berbasis momentum term dan metode backpropagation hasil perbaikan memberikan hasil yang tidak signifikan, karena kedua metode tersebut memiliki dasar perhitungan numerik yang sama.
Ucapan Terima Kasih Terima kasih kepada bapak Balza Achmad, ST atas pengenalan dan bimbingan dalam mendalami jaringan syaraf tiruan serta civitas akademik Teknik Nuklir, UGM atas ijin penggunaan perangkat komputer secara paralel. Ucapan terima kasih juga kami sampaikan kepada PPTRR, Batan atas kesempatan mengembangkan jaringan syaraf tiruan secara khusus.
Daftar Pustaka [1]
Muhammad Subekti : “Pengembangan Perangkat Lunak Berbasis Kecerdasan Buatan Berbasis Kecerdasan Buatan untuk Analisis Kondisi Ginjal Pasien”, Proceding Lokakarya Komputasi dan Sains Nuklir X, BATAN, 1999.
[2]
Nelson, M. M., dan Illingworth, W. T. : “A Practical Guide to Neural Nets”, Addison-Wesley Publishing Company, Massachusetts, 1991.
[3]
Haykin, S.: “Neural Networks”, Macmillan College Publishing Company, New York, 1994.
[4]
Timothy : “Advanced Algorithms for Neural Networks”, John Wiley and Sons, Inc. New York, 1995.
[5]
Harvey, R. : “ Neural Network Principles”, Prentice-Hall International, Inc, New Jersey, 1994.
[6]
Kosko, B. : “Neural Networks and Fuzzy Systems”, Prentice-Hall International, Inc., New Jersey, 1992
[7]
Timothy : “Signal and Image Processing with Neural Networks”, John Wiley and Sons, Inc., New York, 1994.