主要内容

newpnn

设计概率神经网络

语法

net = newpnn(P,T,spread)

说明

概率神经网络 (PNN) 是一种适用于分类问题的径向基网络。

net = newpnn(P,T,spread) 接受两个或三个参量,

P

Q 个输入向量组成的 R×Q 矩阵

T

Q 个目标类向量组成的 S×Q 矩阵

spread

径向基函数的散布(默认值 = 0.1)

并返回一个新的概率神经网络。

如果 spread 接近于零,则该网络用作最近邻分类器。随着 spread 越来越大,设计的网络会考虑附近的多个设计向量。

示例

此处使用一组输入 P 和类索引 Tc 定义了一个分类问题。

P = [1 2 3 4 5 6 7];
Tc = [1 2 3 2 2 3 1];

将类索引转换为目标向量,并设计和测试 PNN。

T = ind2vec(Tc)
net = newpnn(P,T);
Y = sim(net,P)
Yc = vec2ind(Y)

算法

newpnn 会创建一个两层网络。第一层有 radbas 个神经元,用 dist 计算其加权输入,用 netprod 计算其净输入。第二层有 compet 个神经元,用 dotprod 计算其加权输入,用 netsum 计算其净输入。只有第一层有偏置。

newpnn 将第一层权重设置为 P',第一层偏置全部设置为 0.8326/spread,从而导致径向基函数在 +/- spread 的加权输入处跨度为 0.5。第二层权重 W2 设置为 T

参考资料

Wasserman, P.D., Advanced Methods in Neural Computing, New York, Van Nostrand Reinhold, 1993, pp. 35–55

版本历史记录

在 R2006a 之前推出

另请参阅

| | | | |