資源簡介
神經網絡matlab預測程序
代碼片段和文件信息
clc;clear;
%導入1949年至2014年人口數據
data=importdata(‘population_data.txt‘);
lag=3;??????%利用前3年數據做為輸入,去預測下一年人口數量
n=length(data);?????%計算數據長度
%%
%準備輸入和輸出數據
inputs=zeros(lagn-lag);
for?i=1:n-lag????
????inputs(:i)=data(i:i+lag-1)‘;
end
targets=data(lag+1:end)‘;
%%
%bp神經網絡模擬
[pnminpmaxptnmintmaxt]=premnmx(inputstargets);????%歸一化處理
dx=[-11;-11;-11]; %歸一化處理后最小值為-1,最大值為1
net=newff(dx[371]{‘tansig‘‘tansig‘‘purelin‘}‘traingdx‘);??%建立模型,并采用基本梯度下降法訓練.
net.trainParam.show=100;?????????????????%100輪回顯示一次結果
net.trainParam.Lr=0.05;??????????????????%學習速度為0.05
net.trainParam.epochs=1000;??????????????%最大訓練輪回為1000次
net.trainParam.goal=0.0001;??????????????%均方誤差為0.0001
net=train(netpntn);????????????????????%開始訓練,其中pntn分別為輸入輸出樣本
%%
%數據仿真
sim_result=sim(netpn);
real_r
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????550??2017-03-24?13:35??population_data.txt
?????文件????????1336??2017-03-24?15:23??forecast.m
評論
共有 條評論