MATLAB绘制出权值wv和阀值bv确定的误差曲面
源代码在线查看: matlab二维自组织特征映射网络进行分类设计.txt
二维自组织特征映射网络进行分类设计2007/06/02 22:09自组织特征映射网络根据输入向量在输入空间的分布情况对他们进行分类。与自组织竞争网络不同的是,在自组织神经网络中邻近的神经元能够识别输入空间中邻近的部分。这样,自组织特征映射神经网络不但能够学习输入的分布情况(这点和自组织竞争网络一样),而且可以学习进行训练的输入向量的拓扑结构。
%随机生成1000个二维向量,作为样本,并绘出其分布
P = rands(2,1000);
plot(P(1,:),P(2,:),'+r')
title('初始随机样本点分布');
xlabel('P(1)');
ylabel('P(2)');
%建立网络,二维影射网络的神经元组织结构为5*6,我们希望每一个神经元对应矩形中某一个区域产生响应,邻近的神经元对应相邻的区域。
%每一个神经元用一个点表示,其坐标值为相应的权值,初始状态下这些神经元都拥有相同的权值
net=newsom([0 1; 0 1],[5 6]);
w1_init=net.iw{1,1}
%绘出初始权值分布图
figure;
plotsom(w1_init,net.layers{1}.distances)
%分别对不同的步长,训练网络,绘出相应的权值分布图
for i=10:30:100
net.trainParam.epochs=i;
net=train(net,P);
figure;
plotsom(net.iw{1,1},net.layers{1}.distances)
end
%对于训练好的网络,选择特定的输入向量,得到网络的输出结果
p=[0.5;0.3];
a=0;
a = sim(net,p)