ski 2010 uajy - jaringan_syaraf_tiruan
Post on 30-May-2018
221 views
Embed Size (px)
TRANSCRIPT
8/14/2019 SKI 2010 UAJY - Jaringan_Syaraf_Tiruan
1/15
INTEGRAL,Vol. 9 No. 3, November 2004
JARINGAN SARAF TIRUAN PROPAGASI BALIK
UNTUK KLASIFIKASI DATAGiri Dhaneswara1) dan Veronica S. Moertini2)
Jurusan Ilmu Komputer, Universitas Katolik Parahyangan, Bandung
Email: 1)[email protected], 2)[email protected]
IntisariData yang tersimpan di basisdata dapat dianalisis dengan teknik klasifikasi
data jaringan saraf tiruan (JST) propagasi balik dan dimanfaatkan untuk
mengambil keputusan. Makalah ini akan membahas JST ini, analisis-
perancangan-implementasi dari JST ini, eksperimen-eksperimen untuk
mendapatkan konfigurasi JST yang terbaik dan penggunaannya untuk
mengklasifikasi data aplikasi kredit di sebuah bank.
Kata kunci: propagasi balik, jaringan saraf tiruan, klasifikasi data
AbstractData strored in databases could be analized using a classification technique
of back-propagation neural networks (BP NN) and utilized in supporting
decission making processes. This paper discusses BP NN, the experiments
conducted to discover the best configuration of the NN and its use in
classifying banking credit application data.
Keywords: backpropagation, neural network, data classification
Diterima : 6 Agustus 2004
Disetujui untuk dipublikasikan : 18 Agustus 2004
1. PendahuluanBanyak data yang tersimpan di
basisdata yang dapat dianalisis dan
dimanfaatkan untuk membantu proses
pengambilan keputusan. Misalnya: (a)
Untuk menentukan apakah sebuah
aplikasi kredit di bank akan diterimaatau tidak. (b) Untuk memilih jenis
servis asuransi yang paling sesuai
untuk seorang kustomer. (c) Di
lingkungan perguruan tinggi: untuk
memprediksi calon mahasiswa apakah
kelak akan berprestasi atau drop-out.
Salah satu teknik yang digunakan
untuk menganalisis data untuk keperluan ini
adalah teknik klasifikasi data.
Klasifikasi data terdiri dari dua langkah yang
utama, yaitu: (1) Pembangunan model dari
set data pelatihan. Pada jaringan saraf tiruan
(JST), ini dilakukan dengan pembentukan jaringan dan penghitungan nilai-nilai
parameter jaringan (bobot, bias, dll.,). (2)
Penggunaan model untuk mengklasifikasi
data baru. Di sini, sebuah rekord
diumpankan ke model, dan model akan
memberikan jawaban kelas hasil
perhitungannya.
117
mailto:[email protected]:[email protected]8/14/2019 SKI 2010 UAJY - Jaringan_Syaraf_Tiruan
2/15
INTEGRAL,Vol. 9 No. 3, November 2004
Makalah ini akan membahas JST
propagasi balik(backpropagation),analisis-perancangan-implementasi
sistem JST ini, eksperimen-eksperimen
untuk mendapatkan konfigurasi JST
yang terbaik dan penggunaannya untuk
mengklasifikasi data aplikasi kredit
bank, serta kesimpulan dan arah
penelitian lanjutan.
2. Jaringan Saraf Tiruan (JST)
Propagasi Balik
JST propagasi balik adalah JST dengan
topologi multi-lapis (multilayer) dengan satu
lapis masukan (lapisX), satu atau lebih lapis
hidden atau tersembunyi (lapis Z) dan satu
lapis keluaran (lapis Y). Setiap lapis memiliki
neuron-neuron (unit-unit) yang dimodelkan
dengan lingkaran (lihat Gambar 1). Di antara
neuron pada satu lapis dengan neuron pada
lapis berikutnya dihubungkan dengan model
koneksi yang memiliki bobot-bobot
(weights), w dan v. Lapis tersembunyi dapat
memiliki bias, yang memiliki bobot sama
dengan satu [1].
Gambar 1. Jaringan saraf propagasi balikdengan satu lapis tersembunyi.
2.1. Algoritma Pelatihan JST
Propagasi balikAlgoritma pelatihan JST Propagasi
balik pada dasarnya terbagi menjadi 2
langkah, yaitu: langkah maju
(feedforward)) dan propagasi balik(back propagation). Pada langkah
maju, perhitungan bobot-bobot neuron
hanya didasarkan pada vektor
masukan, sedangkan pada propagasi
balik, bobot-bobot diperhalus dengan
memperhitungkan nilai target atau
keluaran. Algoritma pelatihan maju dan
propagasi balik ini ditunjukkan pada
Algoritma 1 [1].
Nilai mean square error (MSE) pada satu
siklus pelatihan (langkah 2 10, dimanaseluruh rekord dipresentasikan satu kali)
adalah nilai kesalahan (error = nilai keluaran
- nilai masukan) rata-rata dari seluruh rekord
(tupple) yang dipresentasikan ke JST dan
dirumuskan sebagai:
118
8/14/2019 SKI 2010 UAJY - Jaringan_Syaraf_Tiruan
3/15
INTEGRAL,Vol. 9 No. 3, November 2004
MSE = (rekordjumlah
error2
)
Semakin kecil MSE, JST semakin kecilkesalahannya dalam memprediksi
kelas dari rekord yang baru. Maka,
pelatihan JST ditujukan untuk
memperkecil MSE dari satu siklus kesiklus berikutnya sampai selisih nilai
MSE pada siklus ini dengan siklus
sebelumnya lebih kecil atau sama
dengan batas minimal yang diberikan
(epsilon).
2.2. Pengembangan Algoritma
Pelatihan dengan MenggunakanMomentum
Salah satu pengembangan algoritma
pelatihan propagasi balik dilakukan
dengan penggunaan momentum pada
perhitungan perubahan bobot-bobot. Tujuan
dari pengembangan ini adalah untuk
melancarkan pelatihan dan mencegah agar bobot tidak berhenti di sebuah nilai yang
belum optimal. Perubahan bobot pada
Algoritma 1 diubah menjadi [1]:
)()1( twztw jkjkjk +=+ dan
)()1( tvxtv ijijij +=+ , dimana
merupakan konstanta dari momentum
dengan rentang [0,1].
2.3. Klasifikasi Data
Setelah pelatihan selesai dilakukan, maka
model JST siap digunakan untukmengklasifikasi rekord baru. Klasifikasi ini
cukup dilakukan langkah feedforward dan
hasilnya adalah berupa kelas yang diprediksi
JST untuk rekord yang baru ini.
119
8/14/2019 SKI 2010 UAJY - Jaringan_Syaraf_Tiruan
4/15
INTEGRAL,Vol. 9 No. 3, November 2004
Algoritma 1. Algoritma pelatihan pada JST Propagasi balik.
Narasi: Melatih JSTdengan data pelatihan (berupa vektor atau rekord-rekord tabel)yang diberikan sampaibobot-bobot tidak berubah lagi (atau dicapai kondisi konvergen).
Input: Set data pelatihan , jumlah lapis, jumlah neuron, learning rate, epsilon
Output: Model JSTyang siap untuk mengklasifikasi data (vektor) baru.Algoritma:(1) Menginisialisasi bobot awal dengan nilai acak yang sangat kecil, hitung MSE dan MSE inisialisasi.(2) Selama MSE > epsilon lakukan:(3) Untuk setiap tupple pada set data pelatihan lakukan
Feedforward:
(4)Setiap unit masukan (Xi, i=1..n) menerima vektor masukan Xi dan mengirimkan vektor ini keseluruh unit pada lapisdiatasnya (hidden layer).
(5)Setiap unit hidden (Zj, j=1..p) menjumlahkan bobot dari vektor masukan:
Hitung keluaran fungsi aktivasi:=
+=n
i
ijijj vxvinz1
0_ )_( jj inzfz =
Kirimkan vektor ini ke unit-unit pada lapis diatasnya (lapis keluaran)(6)Setiap unit keluaran (Yk, k=1..m) menjumlahkan vektor masukan:.
=
+=
p
j
jkjkk wzwiny1
0_
Hitung keluaran dari fungsi aktivasi: )_( kk inyfy = Propagasi balik dari error:
(7)Setiap unit keluaran(Yk, k=1..m) menerima vektor hasil yang diinginkan (tk) untuk data masukan
tersebut, hitung error-nya ( :)kk yt )_(')( kkkk inyfyt =
Hitung nilai koreksi bobotnya dengan sebagai learning ratenya: jkjk zw =
Hitung nilai koreksi biasnya: kkw = 0Kirimkan kke unit pada lapis dibawahnya.(8)Setiap unit hidden (Zj, j=1..p) menjumlahkan delta masukannya (dari unit-unit pada lapisdiatasnya):
=
=m
k
jkkj win1
_
Kalikan dengan turunan dari fungsi aktivasinya untuk menghitung errornya:
)_('_ jjj inzfin = Hitung nilai koreksi bobotnya: ijij xv = Hitung nilai
koreksi biasnya: jjv = 0 Perbaharui bobot danbias:
(9)Setiap unit keluaran (Yk, k=1..m) memperbaharui bias dan bobotnya (j=0..p).
jkjkjk woldwneww += )()( Setiap unit tersembunyi (Zj, j=1..p) memperbaharui bias dan bobotnya (i=0..n).
ijijij voldvnewv += )()( MSEold = MSE. Hitung MSE, MSE = MSE MSEold.
(10) Uji kondisi berhentinya
120
8/14/2019 SKI 2010 UAJY - Jaringan_Syaraf_Tiruan
5/15
INTEGRAL,Vol. 9 No. 3, November 2004
Keterangan Notasi untuk Algoritma 1: x = vektor masukan = ,),...,,...,( 1 ni xxx
t = vektor keluaran= .),...,,...,( 1 mk ttt k = nilai koreksi bobot erroruntuk jkwyang disebabkan oleh errorpada unit keluaran .kY j = nilai koreksi bobot erroruntuk
yang disebabkan oleh informasi propagasi balik dari errorpada lapis keluaran ke unit
tersembunyi .
ijv
jZ = konstanta laju pembelajaran (learning rate). =unit masukan i. =
bias pada unit tersembunyi j. =unit tersembunyi j. =bias pada unit keluaran k. =
unit keluaran k. Fungsi aktivasi yang dapat digunakan pada propagasi balik antara lain
adalah: Binary sigmoid:
iX jv0
jZ kw0 kY
xexf
+
=1
1)( , arc tangen: )arctan(
2)( xxf
= , radial
basis:x
exf =)( .
3. Analisis, Perancangan dan
Implementasi JST Propagasi
Balik
3.1. Analisis Sistem JST
Sistem JST Propagasi balik yang
dibangun dimaksudkan untuk
mengklasifikasi data (apa saja) yang
tersimpan di tabel-tabel basisdata.
Agar sistem ini berfungsi dan
berperformansi dengan baik, ada
beberapa isu dan solusi yang perludipertimbangkan yang terkait dengan
set data pelatihan dan performansi
sistem.
a. Set Data PelatihanIsu: (a) Bebas. (b) Jumlah, tipe kolom
tabel, dan jumlah kelas pada kolom