| Neural Network Toolbox | Search  Help Desk |
| learnos | Examples See Also |
Outstar weight learning function
[dW,LS] = learnos(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
info = learnos(code)
learnos is the outstar weight learning function.
learnos(W,P,Z,N,A,T,E,G,D,LP,LS) takes several inputs,
W - S x R weight matrix (or S x 1 bias vector).
P - R x Q input vectors (or ones(1,Q)).
Z - S x Q weighted input vectors.
T - S x Q layer target vectors.
E - S x Q layer error vectors.
gW - S x R weight gradient with respect to performance.
gA - S x Q output gradient with respect to performance.
LP - Learning parameters, none, LP = [].
LS - Learning state, initially should be = [].
LP.lr - 0.01 - Learning rate.
(code) returns useful information for each code string:
'pnames' - Names of learning parameters.
'pdefaults' - Default learning parameters.
'needg' - Returns 1 if this function uses gW or gA.
P, output A, and weight matrix W for a layer with a 2-element input and 3 neurons. We also define the learning rate LR.
p = rand(2,1); a = rand(3,1); w = rand(3,2); lp.lr = 0.5;Since learnos only needs these values to calculate a weight change (see algorithm below), we will use them to do so.
dW = learnos(w,p,[],[],a,[],[],[],[],[],lp,[])To prepare the weights and the bias of layer
i of a custom network to learn with learnos:
.net.trainFcn to 'trainwb'. (net.trainParam will automatically become
trainwb's default parameters.)
.net.adaptFcn to 'adaptwb'. (net.adaptParam will automatically become
trainwb's default parameters.)
.net.inputWeights{i,j}.learnFcn to 'learnos'. Set each
net.layerWeights{i,j}.learnFcn to 'learnos'. (Each weight learning
parameter property will automatically be set to learnos's default
parameters.)
.net.trainParam (net.adaptParam) properties to desired values.
.train (adapt).
dW for a given neuron from the neuron's input P, output A, and learning rate LR according to the outstar learning rule:
dw = lr*(a-w)*p'
Grossberg, S., Studies of the Mind and Brain, Drodrecht, Holland: Reidel Press, 1982.learnis,learnk,adaptwb,trainwb, adapt, train