【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证

前言

本文介绍六种类型的神经网络分类预测模型

1.模型选择

  • 前馈神经网络 (FFNN)

  • 人工神经网络 (ANN)

  • 级联前向神经网络 (CFNN)

  • 循环神经网络 (RNN)

  • 广义回归神经网络 (GRNN)

  • 概率神经网络 (PNN)

2.数据情况
357行样本,12输入,1输出,4分类。
无交叉验证情况,默认70%训练,30%测试。

     %%  导入数据
res = xlsread('数据集C.xlsx');
feat=res(:,1:end-1);
label=res(:,end);
T_sim1  = []; T_sim2  = []; 
ytest2 = []; 
ytrain2 = []; 
ho=0.3;%测试集的比例

3.程序使用
更改type类型即可自动筛选模型并运行。

switch type
  case 'NN'     ;
  case 'FFNN'   ; 
  case 'CFNN'   ; 
  case 'RNN'    ; 
  case 'GRNN'   ;
  case 'PNN'    ;
end

4.通用参数
Hidden_size = [10,10];%隐含层神经元
Max_epochs = 50; %最大训练次数
tf = 1; %2为交叉验证, 1无交叉验证。

一、前馈神经网络 (FFNN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第1张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第2张图片

二、级联前向神经网络 (CFNN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第3张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第4张图片

三、广义回归神经网络 (GRNN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折
num_spread=1;

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第5张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折
num_spread=1;

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第6张图片

四、人工神经网络 (NN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第7张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第8张图片

五、循环神经网络 (RNN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第9张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第10张图片

六、循环神经网络 (RNN)

1、无交叉验证

tf            = 1;  %2为交叉验证, 1无交叉验证。
kfold         = 1; %K折
num_spread = 100;

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第11张图片

2、有交叉验证(3折为例)

tf            = 2;  %2为交叉验证, 1无交叉验证。
kfold         = 3; %K折
num_spread = 100;

【MATLAB第88期】基于MATLAB的6种神经网络(ANN、FFNN、CFNN、RNN、GRNN、PNN)多分类预测模型对比含交叉验证_第12张图片

七、代码获取

1.阅读首页置顶文章
2.关注CSDN
3.根据自动回复消息,回复“88期”以及相应指令,即可获取对应下载方式。

你可能感兴趣的:(神经网络,FFNN,RNN,CFNN,GRNN,PNN,分类预测)