ARTIFICIAL NEURAL NETWORK
A.
PENGERTIAN
ARTIFICIAL NEURAL NETWORK
Cabang ilmu kecerdasan buatan cukup luas, dan erat kaitannya
dengan disiplin ilmu yang lainnya. Hal ini bisa dilihat dari berbagai aplikasi
yang merupakan hasil kombinasi dari berbagai disiplin ilmu. Salah satunya adalah
Artificial Neural Network (ANN), merupakan kombinasi antara ilmu arthificial
intelligent dengan biologi.
Menurut
Wikipedia “Jaringan Syaraf Tiruan (JST) atau dalam bahasa Inggris Artificial
Neural Network (ANN) adalah jaringan dari sekelompok unit pemroses kecil yang
dimodelkan berdasarkan jaringan saraf manusia. JST merupakan sistem adaptif
yang dapat mengubah strukturnya untuk memecahkan masalah berdasarkan informasi
eksternal maupun internal yang mengalir melalui jaringan tersebut” .
Menurut
Jurnal international (A Comprehensive Study of Artificial Neural Networks) Artificial
Neural Network adalah “An Artificial Neuron is basically an engineering
approach of biological neuron”.
Menurut teori Haykin
(1999,p2) : " jaringan syaraf tiruan (Artificial Neural Network)
adalah sejumlah besar prosesor yang terdistribusi secara pararel dan terdiri
dari unit pemrosesan sederhana, dimana masing – masing unit memiliki
kecenderungan untuk menyimpan pengetahuan yang dialami dan dapat digunakan
kembali."
Neural Network merupakan kategori
ilmu Soft Computing. Neural Network sebenarnya mengadopsi dari kemampuan otak
manusia yang mampu memberikan stimulasi/rangsangan, melakukan proses, dan
memberikan output. Output diperoleh dari variasi stimulasi dan proses yang terjadi
di dalam otak manusia. Kemampuan manusia dalam memproses informasi merupakan
hasil kompleksitas proses di dalam otak. Misalnya, yang terjadi pada anak-anak,
mereka mampu belajar untuk melakukan pengenalan meskipun mereka tidak
mengetahui algoritma apa yang digunakan. Kekuatan komputasi yang luar biasa
dari otak manusia ini merupakan sebuah keunggulan di dalam kajian ilmu
pengetahuan.
B.
KONSEP
DASAR PEMODELAN ARTIFICIAL NEURAL NETWORK
1. Struktur
Dasar Jaringan Biologi
Pembuatan
struktur jaringan syaraf tiruan diilhami oleh struktur jaringan biologi,
khususnya jaringan otak manusia. Untuk lebih mengenal asal-usul serta bagaimana
suatu struktur jaringan syaraf tiruan dibuat dan dapat dipakai sebagai suatu
alat penghitung. Berikut ini akan diulas sedikit istilah yang secara umum
digunakan.
Neuron adalah
suatu unit pemroses terkecil pada otak, bentuk sederhana sebuah neuron yang
oleh para ahli dianggap sebagai satuan unit pemroses tersebut digambarkan
sebagai berikut :
Gambar
: Struktur dasar jaringan syaraf tiruan dan struktur sederhana sebuah neuron
Struktur
pada gambar tersebut adalah bentuk standar dasar satuan unit jaringan otak
manusia yang telah disederhanakan. Bentuk standar ini mungkin dikemudian hari
akan berubah bila ada ilmuan yang dapat menciptakan bentuk standar yang lebih
baik ataupun memperbaiki bentuk standar yang digunakan saat ini. Jaringan otak
manusia tidak kurang dari 1013 neuron yang msing-masing terhubung
oleh sekitar 1015 buah
dendrite.
Dari
gambar di atas, bisa dilihat ada beberapa bagian dari otak manusia, yaitu:
- Dendrit (Dendrites) berfungsi untuk mengirimkan impuls yang diterima ke badan sel syaraf.
- Akson (Axon) berfungsi untuk mengirimkan impuls dari badan sel ke jaringan lain
- Sinapsis berfungsi sebagai unit fungsional di antara dua sel syaraf.
Secara
umum jaringan syaraf terbentuk dari jutaan (bahkan lebih) struktur dasar neuron
yang terinterkoneksi dan terintegrasi antara satu dengan yang lain sehingga
dapat melaksanakan aktifitas secara teratur dan terus menerus sesuai dengan
kebutuhan.
2. Pemodelan
Artificial Neural Network
Dari struktur neuron pada otak manusia, dan proses kerja
yang dijelaskan di atas, maka konsep dasar pembangunan neural network buatan (Artificial
Neural Network) terbentuk. Ide mendasar dari Artificial Neural Network
(ANN) adalah mengadopsi mekanisme berpikir sebuah sistem atau aplikasi yang
menyerupai otak manusia, baik untuk pemrosesan berbagai sinyal elemen yang
diterima, toleransi terhadap kesalahan/error, dan juga parallel processing.
Karakteristik dari ANN dilihat dari pola hubungan antar
neuron, metode penentuan bobot dari tiap koneksi, dan fungsi aktivasinya.
Gambar di atas menjelaskan struktur ANN secara mendasar, yang dalam
kenyataannya tidak hanya sederhana seperti itu.
a) Input, berfungsi seperti dendrite
b) Output, berfungsi seperti akson
c) Fungsi aktivasi, berfungsi seperti
sinapsis
Neural network dibangun dari banyak node/unit yang
dihubungkan oleh link secara langsung. Link dari unit yang satu ke unit yang
lainnya digunakan untuk melakukan propagasi aktivasi dari unit pertama ke unit
selanjutnya. Setiap link memiliki bobot numerik. Bobot ini menentukan kekuatan
serta penanda dari sebuah konektivitas.
Proses pada ANN dimulai dari input yang diterima oleh neuron
beserta dengan nilai bobot dari tiap-tiap input yang ada. Setelah masuk ke
dalam neuron, nilai input yang ada akan dijumlahkan oleh suatu fungsi
perambatan (summing function), yang bisa dilihat seperti pada di gambar
dengan lambang sigma (∑). Hasil penjumlahan akan diproses oleh fungsi aktivasi
setiap neuron, disini akan dibandingkan hasil penjumlahan dengan threshold
(nilai ambang) tertentu. Jika nilai melebihi threshold, maka aktivasi
neuron akan dibatalkan, sebaliknya, jika masih dibawah nilai threshold,
neuron akan diaktifkan. Setelah aktif, neuron akan mengirimkan nilai output
melalui bobot-bobot outputnya ke semua neuron yang berhubungan dengannya.
Proses ini akan terus berulang pada input-input selanjutnya.
ANN terdiri dari banyak neuron di dalamnya. Neuron-neuron
ini akan dikelompokkan ke dalam beberapa layer. Neuron yang terdapat pada tiap
layer dihubungkan dengan neuron pada layer lainnya. Hal ini tentunya tidak
berlaku pada layer input dan output, tapi hanya layer yang berada di antaranya.
Informasi yang diterima di layer input dilanjutkan ke layer-layer dalam ANN
secara satu persatu hingga mencapai layer terakhir/layer output. Layer yang
terletak di antara input dan output disebut sebagai hidden layer. Namun,
tidak semua ANN memiliki hidden layer, ada juga yang hanya terdapat layer input
dan output saja.
3.
Mengaktifkan
Jaringan Syaraf Tiruan
Mengaktifkan
jaringan syaraf tiruan berarti mengaktifkan setiap neuron yang dipakai pada
jaringan tersebut. Banyak fungsi yang dapat dipakai sebagai pengaktif, seperti
fungsi-fungsi goniometri dan hiperboliknya, fungsi unit step, impulse, sigmoid,
dan lain sebagainya. Tetapi yang lazim digunakan adalah fungsi sigmoid, karena
dianggap lebih mendekti kinerja sinyal pada otak.
Perceptron
Perceptron
pada Jaringan Syaraf Tiruan (Neural Network) termasuk kedalam salah satu bentuk
Jaringan Syaraf (Neural Network) yang sederhana. Perceptron biasanya digunakan
untuk mengklasifikasikan suatu tipe pola tertentu yang sering dikenal dengan
istilah pemisahan secara linear. Pada dasarnya perceptron pada Jaringan Syaraf
Tiruan (Neural Network) dengan satu lapisan memiliki bobot yang bisa diatur dan
suatu nilai ambang. Algoritma yang digunakan oleh aturan perceptron ini akan
mengatur parameter-parameter bebasnya melalui proses pembelajaran. Fungsi
aktivasi dibuat sedemikian rupa sehingga terjadi pembatasan antara daerah
positif dan daerah negatif.
C.
KARAKTERISTIK
ARTIFICIAL NEURAL NETWORK
Karakteristik neural network
ditunjukkan dalam 3 ciri yaitu : Arsitektur jaringan algoritma jaringan (Alg.
Pembelajaran dan Pengenalan) dan fungsi aktivasi.
1.
Arsitektur
Jaringan
Arsitektur jaringan menggambarkan bagaimana mengatur
neuron-neuron dalam lapisan dan bagaimana menghubungkan neuron-neuron tersebut
dengan bobot keterhubungannya (Weight (w)). Pada setiap neuron yang berada
dalam satu lapisan yang sama mempunyai fungsi aktivasi yang sama, dan setiap
neuron dalam satu lapisan harus dihubungkan dengan setiap neuron pada lapisan
berikutnya. Arsitektur jaringan syaraf tiruan yang sering digunakan adalah :
a. Jaringan dengan lapisan tunggal
Jaringan
dengan lapisan tunggal hanya memiliki 1 lapisan dengan bobot-bobot
keterhubungannya. Jaringan ini hanya menerima input pada lapisan input dan
kemudian seacara langsung mengolahnya menjadi output pada lapisan output.
Arsitektur jaringan dengan lapisan tunggal dapat dilihat pada gambar berikut.
b. Jaringan dengan banyak lapisan
Jaringan dengan banyak lapisan memiliki 1 atau lebih
lapisan yang terletak diantara lapisan input dan lapisan output yang disebut
sebagai lapisan tersembunyi (hidden
layer). Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan
yang lebih sulit daripada jaringan dengan lapisan tunggal, tetapi tentu proses
pembelajaran menjadi jauh lebih rumit dan memakan waktu yang lama. Tetapi pada
sebagian besar kasus, pembelajaran dengan banyak lapisan ini lebih sukses dalam
hasil pengujian masalahnya. Arsitektur jaringan dengan banyak lapisan dapat
dilihat pada gambar berikut.
2.
Algoritma
Jaringan
a.
Algoritma
Jaringan Pembelajaran
Algoritma pembelajaran digunakan untuk menemukan
nilai-nilai bobot yang tepat dalam mengirimkan suatu informasi. Algoritma yang
digunakan Neural Network dalam pembelajaran tergantung pada arsitektur
jaringan yang digunakan. Secara umum, algoritma pembelajaran terbagi menjadi
dua bagian, yaitu supervised learning (pembelajaran terawasi) dan unsupervised
learning (pembelajaran tak terawasi).
Supervised learning merupakan algoritma pembelajaran yang memerlukan target output yang
diharapkan untuk diketahui sebelumnya dalam proses pembelajarannya. Setiap pola
input beserta target output yang ditentukan disebut sebagai pasangan
pembelajaran. Algoritma pembelajaran NN yang termasuk dalam kelompok ini antara
lain hebb, perceptron dan back Propagation.
Unsupervised learning tidak memerlukan target output dan tidak dapat
ditentukan hasil seperti apakah yang diharapkan selama proses pembelajaran.
Tujuan pembelajaran ini adalah mengelompokkan unit-unit yang hampir sama dalam
suatu area tertentu. Yang termasuk dalam Unsupervised learning antara
lain :
1)
Kohonen
Self-Organizing Maps
2)
Learning Vector
Quantization
3)
Counterpropagation
b.
Algoritma
pengenalan
Setelah menemukan nilai bobot keterhubungan antar
neuron yang bersesuaian dengan nilai output, maka nilai bobot tersebut
digunakan untuk menguji NN jika suatu input dimasukkan sehingga suatu nilai
ouput dihasilkan. Proses ini dinamakan proses pengenalan (pengujian). Algoritma
pengenalan yang digunakan tergantung pada algoritma pembelajaran yang
digunakan, biasanya merupakan bagian dari algoritma pembelajarannya.
c.
Separabilitas
Linear
Salah satu cara yang biasa digunakan sebagai syarat
henti proses pembelajaran atau digunakan juga untuk proses pengenalan adalah
separabilitas linier.(garis pembatas). Dalam aplikasi pengenalan pola, garis
pembatas ini merupakan batas keputusan apakah suatu anggota termasuk dalam
kelompok (berespon positip) atau bukan kelompok. (berespon negatip)..Dalam
koordinat Cartesian (x,y) garis pembatas ini digambarkan sebagai garis lurus
yang mempunyai persamaan :
y=
mx + c
dengan
:
m : gradien garis
c : konstanta atau titik potong dengan
sumbu-y (0,c)
3.
Fungsi Aktivasi
Ada beberapa bentuk fungsi aktivasi yang umum
digunakan dalam Neural Network, antara lain:
a. Fungsi tangga biner
Jaringan dengan lapisan tunggal sering menggunakan
fungsi tangga biner untuk mengkonversikan input dari suatu variabel yang
bernilai kontinu ke suatu ouput biner (0 atau 1). Fungsi tangga biner
dirumuskan sebagai,
Sedangkan grafiknya dapat dilihat pada gambar dibawah
ini;
b. Fungsi linear (identitas)
Fungsi linear memiliki nilai output yang sama
denagn nilai inputnya. Fungsi linear dirumuskan sebagai,
y=x
dan grafik fungsi linear dapat dilihat pada gambar
berikut.
c. Fungsi sigmoid biner
Fungsi ini mempunyai nilai pada range 0 sampai
1. Fungsi ini dirumuskan sebagai,
Dan grafik fungsi ini dapat dilihat pada gambar
berikut :
d. Fungsi sigmoid bipolar
Fungsi ini mempunyai nilai pada range antara –1 sampai
1. Fungsi ini dirumuskan sebagai,
Sedangkan grafik fungsinya dapat dilihat pada gambar
berikut ,
D.
KELEBIHAN DAN KEKURANGAN ARTIFICIAL
NEURAL NETWORK
1.
Kelebihan Artificial
Neural Network
·
Mampu
mengakuisisi pengetahuan walau tidak ada kepastian
·
Mampu melakukan
generalisasi dan ekstraksi dari suatu pola data tertentu
·
JST dapat
menciptakan suatu pola pengetahuan melalui pengaturan diri atau kemampuan
belajar (self organizing)
·
Memiliki fault
tolerance, gangguan dapat dianggap sebagai noise saja
·
Kemampuan
perhitungan secara paralel sehingga proses lebih singkat
·
ANN mampu :
-
Klasifikasi:
memilih suatu input data ke dalam kategori tertentu yang sudah ditetapkan
-
Asosiasi: menggambarkan
suatu obyek secara keseluruhan hanya dengan bagian dari obyek lain
-
Self organizing:
kemampuan mengolah data-data input tanpa harus mempunyai target
-
Optimasi:
menemukan suatu jawaban terbaik sehingga mampu meminimalisasi fungsi biaya
2.
Kekurangan Artificial
Neural Network
·
Black Box
·
Kurang mampu
untuk melakukan operasi operasi numerik dengan presisi tinggi
·
Kurang mampu
melakukan operasi algoritma aritmatik, operasi logika dan simbolis
·
Lamanya
proses training yang mungkin terjadi dalam waktu yang sangat lama untuk jumlah
data yang besar
E.
KEGUNAAN
ARTIFICIAL NEURAL
NETWORK
•
Pengenalan pola (pattern recognition)
–
Huruf, tanda tangan, suara, gambar yang
sudah sedikit berubah (mengandung noise)
–
Identifikasi pola saham
–
Pendeteksian uang palsu, kanker
•
Signal Processing
–
Menekan noise pada saluran telepon
•
Peramalan
–
Peramalan saham
•
Autopilot dan simulasi
•
Kendali otomatis otomotif
Daftar Pustaka
Sharma,
Vidushi, dkk.2012. International Journal
of Advanced Research in Computer Science and Software Enginering : A
comprehensive Study of Arthificial Neural Network.India
www.wikipedia.org
Komentar
Posting Komentar