Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Modul 8 - Jaringan Syaraf Tiruan (JST)

6,791 views

Published on

Artificial Neural Network

Published in: Education
  • Be the first to comment

Modul 8 - Jaringan Syaraf Tiruan (JST)

  1. 1. Masalah, Ruang Masalah danPencarianIr. Ahmad Haidaroh, M.Kom.PENGENALAN KECERDASANPENGENALAN KECERDASANBUATANBUATAN( / AI)(2 SKS)Ir. Ahmad Haidaroh, M.Kom.STIKOM Artha Buana.Artificial Intelligence
  2. 2. Jaringan Syaraf Tiruan (JST)
  3. 3.  Otak manusia berisi jutaan sel syaraf(neuron) yang bertugas memprosesinformasi Neuron saling berinteraksi satu sama lainmendukung kemampuan kerja otakmanusia
  4. 4.  Komponen utama neuron dapat dikelompokkanmenjadi 3 bagian : Dendrit = bertugas menerima informasi = jalurinput bagi soma Badan sel (soma) = tempat pengolahan informasi,di badan sel terdapat inti sel yang bertugasmengolah informasi Akson = bertugas mengirimkan impuls-impulssinyal ke sel syaraf lain = jalur output bagi soma Antar dendrit dipertemukan dengan sinapsis
  5. 5.  Meniru cara kerja jaringan syaraf biologis Generalisasi model matematis dari pemahaman manusia: Pemrosesan informasi terjadi pada neuron Sinyal mengalir diantara sel saraf/neuron melalui suatusambungan penghubung Setiap sambungan penghubung memiliki bobot yangbersesuaian. Bobot ini akan digunakan untuk menggandakan /mengalikan sinyal yang dikirim melaluinya. Setiap sel syaraf akan menerapkan fungsi aktivasiterhadap sinyal hasil penjumlahan berbobot yangmasuk kepadanya untuk menentukan sinyalkeluarannya.
  6. 6. ( )kkpjjkjkvyxwvϕ== ∑=0Secara matematis:dan
  7. 7.  Fungsi yang digunakan untuk mencarirata-rata bobot dari semua elemen input. Bentuk sederhananya adalah denganmengalikan setiap nilai input (Xj) denganbobotnya (Wij) dan menjumlahkannya
  8. 8.  Diibaratkan dengan sebuah neuron yangmemonitor sinyal yang datang darineuron-neuron lain. Neuron ini menghitung penjumlahanberbobotnya dan kemudian menentukansinyal untuk dikirim ke neuron-neuronlain.
  9. 9.  Dipakai untuk menentukan keluaran suatuneuron Merupakan fungsi yang menggambarkanhubungan antara tingkat aktivasi internal(summation function) yang mungkin berbentuklinier atau nonlinear. Beberapa fungsi aktivasi JST diantaranya hardlimit, purelin, dan sigmoid. Yang populerdigunakan adalah fungsi sigmoid yang memilikibeberapa varian : sigmoid logaritma, sigmoidbiner, sigmoid bipolar, sigmoid tangen.
  10. 10.  Hard limit memberikan batasan tegas 0atau 1, purelin memisahkan secara linier,sigmoid berupa fungsi smooth bernilaiantara 0 sampai dengan 1 (bila biner) atauantara -1 sampai 1 (bila bipolar)
  11. 11. Hard limit functiona = 0 jika n < 0a = 1 jika n ≥ 0n0+1-1a = hardlim ( n )
  12. 12.  Dapat belajar dari pengalaman Algoritma untuk JST beroperasi secara langsungdengan angka sehingga data yang tidak numerik harusdiubah menjadi data numerik. JST tidak diprogram untuk menghasilkan keluarantertentu. Semua keluaran atau kesimpulan yang ditarikoleh jaringan didasarkan pada pengalamannya selamamengikuti proses pembelajaran. Pada proses pembelajaran, ke dalam JST dimasukkanpola-pola input (dan output) lalu jaringan akan diajariuntuk memberikan jawaban yang bisa diterima.
  13. 13.  Ditentukan oleh : Pola hubungan antar neuron (disebutarsitektur jaringan) Metode penentuan bobot-bobotsambungan (disebut dengan pelatihanatau proses belajar jaringan) Fungsi aktivasi
  14. 14.  Pada JST, neuron-neuron akan dikumpulkan dalamlapisan-lapisan (layer) yang disebut dengan lapisanneuron (neuron layers). Neuron-neuron pada satu lapisan akandihubungkan dengan lapisan-lapisan sebelum dansesudahnya. Informasi yang diberikan pada jaringan syaraf akandirambatkan lapisan ke lapisan, mulai dari lapisaninput sampai ke lapisan output melalui lapisantersembunyi (hidden layer).
  15. 15.  Faktor terpenting untuk menentukan kelakuan suatuneuron adalah fungsi aktivasi dan pola bobotnya. Umumnya neuron yang terletak pada lapisan yangsama akan memiliki keadaan yang sama → fungsiaktivasi yang sama. Bila neuron-neuron pada suatu lapisan (misal lapisantersembunyi) akan dihubungkan dengan neuron-neuron pada lapisan lain (misal lapisan output) makasetiap neuron pada lapisan tersebut (lapisantersembunyi) juga harus dihubungkan dengan setiapneuron pada lapisan lainnya (lapisan output)
  16. 16.  Ada beberapa arsitektur jaringan syaraf,antara lain : Jaringan dengan lapisan tunggal (singlelayer net) Jaringan dengan banyak lapisan(multilayer net) Jaringan dengan lapisan kompetitif(competitive net)
  17. 17.  Hanya memiliki satu lapisan denganbobot-bobot terhubung Jaringan ini hanya menerima inputkemudian secara langsungakanmengolahnya menjadi outputtanpaharus melalui lapisan tersembunyi.
  18. 18.  Seberapa besar hubungan antara 2neuron ditentukan oleh bobot yangbersesuaian. Semua unit input akan dihubungkandengan setiap unit output.
  19. 19.  Memiliki 1 atau lebih lapisan yang terletakdiantara lapisan input dan lapisan output Ada lapisan bobot yang terletak antara 2lapisan yang bersebelahan Jaringan dengan banyak lapisan ini dapatmenyelesaikan permasalahan yang lebihsulit daripada lapisan tunggal, tentu sajadengan pembelajaran yang lebih rumit
  20. 20.  Sekumpulan neuron bersaing untukmendapatkan hak menjadi aktif Umumnya hubungan antar neuron padalapisan kompetitif ini tidak diperlihatkanpada diagram arsitektur
  21. 21.  Cara belajar JST : Ke dalam JST diinputkan informasi yangsebelumnya telah diketahui hasil keluarannya. Penginputan informasi ini dilakukan lewatnode-node atau unit-unit input. Bobot-bobotantarkoneksi dalam suatu arsitektur diberinilai awal dan kemudian JST dijalankan.
  22. 22.  Bobot-bobot ini bagi jaringan digunakanuntuk belajar dan mengingat suatuinformasi. Pengaturan bobot dilakukansecara terus-menerus dan denganmenggunakan kriteria tertentu sampaidiperoleh keluaran yang diharapkan. Hal yang ingin dicapai denganmelatih/mengajari JST adalah untukmencapai keseimbangan antarakemampuan memorisasi dan generalisasi.
  23. 23.  Kemampuan memorisasi = kemampuan JSTuntuk memanggil kembali secara sempurnasebuah pola yang telah dipelajari. Kemampuan generalisasi = adalahkemampuan JST untuk menghasilkan responyang bisa diterima terhadap pola-pola inputyang serupa (namun tidak identik) denganpola-pola yang sebelumnya telah dipelajari.
  24. 24.  Pembelajaran terawasi (supervisedlearning) Pembelajaran tak terawasi (unsupervisedlearning) Gabungan pembelajaran terawasi dan takterawasi (hybrid)
  25. 25.  Output yang diharapkan telah diketahuisebelumnya Contoh : JST untuk mengenali pasangan pola,misalkan pada operasi ANDInput Target0 0 00 1 01 0 01 1 1
  26. 26.  Satu pola input akan diberikan ke satu neuron padalapisan input Pola ini akan dirambatkan di sepanjang jaringan syarafhingga sampai ke neuron pada lapisan output Lapisan output ini akan membangkitkan pola outputyang akan dicocokkan dengan pola output targetnya Jika berbeda → error Jika error terlalu besar, perlu dilakukan pembelajaranlebih banyak
  27. 27.  Tidak memerlukan target output Tidak dapat ditentukan hasil yangdiharapkan selama proses pembelajaran Nilai bobot disusun dalam suatu rangetertentu tergantung nilai input yangdiberikan Tujuannya untuk mengelompokkan unit yanghampir sama dalam suatu area tertentu
  28. 28.  Merupakan kombinasi dari keduapembelajaran tersebut. Sebagian daribobot-bobotnya ditentukan melaluipembelajaran terawasi dan sebagianlainnya melalui pembelajaran tak terawasi.
  29. 29. Langkah-langkah :1. Inisialisasi semua bobot = Wi = 0 (i=1,..,n)2. Untuk semua vektor input s dan unit target t,lakukan :• Set aktivasi unit masukan Xi = Si (i=1,..,n)• Set aktivasi unit keluaran y = t• Perbaiki bobot menurut persamaan• Wi (baru) = Wi(lama)+∆W• ∆W = Xi.y• Perbaiki bias menurut persamaan :• b(baru) = b(lama)+y
  30. 30. Membedakan pola :# o # # o oo # o # o o# o # # # #(X) (L)Bagaimana JST mengenali pola berikut :# # o# # o# # #
  31. 31. # = 1, o = -1X = 1, L = -1Fungsi aktivasi :y = 1, jika y_in >= 0y = -1, jika y_in < 0# o # # o oo # o t=1 # o o t= -1# o # # # #
  32. 32. Input pertama :1 -1 1-1 1 -11 -1 1∆W = x.t, maka nilai ∆W untuk tiap input:1 -1 1-1 1 -11 -1 1Bias = b.t = 1.1 = 1
  33. 33. Input kedua :1 -1 -11 -1 -11 1 1∆W = x.t, maka nilai ∆W untuk tiap input:-1 1 1-1 1 1-1 -1 -1Bias = b.t = 1.-1 = -1
  34. 34. Bobot baru :0 0 2-2 2 00 -2 0Bias = 0
  35. 35. Aplikasikan bobot baru ke input 1 :(1.0)+( -1.0)+(1.2)+(-1.-2)+(1.2)+(-1.0)+(1.0)+(-1.-2)+(1.0) = 8Jadi y = 1, sesuai target (t=1)Aplikasikan bobot baru ke input 2 :(1.0)+( -1.0)+(-1.2)+(1.-2)+(-1.2)+(-1.0)+(1.0)+(1.-2)+(1.0) = -8Jadi y = -1, sesuai target (t=-1)Jadi JST sudah bisa mengenali pola
  36. 36. Aplikasikan ke pola yang baru :1 1 -11 1 -11 1 1Beri bobot yang baru : (1.0)+( -1.0)+(-1.2)+(1.-2)+(-1.2)+ (-1.0)+(1.0)+(1.-2)+(1.0) = -8Jadi y = -1, dikenali sebagai L
  37. 37. Bentuk paling sederhana dari JST.Digunakan untuk pengklasifikasian pola khususyang biasa disebut linearable separable.Terbatas hanya untuk mengklasifikasikan dua kelassaja.
  38. 38. InputsThreshold Ө(bias)Output yxp
  39. 39. ThresholdӨ(bias)OutputyxpInputsx1x2- 1w1w2wpvi φ(vi)Hardlimiter
  40. 40. x2x1Kelas K2Kelas K1Decision boundaryw1x1 + w2x2 - Ө = 0
  41. 41. Tpxxxx ]...[ 21=Vektor input:Vektor bobot:Vektor output:Tpwwww ]...[ 21=xwv T.=
  42. 42.  Aturan Pembelajaran (Learning Rule)Error e (sinyal kesalahan) dinyatakan sbb:e = t – ydimana :Jika e = 1 , maka wbaru= wlama+ x ( 1 )Jika e = -1 , maka wbaru= wlama– x ( 2 )Jika e = 0 , maka wbaru= wlama( 3 )wbaru= wlama+ e.xbbaru= blama+ e
  43. 43. e = errort = targetx = inputy = outputw = bobot
  44. 44. Membedakan :
  45. 45. • Ada 3 input yaitu x1,x2 dan x3• Ada 3 bobot yaitu w1, w2 dan w3• Tentukan bobot secara random, misal :w = [0.5 0.5 0.5]Σ yx1w1vx3w3No bias neuronx2w2
  46. 46. 1. Hitung jumlah input berbobot (v)(1*0.5)+(1*0.5)+(0*0.5) = 1
  47. 47. 2. Fungsi Aktivasi (menggunakan hardlimit)y = 0 jika v < 0y = 1 jika v ≥ 0y = hardlimit(v)y = hardlimit(1)Jadi y = 1, sesuai target t = 1 untuk input pertama
  48. 48. 3.Cek bobot apakah cocok dengan input kedua [0 1 1]dengan t=0, bobot [0.5 0.5 0.5]v = (0.5*0)+(0.5*1)+(0.5*1) = 1y = hardlimit(1)y = 1, tidak sesuai dengan target, t = 0, maka harusdilakukan perubahan bobot
  49. 49. 5. Hitung y dengan bobot yang baruv = (0.5*0)+(-0.5*1)+(-0.5*1) = -1y = hardlimit(-1) = 0, sesuai dengan t=06. Cek bobot yang baru dengan input pertamav = (0.5*1)+(-0.5*1)+(-0.5*0) = 0y = hardlimit(0) = 1, sesuai dengan t=1
  50. 50. 7. Jika semua input sudah diklasifikasi denganbenar, tidak perlu ada perubahan pada bobotsehingga digunakan aturan sbb:Jika t = y, maka wbaru= wlama
  51. 51. =−==−=== 0,100,211,21332211 txtxtxTest ProblemΣ yx1w1vx2w2No bias neuron
  52. 52. Kita pilih bobot secara random, misalnya:wT= [ 1 -0.8 ]Masukkan input x1 ke dalam jaringan dan output:y = hardlim (wT. x1 )Input x1tidak benar karena t1 = 1[ ] 0)6.0(hardlim218.01hardlim =−=−=y
  53. 53. p1p2n ≥ 1n < 1Perlu diputar berlawananarah dengan jarum jam1231WTCara mencari decision boundary:Jika,n = wp + b = 0n = w1.x1+ w2. x2= 0Maka,x1– 0.8 x2= 05x1– 4x2= 0Jika x2= 1  x1= 0.8Jika x1=1  x2= 1.25
  54. 54. Jika t = 1, sedangkan y = 0, maka:wbaru= wlama+ xTes bobot baru ke jaringan:Hasil output y sesuai dengan target output = 1=+−=+=2.12218.011xww lamabaru[ ] 1)4.4(hardlim212.12hardlim ===y
  55. 55. p1p2n ≥ 1n < 11WT123Cara mencari decision boundary:Jika,n = wp + b = 0w1.x1+ w2. x2= 0Maka,2x1+ 1.2 x2= 0Jika,x2= 1  x1= - 1.2/2x1= - 0.6
  56. 56. Tes input kedua:y = hardlim (wT. x2 )Input x2 tidak benar karena t2 =0[ ] 1)4.0(hardlim212.12hardlim ==−=y
  57. 57. Jika t = 0, sedangkan y = 1, maka:wbaru= wlama- xTes bobot baru ke jaringan:Hasil output y sesuai dengan target output = 0−=−−=−=8.03212.122xww lamabaru[ ] 0)6.4(hardlim218.03hardlim =−=−−=y
  58. 58. Cara mencari decision boundary:Jika,n = wp + b = 0w1.x1+ w2. x2= 0Maka,3x1– 0.8 x2= 0Jika,x2= 2  x1= 1.6/3x1= 8/15p1p2n ≥ 1n < 1Perlu diputar berlawananarah dengan jarum jam1WT123
  59. 59. Tes input ketiga:y = hardlim (wT. x3 )Input x3 tidak benar karena t3 =0[ ] 1)8.0(hardlim108.03hardlim ==−−=y
  60. 60. Jika t = 0, sedangkan y = 1, maka:wbaru= wlama- xTes bobot baru ke jaringan:Hasil output y sesuai dengan target output = 0=−−−=−=2.03108.033xww lamabaru[ ] 0)2.0(hardlim102.03hardlim =−=−=y
  61. 61. Cara mencari decision boundary:Jika,n = wp + b = 0w1.x1+ w2. x2= 0Maka,3x1+ 0.2 x2= 0Jika,x2= 1  x1= -0.2/3x1= -1/15p1p2n ≥ 1n < 1 1WT123

×