Tugas Kecerdasan Komputasional Pertemaun ke-2
Bagaimana Jaringan Syaraf tiruan itu Bekerja?
Jaringan saraf tiruan adalah suatu sistem pemrosesan informasi yang cara kerjanya memiliki kesamaan tertentu dengan jaringan saraf biologis [Fausett,1994]. Jaringan saraf tiruan dikembangkan sebagai model matematis dari saraf biologis dengan berdasarkan asumsi bahwa:
1. Pemrosesan terjadi pada elemen-elemen sederhana yang disebut neuron.
2. Sinyal dilewatkan antar neuron melalui penghubung.
3. Setiap penghubung memiliki bobot yang akan mengalikan sinyal yang lewat.
4. Setiap neuron memiliki fungsi aktivasi yang akan menentukan nilai sinyaloutput.
Algoritma Backpropagation
Jaringan saraf dapat digolongkan menjadi berbagai jenis berdasarkan pada arsitekturnya, yaitu pola hubungan antara neuron-neuron, dan algoritma trainingnya, yaitu cara penentuan nilai bobot pada penghubung.
Salah satu algoritma pelatihan jaringan syaraf tiruan yang banyakdimanfaatkan dalam bidang pengenalan pola adalah backpropagation. Algoritma iniumumnya digunakan pada jaringan syaraf tiruan yang berjenis multi-layer feed-forward, yang tersusun dari beberapa lapisan dan sinyal dialirkan secara searah dariinput menuju output. Algoritma pelatihan backpropagation pada dasarnya terdiri dari tigatahapan [Fausett, 1994], yaitu:
- Input nilai data pelatihan sehingga diperoleh nilai output.
- Propagasi balik dari nilai error yang diperoleh.
- Penyesuaian bobot koneksi untuk meminimalkan nilai error.
Ketiga tahapan tersebut diulangi terus-menerus sampai mendapatkan nilai error yang diinginkan. Setelah training selesai dilakukan, hanya tahap pertama yang diperlukan untuk memanfaatkan jaringan syaraf tiruan tersebut. Secara matematis [Rumelhart, 1986], ide dasar dari algoritmabackpropagation ini sesungguhnya adalah penerapan dari aturan rantai (chain rule) untuk menghitung pengaruh masing-masing bobot terhadap fungsi error.
Algoritma QuickpropPada algoritma Quickprop dilakukan pendekatan dengan asumsi bahwakurva fungsi error terhadap masing-masing bobot penghubung berbentuk parabolayang terbuka ke atas, dan gradien dari kurva error untuk suatu bobot tidakterpengaruh oleh bobot-bobot yang lain [Fahlman, 1988]. Dengan demikian perhitungan perubahan bobot hanya menggunakan informasi lokal pada masing-masing bobot. Perubahan bobot pada algoritma Quickprop dirumuskan sebagai berikut: Pada eksperimen dengan masalah XOR dan encoder/decoder [Fahlman,1988], terbukti bahwa algoritma Quickprop dapat meningkatkan kecepatantraining. Eksperimen dari [Schiffmann, 1993] juga menunjukkan peningkatankecepatan training dan unjuk kerja yang signifikan.
Berikut ini beberapa istilah jaringan saraf tiruan yang sering ditemui:
- Neuron atau Node atau Unit: Sel saraf tiruan yang merupakan elemen pengolahan jaringan saraf tiruan. Setiap neuron menerima data input, memroses input tersebut (melakukan sejumlah perkalian dengan melibatkan summation function dan fungsi aktivasi), dan mengirim-kan hasilnya berupa sebuah output.
- Jaringan: Kumpulan neuron yang saling terhubung dan membentuk lapisan.
- Input atau Masukan: Berkorespon dengan sebuah atribut tunggal dari sebuah pola atau data lain dari dunia luar. Sinyal-sinyal input ini kemudian diteruskan ke lapisan selanjutnya.
- Output atau Keluaran: Solusi atau hasil pemahaman jaringan terhadap data input.Tujuan pembangunan jaringan saraf tiruan sendiri adalah untuk mengetahui nilai output.
- Lapisan Tersembunyi (hidden layer): Lapisan yang tidak secara langsung berinteraksidengan dunia luar. Lapisan inimrmemperluas kemampuan jaringan saraf tiruan dalam menghadapi masalah-masalh yang kompleks.
- Bobot: Bobot dalam jaringan saraf tiruan merupakan nilai matematis dari koneksi, yangmentransfer data dari satu lapisan ke lapisan lainnya. Bobot ini digunakan untuk mengatur jaringan sehingga jaringan saraf tiruan bias menghasilkan output yang diinginkan sekaligus bertujuan membuat jaringan tersebut belajar.
- Summation Function: Fungsi yang digunakan untuk mencari rata-rata bobot dari semuaelemen input. Yang sederhana adalah dengan mengalikan setiap nilai input (Xj) denganbobotnya (Wij) dan menjumlahkannya (disebut penjumlahan berbobot, atau Si).
- Fungsi Aktivasi atau Fungsi Tranfer: Fungsi yang menggambarkan hubungan antara tingkat aktivasi internal (summation function) yang mungkin berbentuk linier atau nonlinier. Beberapa fungsi aktivasi jaringan saraf tiruan diantaranya: hard limit, purelin,dan sigmoid. Yang popular digunakan adalah fungsi sigmoid yang memiliki beberapa varian: sigmoid logaritma, sigmoid biner, sigmoid bipolar, dan sigmoid tangent.
- Bias adalah salah satu node input dari BP yang sifatnya khusus, karena selalu bernilai 1. Penggunaan Bias dapat mempercepat pelatihan, hal ini dapat terjadi karena keberadaan Bias berguna sebagai faktor koreksi terhadap kecukupan variabel-variabel input yang telah kita tetapkan. Misalkan saja kita telah menetapkan bahwa output Y dipengaruhi oleh variabel input X1 dan X2, apakah tidak ada variabel input yang lain selain X1 dan X2? Mungkin saja masih ada, namun belum kita ketahui, inilah fungsi dari Bias.
- Learning rate merupakan salah satu parameter training untuk menghitung nilai.
- Hasil yang diperoleh kemudian dibandingkan dengan data target sehingga diperoleh tingkat kesalahan (error). Apabila tingkat kesalahan yang diperoleh lebih kecil daripada tingkat kesalahan yang sebelumnya telah ditetapkan (target error), maka proses perambatan akan berhenti. Namun apabila tingkat kesalahan masih lebih besar daripada tingkat kesalahan tetapan maka dilakukan proses perambatan balik dengan melakukan pembaharuan bobot.
- Epoch adalah ketika seluruh dataset sudah melalui proses training pada Neural Netwok sampai dikembalikan ke awal untuk sekali putaran, karena satu Epoch terlalu besar untuk dimasukkan (feeding) kedalam komputer maka dari itu kita perlu membaginya kedalam satuan kecil (batches).
Supervised Learning
- Supervised learning adalah proses belajar yang membutuhkan guru, yaitu sesuatu yang memiliki pengetahuan tentang lingkungan.
- Guru bisa direpresentasikan sebagai sekumpulan sampel input-output.
- Pembangunan pengetahuan dilakukan oleh guru dengan memberikan respons yang diinginkan kepada JST.
- Parameter-parameter jaringan berubah-ubah berdasarkan vektor latih dan sinyal kesalahan, yaitu perbedaan antara keluaran JST dan respons yang diinginkan.
- Proses perubahan dilakukan dalam bentuk iteras
UnSupervised Learning
- Unsupervised Learning atau self-organized learning tidak membutuhkan guru untuk membantu proses belajar.
- Dengan kata lain, tidak ada sekumpulan sampel input-output atau fungsi tertentu untuk dipelajari oleh jaringan.
- JST mengorganisasikan dirinya untuk membentuk vektor-vektor input yang serupa tanpa menggunakan data atau contoh-contoh pelatihan, biasanya ke dalam suatu kategori/kelompok2 tertentu
- Salah satu contoh unsupervised learning adalah competitive learning, di mana neuron-neuron saling bersaing untuk menjadi pemenang.
Algoritma Pembelajaran Umum
- Dimasukkan data pelatihan
- Inisialisasi bobot-bobot jaringan, set i= 1
- Masukkan contoh ke-i ke dalam input
- Cari tingkat aktivasi unit output menggunakan algoritma yang ditetapkan
- Jika memenuhi kriteria output then
- exit
- else:
- Update bobot2 menggunakan fungsi galat error, Bobot baru= bobot lama + delta
- If i=n then reset i=1, else i=i+1




Komentar
Posting Komentar