-
大小: 582KB文件類(lèi)型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-06-01
- 語(yǔ)言: Matlab
- 標(biāo)簽: 粒子群??PSO??BP??曲線(xiàn)擬合??
資源簡(jiǎn)介
說(shuō)明,這個(gè)matlab程序的目標(biāo)是對(duì)BP神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元連接權(quán)和閾值構(gòu)成的高維參數(shù)空間進(jìn)行最優(yōu)求解,試圖用PSO算法求解神經(jīng)網(wǎng)絡(luò)中的參數(shù),而不是用傳統(tǒng)的誤差反傳算法。但由于經(jīng)典粒子群算法存在局部最優(yōu)的問(wèn)題。該算法也存在同樣的問(wèn)題。該算法在迭代數(shù)較大時(shí)可以基本做到誤差較大的函數(shù)擬合。但是通過(guò)該資源提供的圖解和代碼注釋?zhuān)脩?hù)可以很容易的學(xué)習(xí)到PSO算法的過(guò)程。至于如何突破局部最優(yōu),這個(gè)就有待各位PSO愛(ài)好者進(jìn)行優(yōu)化了。

代碼片段和文件信息
%適應(yīng)度函數(shù)
function?y=AdaptFunc_BP(x)
%求解偏差的均方根,也就是每個(gè)預(yù)測(cè)點(diǎn)和實(shí)際點(diǎn)的平方和再求平方根
%x是行向量,數(shù)量為ParticleSize
%x(1:5)---V:輸入到隱層神經(jīng)元的權(quán)值
%x(6:10)---theta1:隱層神經(jīng)元的閾值
%x(11:15)---W:輸出層神經(jīng)元的連接權(quán)
%x(16)---W:輸出層神經(jīng)元的閾值
[rowcol]=size(x);
%訓(xùn)練集的X
X=-1:0.1:1;
%col2有用
[row2col2]=size(X);
D=[-0.9602?-0.5770?-0.0729?0.3771?0.6405?0.6600?0.4609?...
????0.1336?-0.2013?-0.4344?-0.5000?-0.3930?-0.1647?-.0988?...
????0.3072?0.3960?0.3449?0.1816?-0.312?-0.2189?-0.3201];
if?row>1
????error(‘適應(yīng)度函數(shù):輸入的參數(shù)錯(cuò)誤‘);
end
%net?=?newff([-1?1][5?1]{‘tansig‘‘tansig‘});
net?=?newff(XD5{‘tansig‘‘tansig‘});
%net.trainParam.epochs?=?100;?%訓(xùn)練的最大次數(shù)
%net.trainParam.goal?=?0.005;?%全局最小誤差
?V=x(1:5)‘;
?theta1=x(6:10)‘;
?W=x(11:15);
?theta2=x(16);
?net.iw{11}=V;
?net.b{1}=theta1;
?net.lw{21}=W;
?net.b{2}=theta2;
?O2?=?sim(netX);
?
?%計(jì)算當(dāng)前參數(shù)下,神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出O2與目標(biāo)輸出D之間的誤差的平方和
?total=sqrt(sum((O2-D).^2));
????TempStr=sprintf(‘誤差平方和%g‘total);
????disp(TempStr);
y=total;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件???????1205??2014-06-18?20:36??AdaptFunc_BP.m
?????文件????????572??2014-06-19?09:25??Check_PSO_Result_BP.m
?????文件???????1011??2014-06-18?20:31??ContrastBP_PSO.m
?????文件??????15572??2014-06-19?09:58??PSO_Stand.m
?????文件????????669??2014-06-19?10:44??ShowAllResult.asv
?????文件????????693??2014-06-19?10:49??ShowAllResult.m
?????文件???????1594??2014-06-19?11:14??Test_PSO_Stand.m
?????文件?????611072??2014-06-19?11:21??采用粒子群進(jìn)行曲線(xiàn)擬合的過(guò)程.docx
?????文件????????594??2014-06-19?12:12??使用說(shuō)明.txt
-----------?---------??----------?-----??----
???????????????632982????????????????????9
評(píng)論
共有 條評(píng)論