Jaringan Syaraf Tiruan Artificial Neural Networks (ANN) 3 SKS Dosen: Muhammad Fachrie, M.Cs. JST - Pertemuan 2
Outline Pengantar Perceptron Perceptron untuk Klasifikasi Algoritma Belajar Perceptron JST - Pertemuan 2
Pengantar Perceptron Perceptron adalah salah satu model jaringan syaraf tiruan generasi awal yang memiliki kemampuan mengklasifikasikan pola/ data yang terpisah secara linear (linearly separable). JST - Pertemuan 2
Linearly Separable – p OR q 1 1 1 JST - Pertemuan 2
Linearly Separable – p AND q 1 1 1 JST - Pertemuan 2
Linear atau Non Linear? p q p XOR q 1 JST - Pertemuan 2
Non Linearly Separable – p XOR q 1 1 1 JST - Pertemuan 2
Non Linearly Separable – p XOR q 1 1 1 JST - Pertemuan 2
Linear atau Non Linear? p q Target 1 2 -1 -2 JST - Pertemuan 2
Linear atau Non Linear? p q Target 1 2 -1 -2 2 1 -2 -1 1 2 -1 -2 -1 -2 2 1 -2 -1 1 2 -1 -2 JST - Pertemuan 2
Arsitektur Perceptron – 1 Output x1 w11 w21 x2 Y b dimana: 1 Input Layer Output Layer JST - Pertemuan 2
Arsitektur Perceptron – n Output x1 w11 w12 Y1 w21 x2 dimana: w22 Y2 b1 1 b2 Input Layer Output Layer JST - Pertemuan 2
Klasifikasi dengan Perceptron x1 p q p AND q 1 2 3 ? q x2 Y -4 1 JST - Pertemuan 2
Klasifikasi dengan Perceptron Target dikonversi dulu ke dalam rentang nilai bipolar [1,-1], karena fungsi aktivasi yang digunakan adalah hard limit bipolar. p q p AND q 1 p q p AND q 1 -1 JST - Pertemuan 2
Klasifikasi dengan Perceptron q p AND q 1 -1 p x1 2 3 ? q x2 Y -4 1 JST - Pertemuan 2
Learning pada Perceptron Agar perceptron mampu mengklasifikasikan data/ pola dengan benar, maka perceptron harus memiliki bobot jaringan yang tepat/ optimal. Bobot jaringan yang optimal tersebut diperoleh melalui proses pembelajaran (learning). Proses learning biasanya dilakukan dalam beberapa kali iterasi (tergantung kerumitan dan banyaknya data latih). Iterasi dalam proses learning Jaringan Syaraf Tiruan biasa disebut dengan epoch. Batas kuliah 27 sep 2016 JST - Pertemuan 2
Fungsi Aktivasi Fungsi aktivasi adalah fungsi yang digunakan untuk mengaktifkan nilai keluaran (output) dari sebuah neuron. Pada perceptron, fungsi aktivasi hanya terdapat pada neuron yang berada di output layer. Fungsi aktivasi yang dipakai pada perceptron adalah hard limit bipolar. net JST - Pertemuan 2
Parameter Learning Jumlah epoch Banyaknya iterasi learning (epoch) menentukan berapa lama proses learning yang dilakukan. Kecendrungannya, semakin besar epoch, semakin bagus akurasi sistem. Learning rate (α) Laju belajar (learning rate) menentukan seberapa signifikan perubahan bobot jaringan selama proses learning. Umumnya learning rate diset antara 0 s.d. 1. JST - Pertemuan 2
Algoritma Learning Perceptron Tentukan jumlah epoch dan nilai α (misal, α = 1) Inisialisasi semua bobot jaringan (w dan b) Biasanya w dan b diset = 0. Selama ada target yang tidak sama dengan output perceptron, lakukan: a. Hitung nilai keluaran (y) pada output layer: dimana: JST - Pertemuan 2
Algoritma Learning Perceptron b. Perbaiki bobot jaringan yang mengandung kesalahan (y ≠ target) dengan rumus: JST - Pertemuan 2
Learning Perceptron w11 = 0 w21 = 0 p x1 q x2 b1 = 0 p AND q 1 -1 p x1 w11 = 0 w21 = 0 q x2 Y b1 = 0 Maksimum epoch = 10 Learning rate = 1 1 JST - Pertemuan 2
Learning Perceptron – Inisialisasi Bobot Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b INISIALISASI JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b INISIALISASI 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b INISIALISASI 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b INISIALISASI 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b INISIALISASI 1 -1 Target = y BOBOT TETAP JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 1 -1 JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 1 -1 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 1 -1 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 1 -1 1 -2 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 1 -1 1 -2 Target = y BOBOT TETAP! JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 2 -2 JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 2 -2 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 2 -2 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 2 -2 1 -1 Target = y BOBOT TETAP! JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 2 -2 1 -1 Target = y BOBOT TETAP! JST - Pertemuan 2
Learning Perceptron – epoch 10 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 B ∆w11 ∆w21 ∆b1 w11 w21 b BOBOT DARI EPOCH 9 2 3 -4 1 -1 JST - Pertemuan 2
Testing Perceptron w11 = 2 w21 = 3 p x1 q x2 b1 = -4 1 p q p AND q 1 -1 p x1 w11 = 2 w21 = 3 q x2 Y b1 = -4 1 JST - Pertemuan 2
LATIHAN Lakukan proses learning pada perceptron untuk bisa mengenali pola berikut ini: Set bobot awal dan bias = 0, learning rate = 1, dan MaxEpoch = 3. Masukan Target x1 x2 x3 t 1 -1 JST - Pertemuan 2
Learning Perceptron w11 = 0 w21 = 0 w31 = 0 x1 x2 x3 b1 = 0 1 x1 x2 X3 Target 1 -1 w21 = 0 x2 Y x3 w31 = 0 b1 = 0 1 JST - Pertemuan 2
Learning Perceptron – Inisialisasi Bobot Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b INISIALISASI JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b INISIALISASI 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b INISIALISASI 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b INISIALISASI 1 -1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 1 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b INISIALISASI 1 -1 Target = y BOBOT TETAP! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b BOBOT DARI EPOCH 1 -1 JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b BOBOT DARI EPOCH 1 -1 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b BOBOT DARI EPOCH 1 -1 1 Target ≠ y PERBAIKI BOBOT! JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 b BOBOT DARI EPOCH 1 -1 1 BOBOT TETAP! Target = y JST - Pertemuan 2
Learning Perceptron – epoch 2 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 BOBOT DARI EPOCH 1 -1 1 -2 BOBOT TETAP! Target = y JST - Pertemuan 2
Learning Perceptron – epoch 3 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 BOBOT DARI EPOCH 2 -1 -2 1 JST - Pertemuan 2
Testing Perceptron x1 w11 = -1 w21 = 0 x2 x3 w31 = 0 1 Y b1 = -2 x1 x2 Target 1 -1 x2 w21 = 0 x1 x2 X3 Output 1 -1 Y x3 w31 = 0 b1 = -2 1 JST - Pertemuan 2
Learning Perceptron – epoch 26 Masukan Target (t) y Perubahan Bobot Bobot baru x1 x2 x3 B ∆w11 ∆w21 ∆w31 ∆b1 w11 w21 w31 BOBOT DARI EPOCH 25 2 3 4 -8 1 -1 JST - Pertemuan 2
Testing Perceptron x1 w11 = 2 w21 = 3 x2 x3 w31 = 4 1 Y b1 = -8 x1 x2 Target 1 -1 x2 w21 = 3 x1 x2 X3 Output 1 -1 Y x3 w31 = 4 b1 = -8 1 JST - Pertemuan 2
Perceptron untuk Mengenali Gambar Bagaimana jika perceptron digunakan untuk mengenali sebuah gambar? JST - Pertemuan 2
Perceptron untuk Mengenali Gambar Warna hitam = 0; Warna putih = 1; Angka 1 diberi target 1 Angka 0 diberi target -1 JST - Pertemuan 2
Perceptron untuk Mengenali Gambar 1 JST - Pertemuan 2
Perceptron untuk Mengenali Gambar Masukan Target x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15 t 1 -1 JST - Pertemuan 2