matlab数学建模-一些神经网络函数

%严格径向基神经网络函数

P=[7 8 9];
T=[7 54 3];
net=newrbe(P,T);

跑出来效果还是很好的

%广义回归径向基神经网络

P=[7 8 9];
T=[7 54 3];
net=newgrnn(P,T);
Y=sim(net,PY);

%概率径向基函数

P=[1 2 3 4 5 6 7];
Tc=[ 3 2 2 3 2 1 4];
T=ind2vec(Tc);
net=newpnn(P,T);
Y=sim(net,P);
Yc=vec2ind(Y);

 ind2vec  和  vec2ind 挺常用的

%数据索引向量变换为向量组
ind=[7 8 8 9];
vec=ind2vec(ind);
%向量组变换为数据索引向量
vec=[1 0 0;0 1 0;0 0 0];
ind=vec2ind(vec);

结果大家看一下就能理解了:

这个索引向量,和向量组,就跟计算机里二进制这样理解就可以了

 

竞争函数newc我matlab里面好像没有

%竞争神经网络
clear all
clc
P=[1 8 1 9 ;2 4 1 6];
net=newc([ -1 1; -1 1],3);
net=train(net,P);
Y=sim(net,P);
Yc=vec2ind(Y);

这个函数挺简单的,输入向量n的最大值为1,而且只显示最大值

n=[0;-0.4;-1;2];
a=compet(n);
subplot(211),bar(n),ylabel('n');
subplot(212),bar(a),ylabel('a');

  

产生一定类别的样本向量nngenc

bounds=[0 1;0 1];
clusters=3;
points=5;
std_dev=0.05;
x=nngenc(bounds,clusters,points,std_dev);
%绘制向量图
plot(x(1,:),x(2,:),'+r');
title('输入向量');
xlabel('x(1)');
ylabel('x(1)');

猜你喜欢

转载自blog.csdn.net/qq_54508596/article/details/127133962