Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
408 views

ANN Matlab

This document discusses artificial neural networks in Matlab. It covers the basic architecture of a single neuron with weights, inputs, biases and transfer functions. It then discusses building networks with multiple layers and neurons. Finally, it provides examples of implementing basic logic gates like AND, OR, NAND and NOR using perceptrons in Matlab and training them on sample input and target output data. The document also briefly introduces backpropagation and linear filters that can be implemented as neural networks in Matlab.

Uploaded by

prashmce
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
408 views

ANN Matlab

This document discusses artificial neural networks in Matlab. It covers the basic architecture of a single neuron with weights, inputs, biases and transfer functions. It then discusses building networks with multiple layers and neurons. Finally, it provides examples of implementing basic logic gates like AND, OR, NAND and NOR using perceptrons in Matlab and training them on sample input and target output data. The document also briefly introduces backpropagation and linear filters that can be implemented as neural networks in Matlab.

Uploaded by

prashmce
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
You are on page 1/ 13

Artificial Neural Network

in Matlab
Hany Ferdinando
Neural Network in Matlab 2
Architecture (single neuron)
w is weight matrices, dimension 1xR
p is input vector, dimension Rx1
b is bias
a = f(Wp + b)
Neural Network in Matlab 3
Transfer Function
Neural Network in Matlab 4
Architecture with neurons
w is weight matrices, dimension SxR
p is input vector, dimension Rxn
b is bias
Neural Network in Matlab 5
Multiple layers
Neural Network in Matlab 6
Perceptrons in Matlab
Make the perceptrons with net = newp(PR,S,TF,LF)
PR = Rx2 matrix of min and max values for R input elements
S = number of output vector
TF = Transfer function, default = hardlim, other option = hardlims
LF = Learning function, default = learnp, other option = learnpn
learnp Dw = (t-a)p
T
= ep
T
learnpn normalized learnp
hardlim = hardlimit function
hardlims = symetric hardlimit function
W
new
= W
old
+ DW b
new
= b
old
+ e where e = t - a
Neural Network in Matlab 7
Compute manually
This is an exercise how to run the artificial
neural network
From the next problem, we will compute
the weights and biases manually
Neural Network in Matlab 8
AND Gate in Perceptron
P = [0 0 1 1; 0 1 0 1];
T = [0 0 0 1];

net = newp([0 1; 0 1],1);
weight_init = net.IW{1,1}
bias_init = net.b{1}

net.trainParam.epochs = 20;
net = train(net,P,T);
weight_final = net.IW{1,1}
bias_final = net.b{1}
simulation = sim(net,P)
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
6 Epochs
T
r
a
i
n
i
n
g
-
B
l
u
e


G
o
a
l
-
B
l
a
c
k
Performance is 0, Goal is 0
weight_init = [0 0], bias_init = 0
weight_final = [2 1], bias_final = -3
Neural Network in Matlab 9
OR Gate in Perceptron
P = [0 0 1 1; 0 1 0 1];
T = [0 1 1 1];

net = newp([0 1; 0 1],1);
weight_init = net.IW{1,1}
bias_init = net.b{1}

net.trainParam.epochs = 20;
net = train(net,P,T);
weight_final = net.IW{1,1}
bias_final = net.b{1}
simulation = sim(net,P)
0 0.5 1 1.5 2 2.5 3 3.5 4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
4 Epochs
T
r
a
i
n
i
n
g
-
B
l
u
e


G
o
a
l
-
B
l
a
c
k
Performance is 0, Goal is 0
weight_init = [0 0], bias_init = 0
weight_final = [1 1], bias_final = -1
Neural Network in Matlab 10
NAND Gate in Perceptron
P = [0 0 1 1; 0 1 0 1];
T = [1 1 1 0];

net = newp([0 1; 0 1],1);
weight_init = net.IW{1,1}
bias_init = net.b{1}

net.trainParam.epochs = 20;
net = train(net,P,T);
weight_final = net.IW{1,1}
bias_final = net.b{1}
simulation = sim(net,P)
weight_init = [0 0], bias_init = 0
weight_final = [-2 -1], bias_final = 2
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
6 Epochs
T
r
a
i
n
i
n
g
-
B
l
u
e


G
o
a
l
-
B
l
a
c
k
Performance is 0, Goal is 0
Neural Network in Matlab 11
NOR Gate in Perceptron
P = [0 0 1 1; 0 1 0 1];
T = [1 0 0 0];

net = newp([0 1; 0 1],1);
weight_init = net.IW{1,1}
bias_init = net.b{1}

net.trainParam.epochs = 20;
net = train(net,P,T);
weight_final = net.IW{1,1}
bias_final = net.b{1}
simulation = sim(net,P)
weight_init = [0 0], bias_init = 0
weight_final = [-1 -1], bias_final = 0
0 0.5 1 1.5 2 2.5 3 3.5 4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
4 Epochs
T
r
a
i
n
i
n
g
-
B
l
u
e


G
o
a
l
-
B
l
a
c
k
Performance is 0, Goal is 0
Neural Network in Matlab 12
Backpropagation in Matlab
Make the backpropagation with
net = newff(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF)
PR = Rx2 matrix of min and max values for R input elements
S = number of output vector
BTF = Transfer function (user can use any transfer functions)
BLF = Learning function
PF = performance
x
k+1
= x
k
- a
k
g
k
Neural Network in Matlab 13
Linear Filter (with ANN) in Matlab
Make the Linear Filter with newlin(PR,S,ID,LR)
PR = Rx2 matrix of min and max values for R input elements
S = number of output vector
ID = delay
LR = Learning Rate
Transfer function for linear filter is only linear line (purelin)

You might also like