資源簡介
有導師學習神經網絡的分類——鳶尾花種類識別,結合具體的案例給出了程序分析

代碼片段和文件信息
%%?第26章?有導師學習神經網絡的分類——鳶尾花種類識別
%?
%? 該案例作者申明: 1:本人長期駐扎在此板塊里,對該案例提問,做到有問必答。 2:此案例有配套的教學視頻,視頻下載請點擊http://www.matlabsky.com/forum-91-1.html。? 3:此案例為原創案例,轉載請注明出處(《MATLAB智能算法30個案例分析》)。 4:若此案例碰巧與您的研究有關聯,我們歡迎您提意見,要求等,我們考慮后可以加在案例里。 5:以下內容為初稿,與實際發行的書籍內容略有出入,請以書籍中的內容為準。
%?
%%?清空環境變量
clear?all
clc
%%?訓練集/測試集產生
%?導入數據
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);
????%?訓練集——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
%%?模型建立?
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:);
???????%%?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‘];
???????%%?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
%%?性能評價
%?正確率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
%?結果對比
result?=?[T_test‘?result_grnn?result_pnn]
accuracy?=?[accuracy_grnn;accuracy_pnn]
time?=?[time_grnn;time_pnn]
%%?繪圖
figure(1)
plot(1:30T_test‘bo‘1:30result_grnn(:4)‘r-*‘1:30result_pnn(:4)‘k:^‘)
grid?on
xlabel(‘測試集樣本編號‘)
ylabel(‘測試集樣本類別‘)
string?=?{‘測試集預測結果對比(GRNN?v
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1105??2010-10-17?14:51??chapter26\iris_data.mat
?????文件????????4233??2010-11-30?20:45??chapter26\main.m
?????目錄???????????0??2018-01-02?21:38??chapter26\
- 上一篇:NSGA2算法介紹
- 下一篇:類別變量的中介效應分析
評論
共有 條評論