91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-12
  • 語言: Matlab
  • 標簽: ANN??

資源簡介

ANN程序 MATLAB語言 用于數據處理 只要換數據就能用

資源截圖

代碼片段和文件信息

clc;clear;close?all
disp(‘PLS預測的RMSECVRMSEP訓練集及預測集的R‘)
load?TenSesameAddSoybeanOil_NIR_20150121
meanornot?=?1;
mean_method?=?1;
switch?mean_method
????case?1
???????for?i?=?1:50
????????Spectra(i:)=?mean(spectra(3*i-2:3*i:));?????????????
???????end
???????Target?=?target;
????case?2
???????Spectra?=?spectra;
???????Target((3*i-2):(3*i))??=?target(i);?
end
for?columm??=?1;
????name???=?ynames;
disp(name{columm});
%-----------------KS對數據劃分,訓練集2/3,預測集1/3-------------------------
[mn]????????????????????=?size(cal);
[modeltest]?????????????=?kenstone(calfloor(2/3*m));
x_train??????????????????=?cal(model:);
x_pred???????????????????=?cal(test:);
y_train??????????????????=?caltar(modelcolumm);
y_pred???????????????????=?caltar(testcolumm);
[m_trainn_train]????????=?size(x_train);
%———————————----——數據中心化—————————--------------------
pretreatment?=?3;%對于ANN,采用第2個中心化最好
switch?pretreatment;
???case?1?%中心化
???mean_x_train?????????=?mean(x_train);?
???x_train??????????????=?x_train?-?repmat(mean_x_trainsize(x_train1)1);
???x_pred???????????????=?x_pred?-?repmat(mean_x_trainsize(x_pred1)1);
???mean_y_train?????????=?mean(y_train);
???y_train??????????????=?y_train?-?repmat(mean_y_trainsize(x_train1)1);?
???case?2?%Normalize
???std_x_train??????????=?std(x_train01);
???mean_x_train?????????=?mean(x_train1);
???std_y_train??????????=?std(y_train01);
???mean_y_train?????????=?mean(y_train);???
???y_train??????????????=?(y_train?-?repmat(mean_y_trainsize(y_train1)1))./repmat(std_y_trainsize(y_train1)1);?
???x_train??????????????=?(x_train-repmat(mean_x_trainsize(x_train1)1))./repmat(std_x_trainsize(x_train1)1);
???x_pred???????????????=?(x_pred-repmat(mean_x_trainsize(x_pred1)1))./repmat(std_x_trainsize(x_pred1)1);
???case?3??%最大最小歸一化?
???[train_xps_x]???????=?mapminmax(x_train‘);
???[train_yps_y]???????=?mapminmax(y_train‘);
???x_train??????????????=?train_x‘;
???y_train??????????????=?train_y‘;
???pred_x???????????????=?mapminmax(‘apply‘x_pred‘ps_x);
???x_pred???????????????=?pred_x‘;
???y_pred???????????????=?mapminmax(‘apply‘y_predps_y);???
end
%-------------------------BP-ANN外部預測------------------------------------
disp(‘BP-ANN直接預測‘);??%學習速率,動量項,隱含層節點數為nodenumber
net????????????????????=?newff(minmax(x_train‘)[nodenumber1]{‘tansig‘‘purelin‘}‘traingdm‘);
%訓練函數trainlm使用的學習算法為Levenberg-Marquadt,優點收斂速度快
%訓練函數traingd使用的學習算法是梯度下降法,收斂速度很慢
%動量BP算法:訓練函數traingdm(Gradient?descent?with?momentum?backpropagation)
%彈性BP算法:訓練函數traingrp()
%準牛頓BP算法:訓練函數trainbfg()
inputWeights???????????=?net.IW{11};
inputbias??????????????=?net.b{1};
layerWeights???????????=?net.LW{21};?
layerbias??????????????=?net.b{2};????
%net.trainParam.show????=?50;???%訓練顯示間隔
net.trainParam.lr??????=?0.01;?%學習速率Learning?rate,默認值0.01
%net.trainParam.mc??????=?0.9;??%動量項Momentum?constant,默認值0.9
net.trainParam.epochs??=?2000;??%最大訓練次數??
net.trainParam.goal????=?1e-3;??
[nettr]???

評論

共有 條評論