【RBF預(yù)測】基于粒子群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)數(shù)據(jù)回歸預(yù)測含Matlab源碼
1 簡介
原油含水率預(yù)測對于確定油井水,油層位以及估計(jì)原油產(chǎn)量有著非常重要意義.BP神經(jīng)網(wǎng)絡(luò)是最近常用的原油含水率預(yù)測方法,然而,由于BP神經(jīng)網(wǎng)絡(luò)存在容易陷入局部極小值,收斂速度慢等問題,影響了其預(yù)測的實(shí)用性和準(zhǔn)確性,對此,提出基于粒子群優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)(PSO-RBFNN)的原油含水率預(yù)測方法,粒子群優(yōu)化算法用于RBF神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化.在分析原油含水率預(yù)測的影響因素基礎(chǔ)上,建立粒子群優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的原油含水率預(yù)測模型.實(shí)驗(yàn)結(jié)果表明,在原油含水率預(yù)測中,基于粒子群優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)比BP神經(jīng)網(wǎng)絡(luò)有著更高的預(yù)測精度.


2 部分代碼
function [out1,out2,out3] =fun(num)
%創(chuàng)建訓(xùn)練樣本輸入集
data=xlsread('data.xlsx','in');
num=num;%對應(yīng)三個(gè)特征
%歸一化
data1=data';
data=mapminmax(data1,0,1);
data=data';
%建立訓(xùn)練集測試集
x_train=data(:,1:1).';
y_train=data(:,1+num).';
%創(chuàng)建、訓(xùn)練網(wǎng)絡(luò)
net=newrb(x_train,y_train,0.001,1,25,5);
%在訓(xùn)練集和測試集上的表現(xiàn)
y_train_predict=sim(net,x_train);
%求出誤差 訓(xùn)練集和測試集
err=y_train_predict- y_train;
train_error=(err.*err)/length(y_train);
out1=y_train_predict;
out2=train_error;
out3=y_train;
end
3 仿真結(jié)果


4 參考文獻(xiàn)
[1]吳良海. "基于粒子群優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)原油含水率預(yù)測." 計(jì)算機(jī)仿真 5(2010):4.
博主簡介:擅長智能優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)預(yù)測、信號(hào)處理、元胞自動(dòng)機(jī)、圖像處理、路徑規(guī)劃、無人機(jī)等多種領(lǐng)域的Matlab仿真,相關(guān)matlab代碼問題可私信交流。
部分理論引用網(wǎng)絡(luò)文獻(xiàn),若有侵權(quán)聯(lián)系博主刪除。
