%Program Hebb AND Hasil (Contoh Soal 1.5)

Slides:



Advertisements
Presentasi serupa
Rekursif.
Advertisements

Teknologi Informasi dan Komunikasi Kelas vii
MLP Feed-Forward Back Propagation Neural Net
Input dan output Data Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier standar READ atau READLN. ReadLn digunakan untuk.
JARINGAN SYARAF TIRUAN
Perceptron.
Jaringan Saraf Tiruan Model Hebb.
METODE HEBB~3 Sutarno, ST. MT..
JaRINGAN SARAF TIRUAN (Neural Network)
Ir. Endang Sri Rahayu, M.Kom.
Supervised Learning Process dengan Backpropagation of Error
PERCEPTRON Arsitektur jaringannya mirip dengan Hebb
JST BACK PROPAGATION.
Jaringan Syaraf Tiruan
Rosenblatt 1962 Minsky – Papert 1969
Jaringan Syaraf Tiruan (JST)
Procedure & Function Sub Program.
*Operator - ARITMATIKA
Konsep dasar Algoritma Contoh Problem
MULTILAYER PERCEPTRON
MODEL JARINGAN PERCEPTRON
JST BACK PROPAGATION.
Perceptron.
SISTEM CERDAS Jaringan Syaraf Tiruan
Week 2 Hebbian & Perceptron (Eka Rahayu S., M. Kom.)
Artificial Intelligence Oleh Melania SM
PEMBELAJARAN MESIN STMIK AMIKOM PURWOKERTO
Pertemuan 12 ARTIFICIAL NEURAL NETWORKS (ANN) - JARINGAN SYARAF TIRUAN - Betha Nurina Sari, M.Kom.
Perceptron Algoritma Pelatihan Perceptron:
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
JST (Jaringan Syaraf Tiruan)
Week 3 BackPropagation (Eka Rahayu S., M. Kom.)
GERBANG-GERBANG LOGIKA
Jaringan Syaraf Tiruan
Menggunakan Pengulangan - Do While / Loop - Do / Loop While - While / Wend Dosen : Ega Hegarini.
Gerbang Logika NAND, NOR, XOR, XNOR
Flowchart.
JST PERCEPTRON.
JARINGAN SYARAF TIRUAN SISTEM BERBASIS PENGETAHUAN
Jaringan Syaraf Tiruan
Logic Gate (Gerbang Logika)
Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (Artificial Neural Networks)
Array Buat algoritma untuk mencari nilai terbesar dari 5 nilai mahasiswa yang diinputkan dengan array.
Seleksi Kondisi merupakan perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Operator yang digunakan.
MLP Feed-Forward Back Propagation Neural Net
STRUKTUR CONTROL program
Artificial Intelligence (AI)
Jaringan Syaraf Tiruan Artificial Neural Networks (ANN)
Kasus 3 Buat algoritma untuk memasukkan nama mahasiswa dan nimnya sebanyak 10 mahasiswa.
Struktur Jaringan Syaraf Tiruan
Jawaban Tidak harus bernilai = 1. tergantung kesepakatan
Jaringan Syaraf Tiruan
Artificial Neural Network
McCulloch – Pitts Neuron
Neural Network.
JARINGAN SYARAF TIRUAN
PERTEMUAN KE 4 PROSES BERSYARAT.
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
Jaringan Syaraf Tiruan
Pencabangan.
Pengenalan Pola secara Neural (PPNeur)
JARINGAN SYARAF TIRUAN
Single-Layer Perceptron
JARINGAN SYARAF TIRUAN
Asosiasi Pola Kuliah 8.
Arsitektur jaringan Hebb Jaringan syaraf tiruan
GERBANG LOGIKA.
Teori Bahasa Otomata (1)
Simple Networks Jaringan Sederhana Machine Learning Team PENS - ITS 2006 Modification By Agus SBN.
Transcript presentasi:

%Program Hebb AND Hasil (Contoh Soal 1.5) %Memasukkan data input dan target p1=[-1 -1 1 1]'; p2=[-1 1 -1 1]'; t=[-1 -1 -1 1]'; %Memasukkan bobot dan bias hasil pelatihan w=[2 2] b=-2; %Iterasi (1 sampai 4) for i=1:4 % Menghitung n n(i)=w(1)*p1(i)+w(2)*p2(i)+b; %Menghitung output if n(i)>=0 a(i)=1; else a(i)=-1; end %Menampilkan hasil [p1 p2 t a']

%Program Hebb AND Pelatihan input dan output bipolar (Contoh Soal 1.5) %Memasukkan data input dan target p1=[-1 -1 1 1]'; p2=[-1 1 -1 1]'; t=[-1 -1 -1 1]; %Inisialsasi w1=0; w2=0; b=0; %Iterasi (1 sampai 4) for i=1:4 %Perbaiki bobot w1=w1+p1(i)*t(i); w2=w2+p2(i)*t(i); b=b+t(i); end %Tampilkan hasil bobot dan bais terakhir [w1 w2 b]

