Artificial Neural Network JARINGAN SYARAF TIRUAN
Tipe ANN ANN dibuat oleh Warren McCulloch dan Walter Pitts pada tahun 1940. Tipe ANN berdasarkan koneksi antar neuron yaitu feedforward dan feedback Tipe ANN berdasarkan layer yaitu single layer, multi layer, dan recurrent network Tipe ANN berdasarkan algoritma pembelajaran: Supervised (error based) backpropagation, delta learning rule, forwardpropagation Unsupervised Hebbian, self organizing kohonen feature map, stochastic simulated annealing Reinforced (output based) Fungsi aktivasi: threshold,sigmoid, linear, piecewise,hard limiter
Istilah dalam ANN Bobot (weight) Bias Activation function Merupakan label pada konektor antar neuron Berisi informasi sinyal input Disajikan dalam matriks Bias Sama seperti bobot lainnya Hubungan input dan output dapat ditulis dengan persamaan garis lurus y = mx+c Activation function Untuk menghitung output neuron Linier atau non linier Learning rate Dinotasikan dengan α Untuk mengendalikan jumlah penyesuaian bobot tiap langkah training X y = mx+c Y Input Bias
Sistem ANN ADALINE (Adaptive Linear Neural Element) ART (Adaptive Resonance Theory) AM (Associative Memory) BAM (Bidirectional Associative Memory) Boltzman Machines BSB (Brain-state-in-a-box) Cauchy Machine Hopfield Network LVQ (Learning Vector Quantization) Neoconition Perceptron RBF (Radial Basis Function) RNN (Recurrent Neural Network) SOFM (Self Organizing Feature Map)
Sistem NN LEARNING METHOD Gradient Descent Hebbian Competitive Stochastic ARCHITECTURE Single Layer Feed Forward ADALINE, Hopfield, Perceptron AM, Hopfield LVQ, SOFM Multi Layer Feed Forward Neoconition Recurrent Networks RNN BAM, BSB, Hopfield ART Boltzman and Cauchy Machines
Evolusi ANN TAHUN NEURAL NETWORK DESAINER DESKRIPSI 1943 McCulloch dan Pitts neuron McCulloch dan Pitts gerbang logika 1949 Hebb kekuatan bertambah jika neuron aktif 1958-1988 Perceptron Rosenblatt bobot panah bisa disesuaikan 1960 ADALINE Widrow dan Hoff mean squared error 1972 SOM Kohonen klastering 1982 Hopfield John Hopfield jaringan memory asosiatif 1986 Back Propagation Rumelhart multi layer 1987-1990 ART Carpenter digunakan untuk biner dan analog
Perceptron Adalah model neuron paling sederhana yang melakukan fungsi boolean dibuat oleh McCulloh dan Pitts. Neuron adalah sel pada otak manusia. ANN merupakan kumpulan neuron ANN dapat dimodelkan dalan sebuah diagram yang terdiri dari simbol simpul dan anak panah. Ada dua macam simpul yaitu sel neuron dan sel input. Sel input hanya menerima input, tidak terlalu banyak perhitungan. Sel neuron melakukan perhitungan non linear dari nilai input. Input sel terbagi dua yaitu sel sensor dan sel tiruan (dummy cells) Sel sensor adalah simpul Input eksternal yang nilainya berasal dari luar ANN yaitu input yang diberikan oleh user. Sel tiruan adalah simpul input internal yang nilainya selalu satu dengan notasi x0 = 1.
Output adalah neuron yang dinotasikan dengan panah Output adalah neuron yang dinotasikan dengan panah. Ada dua tipe panah yaitu sinapsis dan output. Sinapsis adalah panah yang menghubungkan sel-sel (sel neuron, sel sensor, sel tiruan). Tiap Sinapsis bersesuaian dengan sebuah nilai bobot. Sinapsis terbagi lagi menjadi dua yaitu sinapsis yang menghubungkan sel sensor ke sel neuron atau sel neuron ke sel neuron lainnya. Sinapsis lainnya yaitu bias yang menghubungkan sel tiruan dengan sel neuron Pengembangannya ANN dapat menerima input dan output yang sudah dinormalisasi dengan nilai antara 0 sd 1 atau -1 sd 1. Jika nilainya di luar jangkauan itu maka diubah terlebih dulu menjadi 0 sd 1 atau -1 sd 1 Inti dari perhitungan ANN terletak pada sel neuron. Sel neuron dinotasikan dengan lingkaran. Gambar di bawah ini adalah contoh sebuah neuron yang diberi nama x3. neuron ini menerima 2 sel input sensor x1 dan x2 juga sel input tiruan x0. Output sel neuron yaitu y X3 X0 X2 X1 Y
Komponen ANN ANN Xn X0 Sel neuron Simpul Sel sensor Sel input Anak panah Sel input sinapsis Sel neuron output Sel sensor Sel dummy/ sel tiruan Bias Antar sel Xn X0
Neuron X0 X0 Y1 X2 X1 X1 Y X3 Y2 X3 X2 X0 X1 Y X2 . Xn ∑→f(s) W0 W1 W2 Wn X0 X1 X2 X3
Input neuron bisa berasal dari 3 sumber yaitu: Sel neuron lain Sel sensor Sel dummy Ketika lebih dari satu anak panah keluar dari sel, semuanya akan bernilai sama. Contoh pada gambar di samping, sebuah sel sensor x1 memiliki 2 anak panah keluar dari sel. Misal nilai x1=1, nilai ini akan digunakan sebagai input untuk kedua neuron x2 dan x3 X2 X0 X1 X3 Y1 Y2
Di dalam sel neuron (lingkaran) ada dua operasi: Jumlah dari perkalian antara bobot dan input Fungsi aktivasi non linier f (s) Neuron ini akan mengakumulasi jumlah dari perkalian bobot sinapsis dan input neuron termasuk bias w0 dan input tiruan x1 = 0 menggunakan rumus: ∑→f(s) X0 X2 X1 Y Xn . W0 W1 W2 Wn
Contoh Diketahui nilai bobot, sel sensor x1 = 0, x2 = 1 , x3 = 0, tentukan nilai s. Jawab: S = w0 x0 + w1 x1 + w2 x2 + w3 x3 = (-1)∙1 + 0,5∙1 + (-1,5) ∙0 = 1,5 Kemudian nilai s digunakan sebagai input fungsi aktivasi untuk menghasilkan output. Neuron akan menghasilkan output jika nilai s lebih besar dari nilai threshold. Secara umum output ditulis sebagai fungsi non linier y = f (s)
Jika input neuron bernilai boolean, fungsi aktivasi yang umum digunakan adalah fungsi threshold Grafik fungsi threshold
Soal Perceptron menangani nilai: ANN dinotasikan dengan: Anak panah dalam ANN disebut: Ada dua macam simpul yaitu:. Ada dua simpul input dalam ANN yaitu: Sel tiruan dalam ANN nilainya selalu: Input dari sel sensor dan output dari sel neuron bernilai antara: Di dalam neuron ada dua operasi yaitu: Fungsi aktivasi perceptron adalah fungsi: Sel yang tidak memiliki sel tiruan dan juga tidak melakukan operasi penjumlahan dari perkalian ataupun fungsi aktivasi: 1 Boolean Sinapsis Threshold Input sensor Simpul dan anak panah Sel tiruan dan sel sensor Simpul input dan sel neuron 0 sampai 1 (atau -1 sampai +1) Jumlah dari perkalian dan fungsi aktivasi.
Contoh Diketahui nilai s = 0,25. Bagaimana nilai y (output) nya? Jawab: s = 0,25 berarti s > 0 sehingga y = f (s) = f (0,25) = 1
Contoh Diketahui dari gambar berikut, w12 = -2, w13 = -0,5, bias w02 = 1 dan w03 = 1,5. Bagaimana output jika input = 1. Bagaimana pula output jika input = 0.
Untuk input = 1, nyatakan x1 = 1 S2 = w02 x0 + w12 x1 = 1∙1 + (-2)∙1 = -1 y1 = f (s2) = f (-1) = 0 S3 = w03 x0 + w13 x1 = 1,5∙1 + (-0,5)∙1 = 1 y2 = f (s3) = f (1) = 1 Untuk input = 1, nyatakan x1 = 0 S2 = w02 x0 + w12 x1 = 1∙1 + (-2)∙0 = 1 y1 = f (s2) = f (1) = 1 S3 = w03 x0 + w13 x1 = 1,5∙1 + (-0,5)∙0 = 1,5 y2 = f (s3) = f (1,5) = 1 Kesimpulannya, ANN didefinisikan oleh bobot dan arsitekturnya
Ada dua pandangan tentang perlunya bias: Terlihat bahwa setiap neuron disertai dengan sel input tiruan internal yang dinotasikan dengan x0 bernilai 1 Anak panah sinapsis dari sel input tiruan ke sel neuron disebut Bias yang dinotasikan dengan w0 Bias merupakan anak panah sinapsis khusus di dalam setiap neuron. Bias memiliki bobot khusus untuk mengubah nilai model neuron dari nilai asalnya yaitu nol. Ada dua pandangan tentang perlunya bias: Jika disajikan dalam model linier, bias adalah sebagai pembatas 2. Bias menyatakan nilai threshold. Jumlah dari perkalian bobot dan sel input dihitung dengan rumus:
Karena x0 selalu sama dengan 1 artinya sama dengan Jika kita menggunakan fungsi threshold berikut sebagai fungsi aktivasi Sama artinya dengan
Latihan Mengapa sel input tiruan selalu bernilai satu? Mengapa diperlukan Bias? Bagaimana nilai fungsi threshold f (s) untuk nilai s berikut: s = 3 s = ‐2.5 s = 0 s = 1 s = ‐1 Pada gambar di samping, jika bobot sinapsis semuanya bernilai 1 dan sel input bernilai 1, bagaimana outputnya? Bagaimana pula outputnya jika bernilai 0? Jika threshold dari fungsi aktivasi didefinisikan seperti pada persamaan di samping. Bagaimana pengaruhnya pada bobot sinapsis?