| 8 | 1/1 | 返回列表 |
| 查看: 3195 | 回復(fù): 7 | |||
[求助]
請(qǐng)高手指教如何提高這個(gè)BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)精度
|
|
請(qǐng)高人指點(diǎn),以下為我為畢業(yè)論文設(shè)計(jì)用MATLAB做的BP神經(jīng)網(wǎng)絡(luò),目前存在兩個(gè)問題: 1.模型預(yù)測(cè)精度特別低。 我已經(jīng)嘗試改變隱含層節(jié)點(diǎn)數(shù)(從20到100都一一試過了),并將傳遞函數(shù)和訓(xùn)練函數(shù)都做了替換,但均無明顯效果。不知該從何處著手提高模型的預(yù)測(cè)和訓(xùn)練精度。 2.每次程序運(yùn)行完,都要提示錯(cuò)誤,貌似是運(yùn)算符合不對(duì),但是改過之后依然有誤。不知該怎么改? clc; clear; close all; warning off; tic; %用2012年數(shù)據(jù)創(chuàng)建模型,2011年數(shù)據(jù)驗(yàn)證模型精確度。 自動(dòng)讀取文本文檔,第一行為農(nóng)學(xué)參數(shù),第二行至最后一行都為光譜值。 data1=importdata('E:\2012SR.txt'); data2=importdata('E:\2011SR.txt'); M1 = size(data1,2);%行 Y1 = data1(1,1:M1);%第一行所有列,農(nóng)學(xué)參數(shù),2012 M2 = size(data2,2); Y2 = data2(1,1:M2);%第一行所有列,農(nóng)學(xué)參數(shù),2011 P =data1(2:size(data1,1),: ); %2012年光譜數(shù)據(jù),文本里第二行開始,所有列 T = Y1 ; %2012年農(nóng)學(xué)參數(shù),第一行所有列 N2011_validation=data2(2:size(data2,1),: ) ; %2011年光譜數(shù)據(jù),文本里第二行開始,所有列 N2012_data=P; %2012年光譜數(shù)據(jù) net=newff(P,T,[61 1],{'tansig' 'purelin'},'traingd') t1 = clock; %計(jì)時(shí)開始 net = fitnet(70); net.trainParam.epochs = 5000; %設(shè)置訓(xùn)練次數(shù) net.trainParam.goal = 0.01; %設(shè)置性能函數(shù)(訓(xùn)練要求精度) net.trainParam.show = 1; %每10顯示 net.trainParam.Ir = 0.005; %設(shè)置學(xué)習(xí)速率 net = train(net,P,T); %訓(xùn)練BP網(wǎng)絡(luò)(P為輸入,T為輸出) datat = etime(clock,t1); Nets = net; view(Nets); %2011年數(shù)據(jù)進(jìn)行驗(yàn)證 y = sim(net,N2011_validation); figure; plot(y,'k-x');hold on plot(N2011_validation(1:126),'.k');hold on ymin=-1; ymax=4; axis([0 length(N2011_validation) floor(ymin) ceil(ymax)]); legend('Pridicted values','Measured values'); title('模型預(yù)測(cè)結(jié)果, 煙葉N含量'); %2012年數(shù)據(jù)進(jìn)行測(cè)試 y1=sim(net,N2012_data); figure; plot(y1,'k-x'); hold on; plot(N2012_data(1:102),'.k'); ymin=0; ymax=4; axis([0 length(N2012_data) floor(ymin) ceil(ymax)]); legend('Pridicted values','Measured values'); title('模型訓(xùn)練結(jié)果, 煙葉N含量'); %導(dǎo)入到文本文件 fid=fopen('E:\2012SR1.txt','wt'); if fid == -1 error('文件打開失敗'); end fprintf(fid,'實(shí)際值 預(yù)測(cè)值\n'); A=[N2012_data;y1]; fprintf(fid,'%f %f\n',A); fclose(fid); fid=fopen('E:\2011SR1.txt','wt'); if fid == -1 error('文件打開失敗'); end fprintf(fid,'實(shí)際值 預(yù)測(cè)值\n'); A=[N2011_validation;y]; fprintf(fid,'%f %f\n',A); fclose(fid); %預(yù)測(cè)效果分析 for i = 1:length(N2011_validation); K(i) = abs(y(i) - N2011_validation(i))/(N2011_validation(i)); end RMSE = sqrt(sum((y-N2011_validation)*(y-N2011_validation)')/length(N2011_validation)) E= 1-sum((y-N2011_validation)*(y-N2011_validation)')/sum((N2011_validation-mean(N2011_validation))*(N2011_validation-mean(N2011_validation))') k= average(sum(abs((y-N2011_validation)/(N2011_validation)))) %訓(xùn)練效果分析 for i = 1:length(N2012_data); K_1(i) = average(sum(abs((y1(i)-N2012_data(i))/(N2012_data(i))))); end RMSE_1=sqrt(sum((y1-N2012_data)*(y1-N2012_data)')/length(N2012_data)) E_1= 1-sum((y1-N2012_data)*(y1-N2012_data)')/sum((N2012_data-mean(N2012_data))*(N2012_data-mean(N2012_data))') k_1 = average(sum(abs((y1-N2012_data)/(N2012_data)))) 預(yù)測(cè)出來的結(jié)果總是整體偏高,不知道跟我沒有進(jìn)行數(shù)據(jù)歸一化有沒有關(guān)系?如果進(jìn)行數(shù)據(jù)歸一化和反歸一化,該在哪個(gè)地方怎么添加程序呢?請(qǐng)高手指教[ Last edited by jjdg on 2013-1-23 at 13:03 ] |
matlab |
木蟲 (小有名氣)
新蟲 (初入文壇)
|
本帖內(nèi)容被屏蔽 |
銀蟲 (初入文壇)
新蟲 (初入文壇)
| 8 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 材料工程專碩求調(diào)劑 +3 | hyl3153942 2026-03-29 | 3/150 |
|
|---|---|---|---|---|
|
[考研] 317分 一志愿南理工材料工程 本科湖工大 求調(diào)劑 +10 | 芋泥小鈴鐺 2026-03-28 | 10/500 |
|
|
[考研] 294分080500材料科學(xué)與工程求調(diào)劑 +8 | 柳溪邊 2026-03-26 | 8/400 |
|
|
[考研] 329求調(diào)劑 +10 | 鈕恩雪 2026-03-25 | 10/500 |
|
|
[考研] 求調(diào)劑一志愿武漢理工大學(xué)材料工程(085601) +7 | WW.' 2026-03-23 | 9/450 |
|
|
[考研] 0703化學(xué)調(diào)劑,求導(dǎo)師收 +9 | 天天好運(yùn)來上岸?/a> 2026-03-24 | 10/500 |
|
|
[考研] 一志愿北化085600材料專碩275|有文章專利|求調(diào)劑 +7 | Micky11223 2026-03-25 | 7/350 |
|
|
[考研] 求調(diào)劑 +6 | 蘆lty 2026-03-25 | 7/350 |
|
|
[考研] 0856,材料與化工321分求調(diào)劑 +12 | 大饞小子 2026-03-27 | 13/650 |
|
|
[考研] 安徽大學(xué)專碩生物與醫(yī)藥專業(yè)(086000)324分,英語已過四六級(jí),六級(jí)521,求調(diào)劑 +4 | 美味可樂雞翅 2026-03-26 | 4/200 |
|
|
[考研] 279 分 求調(diào)劑 +4 | 睡個(gè)好覺_16 2026-03-24 | 4/200 |
|
|
[考研] 一志愿華東理工大學(xué)081700,初試分?jǐn)?shù)271 +6 | kotoko_ik 2026-03-23 | 7/350 |
|
|
[考研] 調(diào)劑推薦 +5 | 清酒714 2026-03-26 | 6/300 |
|
|
[考研] 材料求調(diào)劑 +5 | .m.. 2026-03-25 | 5/250 |
|
|
[考研] 292求調(diào)劑 +4 | 求求了收下我吧?/a> 2026-03-26 | 4/200 |
|
|
[考研] 總分322求生物學(xué)/生化與分子/生物信息學(xué)相關(guān)調(diào)劑 +5 | 星沉uu 2026-03-26 | 6/300 |
|
|
[考研] 生物學(xué) 296 求調(diào)劑 +4 | 朵朵- 2026-03-26 | 6/300 |
|
|
[考研] 一志愿天津大學(xué)339材料與化工求調(diào)劑 +3 | 江往賣魚 2026-03-26 | 3/150 |
|
|
[考研] 材料專碩 335 分求調(diào)劑 +4 | 拒絕冷暴力 2026-03-25 | 4/200 |
|
|
[考研] 347求調(diào)劑 +4 | L when 2026-03-25 | 4/200 |
|