%Program neuron Hebb untuk NAND (input dan output bipolar) %Memasukkan data input dan target p1=[-1 -1 1 1]'; p2=[-1 1 -1 1]'; t=[-1 1 1 1]; %Inisialsasi w1=0; w2=0; b=0; %Iterasi untuk menghitung bobot(1 sampai 4) for i=1:4 %Perbaiki bobot w1=w1+p1(i)*t(i) w2=w2+p2(i)*t(i) b=b+t(i) end

%Program neuron Hebb untuk NAND (input dan output bipolar) %Memasukkan data input dan target p1=[-1 -1 1 1]; p2=[-1 1 -1 1]; t=[-1 1 1 1]; %Inisialsasi w1=0; w2=0; b=0; %Iterasi untuk menghitung bobot(1 sampai 4) for i=1:4 %Perbaiki bobot w1=w1+p1(i)*t(i) w2=w2+p2(i)*t(i) b=b+t(i); end [w1 w2 b]

%Program McCulloch Pitts NAND (Soal Latihan 1.2) %Memasukkan data input p1=[0 0 1 1]'; p2=[0 1 0 1]'; %Memasukkan bobot dan bias (hasil analisis) w=[3 4] b=-6; %Iterasi (1 sampai 4) for i=1:4 % Menghitung n n(i)=w(1)*p1(i)+w(2)*p2(i)+b; %Menghitung output if n(i)>=0 a(i)=0; else a(i)=1; end %Menampilkan input output [p1 p2 a']

%Program McCulloch Pitts AND tanpa bias (input dan output biner) Contoh Soal 1.1 %Memasukkan data input dan target p1=[0 0 1 1]'; p2=[0 1 0 1]'; t=[0 0 0 1]'; %Memasukkan bobot dan threshold (hasil coba-coba) w1=1; w2=1; th=2; %Iterasi (1 sampai 4) for i=1:4 % menghitung n n(i)= w1*p1(i)+w2*p2(i); % Menghitung output a if n(i)<th a(i)=0; else a(i)=1; end % Tampilkan hasil [p1 p2 a']

%Program McCulloch Pitts AND tanpa bias (input dan output biner) Contoh Soal 1.1 %Memasukkan data input dan target p1=[0 0 1 1]'; p2=[0 1 0 1]'; t=[0 0 0 1]'; %Memasukkan bobot dan threshold (hasil coba-coba) w1=1; w2=1; th=2; %Iterasi (1 sampai 4) for i=1:4 % menghitung n n(i)= w1*p1(i)+w2*p2(i); % Menghitung output a if n(i)<th a(i)=0; else a(i)=1; end % Tampilkan hasil [p1 p2 a']

%Program McCulloch Pitts AND dengan bias (input dan output biner) Contoh Soal 1.1 %Memasukkan data input dan target p1=[0 0 1 1]'; p2=[0 1 0 1]'; t=[0 0 0 1]'; %Memasukkan bobot dan bias (hasil analisis) w1=1; w2=1; b=-2; %Iterasi (1 sampai 4) for i=1:4 % menghitung n n(i)= w1*p1(i)+w2*p2(i)+b; % Menghitung output a if n(i)<0 a(i)=0; else a(i)=1; end % Tampilkan hasil [p1 p2 a']

%Program McCulloch Pitts OR (input dan output biner) Contoh Soal 1.2 %Memasukkan data input dan target p1=[0 0 1 1]'; p2=[0 1 0 1]'; t=[0 0 0 1]'; %Memasukkan bobot dan threshold w1=1; w2=1; th=1; %Iterasi (1 sampai 4) for i=1:4 % menghitung n n(i)= w1*p1(i)+w2*p2(i); % Menghitung output a if n(i)<th a(i)=0; else a(i)=1; end % Tampilkan hasil [p1 p2 a']

