380 likes | 711 Views
Pengenalan Pola Berbasis Neural Network - EL 424. Budi Rahardjo Jurusan Teknik Elektro ITB. Intro. Kuliah ini merupakan bagian dari kuliah pengenalan pola (pattern recognition) secara utuh. Bagian ini hanya membahas Artificial Neural Network (ANN) - Jaringan Syaraf Tiruan
E N D
Pengenalan Pola Berbasis Neural Network - EL 424 Budi Rahardjo Jurusan Teknik Elektro ITB
Intro • Kuliah ini merupakan bagian dari kuliah pengenalan pola (pattern recognition) secara utuh. Bagian ini hanya membahas Artificial Neural Network (ANN) - Jaringan Syaraf Tiruan • Dikarenakan banyak yang belum mengenal neural nets, maka kuliah akan dimulai dengan introduction EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Pentingnya Neural Computing • Jenis komputasi baru yang diharapkan dapat mengatasi kelemahan sistem komputasi konvensional yang berbasis von Neumann machine. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
John Louis von Neumann • 1903 - 1957 • Mencetuskan “von Neumann architecture” yang menjadi basis dari sisten komputer modern (saat ini) http://ensiklomedia.insan.co.id EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Von Neumann architecture Contol unit Arithmetic unit(ALU) Internal bus Intenal (main)memory Input/output unit(I/O unit) Central Processing Unit (CPU) External bus Secondary memory(magnetic wire) Teletype(keyboard/printer) CRTgraphics display EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Kelebihan von Neumann machines • Fast arithmetic • Doing precise what the programmers programm them to do EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Kelemahan von Neumann machines • Peka terhadap noise. • Data struktur harus dalam format yang precise • Sulit mengimplementasikan massive parallelism • Tidak fault tolerant. (Misal memory rusak, program berantakan.) • Sulit beradaptasi dengan keadaan EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Latar Belakang Neural Computing • Melihat kemampuan manusia dalam memproses informasi, mengenal wajah, tulisan, dsb. Melihat wajah dari sudut pandang yang belum pernah dialami sebelumnya. • Bahkan anak-anak dapat melakukan hal tsb. • Masih belum tahu algoritma yang digunakan. • Melihat analogi biologis. • Otak manusia berisi kira-kira 20 billion (210) nerve cells. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Latar belakang (2) • Dipercayai bahwa kekuatan komputasi otak terletak pada • hubungan antar nerve cells, • hierarchical organization, • firing characteristics, • banyaknya jumlah hubugnan EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Harapan atas Neural Comp. • Membantu dalam pemecahan masalah yang • Algoritmanya tidak diketahui secara pasti • memiliki banyak contoh • ingin diketahui strukturnya dari contoh-contoh tsb. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Arsitektur Komputasi Neural • Memiliki beberapa hal yang menarik • komputasi lokal,adaptive interaction between elements • paralel • simple processing elements • high degree of interconnections • masalah sering direpresentasikan dalam struktur • memungkinkan implementasi hardware (VLSI, optical) • Biological computation? EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Physical Neuron (1) EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Physical Neuron (2) EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Physical Neuron (3) • Komponen utama biological neuron • Soma • Axon (output) • Dendrites (input) • Synapse: hubungan axonic nerve fiber dengan soma atau dendrite dari neuron lain • Sebuah neuron memiliki 1000 s/d 10.000 synapes EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Aplikasi ANN • Business applications • predict movement of stocks • marketing • Other applications • signature analysis (implemented in chip) • Pen PC, writing -> ASCII • Speech and vision recognition systems • Process control EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Definisi ANN • A Neural Network is an interconnected assemply of simple procesing elements / units / nodes, whose functionality is loosely based on the animal neuron. The processing ability of the network is stored in the inter-unit connection strengths, or weights, obtained by a process of adaptation to, or learnig from, a set of training patterns. K. Gurney@aivru.shef.ac.uk - http://www.shef.ac.uk/psychology/gurney/notes EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Konsep Dasar Artificial Neural Computing 1 if x1*w1 + x2*w2 + x3*w3 + bias * wb > 0 0 if x1*w1 + x2*w2 + x3*w3 + bias * wb <= 0 x1 w1 x2 w2 x3 w3 Processing Unit Linear Threshold Unit wb bias input EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Konsep Dasar (2) • Contoh sebelumnya: • output = activation level, umumnya tidak harus begitu (ada processing lagi) • Processing hanya berbentuk threshold, dimana dalam contoh menggunakan 0 (nol). Threshold bisa • Perceptron, single layer EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Konsep Dasar (3) • ANN sederhana dapat digunakan untuk mengklasifikasikan pola ke dalam 2 kelas • Vektor input x, diberikan oleh x1, x2, … xn, adalah input stimulus yang mewakili atribut (feature). • Feature: • intensitas cahaya (visual) • spektrum power (gelombang suara) • temperatur, kelembaban (besaran fisik lainnya) • umur, penghasilan, pengeluaran (pemohon kredit) EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Perceptron • Learning rule • Change the weigth by an amount proportional to the difference between the desired output and the actual output • wi = Є* (D-Y)IiЄ = learning rateD = desired outputY = actual output EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Perceptron (2) • Setelah stabil, (D-Y) = 0 • Hasilnya (untuk 2 input): decision surface line • I1 = (w0 / w1) . I0 + (wb / w1) I1 I0 EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Processing Unit • Menentukan output berdasarkan activation level • Threshold • Sigmoid function • Gaussian EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Processing Unit (2) • Sigmoid function dengan berbagai harga k EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Multi-Layer x1 x2 x3 bias input layer hidden layer output layer EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Learning • Hebbian rule • Jika dua cells fire pada saat yang bersamaan, hubungan antar keduanya (strength of connection) harus ditingkatkan. • Macam-macam caranya, misalnya meningkatkan bobot hubungan berdasarkan activation level • wij = Єai aj EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Learning (2) • Delta rule: Ubah weight sesuai sehingga mengurangi kesalahan (perbedaan antara activation level yang diinginkan dan yang diperoleh).Sering juga disebut Widrow-Hoff (1960) learning rule atau Least Mean Square (LMS) rule. • wij = Єei aj • error for unit i: ei = tj - aj EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Learning (3) • Contoh halaman 87-88 buku PDP • Solusi dapat terjadi jika ada set dari weights yang memecahkan solusi itu. Syaratnya adalah yang disebut linear predictability constraints EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Hidden Units • Sebelumnya telah dibahas pattern associator, dan delta rule. • Jika output berupa linear threshold unit, maka disebut perceptron. • Jika pure linear, disebut Least Mean Square (LMS) associator. • Ada theorems: pattern classification. • Input bisa diklasifikasikan menjadi dua kelas. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Hidden Units (2) • Perceptron learning rule: • Net input = sum dari wi ii • Jika net > threshold, unit turn on • Respon dibandingkan. Jika kategori betul, no change • Jika output turn on padahal mestinya 0, maka threshold + 1. Jika input ii = 0, tidak ada perubahan wi, tapi jika ii =1, maka wi dikurangi 1. • Jika output turn off padahal mestinya 1, maka sebaliknya, threshold dikurangi and weight ditambah. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Hidden Units (3) • Minsky & Papert (1969) membunuh Perceptron dengan contoh bahwa sistem ini tidak dapat memecahkan masalah XOR • Inequalities yang harus dipecahkan: pp. 123 • Tidak linearly separable di dua dimensi • Harus menggunakan 3 dimensi EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Hidden Units • Ada unit yg tidak terhubung ke input/output • Bagaimana cara belajarnya? EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Minimizing Mean Square Error • LMS procedure, latar belakang • Error function, must be minimized. • Setelah setiap pattern dipresentasikan, error dari pattern dihitung, dan weigh di “moved down” mengikuti error gradient mendekati harga minimum untuk pattern tersebut. EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Minimizing Mean Square Error • Gradient Decent: make a change in the weight proportional to the negative dreivative of the error, as measured on the current pattern with respect to each weignt EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo
Referensi • Buku • James L. McCLelland and David E. Rumelhart, “Explorations in Parallel Distributed Processing,” MIT Press, 1988. ISBN: 0-262-63113-X(pbk.) • Introduction • http://www.cs.stir.ac.uk/~lss/NNIntro/ EL-424 Pengenalan Pola dengan Neural Nets - Budi Rahardjo