newpnn
设计概率神经网络
语法
net = newpnn(P,T,spread)
说明
概率神经网络 (PNN) 是一种适用于分类问题的径向基网络。
net = newpnn(P,T,spread)
接受两个或三个参量,
P | 由 |
T | 由 |
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 之前推出