導航:首頁 > 網路設置 > matlabbp神經網路工具箱如何設置

matlabbp神經網路工具箱如何設置

發布時間:2022-08-05 10:24:30

㈠ 你好,請問你知道在matlab神經網路工具箱里,學習率在哪裡設置嗎

lr就是學習率,performance是主要指標,你在程序里寫的goal就是MSE,決定最後精度的。

%%BP演算法
functionOut=bpnet(p,t,p_test)
globalS1
net=newff(minmax(p),[S1,8],{'tansig','purelin'},'trainlm');%trainlm訓練函數最有效
%net=newff(P,T,31,{'tansig','purelin'},'trainlm');%新版用法
net.trainParam.epochs=1000;
net.trainParam.goal=0.00001;
net.trainParam.lr=0.01;%這是學習率
net=train(net,p,t);
Out=sim(net,p_test);
end


㈡ matlab中bp神經網路的工具箱怎麼用,不要matlab程序,就工具箱怎麼實現問題的解決

matlab中神經網路的工具箱:輸入nntool,就會彈出一個對話框,然後你就可以根據彈出框的指示來操作。

㈢ bp神經網路 matlab 工具箱怎麼調出來

1. 常用的前饋型BP網路的轉移函數有logsig,tansig,有時也會用到線性函數purelin。當網路的最後一層採用曲線函數時,輸出被限制在一個很小的范圍內,如果採用線性函數則輸出可為任意值。以上三個函數是BP網路中最常用到的函數,但是如果需要的話你也可以創建其他可微的轉移函數。
2. 在BP網路中,轉移函數可求導是非常重要的,tansig、logsig和purelin都有對應的導函數dtansig、dlogsig和dpurelin。為了得到更多轉移函數的導函數,可以帶字元"deriv"的轉移函數:tansig('deriv')
ans = dtansig

第一步是建立網路對象。函數newff建立一個可訓練的前饋網路。這需要4個輸入參數。第一個參數是一個Rx2的矩陣以定義R個輸入向量的最小值和最大值。第二個參數是一個顢頇每層神經元個數的數組。第三個參數是包含每層用到的轉移函數名稱的細胞數組。最後一個參數是用到的訓練函數的名稱。

http://blog.sina.com.cn/s/blog_8684880b010117bv.html

㈣ matlab bp神經網路工具箱怎麼用

%% 訓練集/測試集產生
% 訓練集——用於訓練網路
P_train = ;%輸入集
T_train = ;%輸出集
% 測試集——用於測試或者使用。
P_test = ;%輸入
T_test ;
N = size(P_test,2);

%% BP神經網路創建、訓練及模擬測試

% 創建網路
net = newff(P_train,T_train,9);
% 設置訓練參數
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
net.trainParam.lr = 0.01;
% 訓練網路
net = train(net,P_train,T_train);
% 模擬測試、使用。
T_test = sim(net,P_test);%得到結果。

㈤ 1.如何用MATLAB神經網路工具箱創建BP神經網路模型具體有哪些步驟請高手舉實例詳細解釋下 2.如何把輸

%人臉識別模型,臉部模型自己找吧。
function mytest()

clc;
images=[ ];
M_train=3;%表示人臉
N_train=5;%表示方向
sample=[];
pixel_value=[];
sample_number=0;

