2.2 Jaringan Syaraf Tiruan
Jaringan syaraf tiruan atau disebut juga dengan neural network NN adalah jaringan dari sekelompok unit pemroses kecil yang dimodelkan berdasarkan jaringan saraf
manusia. Siang 2005 menjelaskan bahwa sejarah jaringan syaraf tiruan pertama kali diperkenalkan oleh McCulloch dan Pitts pada tahun 1943. McCulloch dan Pitts
menyimpulkan bahwa kombinasi beberapa neuron sederhana menjadi sebuah system neural
akan meningkatkan kemampuan komputasinya. Bobot jaringan yang diusulkan oleh McCulloch dan Pitts diatur untuk melakukan fungsi logika sederhana. Fungsi
aktivasi yang dipakai adalah fungsi threshold. Selanjutnya pada tahun 1958, Rosenbalt memperkenalkan dan mulai
mengembangkan model jaringan baru yang terdiri dari beberapa lapisan yang disebut dengan perceptron. Metode pelatihan diperkenalkan untuk mangoptimalkan hasil
iterasinya. Kemudian Widrow dan Hoff 1960 mengembangkan perceptron dengan memperkenalkan aturan pelatihan jaringan, yang dikenal sebagai aturan delta atau
sering disebut kuadrat rata-rata terkecil aturan ini mengubah bobot perceptron apabila keluaran yang dihasilkan tidak sesuai dengan target yang diinginkan.
Apa yang dilakukan peneliti terdahulu hanya menggunakan jaringan dengan layer tunggal single layer. Rumelhart 1986 mengembangkan perceptron menjadi
backpropagation , yang memungkinkan jaringan diproses melalului beberapa layer.
Selain itu, beberapa model jaringan syaraf tiruan lain juga dikembangkan oleh Kohonen 1972, Hopfield 1982 dan lain-lain.
Menurut Siang 2005 jaringan syaraf tiruan adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi. Jaringan syaraf
tiruan dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi, dengan asumsi bahwa :
a. Pemrosesan informasi terjadi pada banyak elemen sederhana neuron.
b. Sinyal dikirimkan diantara neuron-neuron melalui penghubung-penghubung.
c. Penghubung antar neuron memiliki bobot yang akan memperkuat atau
memperlemah sinyal.
Universitas Sumatera Utara
d. Untuk menentukan output setiap neuron menggunakan fungsi aktivasi biasanya
bukan fungsi linier yang dikenakan pada jumlah input yang diterima. Besarnya output
ini selanjutnya dibandingkan dengan suatu batas ambang.
2.2.1 Arsitektur Jaringan Syaraf Tiruan Di dalam jaringan syaraf tiruan, neuron-neuron dikelompokkan dalam lapisan-lapisan.
Umumnya neuron-neuron yang terletak pada lapisan yang sama akan memiliki keadaan yang sama. Faktor terpenting dalam menentukan kelakuan suatu neuron
adalah fungsi aktivasi dan pola bobotnya. Pada setiap lapisan yang sama, neuron- neuron
akan memiliki fungsi aktivasi yang sama. Menurut Kusumadewi 2010 pada dasarnya terdapat tiga macam arsitektur
dalam jaringan syaraf antara lain :
1. Jaringan dengan lapisan tunggal single layer
Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot-bobot terhubung. Jaringan ini hanya menerima input kemudian secara langsung akan
mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi. Ciri-ciri arsitektur ini hanya terdiri atas satu lapisan masukkan dan satu lapisan keluaran
tanpa adanya lapisan tersembunyi, seperti gambar 2.3
Gambar 2.3 Jaringan Layar Tunggal Kusumadewi, 2010
Pada gambar 2.3 diperlihatkan bahwa arsitektur jaringan layar tunggal dengan n
buah masukan , ,….., yang masing-masing memiliki bobot , , …,
dengan rumus :
Universitas Sumatera Utara
_ 2.1
Kemudian fungsi aktivasi F akan mengaktivasi y_in menjadi keluaran jaringan y.
Untuk jaringan syaraf dengan jumlah neuron pada lapisan keluaran sebanyak m buah maka proses pengolahan data pada neuron adalah :
_ ∑
; j=1,…,m 2.2
Dengan adalah bobot yang menghubungkan masukkan ke-i menuju neuron
ke-j. Namun terkadang jaringan syaraf tiruan tidak mampu mengakomodasi informasi yang ada melalui data-data masukan maupun bobot-bobotnya. Untuk itu biasanya
ditambahkan bias yang senantiasa bernilai 1. Pengaruh bias terhadap neuron ditunjukkan dengan bobot bias b. Apabila jaringan syaraf dilengkapi dengan bias,
maka proses komputasi pada neuron menjadi : ∑
+ b 2.3
Jaringan syaraf dengan jumlah neuron pada lapisan keluaran sebanyak m buah maka proses pengolahan data pada neuron ke-j adalah :
_ ∑
+ ; j=1,…,m 2.4
adalah bobot yang menghubungkan masukkan ke-i menuju ke neuron ke-j dan adalah bobot bias yang menuju ke neuron ke-j.
2. Jaringan dengan banyak lapisan multi layer
Arsitektur tipe ini memiliki satu atau lebih lapisan yang terletak di antara lapisan masukkan dan lapisan keluaran, juga memiliki satu atau lebih lapisan tersembunyi.
Umumnya ada lapisan bobot-bobot yang terletak antara dua lapisan yang bersebelahan. Jaringan dengan banyak lapisan ini dapat menyelesaikan
permasalahan yang lebih sulit daripada lapisan dengan lapisan tunggal dan tentu
Universitas Sumatera Utara
saja dengan pembelajaran yang lebih rumit juga. Gambar 2.4 merupakan salah satu contoh model neuron dengan banyak lapisan dan hanya memiliki satu lapisan
tersembunyi. adalah bobot-bobot yang menghubungkan antara neuron-neuron
pada lapisan tersembunyi dengan lapisan keluaran. z_ adalah hasil pengolahan
data pada lapisan tersembunyi dengan fungsi aktivasi F1 untuk menghasilkan j=1,…,k;
_ 2.5
= 1 2.6
Sedangkan y_ adalah hasil pengolahan data pada lapisan keluaran dengan
fungsi aktivasi F2 untuk menghasilkan keluaran jaringan. ; = 1, … ,
2.7 =
2.8 = 2 _
2.9
Gambar 2.4 Model Neuron dengan Banyak Lapisan Kusumadewi, 2010
Universitas Sumatera Utara
3. Jaringan Syaraf dengan Lapisan Kompetitif
Arsitektur tipe ini tampak pada gambar 2.5 dimana memiliki pengaturan bobot yang telah ditetapkan dan tidak memiliki proses pelatihan. Digunakan untuk
mengetahui neuron pemenang dari sejumlah neuron yang ada. Nilai bobot untuk diri sendiri dari setiap neuron adalah 1, dan neuron lain adalah bobot acak
negative dengan bobot –ƞ.
Gambar 2.5 Model Neuron dengan Lapisan Kompetitif Kusumadewi, 2010
Dalam penelitian ini arsitektur jaringan yang digunakan terdiri dari lapisan input
sejumlah 5 neuron, lapisan tersembunyi sejumlah n neuron, n = 10,11,12,…,20, lapisan output terdiri dari 1 neuron yaitu harga penutupan close
forex euro esok hari. Misalkan lapisan input sejumlah 5 neuron, lapisan tersembunyi sejumlah 10 neuron dan lapisan output terdiri dari 1 neuron maka arsitektur jaringan
tersebut adalah 5-10-1. Gambar 2.6 menunjukkan arsitektur jaringan untuk peramalan forex euro terhadap dollar Amerika menggunakan 1 lapisan input, 1 lapisan
tersembunyi dan 1 lapisan output.
2.2.2 Proses Pembelajaran Tujuan utama dari proses pembelajaran adalah melakukan pengaturan terhadap bobot-
bobot yang ada pada jaringan syaraf, sehingga diperoleh bobot akhir yang tepat sesuai dengan pola yang dilatih. Selama proses pembelajaran akan terjadi perbaikan bobot-
bobot berdasarkan agoritma tertentu. Nilai bobot akan bertambah jika informasi yang diberikan oleh neuron bersangkutan tersampaikan, sebaliknya jika informasi tidak
tersampaikan maka bobot akan dikurangi. Pada dasarnya ada dua metode proses pembelajaran, yaitu pembelajaran
terawasi dan pembelajaran tidak terawasi.
Universitas Sumatera Utara
1. Pembelajaran Terawasi
Metode pembelajaran terawasi bila keluaran yang diharapkan telah diketahui sebelumnya. Misalkan dimiliki jaringan syaraf untuk mengenali pasangan pola
dengan operasi AND, pada proses pembelajaran satu pola masukkan akan diberikan ke satu neuron pada lapisan masukkan. Pola dirambatkan disepanjang
jaringan syaraf sampai dengan neuron pada lapisan keluaran. Lapisan keluaran ini akan membangkitkan pola keluaran yang nantinya akan dicocokkan dengan pola
keluaran targetnya. Apabila terjadi perbedaan antara pola keluaran hasil pembelajaran dengan pola target maka terjadi error, apabila nilai error masih
cukup besar mengindikasikan masih perlu dilakukan pembelajaran lagi.
2. Pembelajaran Tidak Terawasi
Metode ini tidak memerlukan target keluaran karena tidak dapat ditentukan hasil seperti apakah yang diharapkan selama proses pembelajaran. Saat proses
pembelajaran, nilai bobot disusun dalam suatu range tertentu tergantung pada nilai keluaran yang diberikan, apabila nilai error masih cukup besar mengindikasikan
masih diperlukan proses pembelajaran.
2.2.3 Fungsi Aktivasi Ada beberapa fungsi aktivasi yang sering digunakan dalam jaringan syaraf tiruan
antara lain :
1. Fungsi Sigmoid Biner
Fungsi ini digunakan untuk jaringan syaraf yang dilatih menggunakan metode backpropagation
. Fungsi sigmoid biner memiliki nilai antara 0 sampai 1. Karena itu fungsi ini sering digunakan untuk jaringan syaraf yang membutuhkan nilai
keluaran yang terletak pada interval 0 sampa 1. Fungsi sigmoid biner dirumuskan sebagai berikut :
= = 1
1 + 2.10
′
= [1 − ] 2.11
Universitas Sumatera Utara
Gambar 2.6 Fungsi Aktivasi Sigmoid Biner Kusumadewi, 2010
2. Fungsi Sigmoid Bipolar
Fungsi ini hampir sama dengan fungsi sigmoid biner, hanya saja keluaran dari fungsi ini antara 1 sampai -1. Fungsi sigmoid bipolar dirumuskan seperti berikut
ini :
= = 1 −
1 + 2.12
′
= 2 [1 + ][1 − ]
2.13
Gambar 2.7 Fungsi Aktivasi Sigmoid Bipolar Kusumadewi, 2010
3. Fungsi Linear Identitas
Fungsi linear ini memiliki keluaran yang sama dengan nilai masukannya, fungsi linear
dirumuskan sebagai berikut :
Universitas Sumatera Utara
= 2.14
Gambar 2.8 Fungsi Aktivasi Linear Kusumadewi, 2010
2.2.4 Backpropagation Algoritma backpropagation merupakan bagian dari algoritma pembelajaran terawasi
yang biasanya digunakan oleh perceptron dengan banyak lapisan untuk mengubah bobot-bobot yang terhubung dengan neuron-neuron yang ada pada lapisan
tersembunyi. Algoritma ini menggunakan error keluaran untuk mengubah nilai bobot- bobotnya dalam arah mundur backward. Untuk mendapatkan error ini tahap
perambatan maju forward propagation harus dikerjakan terlebih dahulu. Saat perambatan maju, neuron-neuron diaktifkan dengan menggunakan fungsi aktivasi
sigmoid biner .
2.2.5 Normalisasi Data Normalisasi data berfungsi untuk membuat data yang akan diproses berada pada
range tertentu sehingga dalam pemrosesan nantinya angka yang diolah tidak terlalu
besar agar mempercepat proses perhitungan. Pada penelitian ini data pelatihan akan di normalisasi dalam range 0,1 sampai 0,9. Adapun rumus untuk melakukan normalisasi
data pada range 0,1 sampai 0,9 menurut Siang 2005 adalah sebagai berikut :
= 0,8 − -
− - + 0,1 2.15
dimana : y
= nilai normalisasi x
= nilai data forex a
= nilai minimum data forex b
= nilai maksimum data forex
Universitas Sumatera Utara
Setelah data masukan yang telah dinormalisasi diproses dan didapatkan hasil prediksi maka hasil prediksi akan didernomalisasi kembali dengan menggunakan
persamaan berikut :
= − 0,1 − - + 0,8-
0,8 2.16
dimana : y
= nilai hasil prediksi x
= nilai hasil denormalisasi a
= nilai minimum data forex b
= nilai maximum data forex 2.2.6 Parameter Neural Network Backpropagation
Backpropagation neural network memiliki beberapa parameter didalam metodenya.
Parameter-parameter tersebut digunakan sebagai batas kesalahan dalam melakukan pembelajaran, batas minimum dari sebuah fungsi aktivasi dan kontrol ukuran pada
sebuah bobot. Parameter yang digunakan pada backpropagation neural network adalah sebagai berikut :
1. Maximum epoch
Epoch merupakan perulangan atau iterasi dari proses yang dilakukan untuk
mencapai target yang telah ditentukan. Maksimum epoch adalah jumlah epoch maksimum yang boleh dilakukan selama proses pelatihan. Iterasi akan dihentikan
apabila nilai melebihi maksimum epoch.
2. Learning rate
Learning rate merupakan laju pembelajaran yang berupa perkalian negative dari
gradient untuk menentukan perubahan pada nilai bobot dan bias. Semakin besar nilai learning rate akan berimplikasi pada semakin besarnya langkah
pembelajaran. Jika learning rate di set terlalu besar maka algoritma akan menjadi tidak stabil. Sebaliknya jika di set terlalu kecil maka algoritma akan mencapai
target dalam jangka waktu yang lama.
Universitas Sumatera Utara
3. Momentum
Pada standart backpropagation perubahan bobot didasarkan atas gradient yang terjadi untuk pola yang dimasukkan pada saat itu. Penambahan momentum
dimaksudkan untuk menghindari perubahan bobot yang mencolok yang diakibatkan oleh adanya data yang sangat berbeda dengan yang lain. Variabel
momentum dapat meningkatkan waktu pelatihan dan stabilitas dari proses pelatihan. Berikut merupakan rumus momentum :
∆ = 0 ∗ 2 ∗ 0 2.17
dimana : 0 = learning rate yang bernilai 0.25 atau 0.5
0 = nilai dari neuron ke i
Perubahan bobot dilakukan dengan cara menambahkan bobot yang lama dengan
∆. Akan tetapi bobot pada iterasi sebelumnya memberikan pengaruh besar terhadap performa jaringan syaraf. Oleh karena itu perlu ditambahkan
dengan bobot yang lama dikalikan momentum, menjadi : ∆ = 0 ∗ 2 ∗ 0 + 3 ∗ ∆′
2.18 dimana :
3 = momentum faktor yang bernilai 0 dan 1
∆′ = bobot pada iterasi sebelumnya
Teknik momentum tidak menutup kemungkinan dari konvergensi pada lokal minimum, akan tetapi penggunaan teknik ini dapat membantu untuk keluar
dari lokal minima.
4. Perhitungan error
Perhitungan error bertujuan untuk mengukur keakurasian jaringan dalam mengenali pola yang diberikan. Ada tiga macam perhitungan error yang
digunakan, yaitu :
Universitas Sumatera Utara
a. Mean Square Error
MSE MSE merupakan error rata-rata kuadrat dari selisih antara output jaringan dengan
output target. Tujuannya adalah memperoleh nilai error sekecil-kecilnya secara
iterative dengan mengganti nilai bobot yang terhubung pada semua neuron dalam jaringan. Untuk mengetahui seberapa banyak bobot yang diganti, setiap iterasi
memerlukan perhitungan error yang berasosiasi dengan setiap neuron pada output dan hidden layer. Rumus perhitungan MSE adalah sebagai berikut :
567 = 1
8 9 −
:
2.19 dimana :
9 = nilai output target = nilai output jaringan
N = jumlah output dari neuron b.
Mean Absolute Error MAE
MAE merupakan perhitungan error hasil absolute dari selisih antara nilai hasil sistem dengan nilai aktual. Rumus perhitungan MAE adalah sebagai berikut :
5;7 = 1
8 |9 − |
:
2.20 c.
Mean Absolute Percentage Error MAPE
MAPE hampir sama dengan MAE hanya saja hasilnya dinyatakan dalam persentase. Rumus perhitungan MAPE adalah sebagai berikut :
5;=7 = 1
8 |9 − |
:
∗ 100 2.21
Universitas Sumatera Utara
2.3 Foreign Exchange Forex