WidrowHoff weight/bias learning function
[dW,LS] = learnwh(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
info = learnwh('code
')
learnwh
is the WidrowHoff weight/bias learning
function, and is also known as the delta or least mean squared (LMS)
rule.
[dW,LS] = learnwh(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
takes
several inputs,
W 

P 

Z 

N 

A 

T 

E 

gW 

gA 

D 

LP  Learning parameters, none, 
LS  Learning state, initially should be = 
and returns
dW 

LS  New learning state 
Learning occurs according to the learnwh
learning
parameter, shown here with its default value.
LP.lr — 0.01  Learning rate 
info = learnwh('
returns
useful information for each code
')code
string:
'pnames'  Names of learning parameters 
'pdefaults'  Default learning parameters 
'needg'  Returns 1 if this function uses 
Here you define a random input P
and error E
for
a layer with a twoelement input and three neurons. You also define
the learning rate LR
learning parameter.
p = rand(2,1); e = rand(3,1); lp.lr = 0.5;
Because learnwh
needs only these values to
calculate a weight change (see "Algorithm" below), use
them to do so.
dW = learnwh([],p,[],[],[],[],e,[],[],[],lp,[])
You can create a standard network that uses learnwh
with linearlayer
.
To prepare the weights and the bias of layer i
of
a custom network to learn with learnwh
,
Set net.trainFcn
to 'trainb'
.
net.trainParam
automatically becomes trainb
's
default parameters.
Set net.adaptFcn
to 'trains'
.
net.adaptParam
automatically becomes trains
's
default parameters.
Set each net.inputWeights{i,j}.learnFcn
to 'learnwh'
.
Set each net.layerWeights{i,j}.learnFcn
to 'learnwh'
.
Set net.biases{i}.learnFcn
to 'learnwh'
.
Each weight and bias learning parameter property is automatically
set to the learnwh
default parameters.
To train the network (or enable it to adapt),
Set net.trainParam
(or net.adaptParam
)
properties to desired values.
Call train
(or adapt
).
Widrow, B., and M.E. Hoff, "Adaptive switching circuits," 1960 IRE WESCON Convention Record, New York IRE, pp. 96–104, 1960
Widrow, B., and S.D. Sterns, Adaptive Signal Processing, New York, PrenticeHall, 1985
adapt
 linearlayer
 train