for j=1:N_train
for i=1:M_train
str=strcat('Images\',num2str(i),'_',num2str(j),'.bmp'); %讀取圖像,連接字元串形成圖像的文件名。
img= imread(str);
[rows cols]= size(img);%獲得圖像的行和列值。
img_edge=edge(img,'Sobel');

%由於在分割圖片中我們可以看到這個人臉的眼睛部分也就是位於分割後的第二行中,位置變化比較大,而且眼睛邊緣檢測效果很好

sub_rows=floor(rows/6);%最接近的最小整數,分成6行
sub_cols=floor(cols/8);%最接近的最小整數,分成8列
sample_num=M_train*N_train;%前5個是第一幅人臉的5個角度

sample_number=sample_number+1;
for subblock_i=1:8 %因為這還在i,j的循環中,所以不可以用i
block_num=subblock_i;
pixel_value(sample_number,block_num)=0;
for ii=sub_rows:(2*sub_rows)
for jj=(subblock_i-1)*sub_cols+1:subblock_i*sub_cols
pixel_value(sample_number,block_num)=pixel_value(sample_number,block_num)+img_edge(ii,jj);
end
end
end
end
end
%將特徵值轉換為小於1的值
max_pixel_value=max(pixel_value);
max_pixel_value_1=max(max_pixel_value);
for i=1:3
mid_value=10^i;
if(((max_pixel_value_1/mid_value)>1)&&((max_pixel_value_1/mid_value)<10))
multiple_num=1/mid_value;
pixel_value=pixel_value*multiple_num;
break;
end
end

% T 為目標矢量
t=zeros(3,sample_number);
%因為有五類,所以至少用3個數表示,5介於2的2次方和2的3次方之間
for i=1:sample_number
% if((mod(i,5)==1)||(mod(i,5)==4)||(mod(i,5)==0))
if(i<=3)||((i>9)&&(i<=12))||((i>12)&&(i<=15))
t(1,i)=1;
end
%if((mod(i,5)==2)||(mod(i,5)==4))
if((i>3)&&(i<=6))||((i>9)&&(i<=12))
t(2,i)=1;
end
%if((mod(i,5)==3)||(mod(i,5)==0))
if((i>6)&&(i<=9))||((i>12)&&(i<=15))
t(3,i)=1;
end
end

% NEWFF——生成一個新的前向神經網路
% TRAIN——對 BP 神經網路進行訓練
% SIM——對 BP 神經網路進行模擬

% 定義訓練樣本
% P 為輸入矢量
P=pixel_value'
% T 為目標矢量
T=t
size(P)
size(T)
% size(P)
% size(T)

% 創建一個新的前向神經網路
net_1=newff(minmax(P),[10,3],{'tansig','purelin'},'traingdm')

% 當前輸入層權值和閾值
inputWeights=net_1.IW{1,1}
inputbias=net_1.b{1}
% 當前網路層權值和閾值
layerWeights=net_1.LW{2,1}
layerbias=net_1.b{2}

% 設置訓練參數
net_1.trainParam.show = 50;
net_1.trainParam.lr = 0.05;
net_1.trainParam.mc = 0.9;
net_1.trainParam.epochs = 10000;
net_1.trainParam.goal = 1e-3;

% 調用 TRAINGDM 演算法訓練 BP 網路
[net_1,tr]=train(net_1,P,T);

% 對 BP 網路進行模擬
A = sim(net_1,P);
% 計算模擬誤差
E = T - A;
MSE=mse(E)

x=[0.14 0 1 1 0 1 1 1.2]';
sim(net_1,x)

㈥ matlab神經網路工具箱具體怎麼用

為了看懂師兄的文章中使用的方法,研究了一下神經網路
昨天花了一天的時間查怎麼寫程序,但是費了半天勁,不能運行,網路知道里倒是有一個,可以運行的,先貼著做標本

% 生成訓練樣本集
clear all;
clc;
P=[110 0.807 240 0.2 15 1 18 2 1.5;
110 2.865 240 0.1 15 2 12 1 2;
110 2.59 240 0.1 12 4 24 1 1.5;
220 0.6 240 0.3 12 3 18 2 1;
220 3 240 0.3 25 3 21 1 1.5;
110 1.562 240 0.3 15 3 18 1 1.5;
110 0.547 240 0.3 15 1 9 2 1.5];
0 1.318 300 0.1 15 2 18 1 2];
T=[54248 162787 168380 314797;
28614 63958 69637 82898;
86002 402710 644415 328084;
230802 445102 362823 335913;
60257 127892 76753 73541;
34615 93532 80762 110049;
56783 172907 164548 144040];
@907 117437 120368 130179];
m=max(max(P));
n=max(max(T));
P=P'/m;
T=T'/n;
%-------------------------------------------------------------------------%
pr(1:9,1)=0; %輸入矢量的取值范圍矩陣
pr(1:9,2)=1;
bpnet=newff(pr,[12 4],{'logsig', 'logsig'}, 'traingdx', 'learngdm');
%建立BP神經網路, 12個隱層神經元,4個輸出神經元
%tranferFcn屬性 'logsig' 隱層採用Sigmoid傳輸函數
%tranferFcn屬性 'logsig' 輸出層採用Sigmoid傳輸函數
%trainFcn屬性 'traingdx' 自適應調整學習速率附加動量因子梯度下降反向傳播演算法訓練函數
%learn屬性 'learngdm' 附加動量因子的梯度下降學習函數
net.trainParam.epochs=1000;%允許最大訓練步數2000步
net.trainParam.goal=0.001; %訓練目標最小誤差0.001
net.trainParam.show=10; %每間隔100步顯示一次訓練結果
net.trainParam.lr=0.05; %學習速率0.05
bpnet=train(bpnet,P,T);
%-------------------------------------------------------------------------
p=[110 1.318 300 0.1 15 2 18 1 2];
p=p'/m;
r=sim(bpnet,p);
R=r'*n;
display(R);

