这篇文章主要介绍“matlab怎么实现自组织竞争神经网络”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“matlab怎么实现自组织竞争神经网络”文章能帮助大家解决问题。
competlayer函数创建一个竞争网络层,根据输入样本之间的相似性对其进行分类,分类的类别数是给定的,且总是倾向于给每一个类别分配相同数目的样本,尽量均衡地进行分类。
inputs = iris_dataset;
% 载入数据
net = competlayer(3);
% 创建竞争网络
net = train(net,inputs);
% 训练
outputs = net(inputs);
% 分类
classes = vec2ind(outputs);
% 格式转换。classes为分类结果
selforgmap函数利用数据本身的相似性和拓扑结构对数据进行聚类。
x = simplecluster_dataset;
figure
plot(x(1,:),x(2,:),'o')
set(gcf,'color','w')
title('原始数据')
net = selforgmap([8 8]);
% 创建自组织映射网络
net = train(net,x);
% 训练
y = net(x);
classes = vec2ind(y);
figure
hist(classes,64)
% 显示聚类结果
set(gcf,'color','w')
title('聚类结果')
xlabel('类别')
ylabel('类别包含的样本数量')
figure
plotsompos(net,x)
% 显示类别中心点的位置
net = selforgmap([2,3]);
net = train(net,x);
y = net(x);
classes = vec2ind(y);
figure
hist(classes,6)
% 6个类别包含的样本个数
figure
plotsomhits(net,x)
% 显示每个类别的个数
figure
plotsompos(net,x)
% 显示类别中心点的位置
数据文件均为MATLAB自带的用于聚类的数据
关于“matlab怎么实现自组织竞争神经网络”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。