?? bpnbiaozhunsuanfa.m
字號:
%我是一個神經網絡的初學者,用BP網絡編制了一個小程序,
%數據及程序如下:
%輸入:
clear
p=load('D:\林玲的畢設資料\數據\樣本數據\星期一\x.txt')
t=load('D:\林玲的畢設資料\數據\樣本數據\星期一\t.txt')
p=p';
t=t';
[pn,meanp,stdp,tn,meant,stdt]=prestd (p,t); %對p和t進行字標準化預處理
net = newff(minmax(pn),[7,1],{'tansig','purelin'},'traingdx'); %建立網絡并進行初始化
net.trainParam.show=50;
net.trainParam.mc=0.95;
net.trainParam.epochs=10000;
net.trainParam.goal=1e-3;
net=train(net,pn,tn); %對網絡進行訓練
an=sim(net,pn); %對網絡進行模擬
a=poststd(an,meant,stdt); %對模擬出來的數據進行回歸處理
[m,b,r] = postreg(a,t);%檢測網絡的訓練模擬性能
%前面的網絡訓練過程可以是腳本文件運行
%后面的待預測的數據必須每次從命令窗口輸入才是每次得到同一的預測結果 只有這樣才是每次利用前面已經訓練好的網絡
%檢驗數據:
xk=input(' please input .....xk==');
pnew=xk';
pnew=trastd(pnew,meanp,stdp); %將數據通過自標準化再用來輸入網絡
an=sim(net,pnew)%網絡模擬出來的值
anew=poststd(an,meant,stdt)%模擬出的值再線性返回樣本預測值
tk=input(' please input .....tk==')
e2=(tk-anew)./tk
%在命令窗口輸入help poststd或者help postreg 或者help trastd
%See also PREMNMX, PREPCA, PRESTD, TRAPCA, TRAMNMX.得到下面的程序 來學習和理解網絡的建立和訓練運行模擬的過程
%p = [-0.92 0.73 -0.47 0.74 0.29; -0.08 0.86 -0.67 -0.52 0.93];
% t = [-0.08 3.4 -0.82 0.69 3.1];
% [pn,meanp,stdp,tn,meant,stdt] = prestd(p,t);
% [ptrans,transMat] = prepca(pn,0.02);
% net = newff(minmax(ptrans),[5 1],{'tansig' 'purelin'},'trainlm');
% net = train(net,ptrans,tn);
% an = sim(net,ptrans);
% a = poststd(an,meant,stdt);
% [m,b,r] = postreg(a,t);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -