• Tidak ada hasil yang ditemukan

BAB II TINJAUAN PUSTAKA

2.2. Dasar Teori

2.2.6. Artificial Neural Network

Artificial Neural Network (ANN) merupakan sebuah sistem untuk pemrosesan informasi denganβ€œmeniru” cara kerja system saraf biologis. ANN terinspirasi dari sistem kerja saraf manusia yang disebut neuron (lihat Gambar 2.2).

Keterangan :

Dendrit : fasilitator yang menghubungkankan neuron dengan axon dari neuron lainnya.

Nukleus : inti sel pengolah informasi

Sinapsis : berfungsi sebagai persimpangan, dimana

impuls/informasi dapat megalir dari neuron satu ke yang lain.

Axon : penghubung yang mengirimkan sinyal keluaran neuron menuju neuron lainnya.

Gambar 2. 2. Struktur Sel Pada Saraf Manusia

Neural Network terdiri dari node atau unit yang terhubung dengan penghubung (link) dari unit i ke unit j yang berfungsi untuk menyebarkan aktivasi π‘Žπ‘– dari i ke j. Masing-masing penghubung (link) mempunyai nilai bobot tersendiri 𝑀𝑖𝑗. Seperti pada sebuah sinapsis, nilai bobot menentukan derajat pengaruh dari neuron ke neuron yang lainnya. Pengaruh dari neuron ke neuron lainnya merupakan hasil kali dari nilai keluaran neuron-neuron yang masuk ke neuron (π‘₯) dengan nilai bobot (𝑀) yang menghubungkan neuron-neuron tadi.

Tiap neuron dikombinasikan dengan sebuah fungsi aktivasi yang berfungsi sebagai penghubung dari penjumlahan semua nilai masukan dengan nilai keluarannya. Keluaran dari neuron inilah yang anntinya akan menentukan apakah neuron itu aktif atau tidak.

Karakteristik Permasalahan Neural Network :

- Instance direpresentasikan dalam pasangan attribute-value yang banyak

- Target output dapat bernilai diskrit, real, atau vector (diskrit/real)

17

- Penggunaan representasi simbolik, misalnya decision tree - Data training bias mengandung error

- Tidak ada batasan waktu pelatihan

- Dapat digunakan untuk peramalan jangka panjang

- Dibutuhkannya evaluasi yang cepat terhadap proses pembelajaran

- Tidak mementingkan kemampuan manuasi untuk mengerti proses pembelajaran

2.2.6.1. Multilayer Network

Single perceptron hanya dapat menyelesaikan permasalahan linear decision saja, namun untuk dapat menyelesaikan permasalahn non-linear decision digunakan metode multilayer nework dengan Algoritma Backpropagation Neural Network. Gambar 2.3 adalah gambar struktur dari arsitektur backpropagation.

Gambar 2. 3. Arsitektur Backpropagation

Pelatihan pada Backpropagation Neural Netwok: a. Feedfoward pola pelatihan input

- Setiap unit input (x1 ,… , xn) menerima sinyal dari luar unit dan melanjutkan sinyal tersebut pada setiap unit pada hidden layer (z1, … zp)

- Setiap unit pada hidden layer (z1, … zp) kemudian melakukan perhitungan berdasarkan pada fungsi aktifasi, dan melanjutkan sinyal tersebut pada setiap unit output (y1, … , yn)

- Setiap unit pada output layer (y1, … , ym) melakukan berhitungan berdasarkan fungsi aktifasi dan menghasilkan sinyal keluaran ANN berdasarkan pola input

b. Backpropagation untuk error

- Selama proses pelatihan setiap output unit (y1, … , ym) melakukan perbandingan antara sinyal keluaran ANN dengan sinyal yang seharusnya (target sinyal) untuk mendapatkan error pada unit tersebut.

- Setiap error pada output unit didistribusikan kembali kepada semua unit sebelumnya (hidden layer) untuk menghitung perubahan bobot masing-masing unit pada hidden layer terhadap output layer

- Dengan cara yang sama, error dihitung pada semua unit hidden layer

- Hasil perhitungan error pada hidden layer tidak perlu didistribusikan pada semua unit input layer, tetapi hanya digunakan untuk menghitung perubahan bobot masing-masing unit input layer pada hidden layer

c. Perubahan bobot

- Setelah semua error pada masing-masing unit (output dan hidden layer) diketahui, secara simultan dilakukan perubahan bobot pada masing-masing unit.

- Perubahan bobot antara unit hidden leyer ke output layer dihitung berdasar error pada unit output layer dan fungsi aktifasi pada unit hidden layer

19

- Perubahan bobot antara unit input leyer ke hidden layer dihitung berdasar error pada unit hidden layer dan fungsi aktifasi pada unit input layer

Dasar pemikiran Back-propagation yaitu Neural network membutuhkan data training besar dan lengkap termasuk variabel target yang outputnya diproses melalui node-node yang ada pada jaringan. Output akan dibandingkan dengan nilai actual, sehingga error yang terjadi dapat diprediksi dengan rumus pada nomor 17.

𝑆𝑆𝐸 = βˆ‘ βˆ‘ (π‘Žπ‘π‘‘π‘’π‘Žπ‘™ βˆ’ π‘œπ‘’π‘‘π‘π‘’π‘‘)2 π‘œπ‘’π‘‘π‘π‘’π‘‘ π‘›π‘œπ‘‘π‘’π‘ 

π‘Ÿπ‘’π‘π‘œπ‘Ÿπ‘‘

… … … (17)

Dimana error yang diperkirakan dijumlahkan dengan semua output dari node dan data training. Untuk itu diperlukan model pembobotan yang dapat meminimalkan error yang akan terjadi, karena model sigmoid pada neural network tidak dapat memperkirakan error jika data tersebut non-linear.

Untuk prinsip kerja yang digunakan yaitu dengan metode Gradient Descent. Metode Gradient Descent digunakan untuk mencari nilai setiap bobot yang berupa vektor, dimana bobot tersebut akan menurunkan error atau SSE pada neural network. Metode yang digunakan yaitu dengan membuat bobot baru dari penjumlahan bobot sekarang dengan selisih dari bobot sekarang (lihat rumus nomor 18).

𝑀𝑛𝑒𝑀 = π‘€π‘π‘’π‘Ÿπ‘Ÿπ‘’π‘›π‘‘+ βˆ†π‘€π‘π‘’π‘Ÿπ‘Ÿπ‘’π‘›π‘‘β€¦ … … (18) dimana βˆ†π‘€π‘π‘’π‘Ÿπ‘Ÿπ‘’π‘›π‘‘ merupakan perubahan dari 𝑀.

Jika bobot sekarang = 𝑀1𝐿maka harus menaikkan bobot 𝑀1𝐿 agar mendekati 𝑀1βˆ—, kemiringan kurva 𝑀1𝐿menjadi negatif. Namun jika bobot sekarang = 𝑀1𝑅maka harus menurunkan bobot untuk mendekati 𝑀1βˆ—, kemiringan kurva 𝑀1𝑅 menjadi positif. dari

kemiringan kurva tersebut akan membentuk πœ‚ (learning rate) yang nilainya antara 0 sampai 1 (lihat Gambar 2.4).

Backpropagation menggunakan prediksi error (actual-output) untuk mengurangi error dengan memberikan partitioned responsibility di berbagai koneksi dan menyesuaikan bobot tersebut menggunakan gradient descent. Rumus dari back-propagation dengan nomor 19, 20, dan 21.

