Neural Network Toolbox | ![]() ![]() |
Euclidean distance weight function
Syntax
Description
dist
is the Euclidean distance weight function. Weight functions apply weights to an input to get weighted inputs.
dist (W,P)
takes these inputs,
W - S
x R
weight matrix.
P - R
x Q
matrix of Q
input (column) vectors.
and returns the S
x Q
matrix of vector distances.
dist
('deriv
') returns ''
because dist
does not have a derivative function.
dist
is also a layer distance function, which can be used to find the distances between neurons in a layer.
pos - N
x S
matrix of neuron positions.
and returns the S
x S
matrix of distances.
Examples
Here we define a random weight matrix W
and input vector P
and calculate the corresponding weighted input Z
.
W = rand(4,3); P = rand(3,1); Z = dist(W,P)
Here we define a random matrix of positions for 10 neurons arranged in three-dimensional space and find their distances.
pos = rand(3,10); D = dist(pos)
Network Use
You can create a standard network that uses dist
by calling newpnn
or newgrnn
.
To change a network so an input weight uses dist
, set net.inputWeight{i,j}.weightFcn
to 'dist
'.
For a layer weight set net.inputWeight{i,j}.weightFcn
to 'dist
'.
To change a network so that a layer's topology uses dist
, set net.layers{i}.distanceFcn
to 'dist
'.
In either case, call sim
to simulate the network with dist
.
See newpnn
or newgrnn
for simulation examples.
Algorithm
The Euclidean distance d between two vectors X
and Y
is:
d = sum((x-y).^2).^0.5
See Also
sim
,
dotprod
,
negdist
,
normprod
,
mandist
,
linkdist
![]() | display | dlogsig | ![]() |