BAB II KAJIAN PUSTAKA A. JARINGAN SYARAF TIRUAN 1. Definisi Jaringan Syaraf Tiruan - PENENTUAN JUMLAH NEURON DALAM LAPISAN TERSEMBUNYI PADA JARINGAN SYARAF TIRUAN - repository perpustakaan

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. Kemapuan yang dimiliki jaringan syaraf tiruan dapat digunakan untuk belajar dan menghasilkan aturan atau operasi dari beberapa contoh atau input yang dimasukkan dan membuat prediksi tentang kemungkinan output yang akan muncul atau menyimpan 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 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 sebaikmnya 2/3 dari ukuran lapisan masukan di tambah ukuran lapisan keluaran, dan jumlah neuron dalam lapisan tersembunyi sebaiknnya lebih kecil (kurang 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.

  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.
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

  1. 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

  Berdasarkan penelitian yang telah dilakukan oleh Mustafidah & Suwarsito (2015), pada backpropogation terdapat 12 algoritma pelatihan yang digunakan diantaranya yaitu 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. Diatara 12 algoritma pelatihan tentnya perlu dipilih algoritma yang paling optimal sehingga diperoleh hasil yang terbaik, dalam penelitian tersebut dilakukan pengujian terhadap algoritma pelatihan yang terdapat dalam jaringan backpropogation sejumlah 12 algoritma. Algoritma pelatihan ditinjau dari error yang dihasilkan.

  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 backpropogation 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 perambatan maju, neuron-neuron diaktifkan dengan menggunakan fungsi aktifasi 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 V1, V2, dan V3. 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, dan antara lapisan tersembunyi dengan lapisan output adalah fungsi aktivasi sigmoid biner (tidak diperlihatkan pada gambar).

  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 :

  a. Untuk tiap pasangan elemen yang akan dilakukan:

  Feedforward :

  1. Tiap dan mene-

  • – tiap unit input (Xi, i=1,2,3,…,n) menerima sinyal ruskan sinyal tersebut kesemua unit pada lapisan yang ada diatasnya (lapisan tersembunyi).

  2. Tiap

  • – tiap unit tersembunyi (Zj, j=1,2,3,…,p) menjumlahkan sinyal – sinyal input terbobot pada persamaan 4.

  ...................................................... (4) ∑

  Kemudian gunakan fungsi aktivasi untuk menghitung sinyal output pa- da persamaan 5.

  ( ) ......................................................................... (5) Dan mengirimkan sinyal tersebut kesemua unit di lapisan atasnya (unit – unit output).

  3. 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 persa- maan 7.

  ( ) ....................................................................................... (7)

  • – Dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit unit output).

  4. 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 pada persamaan 9.

  ................................................................................... (9) Selain itu hitung juga koreksi bias (yang nantinya akan digunakan un- tuk memperbaiki nilai awal ) pada persamaan 10.

  ..................................................................................... (10) Mengirim ini ke unit – unit yang ada pada lapisan bawahnya.

  5. Tiap

  • – tiap unit tersembunyi (Zj, j=1,2,3,…,p) menjumlahkan delta input pada persamaan 11.

  .......................................................................... (11) ∑

  Mengalikan nilai tersebut dengan turunan dari fungsi aktivasinya 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 un- tuk memperbaiki nilai ) pada persamaan 14.

  ...................................................................................... (14)

  6. Tiap

  • – tiap unit otput (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 bias dan bobotnya (i=0,1 ,2,3,…,n) pada persamaan 16.

  ..................................................... (16) ( ) ( ) C.

ALGORITMA LEVENBERG-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 seperti pada persamaan 17.

  H = J’ * J ...................................................................................................... (17) dan gradien dapat dihitung seperti 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 persamaan 19.

  • 1

  W k+1 = W k

  • – [J’ * J + m * 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

gradient descent dengan learning rate yang sangat kecil. Metode Newton

  sangan cepat dan akurat untuk mendapatkan error minimum, oleh karena itu diharapkan algoritma sesegera mungkin dapat mengubah nilai m menjadi 0 (Kusumadewi, 2004).

  D. (MSE) MEAN SQUARED ERROR Mean Squared Error atau disingkat dengan MSE adalah metode yang

  menghasilkan kesalahan

  • – kesalahan yang kemungkinan lebih baik untuk kesalahan kecil, tetapi terkadang mengahasilkan 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 & 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.

  ∑ ∑ ( )

  ................................................................................. (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 produk perangkat lunak matematik dari MathWorks.Inc., dan R (R:A Language and Environ-

  

ment for Statistical Computing ) matlab merupakan produk perangkat lunak

  bebas. Matlab digunakan untuk melakukan analisis statistik, memberikan kebebasan untuk pengguna menerapkan algoritma tertentu dan melakukan operasi yang disesuaikan dengan kebutuhan secara kompleks (Marques de Sá, 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 pelatihan backpropagation dapat menggunakan perintah train ada beberapa parameter pelatihan yang dapat digunakan diantaranya yaitu: a. net.trainParam.show : dipakai untuk menampilkan frekuensi peru- bahan mse (default : setiap 25 epoch) b. net.trainParam.epochs : dipakai untuk menentukan jumlah epoch maksimum pelatihan (default : 100 epoch).

  c. 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 epoch mencapai ba- tas yang ditentukan dalam net.trainParam.epochs d. net.trainParam.lr

  : dipakai untuk menentukan laju pemahaman (α = learning rate). Defaultnya = 0.01. Semakin besar nilai α , semakin cepat pula pros es pelatihan. Akan tetapi jika α terlalu besar, maka algoritma menjadi tidak stabil dan mencapai titik minimum lokal.

  e. 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.

  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) merupakan perluasan dari uji rata

  • – rata k sampel, dengan k > 2.
    • Ho: VS H1: minimal 2 mean tidak sama.
    • Dimana MST = Mean Square of Treatment

  MSE = Mean Square of Error Pada anava jika Ho ditolak maka kita masih mempunyai pekerjaan un- tuk menentukan mean

  • – mean mana saja yang berbeda. Untuk itu perlu dil-

  akukan MCA (Multiple Comparison Analysis) atau Analisis Pembandingan Ganda (Taniredja & Mustafidah, 2011).