hop5.m

来自「MATLAB工具箱的神经网络理论与应用程序源代码」· M 代码 · 共 36 行

M
36
字号
%例5.5, hop5.m
%
T=[1 1;-1 1;-1 -1];
net=newhop(T);                        %创建Hopfield网络
w=net.lw{1,1},b=net.b{1}                %输出权值和偏差
P=[1 -1 -0.5 1 1 0;
   0 0 0 0 0.01 -0.2;
   -1 1 0.5 -1.01 -1 0];
Ptest={P};
[Z,Pf,Af] = sim(net,{6,60},[],Ptest);         %仿真输出
z5=Z{5},z50=Z{50},                     %5和50次仿真后的输出结果
plot3(T(1,:),T(2,:),T(3,:),'r*')               %作目标节点图
hold on
plot3(P(1,:),P(2,:),P(3,:),'r+')               %作输入节点图 
axis square; 
grid on
xlabel('Z(1)');                           %坐标轴标题
ylabel('Z(2)');
zlabel('Z(3)');
for i=1:6
	D{i}=P(:,i) ;                         %初始化D{i},共6个矩阵
end
for i=1:60
    plot3(Z{i}(1,:),Z{i}(2,:),Z{i}(3,:),'ro')   
                                       %作训练过程中点的变化
    for j=1:6
        D{j}=[D{j} Z{i}(:,j)];             %把Z中60个矩阵中的同一位置的元素赋给同
%一矩阵   
    end
end
for j=1:6
    plot3(D{j}(1,:),D{j}(2,:),D{j}(3,:))  
                                       %画每个点的变化直线图
end
hold off

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?