MAT之GRNN/PNN:基于GRNN、PNN两神经网络实现并比较鸢尾花(iris数据集)种类识别正确率、各个模型运行时间对比-阿里云开发者社区

开发者社区> 一个处女座的程序猿> 正文

MAT之GRNN/PNN:基于GRNN、PNN两神经网络实现并比较鸢尾花(iris数据集)种类识别正确率、各个模型运行时间对比

简介: MAT之GRNN/PNN:基于GRNN、PNN两神经网络实现并比较鸢尾花(iris数据集)种类识别正确率、各个模型运行时间对比
+关注继续查看

输出结果

image.png


实现代码


load iris_data.mat

P_train = [];

T_train = [];

P_test = [];

T_test = [];

for i = 1:3

   temp_input = features((i-1)*50+1:i*50,:);

   temp_output = classes((i-1)*50+1:i*50,:);

   n = randperm(50);

   P_train = [P_train temp_input(n(1:40),:)'];

   T_train = [T_train temp_output(n(1:40),:)'];

   P_test = [P_test temp_input(n(41:50),:)'];

   T_test = [T_test temp_output(n(41:50),:)'];

end

result_grnn = [];

result_pnn = [];

time_grnn = [];

time_pnn = [];

for i = 1:4

   for j = i:4

       p_train = P_train(i:j,:);

       p_test = P_test(i:j,:);

       t = cputime;

       net_grnn = newgrnn(p_train,T_train);

       t_sim_grnn = sim(net_grnn,p_test);

       T_sim_grnn = round(t_sim_grnn);

       t = cputime - t;

       time_grnn = [time_grnn t];

       result_grnn = [result_grnn T_sim_grnn'];

 

       t = cputime;

       Tc_train = ind2vec(T_train);

       net_pnn = newpnn(p_train,Tc_train);

 

       Tc_test = ind2vec(T_test);

       t_sim_pnn = sim(net_pnn,p_test);

       T_sim_pnn = vec2ind(t_sim_pnn);

       t = cputime - t;

       time_pnn = [time_pnn t];

       result_pnn = [result_pnn T_sim_pnn'];

   end

end

accuracy_grnn = [];

accuracy_pnn = [];

time = [];

for i = 1:10

   accuracy_1 = length(find(result_grnn(:,i) == T_test'))/length(T_test);

   accuracy_2 = length(find(result_pnn(:,i) == T_test'))/length(T_test);

   accuracy_grnn = [accuracy_grnn accuracy_1];

   accuracy_pnn = [accuracy_pnn accuracy_2];

end

result = [T_test' result_grnn result_pnn]

accuracy = [accuracy_grnn;accuracy_pnn]

time = [time_grnn;time_pnn]


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
纯Python实现鸢尾属植物数据集神经网络模型
本文以Python代码完成整个鸾尾花图像分类任务,没有调用任何的数据包,适合新手阅读理解,并动手实践体验下机器学习方法的大致流程。
9301 0
[译] RNN 循环神经网络系列 2:文本分类
本文讲的是[译] RNN 循环神经网络系列 2:文本分类,在第一篇文章中,我们看到了如何使用 TensorFlow 实现一个简单的 RNN 架构。现在我们将使用这些组件并将其应用到文本分类中去。主要的区别在于,我们不会像 CHAR-RNN 模型那样输入固定长度的序列,而是使用长度不同的序列。
4095 0
ML之SVM(三种):基于三种SVM(linearSVR、polySVR、RBFSVR)对Boston(波士顿房价)数据集(506,13+1)进行价格回归预测并对比各自性能
ML之SVM(三种):基于三种SVM(linearSVR、polySVR、RBFSVR)对Boston(波士顿房价)数据集(506,13+1)进行价格回归预测并对比各自性能
36 0
SAS学习笔记之《SAS编程与数据挖掘商业案例》(2)数据获取与数据集操作
SAS学习笔记之《SAS编程与数据挖掘商业案例》(2)数据获取与数据集操作 1. SET/SET效率高,建立的主表和建表索引的查询表一般不排序, 2. BY语句,DATA步中,BY语句规定分组变量,用于控制SET,MERGE,UPDATE或MODIFY语句。 BY<DESCENDING>variable-1 <...<DESCENDI
1345 0
ML之CatboostC:基于titanic泰坦尼克数据集利用catboost算法实现二分类
ML之CatboostC:基于titanic泰坦尼克数据集利用catboost算法实现二分类
14 0
ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA)
ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA)
16 0
Netflix开源面向稀疏数据优化的轻量级神经网络库Vectorflow
在Netflix公司,我们的机器学习科学家在多个不同的领域处理着各种各样的问题:从根据你的爱好来定制电视和推荐电影,到优化编码算法。我们有一小部分问题涉及到处理极其稀疏的数据;手头问题的总维度数很容易就能达到数千万个特征,即使每次要看的可能只是少数的非零项。
4172 0
TensorFlow 卷积神经网络手写数字识别数据集介绍
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习、深度学习的知识! 手写数字识别 接下来将会以 MNIST 数据集为例,使用卷积层和池化层,实现一个卷积神经网络来进行手写数字识别,并输出卷积和池化效果。
1459 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载