%Program p1^~p2 (Contoh Soal 1.3) %Memasukkan bobot dan threshold w1=[2 -1]; tr1=2; %Iterasi (1 sampai 4) for i=1:4 %Menghitung n n(i)=w1(1)*p1(i)+w1(2)*p2(i); %Menghitung output q1 if n(i)>=tr1 q1(i)=1; else q1(i)=0; end %Tampilkan output [p1 p2 q1']

%Program p1^~p2 (Contoh Soal 1.3) %Memasukkan bobot dan threshold w1=[2 -1]; tr1=2; %Iterasi (1 sampai 4) for i=1:4 %Menghitung n n(i)=w1(1)*p1(i)+w1(2)*p2(i); %Menghitung output q1 if n(i)>=tr1 q1(i)=1; else q1(i)=0; end %Tampilkan output [p1 p2 q1']

%Program McCulloch Pitts XNOR (Latihan Soal 1.2) %Memasukkan data input p1=[0 0 1 1]'; p2=[0 1 0 1]'; %Subprogram NOT p1 OR p2 %Memasukkan bobot dan bias w1=[-1 1]; b=-0.5; %Iterasi (1 sampai 4) for i=1:4 %Menghitung n n(i)=w1(1)*p1(i)+w1(2)*p2(i)+b; %Menghitung output q1 if n(i)>=0 q1(i)=0; else q1(i)=1; end %Subprogram NOT p2 OR p1 w2=[1 -1]; % Menghitung n n(i)=w2(1)*p1(i)+w2(2)*p2(i)+b; %Menghitung output q2 q2(i)=0; q2(i)=1; %Subprogram q1 AND q2 w3=[1 1]; b=-2; n(i)=w3(1)*q1(i)+w3(2)*q2(i)+b; %Menghitung output a(i)=1; a(i)=0; %Menampilkan input output [p1 p2 q1' q2' a']

%Program McCulloch Pitts XOR (Latihan Soal 1.2) %Memasukkan data input p1=[0 0 1 1]'; p2=[0 1 0 1]'; %Subprogram NOT p1 OR p2 %Memasukkan bobot dan bias w1=[-1 1]; b=-0.5; %Iterasi (1 sampai 4) for i=1:4 %Menghitung n n(i)=w1(1)*p1(i)+w1(2)*p2(i)+b; %Menghitung output q1 if n(i)>=0 q1(i)=1; else q1(i)=0; end %Subprogram NOT p2 OR p1 w2=[1 -1]; % Menghitung n n(i)=w2(1)*p1(i)+w2(2)*p2(i)+b; %Menghitung output q2 q2(i)=1; q2(i)=0; %Subprogram q1 AND q2 w3=[1 1]; b=-2; n(i)=w3(1)*q1(i)+w3(2)*q2(i)+b; %Menghitung output a(i)=1; a(i)=0; %Menampilkan input output [p1 p2 q1' q2' a']

clear epoch %Program perceptron tiga input biner bipolar AND (Contoh Soal 2.3) %Memasukkan data input dan target p1=[1 1 1 0]; p2=[1 1 0 1]; p3=[1 0 1 1]; t=[1 -1 -1 -1]; %Memasukkan bobot awal w1=0; w2=0; w3=0; b=0; teta=0.1; alpha=1; for j=1:30 for i=1:4 %Menghitung n n(i)=w1*p1(i)+w2*p2(i)+w3*p3(i)+b; %Menghitung output y if n(i)>teta y(i)=1; elseif n(i)<-teta y(i)=-1; else y(i)=0; end %Memeriksa apakah keluaran = target if y(i) == t(i) %w1=w1; %w2=w2; %w3=w3; %b=b; %Menentukan perubahan bobot dw1=alpha*p1(i)*t(i); dw2=alpha*p2(i)*t(i); dw3=alpha*p3(i)*t(i); db=alpha*t(i); %Menghitung bobot baru w1=w1+dw1; w2=w2+dw2; w3=w3+dw3; b=b+db; %Memeriksa apakah semua keluaran = target if y == t k=j; break k [w1 w2 w3 b]

clear epoch %Program perceptron AND 2 masukan biner keluaran bipolar (Contoh Soal 2.2) %Memasukkan data input dan target p1=[1 1 0 0]; p2=[1 0 1 0]; t=[1 -1 -1 -1]; %Inisialisasi bobot awal w1=0; w2=0; b=0; teta=.1; alpha=2; k=0; for j=1:20 for i=1:4 %Menghitung n n(i)=w1*p1(i)+w2*p2(i)+b; %Menghitung output y if n(i)>teta y(i)=1; elseif n(i)<-teta y(i)=-1; else y(i)=0; end %Memeriksa apakah keluaran = target if y(i) == t(i) w1=w1; w2=w2; b=b; %Menentukan perubahan bobot dw1=alpha*p1(i)*t(i); dw2=alpha*p2(i)*t(i); db=alpha*t(i); %Menghitung bobot baru w1=w1+dw1; w2=w2+dw2; b=b+db; %Memeriksa apakah semua keluaran = target if y == t %epoch(j)=j; k=j; break %epoch(j)=0; %Menampilkan epoch dan bobot terakhir x='Jumlah epoch adalah '; yy=num2str(k); z=[x yy]; disp(z) [w1 w2 b]

clear all %Program Perceptron AND input dan output bipolar Pelatihan (Contoh Soal 2.1) % Memasukkan data input dan target p1=[1 1 -1 -1]'; p2=[1 -1 1 -1]'; t=[1 -1 -1 -1]'; %Inisialsasi w=[0 0]; b=0; alpha=1; teta=0; %Iterasi (1 sampai 4) for j=1:10 for i=1:4 % Menghitung n n(i)=w(1)*p1(i)+w(2)*p2(i)+b; if n(i)>teta a(i)=1; else n(i)<=teta a(i)=-1; end if a(i)'==t(i) w(1)=w(1); w(2)=w(2); b=b; else % Perbaiki bobot w(1)=w(1)+alpha*p1(i)*t(i); w(2)=w(2)+alpha*p2(i)*t(i); b=b+alpha*t(i); %Tampilkan hasil bobot dan bais terakhir [w(1) w(2) b]