Kajian Penerapan Jaringan Syaraf Tiruan Dalam

advertisement
TINJAUAN PUSTAKA
Metode NNPLS merupakan integrasi antara MKTP dengan Jaringan Syaraf
Tiruan. Pada bab ini dibahas mengenai teori dan algoritma MKTP, Jaringan Syaraf
Tiruan, dan metode NNPLS.
Metode Kuadrat Terkecil Parsial (MKTP)
MKTP merupakan suatu metode regresi ganda linier yang dapat mengatasi
kolinieritas dan data terbatas. MKTP menggambarkan hubungan eksternal (outer) dan
hubungan internal (inner) antara peubah bebas (X) dan peubah tak bebas (Y). Hubungan
eksternal ditulis dengan persamaan berikut:
Y = U Q ' + F = 2uhq, + F
h=l
dimana X adalah peubah bebas, Y adalah peubah tak bebas, T dan U adalah vektor skor
faktor komponen pertama, P dan Q adalah vektor pembobot, E adalah matriks residu
peubah X, F adalah matriks residu peubah Y, th dan uh adalah vektor skor faktor
komponen pertama ke-h, ph dan qh adalah vektor pembobot ke-h. Keempat vektor
tersebut diperoleh dengan meminimumkan matriks residu E dan matriks residu F.
Hubungan antara X dan Y terbaik diperoleh pada kondisi
I(E11 dan llFll yang minimum.
Hubungan internal ditulis dengan persamaan sebagai berikut:
Uh = bhth
bh= U, th/ tLth
Matriks residu ditulis dengan persaman sebagai berikut:
Eh=X-thPh
Fh = Y - bhthq;,
Faktor kedua dihitung berdasarkan residu El dan F1 yang diperoleh dengan cara yang
sama untuk faktor pertama, dengan h =1,2,3 ...,a. Cara yang sama diulang sampai dengan
faktor terakhir a. Banyaknya faktor a ditentukan oleh metode validasi silang yang
berguna untuk mengatasi overJitting. OverJitting terjadi jika banyaknya peubah lebih
besar dibandingkan dengan banyaknya pengamatan, sehingga mode1 yang dibentuk
sesuai dengan data contoh, tetapi tidak dapat digunakan untuk memprediksi.
Algoritma Metode Kuadrat Terkecil Parsial Linier
Menurut Geladi & Kowalski (1986) algoritma MKTP linier adalah sebagai
berikut:
Untuk peubah X :
1. to
= x,
t, = to
2. p; = tjX/ tit,
3. p;+,= P; 1
1 1 ~ 1;
4. t,+l = X p i + ~pi+,
l pi+l
5. Jika ti = t,+l, maka proses berhenti, tetapi jika t,
Untuk peubah Y :
1. Uo=yj,Ui=Uo
2. q;
= U;
YI
U;
ui
#
kembali ke langkah 2.
5. jika u, = u,+l,maka proses berhenti, tetapi jika ui + u
kembali ke langkah 2.
Skema algoritma pemodelan MKTP untuk setiap komponen tercantum pada
Gambar 1 .
plj
F2
T
I
r
X
Y
I
I
I
l
I
I
I
I
I
I
I
I
I
I
I
I
I
MKTP
ekster
nal
model
(1)
Komponen ke 1
--+
U a 4
AL
ba
ta
I
I
1
E1
-+
MKTP
ekster
nal
model
(a)
E2
Komponen ke 2
...
Komponen ke a
Gambar 1. Skema algoritma MKTP
Jaringan Syaraf Tiruan
Jaringan syaraf tiruan merupakan suatu sistem pemrosesan informasi yang
mempunyai karakteristik kinerja tertentu dengan mengadopsi dari jaringan syaraf biologi
(Fauset, 1994).
Jaringan syaraf tiruan telah dimodelkan sebagai model matematik dari kognisi
manusia, berdasarkan pada asumsi-asumsi sebagai berikut :
1. Pemrosesan informasi terjadi pada banyak elemen sederhana yang disebut dengan
neurons.
2. Sinyal-sinyal dikirim antar neurons melalui connection-links (sinapsis).
3. Setiap sinapsis mempunyai bobot tertentu, tergantung tipe jaringan syaraf.
4. Setiap neuron mempunyai fungsi aktivasi (biasanya tak linier) yang merupakan
penjumlahan dari sinyal-sinyal input untuk sinyal-sinyal output.
Jaringan syaraf dibedakan menurut ha1 berikut :
1. Pola koneksi antar neuron (arsitektur).
2. Metode penentuan pembobot pada koneksi-koneksi (pelatihan, pembelajaran dan
algoritma).
3 . Fungsi aktivasi.
Jaringan syaraf tiruan mendistribusikan sistem proses informasi yang menyusun
beberapa
perhitungan
elemen
tunggal
berinteraksi
dengan
menghubungkan
pembobotannya (Patterson, 1996).
Dua fakta yang mendasar dari jaringan syaraf tiruan. Pertama jaringan syaraf
tiruan diilhami oleh sistem jaringan biologi. Kedua jaringan syaraf tiruan terdiri atas
banyak elemen yang disebut neurons, unit sel yang saling terhubung satu dengan yang
lain melalui sinapsis dan mempunyai bobot yang berkaitan. Sedangkan sinapsis adalah
daerah sambungan khusus antar neuron. Bobot mewakili informasi yang akan digunakan
oleh jaringan untuk menyelesaikan fbngsi tertentu.
Jaringan syaraf tiruan menyimpan sinyal dari unit sel lainnya (neurons) melewati
hubungan input yaitu dendrit (dendrite) dan sinapsis (synapse). Bobot untuk tiap
hubungan input (kekuatan sinapsis) dapat menjadi positif atau negatif. Bobot input
ditambahkan dan ditransformasikan oleh fungsi aktivasi untuk sebuah sinyal output
(pembebasan neuron). Sinyal adalah transmisi yang melewati hubungan output (akson
dan proyeksinya) untuk neuron lainnya (Skapura, 1992).
Jaringan syaraf tiruan dapat dibentuk dalam suatu model sel syaraf. Model sel
syaraf merupakan pembentuk jaringan syaraf tiruan yang disusun berdasarkan pilihan
arsitektur dan konsep pembelajaran. Sistem syaraf biologi terdiri dari susunan sel-sel
syaraf yang disebut neurons. Struktur utarna dari neuron dalam sebuah sistem saraf pusat
terdiri dari dendrit, tubuh sel (cell body/soma), dan sebuah akson (axon) tunggal. Akson
berfbngsi sebagai daerah output sel yang panjang dan bercabang. Sebuah impulse dapat
dipicu oleh sel dan dikirim ke sepanjang percabangan akson sampai akhir serat. Dendrit,
yang berupa sekumpulan serat cabang, berhngsi sebagai input sel. Titik penghubung
antara dendrit dan akson adalah sinapsis. Ketika impulse diterima dendrit, maka terjadi
peningkatan kemungkinan target neuron untuk mengaktifkan impulse menuju akson.
Sinapsis adalah daerah sambungan khusus antar neuron. Dalam sistem syaraf, pola
interkoneksi sel ke sel beserta fenomena komunikasi antar unit pemroses tersebut
menentukan kemampuan komputasi jaringan secara keseluruhan. Dengan kata lain
sinapsis merupakan bagian penting dalam komputasi neural (neurocomputing) (Skapura,
1990). Gambar 2 memperlihatkan sebuah struktur sel syaraf (neuron).
Gambar 2. Struktur sel syaraf
Struktur jaringan syaraf tiruan terdiri dari tiga lapisan yaitu :
1. Lapisan input merupakan lapisan penghubung antara jaringan syaraf dengan
jaringan luar. Output dari lapisan input terhubung dengan semua neuron lainnya
pada lapisan berikutnya.
2. Lapisan tersembunyi (hidden) merupakan lapisan yang terletak antara lapisan
input dan lapisan output. Input setiap lapisan tersembunyi adalah output dari
lapisan sebelumnya dan output setiap lapisan tersembunyi merupakan input bagi
lapisan di depannya.
3 . Lapisan output merupakan lapisan terluar sebagai hasil dari proses.
Gambar 3 memperlihatkan skema arsitektur dari jaringan syaraf tiruan untuk satu output.
Lapisan Output
n
Gambar 3 . Skema arsitektur dari jaringan syaraf tiruan untuk satu output.
Jaringan syaraf merupakan sebuah kumpulan unit perhitungan sederhana yang
dihubungkan oleh sistem koneksi. Salah satu model jaringan syaraf yang paling popular
digunakan adalah jaringan lapisan ganda dengan metode pembelajaran propagasi balik
(back propagation) (Patterson, 1994).
Algoritrna Pernbelajaran Propagasi Balik
Algoritma pembelajaran Propagasi Balik membagi proses belajar menjadi 3 tahap
yang dilakukan secara iteratif sehingga jaringan menghasilkan perilaku yang diinginkan.
Tiga tahap tersebut adalah :
1. Tahap umpan maju Cfeedforward) yaitu jaringan diberi suatu input x (xl,xz,.-.,xJ
sehingga jaringan menghasilkan output y (y1,y2,...,yn) Setelah output jaringan
diperoleh, tahap selanjutnya adalah tahap penentuan nilai galat.
2. Tahap penentuan nilai galat (error); galat diperoleh dengan cara membandingkan
output jaringan y dengan nilai output yang diinginkan tk (tl,tz,...,t,) yaitu :
E(t) = Y(t) - tk
3 . Melakukan adaptasi bobot jaringan berdasarkan nilai galat yang diperoleh. Tujuan
dari adaptasi bobot ini adalah untuk memperkecil nilai galat pada iterasi
berikutnya sehingga nilai galatnya pada suatu saat akan menuju ke 0. Untuk
mengetahui kriteria tampilan jaringan dengan rumus berikut :
Kriteria tampilan jaringan semakin baik jika nilai J minimum. Karena tujuan dari
adaptasi bobot adalah meminimumkan nilai galat total E, maka besar perubahan bobot
jaringan disesuaikan dengan besar sumbangan tiap-tiap nilai pembobot terhadap nilai
galat total yang terjadi.
Pada lapisan tersembunyi (hidden) berlaku :
Sehingga :
Pada lapisan keluaran berlaku :
sehingga :
Yk = f(y-ink)
dimana :
unit masukan ke-i, i = 1,2,3,..., n.
Xi
=
Vij
= bobot unit
Voj
= bobot bias unit
z-inj
= unit
hidden ke-j dari masukan ke-j.
zj
= unit
hidden ke-j, (i=1,2,. ..,p).
4.)
= fbngsi
aktivasi
Wjk
= bobot
unit hidden ke-j pada unit keluaran ke-k, (k=1,2, ...,m).
wok
= bobot
(bias) unit hidden pada unit keluaran ke-k.
y-ink
= unit
keluaran ke-k dari unit hidden ke-k.
y k
= unit
keluaran ke-k, (k=1,2,.. .,m).
masukan ke-i pada unit tersembunyi (hidden) ke-j, (i=1,2,. ..,p).
masukan pada unit hidden ke-j.
Fungsi aktivasi yang digunakan dalam penelitian ini adalah fungsi sigmoid (logistik)
dengan rumus berikut:
Pada lapisan keluaran kesalahan pada sebuah unit keluaran didefinisikan sebagai :
dengan :
E(t)
= kesalahan
pada unit keluaran
YL
= keluaran jaringan
tk
= keluaran
yang diiinginkan
Misalkan jaringan yang diberi pola belajar p menyebabkan kesalahan sebesar Ep.
sehingga :
dimana
sehingga persamaan (5) dapat ditulis menjadi :
Parameter jaringan yaitu bobot-bobot koneksi dari sel j ke sel i, Wij , harus diubah
sebanding dengan fbngsi kesalahan gradien negatif terhadap perubahan bobot :
dimana,
AW,,
77
= perubahan
bobot unit ke-j ke unit ke-k dengan pola pembelajar p.
= konstanta
pembelajaran dengan nilai ( 0 5 q < 1 )
Dengan mensubstitusikan Persamaan (6) dalam Persamaan (7) diperoleh persamaan
perubahan bobot sebagai berikut :
AWjk
=
(tk - Yk)f' (y-ink) zj
Bobot yang baru pada lapisan keluaran adalah :
W n e w ) = Fk(old) + AWjk
Untuk menyederhanakan Persamaan (8) diambil konstanta baru
6,
= (Yk - tk)f
yaitu :
(y-ink )
Sehingga Persamaan (8) menjadi :
Kk (new) = W / k (old) + 77 Jkzj = q
k
(old) + AWjk
Pada lapisan tersembunyi (hidden), keluaran dari lapisan tersembunyi (hidden),
zj
menentukan kesalahan total Ep, menjadi :
Sehingga negatif turunan kesalahan total E, terhadap bobot koneksi lapisan tersembunyi
(hidden) vij sebagai berikut :
(10)
Dari Persamaan (1) sampai Persamaan (4) , maka Persamaan (10) menjadi :
Persamaan perubahan bobot menjadi :
Dengan menggunakan definisi Sk pada Persamaan (9) ,Persamaan (12) menjadi :
rn
Avii = nf ' ( z -in, )x, C SkWjk
k=l
Persamaan tersebut menunjukan konsep Propagasi Kesalahan Balik (Back Error
Propagation) yaitu setiap perubahan bobot lapisan tersembunyi ( A j k ) bergantung pada
semua kesalahan (Sk) pada lapisan keluaran. Dengan pengertian kesalahan lokal pada
semua lapisan keluaran disebarkan balik ke setiap lapisan tersembunyi untuk
mendapatkan perubahan bobot yang sesuai. Dengan mendefinisikan konstanta :
Persamaan penyesuaian bobot pada lapisan tersembunyi -adalah :
vii (new)
=
vii (old)
+ vS,xi
Pemeriksaan Pembelajaran dalam Jaringan Syaraf Tiruan
Jaringan syaraf tiruan tidak hanya diklasifikasikan menurut aplikasinya, tapi juga
tergantung metode pembelajarannya. Ada tiga kategori paling penting dari metode
pembelajaran, yaitu : (1) supervised (e.g aturan delta, back propagation, hebbian,
stokastik); (2) unsupervised (e.g. kompetitif, hebbian) dan (3) reinforcement learning
(Patterson, 1996).
Dalam pembelajaran supervised gugus data pelatihan terdiri dari input dan target
output. Aturan pembobotan (dan bias) dari jaringan syaraf tiruan untuk meminimumkan
perbedaan antara output yang dicapai dan target output. Selisih ini dipergunakan untuk
mengatur kembali bobot sampai pada tingkat kesalahan yang diharapkan.
Dalam pembelajaran unsupervised gugus data pelatihan hanya berisi vektor input.
Aturan pembobot (dm bias) dari jaringan syaraf tiruan dalam mengadaptasi respons
selanjutnya tergantung pada penurunan dan hubungan yang dideteksi dalam vektor
masukan, tanpa mempunyai beberapa indikasi apakah benar atau salah.
Reinforcement learning adalah gabungan antara pembelajaran supervised dan
unsupervised. Gugus data pelatihan terdiri dari input d m target output, tapi jaringan
syaraf tidak mempunyai indikasi pada output dari prosedur yang benar atau
salah,mengenai aturan pembobotan (dan bias) merupakan dasar (Patterson, 1996).
Pada kasus dimana terjadi integrasi antara kerangka kerja jaringan syaraf dengan
MKTP, metode pembelajaran yang digunakan adalah supervised dengan metode
pembelajaran propagasi balik gradien descent.
Metode Pembelajaran Grndien Descent
Metode pembelajaran gradien descent merupakan salah satu metode pembelajaran
Propagasi Balik yang digunakan dalam NNPLS. Metode gradien descent merupakan
metode pertarna dalam mengatur koefisien pembobotan sehingga mempunyai
pengurangan tercepat dari fbngsi galat. Algoritma pembelajaran propagasi balik gradien
descent diperkenalkan oleh Rummelhart dan McClelland pada tahun 1986.
Dalam pembelajaran propagasi balik gradien descent, fbngsi galat E(w) yang
diminimumkan adalah jumlah kuadrat kekeliruan antara aktual (target) dengan keluaran
ramalan (current), yang diberikan oleh persamaan berikut :
dimana :
P
= jumlah
dari pola pelatihan
EP
= hngsi
galat tiap pola ke-p
o
= jumlah
t ij
= keluaran yang diinginkan dari pola ke-i
Yij
= keluaran aktual (target)
rij
= galat
unit dalam lapisan keluaran
pada unit keluaran lapisan ke-j
dari pola ke-i pada unit lapisan keluaran ke-j
antara keluaran yang diiinginkan tij, dan keluaran aktual (target) yij
Fungsi galat yang digunakan adalah total jumlah kuadrat (m=l) dan satu keluaran (o = 1)
yaitu sebagai berikut :
dimana, R(t) adalah matriks pxl dalam ri.
Metode NNPLS ( Neural Network Partial Least Square)
Metode NNPLS merupakan suatu metode yang dapat mengatasi kolinieritas antar
peubah, pengamatan yang terbatas, dan kenonlinieran. Pendekatan metode NNPLS
menggunakan jaringan syaraf sebagai hubungan internal dalam persamaan berikut :
UI, =
N (6,)+ a
dimana N(.)merupakan model hubungan nonlinier yang dihasilkan oleh jaringan syaraf.
Hubungan eksternal tetap membentuk peubah skor dari data, kemudian
ul,
dan
tl,
digunakan untuk melatih model internal dengan menggunakan jaringan syaraf Pada
umumnya, hampir semua tipe jaringan syaraf yang membentuk pemetaan nonlinier dari
input sampai output dapat digabungkan dalam kerangka kerja NNPLS. Tipe dari jaringan
yang digunakan adalah tipe jaringan yang mempunyai satu lapisan tersembunyi sigmoidal
dan satu lapisan keluaran linier.
Algoritma NNPLS
Algoritma NNPLS dapat dirumuskan sebagai berikut :
1. Bakukan X dan Y, dengan Eo = X dan Fo = Y.
2. Untuk tiap-tiap faktor h, uh = yj.
/*Hu bungan elisfernal*/
3 . W; = u; Ebl /
4 Wh = Wh
u; uh
llwhll
5 . th = Eh-1 . Wh
6 . th = th IIthII
7. q; = t ; Fh-1 1 t ; th
qh = qh llqhll
9. Uh = Fh-1 qh
10. P;
= t;
Eh-11 t ; th
11. Ph = Ph 1
11~~11
/*Model internal */
Zih = N(t,) = a ( t h.w;, + eAh)wZh
+ ePZh,...
dimana:
- o,,dan ozhmerupakan vektor bobot untuk lapisan input dan lapisan output.
- p,, dan P,, merupakan bobot bias untuk lapisan input dan lapisan output.
- e adalah vektor satuan.
-
h adalah banyaknya unit lapisan tersembunyi untuk model network inner ke-h.
- a (.) adalah fbngsi sigmoid dengan persamaan berikut :
13. Jh = I1uh - Ghll
I* Hitung residu untukfaktor h *I
14. El, =Ehql-th
PL
15. Fh = Fh-l - uh qh
1
+
16. Jika h = h + 1, kembali pada tahap 2 sampai semua faktor utarna dihitung.
Penentuan banyaknya faktor h ditentukan dengan metode validasi silang.
Skema algoritma metode NNPLS (lihat Gambar 4) menunjukan data
ditransformasi menjadi peubah skor u dan t, kemudian jaringan syaraf tiruan digunakan
untuk menghasilkan output dari input vektor skor u dan t.
Komponen ke 1
Komponen ke 2
...
Gambar 4. Skema algoritma NNPLS
Komponen he a
Download