資源簡介
RBF神經網絡matlab程序例程,在matlab中通過RBF神經網絡完成對數據的預測

代碼片段和文件信息
%%?I.?清空環境變量
clear?all
clc
%%?II.?訓練集/測試集產生
%%
%?1.?導入數據
load?iris_data.mat
%%
%?2?隨機產生訓練集和測試集
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);
????%?訓練集——120個樣本
????P_train?=?[P_train?temp_input(n(1:40):)‘];
????T_train?=?[T_train?temp_output(n(1:40):)‘];
????%?測試集——30個樣本
????P_test?=?[P_test?temp_input(n(41:50):)‘];
????T_test?=?[T_test?temp_output(n(41:50):)‘];
end
%%?III.?模型建立?
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:);
???????%%?
????????%?1.?GRNN創建及仿真測試
????????t?=?cputime;
????????%?創建網絡
????????net_grnn?=?newgrnn(p_trainT_train);
????????%?仿真測試
????????t_sim_grnn?=?sim(net_grnnp_test);
????????T_sim_grnn?=?round(t_sim_grnn);
????????t?=?cputime?-?t;
????????time_grnn?=?[time_grnn?t];
????????result_grnn?=?[result_grnn?T_sim_grnn‘];
???????%%
????????%?2.?PNN創建及仿真測試
????????t?=?cputime;
????????Tc_train?=?ind2vec(T_train);
????????%?創建網絡
????????net_pnn?=?newpnn(p_trainTc_train);
????????%?仿真測試
????????Tc_test?=?ind2vec(T_test);
????????t_sim_pnn?=?sim(net_pnnp_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
%%?IV.?性能評價
%%
%?1.?正確率accuracy
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
%%
%?2.?結果對比
result?=?[T_test‘?result_grnn?result_pnn]
accuracy?=?[accuracy_grnn;accuracy_pnn]
time?=?[time_grnn;time_pnn]
%%?V.?繪圖
figure(1)
plot(1:30T_test‘bo‘1:30result_grnn(:4)‘r-*‘1:30result_pnn(:4)‘k:^‘)
grid?on
xlabel(‘測試集樣本編號‘)
ylabel(‘測試集樣本類別‘)
string?=?{‘測試集預測結果對比(GRNN?vs?PNN)‘;[‘正確率:‘?num2str(accuracy_grnn(4)*100)?‘%(GRNN)?vs?‘?num2str(accuracy_pnn(4)*100)?‘%(PNN)‘]};
title(string)
legend(‘真實值‘‘GRNN預測值‘‘PNN預測值‘)
figure(2)
plot(1:10accuracy(1:)‘r-*‘1:10accuracy(2:)‘b:o‘)
grid?on
xlabel(‘模型編號‘)
ylabel(‘測試集正確率‘)
title(‘10個模型的測試集正確率對比(GRNN?vs?PNN)‘)
legend(‘GRNN‘‘PNN‘)
figure(3)
plot(1:10time(1:)‘r-*‘1:10time(2:)‘b:o‘)
grid?on
xlabel(‘模型編號‘)
ylabel(‘運行時間(s)‘)
title(‘10個模型的運行時間對比(GRNN?vs?PNN)‘)
legend(‘GRNN‘‘PNN‘)
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????17037??2015-08-15?18:03??Class_4_Code\html\main_GRNN_PNN.html
?????文件???????3184??2015-08-15?18:03??Class_4_Code\html\main_GRNN_PNN.png
?????文件???????8204??2015-08-15?18:03??Class_4_Code\html\main_GRNN_PNN_01.png
?????文件???????9510??2015-08-15?18:03??Class_4_Code\html\main_GRNN_PNN_02.png
?????文件???????7940??2015-08-15?18:03??Class_4_Code\html\main_GRNN_PNN_03.png
?????文件???????8024??2015-08-15?18:04??Class_4_Code\html\main_RBF.html
?????文件???????3103??2015-08-15?18:04??Class_4_Code\html\main_RBF.png
?????文件???????7295??2015-08-15?18:04??Class_4_Code\html\main_RBF_01.png
?????文件???????1105??2010-10-17?14:51??Class_4_Code\iris_data.mat
?????文件???????2780??2015-08-15?18:02??Class_4_Code\main_GRNN_PNN.m
?????文件???????1026??2015-09-13?10:42??Class_4_Code\main_RBF.m
?????文件?????171497??2010-10-14?20:24??Class_4_Code\spectra_data.mat
?????目錄??????????0??2015-08-15?18:04??Class_4_Code\html
?????目錄??????????0??2015-08-15?18:00??Class_4_Code
-----------?---------??----------?-----??----
???????????????240705????????????????????14
- 上一篇:圖像量化程序,包括圖像和matlab程序
- 下一篇:MatlabR2019A.7z
評論
共有 條評論