運行的結果是出現這樣的界面

點擊performance,training state,以及regression分別出現下面的界面

再搜索,發現可以通過神經網路工具箱來創建神經網路,比較友好的GUI界面,在輸入命令裡面輸入nntool,就可以開始了。

點擊import之後就出現下面的具體的設置神經網路參數的對話界面,
這是輸入輸出數據的對話窗

首先是訓練數據的輸入

然後點擊new,創建一個新的神經網路network1,並設置其輸入輸出數據,包括名稱,神經網路的類型以及隱含層的層數和節點數,還有隱含層及輸出層的訓練函數等

點擊view,可以看到這是神經網路的可視化直觀表達

創建好了一個network之後,點擊open,可以看到一個神經網路訓練,優化等的對話框,選擇了輸入輸出數據後,點擊train,神經網路開始訓練,如右下方的圖,可以顯示動態結果

下面三個圖形則是點擊performance,training state以及regression而出現的

下面就是simulate,輸入的數據是用來檢驗這個網路的數據,output改一個名字,這樣就把輸出數據和誤差都存放起來了

在主界面上點擊export就能將得到的out結果輸入到matlab中並查看

下圖就是輸出的兩個outputs結果

還在繼續挖掘,to be continue……

㈦ 一個關於BP神經網路的問題,matlab中神經網路工具箱的初始權值和閥值是

訓練BP神經網路所採取的隨機初始參數確實是隨機的,在訓練過程中這些參數和權值都會朝著同一個大方向進行修正。例如你用BP神經網路來擬合曲線,找到輸入值與輸出值之間的線性規律,那麼在訓練的過程中這個擬合的曲線會不斷的調整其參數和權值直到滿足幾個預設條件之一時訓練停止。雖然這個訓練出來的結果有時候會有一定誤差,但都在可以接受的范圍內。
縮小誤差的一個方法是需要預先設置初始參數,雖然每次依然會得到不一樣的模型(只要參數是隨機修正的),但不同模型之間的差距會很小。另外可以反復訓練,找到一個自己覺得滿意的模型(可以是測試通過率最高,可以是平均結果誤差值最小)。
至於你說別人怎麼檢查你的論文結果,基本上都是通過你的演算法來重建模型,而且還不一定都用matlab來做,即便是用同樣的代碼都會出現不同的結果,何況是不同的語言呢?其實驗算結果最重要的是看測試時的通過率,例如在對一組新的數據進行測試(或預測)時,通過率達到95%,別人用其他的方式重建了你的模型也得到這樣的通過率,那麼你的演算法就是可行的。注意,在計算機專業的論文裡面大家看重的不是代碼,而是演算法。
補充一點:只要你訓練好了一個神經網路可以把這個神經網路以struct形式保存,這樣這個網路可以被反復使用,且每次對同一組測試數據的預測結果都會一樣。你也可以當做是檢測論文可行性的工具。

閱讀全文

與matlabbp神經網路工具箱如何設置相關的資料

熱點內容
網路共享中心沒有網卡 瀏覽:526
電腦無法檢測到網路代理 瀏覽:1375
筆記本電腦一天會用多少流量 瀏覽:589
蘋果電腦整機轉移新機 瀏覽:1379
突然無法連接工作網路 瀏覽:1071
聯通網路怎麼設置才好 瀏覽:1229
小區網路電腦怎麼連接路由器 瀏覽:1047
p1108列印機網路共享 瀏覽:1214
怎麼調節台式電腦護眼 瀏覽:710
深圳天虹蘋果電腦 瀏覽:946
網路總是異常斷開 瀏覽:616
中級配置台式電腦 瀏覽:1005
中國網路安全的戰士 瀏覽:636
同志網站在哪裡 瀏覽:1419
版觀看完整完結免費手機在線 瀏覽:1463
怎樣切換默認數據網路設置 瀏覽:1112
肯德基無線網無法訪問網路 瀏覽:1289
光纖貓怎麼連接不上網路 瀏覽:1489
神武3手游網路連接 瀏覽:968
局網列印機網路共享 瀏覽:1003