4
BAB II
KAJIAN PUSTAKA
A. JARINGAN SYARAF TIRUAN
1. Definisi Jaringan Syaraf Tiruan
Jaringan syaraf tiruan (artificial neural network) adalah model
komputasi yang terinspirasi secara biologis, jaringan syaraf tiruan terdiri
dari beberapa elemen pengolahan (neuron) dan ada hubungan antara neu-
ron (Shanmuganathan, 2016). Jaringan syaraf tiruan dapat digambarkan
sebagai model matematis dan komputasi untuk fungsi aproksimasi non-
linear, klasifikasi data cluster dan regresi non-parametrik atau sebuah
simulasi dari korelasi model syaraf biologi.
Model jaringan syaraf ditunjukkan dengan kemampuan dalam
emulasi, analisis, prediksi, dan asosiasi. Kemampuan yang dimiliki jarin-
gan syaraf tiruan dapat digunakan untuk belajar dan menghasilkan aturan
atau operasi dari beberapa contoh atau input yang dimasukkan dan mem-
buat prediksi tentang kemungkinan output yang akan muncul atau me-
nyimpan karakteristik dari input yang disimpan kepada jaringan syaraf
tiruan.
Setiap pengolahan elemen membuat perhitungan berdasarkan pada
jumlah masukan (input). Sebuah kelompok pengolahan elemen disebut
layer atau lapisan dalam jaringan. Lapisan pertama adalah input dan yang
terakhir adalah output. Lapisan diantara lapisan input dan output disebut
dengan lapisan tersembunyi (hidden layer). Salah satu organisasi yang
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
5
dikenal dan sering digunakan dalam paradigma jaringan syaraf tiruan ada-
lah perambatan galat mundur / backpropagation (Hermawan, 2006).
Dalam menentukan jumlah neuron yang digunakan dalam lapisan
tersembunyi terdapat beberapa aturan atau metode yaitu jumlah neuron da-
lam lapisan tersembunyi baiknya diantara ukuran lapisan masukan dan
lapisan keluaran, jumlah neuron dalam lapisan tersembunyi sebaiknya 2/3
dari ukuran lapisan masukan di tambah ukuran lapisan keluaran, dan
jumlah neuron dalam lapisan tersembunyi sebaiknnya lebih kecil atau ku-
rang dari dua kali ukuran masukan (Heaton, 2008)
2. Arsitektur Jaringan Syaraf Tiruan
Jaringan syaraf tiruan dirancang dengan menggunakan suatu aturan
yang bersifat menyeluruh (general rule) dimana seluruh model jaringan
memiliki konsep dasar yang sama. Arsitektur sebuah jaringan akan menen-
tukan keberhasilan target yang akan dicapai karena tidak semua permasa-
lahan dapat diselesaikan dengan arsitektur yang sama. Berikut macam –
macam arsitektur jaringan syaraf tiruan :
a. Jaringan dengan Lapisan Tunggal (single layer net)
Jaringan dengan lapisan tunggal hanya memiliki satu lapisan
dengan bobot terhubung. Jaringan ini hanya menerima input kemudian
secara langsung akan mengolahnya menjadi output tanpa harus melalui
lapisan tersembunyi seperti pada Gambar 1.
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
6
Gambar 1. Jaringan Syaraf Tiruan dengan Lapisan Tunggal
b. Jaringan dengan Banyak Lapisan (multilayer net)
Jaringan dengan banyak lapisan memiliki satu atau lebih
lapisan yang terletak diantara lapisan input dan lapisan output seperti
terlihat pada Gambar 2. Umumnya terdapat lapisan bobot – bobot yang
terletak antara 2 lapisan yang bersebelahan. Jaringan dengan banyak
lapisan dapat menyelesaikan permasalahan yang lebih sulit dari pada
lapisan dengan tunggal, dengan pembelajaran yang lebih rumit.
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
7
Gambar 2. Jaringan Syaraf Tiruan dengan Banyak Lapisan
c. Jaringan dengan Lapisan Kompetitif (competitif layer net)
Hubungan antar neuron pada lapisan kompetitif ini tidak diper-
lihatkan pada diagram arsitektur. Gambar 3 menunjukkan salah satu
contoh arsitektur jaringan dengan lapisan kompetitif yang memiliki
bobot -ή.
Gambar 3. Jaringan Syaraf Tiruan dengan Kompetitif
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
8
3. Implementasi Jaringan Syaraf Tiruan
Beberapa hasil penelitian implemantasi jaringan syaraf tiruan dian-
taranya adalah :
a. Mustafidah, dkk. (2013a), menerapkan jaringan syaraf tiruan untuk
memprediksi tingkat validitas soal dengan menggunakan algoritma
pelatihan trainlm dan menghasilkan pengenalan pola data dengan
memiliki kecocokan sebesar 85.54% dengan tingkat error 0.00063347.
b. Menerapkan jaringan syaraf tiruan untuk prediksi prestasi belajar ma-
hasiswa Program Studi Teknik Informatika Universitas Muhammadi-
yah Purwokerto didasarkan atas nilai-nilai dalam mata pelajaran yang
diujikan dalam Ujian Nasional saat di SLTA. Dalam penelitian ini dil-
akukan pembandingan tingkat keoptimalan dari algoritma pelatihan
traingd, traingdm, learngd, dan learngdm. Dengan rata-rata masing-
masing algoritma yaitu learngd : 0.0215, learngdam: 0.0163, traingd :
0.0211, dan traingdm : 0.0267 (Mustafidah, dkk, 2013b).
B. ALGORITMA PEMBELAJARAN BACKPROPAGATION
Menurut Kusumadewi (2003), Backpropagation merupakan algoritma
pembelajaran yang terawasi dan biasanya digunakan oleh perceptron dengan
banyak lapisan untuk mengubah bobot – bobot yang terhubung dengan neuron
– neuron yang ada pada lapisan tersembunyi. Algoritma backpropagation
menggunakan error output untuk mengubah nilai bobot – bobotnya dalam
arah mundur (backward). Untuk mendapatkan error ini, tahap perambatan
maju (forward propagation) harus dikerjakan terlebih dahulu. Pada saat per-
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
9
ambatan maju, neuron – neuron diaktifkan dengan menggunakan fungsi akti-
fasi yang dapat dideferensikan seperti sigmoid, persamaan dan perhitungan –
perhitungan pada persamaan (1), (2), (3) :
( )
........................................................................................ (1)
dengan : ( ) ( ) ( )
atau tangen sigmoid :
( )
atau ( )
.............................................................................. (2)
dengan ( ) ( ) ( )
atau purelin : ( )
( ) ........................................................................................................ (3)
Arsitektur jaringan backpropagation seperti terlihat pada Gambar 4,
pada jaringan backpropagation terdiri dari 3 unit (neuron) pada lapisan input,
yaitu X1, X2, dan X3 ; 1 lapisan tersembunyi dengan 2 neuron, yaitu Z1 dan
Z2; serta 1 unit pada lapisan tersembunyi, adalah Y. Untuk b1 dan b1 adalah
bobot bias yang menuju ke neuron pertama dan kedua pada lapisan
tersembunyi. Bobot yang menghubungkan Z1 dan Z2 dengan neuron pada
lapisan output, adalah W1 dan W2. Bobot bias menghubungkan lapisan
tersembunyi dengan lapisan output. Fungsi aktivasi yang digunakan antara
lapisan input dan lapisan tersembunyi adalah fungsi aktivasi tansig dan antara
lapisan tersembunyi dengan lapisan output adalah fungsi aktivasi purelin (tid-
ak diperlihatkan pada gambar).
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
10
Gambar 4. Arsitektur Jaringan Backpropagation
Berikut adalah algoritma backpropagation :
Menginisialisasi bobot (ambil bobot awal dengan nilai random yang cukup
kecil).
Mengerjakan langkah – langkah berikut selama kondisi berhenti bernilai
FALSE.
Langkah – langkahnya seperti berikut :
1. Untuk tiap pasangan elemen yang akan dilakukan :
Feedforward :
a. Tiap – tiap unit input (Xi, i = 1,2,3,…,n) menerima sinyal dan
meneruskan sinyal tersebut kesemua unit pada lapisan yang ada diat-
asnya (lapisan tersembunyi).
b. Tiap – tiap unit tersembunyi (Zj, j = 1,2,3,…,p) menjumlahkan sinyal –
sinyal input terbobot pada persamaan (4).
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
11
∑
.................................................................. (4)
Kemudian gunakan fungsi aktivasi untuk menghitung sinyal
output pada persamaan (5).
( ) .................................................................................... (5)
Dan mengirimkan sinyal tersebut kesemua unit di lapisan
atasnya (unit – unit output).
c. Tiap – tiap unit output (Yk, k = 1,2,3,…,m) menjumlahkan sinyal –
sinyal input terbobot pada persamaan (6).
∑
................................................................ (6)
Gunakan fungsi aktivasi untuk menghitung sinyal output pada
persamaan (7).
( ) .................................................................................... (7)
Dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya
(unit – unit output).
Backpropagation:
d. Tiap – tiap unit output (Yk, k = 1,2,3,…,m) menerima target pola yang
berhubungan dengan pola input pembelajaran, menghitung informasi
error pada persamaan (8).
( ) ( ) .................................................................... (8)
Kemudian dihitung koreksi bobot (yang nantinya akan
digunakan untuk memperbaiki nilai ) pada persamaan (9).
................................................................................ (9)
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
12
Selain itu hitung juga koreksi bias (yang nantinya akan
digunakan untuk memperbaiki nilai awal ) pada persamaan (10).
.................................................................................. (10)
Mengirim ini ke unit – unit yang ada pada lapisan bawahnya.
e. Tiap – tiap unit tersembunyi (Zj, j = 1,2,3,…,p) menjumlahkan delta
input (dari unit – unit yang berada pada lapisan atasnya) pada persa-
maan (11).
∑
...................................................................... (11)
Mengalikan nilai tersebut dengan turunan dari fungsi aktiva-
sinya untuk menghitung informasi error pada persamaan (12).
( ) ....................................................................... (12)
Kemudian menghitung koreksi bobot (yang nantinya akan
digunakan untuk memperbaiki nilai ) pada persamaan (13).
............................................................................... (13)
Selain itu hitung juga koreksi bias (yang nantinya akan
digunakan untuk memperbaiki nilai ) pada persamaan (14).
................................................................................... (14)
f. Tiap – tiap unit output (Yk, k = 1,2,3,…,p) memperbaiki bias dan bo-
botnya (j = 0,1,2,…,p) pada persamaan (15).
( ) ( ) ............................................... (15)
Tiap – tiap unit tersembunyi (Zj, j = 1,2,3,…,p) memperbaiki bi-
as dan bobotnya (i = 0,1,2,3,…,n) pada persamaan (16).
( ) ( ) .................................................. (16)
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
13
Jaringan backpropagation telah dikembangkan oleh Mustafidah,
dkk. (2014), yaitu menguji dengan menggunakan 12 algoritma backpropa-
gation diantaranya adalah algoritma Fletcher-Reeves Update, Polak-
Ribiere, Powell-Beale Restarts, Scaled Conjugate Gradient, Gradient
Descent dengan Momentum dan Adaptive Learning Rate, Resilent
Backpropagation, BFGS, One Step Secant, Levenberg-Marquardt, dari 12
algoritma pelatihan dipilih algoritma yang paling optimal berdasarkan pola
data uji validitas.
Penelitian selanjutnya dikembangkan oleh Mustafidah & Suwarsito
(2015b), yaitu menguji dengan 12 algoritma dan dipilih algoritma yang
paling optimal berdasarkan error yang dihasilkan. Berdasarkan penelitian
keduanya algoritma pelatihan yang paling optimal adalah algoritma pelati-
han trainlm.
Salah satu contoh implementasi dari algoritma pembelajaran back-
propagation yang diambil dari penelitian Febrianto & Mustafidah (2013),
yaitu untuk mengetahui tingkat kualifikasi calon siswa pada sistem infor-
masi penerimaan siswa baru di Madrasah Aliyah Negeri 2 Banjarnegara
sehingga pihak sekolah dapat mengambil tindakan terhadap calon siswa
dengan kualifikasi yang tinggi dan rendah, percobaan tersebut
menggunakan beberapa parameter diantaranya dengan menggunakan epoh
10000, target error 0.001 dan learning rate antara 0.3 sampai 0.8
menghasilkan MSE lebih kecil dari target error yang berkisar 0.0009.
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
14
C. ALGORITMA LEVENBREG-MARQUARDT
Berdasarkan penelitian yang telah dilakukan oleh Mustafidah &
Harjono (2017), jaringan syaraf tiruan khususnya metode backpropogation
banyak digunakan untuk memecahkan masalah. Dan pada penelitian tersebut
telah di uji bahwa algoritma yang paling optimal adalah algoritma Levenberg-
Marquardt.
Algoritna Levenberg-Marquardt dirancang menggunakan pendekatan
turunan kedua tanpa harus menghitung matriks Hessian. Apabila jaringan
saraf feedforward menggunakan fungsi kinerja sum of square, maka matriks
Hessian dapat didekati sebagai berikut pada persamaan (17).
H = J’ * J ........................................................................................ (17)
dan gradien dapat dihitung sebagai berikut pada persamaan (18).
Gw = J’ * e ..................................................................................... (18)
dimana J adalah matriks Jacobian yang berisi turunan pertama dari error
jaringan terhadap bobot, dan e adalah suatu vektor yang berisi error jaringan.
Matriks Jacobian dapat dihitung dengan teknik backpropagation standar,
yang lebih sederhana dibandingkan dengan matriks Hessian.
Algoritma Levenberg-Marquardt menggunakan pendekatan untuk
menghitung matriks Hessian, melalui perbaikan metode Newton pada persa-
maan (19).
Wk+1 = Wk – [J’ * J + m * 1] -1 *J’ * e ....................................... (19)
Apabila m bernilai 0, maka pendekatan ini akan sama dengan metode
Newton. Akan tetapi jika m terlalu besar, maka pendekatan ini sama dengan
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
15
gradient descent dengan learning rate yang sangat kecil. Metode Newton san-
gan cepat dan akurat untuk mendapatkan error minimum, oleh karena itu di-
harapkan algoritma sesegera mungkin dapat mengubah nilai m menjadi 0
(Kusumadewi, 2004).
D. MEAN SQUARED ERROR (MSE)
Mean Squared Error atau disingkat dengan MSE adalah metode yang
menghasilkan kesalahan – kesalahan yang kemungkinan lebih baik untuk
kesalahan kecil, tetapi terkadang menghasilkan perbedaan besar. Nilai MSE
dapat dianalogikan sebagai varian ditambah dengan kuadrat bias dari suatu
model. Dimana adalah model yang dievaluasi dan adalah model
sebenarnya. Jika tidak ada bias antara model yang dibangun dengan model
sebenarnya (unbiased model), maka MSE sepadan dengan varian dari model.
Semakin kecil varian suatu model, semakin robust model tersebut dalam
melakukan peramalan (Lehmann, E. L. & Casella, 1998).
Perhitungan kesalahan atau error merupakan pengukuran bagaimana
jaringan dapat belajar dengan baik sehingga jika dibandingkan dengan pola
yang baru akan dengan mudah dikenali. Kesalahan pada keluaran jaringan
merupakan selisih antara keluaran sebenarnya (current output) dan keluaran
yang diinginkan (desired output). Selisih yang dihasilkan antara keduanya
ditemukan dengan cara dihitung menggunakan suatu persamaan. Suatu error
dapat dihitung dengan MSE (Mean Squared Error). MSE merupakan fungsi
kinerja jaringan yang mengukur kinerja berdasarkan rata-rata dari kuadrat er-
ror. (Kusumadewi, 2004).
Persamaan yang digunakan adalah, seperti pada persamaan (20).
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
16
∑ ∑ ( )
........................................................................... (20)
= nilai keluaran jaringan syaraf
= nilai target yang diinginkan untuk setiap keluaran
= jumlah seluruh pola
= jumlah keluaran
E. MATLAB
Matlab (Matrix Laboratory) merupakan salah satu bahasa pemograman
yang dikembangkan oleh MathWorks.Inc. Matlab tidak hanya berfungsi se-
bagai bahasa pemograman, tetapi sekaligus sebagai alat visualisasi, yang
berhubungan langsung dengan ilmu matematika. Oleh karena itu, matlab se-
makin banyak digunakan oleh para programer yang menghendaki kepraktisan
dalam membuat program (Paulus & Nataliani, 2007).
Perangkat lunak ini menawarkan kemudahan dan kesederhanaan dalam
menyelesaikan permasalahan yang berhubungan dengan vektor dan matriks.
Memperoleh inversi dan menyelesaikan persamaan linier merupakan contoh
permasalahan yang dapat dipecahkan dengan cara yang sangat singkat dan
mudah sekali. Untuk menangani persoalan – persoalan spesifik, matlab me-
nyediakan sejumlah toolbox yang bisa dipakai untuk mempermudah perhi-
tungan, misalnya toolbox neural network yang bisa dipakai untuk fungsi –
fungsi yang berkaitan dengan jaringan syaraf tiruan (Irawan, 2012).
Matlab menyediakan berbagai variasi pelatihan Backpropagation yaitu
pelatihan kelompok dan pelatihan backpropagation (Siang, 2005). Dalam
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
17
pelatihan Backpropagation dapat menggunakan perintah train ada beberapa
parameter pelatihan yang dapat digunakan diantaranya yaitu:
1. net.trainParam.show : dipakai untuk menampilkan frekuensi pe-
rubahan MSE (default : setiap 25 epoh).
2. net.trainParam.epochs : dipakai untuk menentukan jumlah epoh
maksimum pelatihan (default : 100 epoh).
3. net.trainParam.goal : dipakai untuk menentukan batas nilai MSE
agar iterasi dihentikan. Iterasi akan berhenti jika MSE < batas yang diten-
tukan dalam net.trainParam.goal atau jumlah epoh mencapai batas
yang ditentukan dalam net.trainParam.epochs.
4. net.trainParam.lr : dipakai untuk menentukan laju pemahaman (α
= learning rate). Default = 0.01. Semakin besar nilai α , semakin cepat
pula proses pelatihan. Akan tetapi jika α terlalu besar, maka algoritma
menjadi tidak stabil dan mencapai titik minimum lokal.
5. net.trainParam.time : dipakai untuk membatasi lama pelatihan
(dalam detik). Pelatihan akan dihentikan jika lamanya melebihi nilai yang
ditentukan dari net.trainParam.time.
F. SPSS
Santoso dalam Taniredja & Mustafidah (2011), menyatakan bahwa
SPSS singkatan dari Statistical Package For Social Science yaitu merupakan
paket statistika untuk ilmu – ilmu sosial, akan tetapi SPSS banyak juga
digunakan untuk bidang – bidang lain yang memang membutuhkan statistika.
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018
18
Sejak dikeluarkannya SPSS dengan versi under DOS sampai sekarang dengan
versi under Windows, sudah dikembangkan SPSS sampai generasi atau re-
lease 17 yang paling baru dengan penambahan fasilitas yang makin lengkap
seperti grafik pengendali untuk Quality control dan penambahan fasilitas un-
tuk link S-Plus yaitu Package Statistika terbaru yang sangat cocok untuk
tujuan ilmiah dan pengembangannya, tidak hanya pengolahan data semata.
SPSS berfungsi untuk membantu memproses data – data statistik secara cepat
dan tepat, serta menghasilkan berbagai output yang dikehendaki oleh para
pengambil keputusan. Statistik dapat diartikan sebagai suatu kegiatan yang
bertujuan untuk mengumpulkan data, meringkas atau menyajikan data
kemudian menganalisis data dengan menggunakan metode tertentu, dan
menginterpretasikan hasil dari analisa tersebut.
G. ANAVA
ANAVA atau disebut juga ANOVA (Analysis of Variancce) merupa-
kan perluasan dari uji rata – rata k sampel, dengan k > 2.
H0: VS H1: minimal 2 mean tidak sama.
dimana MST = Mean Square of Treatment
MSE = Mean Square of Error
Pada ANAVA jika H0 ditolak maka masih mempunyai pekerjaan untuk
menentukan mean – mean mana saja yang berbeda. Untuk itu perlu dilakukan
MCA (Multiple Comparison Analysis) atau Analisis Pembandingan Ganda
(Taniredja & Mustafidah, 2011).
Optimalisasi Jaringan Backpropagation…, Amrisa Yanri Rahmadhani, Fakultas Teknik Dan Sains UMP, 2018