matlab怎么实现离散Hopfield神经网络的分类
本文小编为大家详细介绍“matlab怎么实现离散Hopfield神经网络的分类”,内容详细,步骤清晰,细节处理妥当,希望这篇“matlab怎么实现离散Hopfield神经网络的分类”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
创新互联于2013年成立,是专业互联网技术服务公司,拥有项目成都网站设计、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元龙沙做网站,已为上家服务,为龙沙各地企业和个人服务,联系电话:13518219792
MATLAB神经网络工具箱中newhop()函数采用的权值修正法是正交化法,不是采用前面的外积法。通过正交化法设计Hopfield神经网络权系数矩阵:
保证系统在一部工作室的稳定性,即它的权值是对称的;
保证所有要求记忆的稳定平衡点都能收敛到自己;
使伪稳定点的数目尽可能地少;
使稳定点的吸引力尽可能地大。
%% 清空环境变量
clear
clc
%% 导入数据
load class.mat
%% 目标向量
T=[class_1 class_2 class_3 class_4 class_5];
%% 创建网络
net=newhop(T);
%% 导入待分类样本
load sim.mat
A={[sim_1 sim_2 sim_3 sim_4 sim_5]};
%% 网络仿真
Y=sim(net,{25 20},{},A);
%% 结果显示
Y1=Y{20}(:,1:5);
Y2=Y{20}(:,6:10);
Y3=Y{20}(:,11:15);
Y4=Y{20}(:,16:20);
Y5=Y{20}(:,21:25);
%% 绘图
result={T;A{1};Y{20}};
figure
for p=1:3
for k=1:5
subplot(3,5,(p-1)*5+k)
temp=result{p}(:,(k-1)*5+1:k*5);
[m,n]=size(temp);
for i=1:m
for j=1:n
if temp(i,j)>0
plot(j,m-i,'ko','MarkerFaceColor','k');
else
plot(j,m-i,'ko');
end
hold on
end
end
axis([0 6 0 12])
axis off
if p==1
title(['class' num2str(k)])
elseif p==2
title(['pre-sim' num2str(k)])
else
title(['sim' num2str(k)])
end
end
end
%
noisy=[1 -1 -1 -1 -1;-1 -1 -1 1 -1;
-1 1 -1 -1 -1;-1 1 -1 -1 -1;
1 -1 -1 -1 -1;-1 -1 1 -1 -1;
-1 -1 -1 1 -1;-1 -1 -1 -1 1;
-1 1 -1 -1 -1;-1 -1 -1 1 -1;
-1 -1 1 -1 -1];
y=sim(net,{5 100},{},{noisy});
a=y{100};
读到这里,这篇“matlab怎么实现离散Hopfield神经网络的分类”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注创新互联行业资讯频道。
当前标题:matlab怎么实现离散Hopfield神经网络的分类
标题网址:http://azwzsj.com/article/gscsjg.html