Gambar 2. 4. Gradient Descent 𝑀𝑖𝑗,𝑛𝑒𝑀= 𝑀𝑖𝑗,π‘π‘’π‘Ÿπ‘Ÿπ‘’π‘›π‘‘+ βˆ†π‘€π‘–π‘—β€¦ … … (19) Dimana βˆ†π‘€π‘–π‘— = πœ‚π›Ώπ‘—π‘₯𝑖𝑗… … … (20) 𝛿𝑗= { π‘œπ‘’π‘‘π‘π‘’π‘‘π‘—(1 βˆ’ π‘œπ‘’π‘‘π‘π‘’π‘‘π‘—)(π‘Žπ‘π‘‘π‘’π‘Žπ‘™ π‘—βˆ’ π‘œπ‘’π‘‘π‘π‘’π‘‘π‘—) π‘œπ‘’π‘‘π‘π‘’π‘‘ π‘™π‘Žπ‘¦π‘’π‘Ÿ π‘œπ‘’π‘‘π‘π‘’π‘‘π‘—(1 βˆ’ π‘œπ‘’π‘‘π‘π‘’π‘‘π‘—) βˆ‘ π‘Šπ‘–π‘— π‘‘π‘œπ‘€π‘›π‘ π‘‘π‘Ÿπ‘’π‘Žπ‘š 𝛿𝑗 β„Žπ‘–π‘‘π‘‘π‘’π‘› π‘™π‘Žπ‘¦π‘’π‘Ÿ (21) Keterangan : π‘₯𝑖𝑗 = 𝑖𝑛𝑝𝑒𝑑 π‘‘π‘Žπ‘Ÿπ‘– π‘›π‘œπ‘‘π‘’ 𝑖 π‘ π‘Žπ‘šπ‘π‘Žπ‘– 𝑗 𝛿𝑗= π‘Ÿπ‘’π‘ π‘π‘œπ‘›π‘ π‘π‘–π‘™π‘–π‘‘ π‘’π‘Ÿπ‘Ÿπ‘œπ‘Ÿ π‘π‘Žπ‘‘π‘Ž π‘›π‘œπ‘‘π‘’ 𝑗

21

Algoritma backpropagation banyak digunakan untuk melakukan prediksi data baik data yang bersifat fluktuatif maupun data yang non-fluktuatif. Salah satu indikator yang dapat mempengaruhi hasil dari algoritma backpropagation adalah fungsi aktivasi yang bersifat terdeferensial yaitu fungsi aktivasi sigmoid.Terdapat beberapa fungsi aktifasi dalam Neural Network antara lain yaitu

a. Binary Sigmoid digunakan pada single layer network untuk mengubah masukan (net input) yang meruapakan variabel kontinu menjadi keluaran bernilai biner (0 atau 1). Dengan rumus pada nomor 22 (lihat Gambar 2.5).

𝑓1(π‘₯) = 1

(1 + exp(βˆ’π‘₯)… … … (22)

Gambar 2. 5. Binary Sigmoid

b. Bipolar sigmoid menggunakan nilai ambang (Threshold) atau fungsi Heaviside dimana nilai threshold menjadi garis pemisah antara daerah dengan respon aktivasi positif dan daerah dengan respon aktivasi negatif (lihat Gambar 2.6) namun hasilnya berupa nilai 1, 0, -1 (lihat rumus nomor 23) 𝑦 = { 1 π‘—π‘–π‘˜π‘Ž π‘₯ > 0 0 π‘—π‘–π‘˜π‘Ž π‘₯ = 0 βˆ’1 π‘—π‘–π‘˜π‘Ž π‘₯ < 0 … … … (23)

Dengan rumus pada nomor 24 dan 25. 𝑓2(π‘₯) = 2

1 + exp(βˆ’π‘₯)βˆ’ 1 … … … (24) tanh(π‘₯) =𝑒π‘₯βˆ’ π‘’βˆ’π‘₯

𝑒π‘₯+ π‘’βˆ’π‘₯… … … (25)

Gambar 2. 6. bipolar Sigmoid

c. Linear sigmoid memiliki nilai keluaran sama dengan nilai masukannya (lihat Gambar 2.7). Dengan rumus pada nomor 26.

𝑓(π‘₯) = π‘₯ … … … (26)

Gambar 2. 7. Linear Sigmoid

Proses pembelajaran atau learning dalam Backpropagation perlu adanya pemberhentian, kapan learning berhenti. Untuk itu terdapat beberapa cara pemberhentian pembelajaran neural network yaitu :

Dokumen terkait