BAB II DASAR TEORI
2.5 Algoritma Neural Network
Jaringan saraf tiruan atau neural network muncul setelah pengenalan neuron disederhanakan oleh McCulloch dan Pitts pada 1943. Sebuah sel neuron (sel saraf) tertentu mengumpulkan sinyal berupa rangsangan dari neuron lain melalui dendrit. Sinyal yang datang dan diterima oleh dendrit akan dijumlahkan (summation) dan dikirim melalui axon ke dendrit akhir yang bersentuhan dengan dendrit dari neuron yang lain. Sinyal ini akan diterima oleh neuron lain jika memenuhi nilai threshold tertentu[7]. Komponen dari neuron dapat dilihat pada
Gambar 2.7.
Gambar 2.7 Komponen Neuron
Jaringan saraf tiruan, seperti manusia, belajar dari suatu contoh karena mempunyai karakteristik yang adaptif, yaitu dapat belajar dari data-data sebelumnya dan mengenal pola data yang selalu berubah. Selain itu, jaringan saraf tiruan merupakan sistem yang tak terprogram, artinya semua keluaran atau
kesimpulan yang ditarik oleh jaringan didasarkan pada pengalamannya selama mengikuti proses pembelajaran/pelatihan.
Jaringan saraf tiruan ditentukan oleh tiga hal :
1. Pola hubungan antar neuron (disebut arsitektur jaringan).
2. Metode untuk menentukan bobot penghubung (disebut metode training/learning).
3. Fungsi aktivasi, yaitu fungsi yang digunakan untuk menentukan keluaran suatu neuron.
2.5.1. Model Neuron
Satu sel saraf terdiri dari tiga bagian, yaitu: fungsi penjumlah (summing function), fungsi aktivasi (activation function), dan keluaran (output). Model neuron dapat dilihat Gambar 2.8[8].
Gambar 2.8 Model Neuron
Jika dilihat, neuron buatan diatas mirip dengan sel neuron biologis. Informasi (input) akan dikirim ke neuron dengan bobot tertentu. Input ini akan diproses oleh suatu fungsi yang akan menjumlahkan nilai-nilai bobot yang ada. Hasil penjumlahan kemudian akan dibandingkan dengan suatu nilai ambang (threshold) tertentu melalui fungsi aktivasi setiap neuron. Apabila input tersebut
melewati suatu nilai ambang tertentu, maka neuron tersebut akan diaktifkan, jika tidak, maka neuron tidak akan diaktifkan. Apabila neuron tersebut diaktifkan, maka neuron tersebut akan mengirimkan output melalui bobot-bobot keluarannya ke semua neuron yang berhubungan dengannya.
Sehingga dapat disimpulkan bahwa neuron terdiri dari 3 elemen pembentuk, yaitu:
1. Himpunan unit-unit yang dihubungkan dengan jalur koneksi. Jalur-jalur tersebut memiliki bobot yang berbeda-beda. Bobot yang bernilai positif akan memperkuat sinyal dan yang bernilai negatif akan memperlemah sinyal yang dibawa. Jumlah, struktur, dan pola hubungan antar unit-unit tersebut akan menentukan arsitektur jaringan.
2. Suatu unit penjumlah yang akan menjumlahkan input-input sinyal yang sudah dikalikan dengan bobotnya.
3. Fungsi aktivasi yang akan menentukan apakah sinyal dari input neuron akan diteruskan ke neuron lain atau tidak.
2.5.2. Konsep Dasar Jaringan Saraf Tiruan
Setiap pola-pola informasi input dan output yang diberikan kedalam jaringan saraf tiruan diproses dalam neuron. Neuron-neuron tersebut terkumpul di dalam lapisan lapisan yang disebut neuron layers. Lapisan-lapisan penyusun jaringan saraf tiruan tersebut dapat dibagi menjadi 3, yaitu[8]:
1. Lapisan input
Unit-unit di dalam lapisan input disebut unit-unit input. Unit-unit input tersebut menerima pola masukannya data dari luar yang menggambarkan suatu permasalahan.
2. Lapisan tersembunyi
Unit-unit di dalam lapisan tersembunyi disebut unit-unit tersembunyi. Dimana keluarannya tidak dapat secara langsung diamati.
3. Lapisan output
Unit-unit di dalam lapisan output disebut unit-unit output. Output dari lapisan ini merupakan solusi jaringan saraf tiruan terhadap suatu permasalahan.
2.5.3. Arsitektur Jaringan Jaringan Saraf Tiruan
Jaringan saraf tiruan memiliki beberapa arsitektur jaringan yang sering digunakan dalam berbagai aplikasi. Arsitektur jaringan saraf tiruan tersebut, antara lain[8]:
a. Jaringan layar tunggal (single layer network)
Jaringan dengan lapisan tunggal terdiri dari 1 layer input dan 1 layer output. Setiap neuron/unit yang terdapat di dalam lapisan/layer input selalu terhubung dengan setiap neuron yang terdapat pada layer output. Jaringan ini hanya menerima input kemudian secara langsung akan mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi. Contoh algoritma jaringan saraf tiruan yang menggunakan metode ini yaitu: ADALINE, Hopfield, Perceptron. Arsitekstur jaringan layar tunggal dapat dilihat pada Gambar 2.9.
Gambar 2.9 Arsitektur lapisan tunggal
b. Jaringan layar jamak (multi layer network)
Jaringan dengan lapisan jamak memiliki ciri khas tertentu yaitu memiliki 3 jenis layer yakni layer input, layer output, dan juga layer tersembunyi. Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang lebih kompleks dibandingkan jaringan dengan lapisan tunggal. Namun, proses pelatihan sering membutuhkan waktu yang cenderung lama. Contoh algoritma jaringan saraf tiruan yang menggunakan metode ini yaitu: MADALINE, backpropagation, Neocognitron. Arsitekstur dari jaringan layar jamak dapat dilihat pada Gambar 2.10.
c. Jaringan dengan lapisan kompetitif (competitive layer network)
Pada jaringan ini sekumpulan neuron bersaing untuk mendapatkan hak menjadi aktif. Contoh algoritma yang menggunakan metode ini adalah LVQ. Arsitekstur dari jaringan lapisan kompetitif dapat dilihat pada Gambar 2.11.
Gambar 2.11 Arsitektur lapisan kompetitif
2.5.4. Kelebihan dan Kelemahan Neural Network
Neural network mempunyai kemampuan yang luar biasa untuk mendapatkan informasi dari data yang rumit atau tidak tepat. Berikut adalah kelebihan – kelebihan yang diberikan dari neural network[7]:
1. Belajar Adaptive : Kemampuan untuk mempelajari bagaimana melakukan pekerjaan berdasarkan data yang diberikan untuk pelatihan atau pengalaman awal.
2. Self-Organisation : Sebuah neural network dapat membuat organisasi sendiri atau representasi dari informasi yang diterimanya selama waktu belajar.
3. Real Time Operation : Perhitungan neural netrwork dapat dilakukan secara paralel sehingga perangkat keras dirancang dan diproduksi secara khusus dapat mengambil keuntungan dari kemampuan ini.
Selain mempunyai kelebihan – kelebihan tersebut, neural network juga mempunyai kelemamhan – kelemahan sebagai berikut[7]:
1. Tidak efektif jika digunakan untuk melakukan operasi – operasi numerik dengan presisi tinggi.
2. Tidak efisien jika digunakan untuk melakukan operasi algoritma aritmatik, operasi logika dan simbolis.
3. Untuk beroperasi neural network butuh pelatihan sehingga bila jumlah datanya besar, waktu yang digunakan untuk proses pelatihan sangat lama.
2.5.5 Algoritma Neural Network pada Channel Assignment
Setiap elemen pengolahan (neuron) sepenuhnya saling berhubungan dalam jaringan neural network. Neuron i digambarkan oleh state, yang dilambangkan dengan Vi. Setiap neuron memiliki dua kemungkinan. Nilai dari setiap state ditentukan oleh total masukan dari neuron lain diikuti oleh operasi thresholding. Input dari neuron i berasal dari dua sumber : output dari neuron lain dengan skala oleh bobot koneksi dan eksternal yang sesuai masukan . Total input ke neuron # i dinotasikan dengan Ui [6].
�� =∑ ���� ��+�� (2.5)
Dimana Wij adalah berat koneksi dari neuron j ke neuron i dan Ii adalah input eksternal . Update setiap neuron state sendiri sesuai dengan aturan thresholding dengan ambang THD seperti ditunjukkan oleh [6].
�� =� 1, ������< ���
0, ������� (2.6)
Aturan thresholding dapat diterapkan asynchronously (secara seri) atau serentak (secara paralel). Dalam modus asynchronous, aturan ini diterapkan
secara berurutan untuk setiap neuron, dan keadaan setiap neuron diperbarui secara individual. Dalam modus sinkron, operasi thresholding secara bersamaan diterapkan pada setiap neuron, dan state dari semua neuron diperbarui pada saat yang sama. Operasi memperbarui dihentikan ketika state tidak berubah atau energi telah mencapai nilai minimum. Menurut Kim et al . ( 1997) , Energi fungsi E didefinisikan sebagai [6].
� =−1
2∑ ∑ ���� � ���� − ∑ ��� �� (2.7)
Fungsi energi ini diminimalkan dengan prosedur update jaringan neural network. Penerapan berturut prosedur update akan memaksa jaringan untuk berkumpul sedemikian rupa sehingga energi jaringan menjadi lebih kecil selama prosedur update. Ketika jaringan mencapai keadaan stabil maka energi dalam keadaan minimum. Wij dan Ii harus ditetapkan dengan tepat untuk aplikasi sehingga E merupakan fungsi yang diminimalkan untuk memecahkan masalah optimasi kombinatorial. Untuk penugasan kanal jaringan neural network diimplementasikan, dimana energi di update sampai sama dengan nol atau nomor iterasi maksimum yang telah ditetapkan telah tercapai.
Untuk itu pada pengalokasian kanal, nilai energi diartikan dengan panggilan yang ditolak. Permintaan panggilan atau call demand yang masuk harus sesuai dengan jumlah panggilan yang sudah teralokasi pada kanal. Panggilan yang sudah teralokasi ini harus memenuhi kendala matriks C atau panggilan tidak ditolak atau tidak terjadi blocking. Apabila jumlah permintaan panggilan atau call demand tidak sama dengan jumlah panggilan yang sudah teralokasi maka terdapat panggilan yang ditolak, sehingga nilai energinya tidak sama dengan nol. Untuk itu
nilai bobot pada sel yang terblocking harus diubah untuk dapat mencapai nilai energi sama dengan nol.