基于閃電連接過程算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)(預(yù)測應(yīng)用) - 附代碼
摘要:本文主要介紹如何用閃電連接過程算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)并應(yīng)用于預(yù)測。
1.數(shù)據(jù)介紹
本案例數(shù)據(jù)一共2000組,其中1900組用于訓(xùn)練,100組用于測試。數(shù)據(jù)的輸入為2維數(shù)據(jù),預(yù)測的輸出為1維數(shù)據(jù)
2.閃電連接過程優(yōu)化BP神經(jīng)網(wǎng)絡(luò)
2.1 BP神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置
神經(jīng)網(wǎng)絡(luò)參數(shù)如下:
%% 構(gòu)造網(wǎng)絡(luò)結(jié)構(gòu)
%創(chuàng)建神經(jīng)網(wǎng)絡(luò)
inputnum = 2; %inputnum 輸入層節(jié)點數(shù) 2維特征
hiddennum = 10; %hiddennum 隱含層節(jié)點數(shù)
outputnum = 1; %outputnum 隱含層節(jié)點數(shù)
2.2 閃電連接過程算法應(yīng)用
閃電連接過程算法原理請參考:https://blog.csdn.net/u011835903/article/details/120783760
閃電連接過程算法的參數(shù)設(shè)置為:
popsize = 20;%種群數(shù)量
Max_iteration = 20;%最大迭代次數(shù)
lb = -5;%權(quán)值閾值下邊界
ub = 5;%權(quán)值閾值上邊界
% inputnum * hiddennum + hiddennum*outputnum 為閾值的個數(shù)
% hiddennum + outputnum 為權(quán)值的個數(shù)
dim = inputnum * hiddennum + hiddennum*outputnum + hiddennum + outputnum ;% inputnum * hiddennum + hiddennum*outputnum維度
這里需要注意的是,神經(jīng)網(wǎng)絡(luò)的閾值數(shù)量計算方式如下:
本網(wǎng)絡(luò)有2層:
第一層的閾值數(shù)量為:2*10 = 20; 即inputnum * hiddennum;
第一層的權(quán)值數(shù)量為:10;即hiddennum;
第二層的閾值數(shù)量為:10*1 = 10;即hiddenum * outputnum;
第二層權(quán)值數(shù)量為:1;即outputnum;
于是可知我們優(yōu)化的維度為:inputnum * hiddennum + hiddennum*outputnum + hiddennum + outputnum = 41;
適應(yīng)度函數(shù)值設(shè)定:
本文設(shè)置適應(yīng)度函數(shù)如下:
f
i
t
n
e
s
s
=
a
r
g
m
i
n
(
m
s
e
(
T
r
a
i
n
D
a
t
a
E
r
r
o
r
)
+
m
e
s
(
T
e
s
t
D
a
t
a
E
r
r
o
r
)
)
fitness = argmin(mse(TrainDataError) + mes(TestDataError))
fitness=argmin(mse(TrainDataError)+mes(TestDataError))
其中TrainDataError,TestDataError分別為訓(xùn)練集和測試集的預(yù)測誤差。mse為求取均方誤差函數(shù),適應(yīng)度函數(shù)表明我們最終想得到的網(wǎng)絡(luò)是在測試集和訓(xùn)練集上均可以得到較好結(jié)果的網(wǎng)絡(luò)。
4.測試結(jié)果:
從閃電連接過程算法的收斂曲線可以看到,整體誤差是不斷下降的,說明閃電連接過程算法起到了優(yōu)化的作用:文章來源:http://www.zghlxwxcb.cn/news/detail-678464.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-678464.html
5.Matlab代碼
到了這里,關(guān)于基于閃電連接過程算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)(預(yù)測應(yīng)用) - 附代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!