Design probabilistic neural network
net = newpnn(P,T,spread)
Probabilistic neural networks (PNN) are a kind of radial basis network suitable for classification problems.
net = newpnn(P,T,spread) takes two or three
Spread of radial basis functions (default = 0.1)
and returns a new probabilistic neural network.
spread is near zero, the network acts
as a nearest neighbor classifier. As
larger, the designed network takes into account several nearby design
Here a classification problem is defined with a set of inputs
P = [1 2 3 4 5 6 7]; Tc = [1 2 3 2 2 3 1];
The class indices are converted to target vectors, and a PNN is designed and tested.
T = ind2vec(Tc) net = newpnn(P,T); Y = sim(net,P) Yc = vec2ind(Y)
newpnn creates a two-layer network. The first
radbas neurons, and calculates its weighted
dist and its net input with
The second layer has
compet neurons, and calculates
its weighted input with
dotprod and its net inputs
netsum. Only the first layer has biases.
newpnn sets the first-layer weights to
and the first-layer biases are all set to
resulting in radial basis functions that cross 0.5 at weighted inputs
spread. The second-layer weights
Wasserman, P.D., Advanced Methods in Neural Computing, New York, Van Nostrand Reinhold, 1993, pp. 35–55