導航:首頁 > 五金知識 > bp神經網路工具箱調用

bp神經網路工具箱調用

發布時間:2022-06-02 03:12:34

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

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

⑵ 關於BP神經網路MATLAB程序

1.matlab不同版本好像對樣本設置不太一樣,你可以試試。我用過的是一行是一個樣本。
2.有matlab第三方程序可以下載,只需要修改相關參數就可以實現神經網路的訓練。也有相關的書籍已經出版了,好像是思科出的,可以參考。
3.神經網路訓練本身是依靠人的經驗的,這些參數的確定也是這樣。當然要考慮訓練樣本的實際情況和你所要求的訓練精度。具體參數的意義忘記了,可以參考思科的書看看。

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

有神經網路的工具箱,bp是配出來的!

⑷ 需要把MATLAB中的BP神經網路工具箱與自己的一個軟體項目結合

這個就是C++與matlab混合編程。但是神經網路工具箱比較特別,它反盜用比較嚴厲。採用回傳統的混答編方式,可以調用matlab自己的函數,但無法成功調用神經網路工具箱。這一點在mathwork網站上也做了說明。

以C#為例,一般混編有四種方式:
(1)利用Matlab自身編譯器,目的是將m文件轉換為c或c++的源代碼。
(2)利用COM或.NET組件技術。通過MATLAB中的Deploy tool工具將m文件編譯成dll,然後在系統中調用。
(3)利用Mideva平台。沒嘗試過。
(4)利用MATLAB引擎技術。該方法相當於在.NET中運行MATLAB程序,獲取其結果。優點是操作簡單,過程簡易。缺點是需要安裝Matlab軟體。

如果要調用神經網路工具箱,只有使用第四種方法,即引擎技術,其他方法都不可行。這種混編方式僅僅傳遞參數,因此不涉及到神經網路工具箱的代碼,也就沒有了防盜用限制。

⑸ 本人新手,在做BP神經網路的時候遇到了一個問題

150張圖取些有效的特徵出來用統計學方法算協方差什麼的分類.225*225*3的神經網路沒有10萬張以上的圖根本訓練不出效果.你的神經網路有225*225*3加上閥值的權數自由度太大,自然用哪類圖訓練就變成適應哪類圖的樣子.假如是為了完成作業,可壓縮圖像用,20*20*3以內甚至更小的網路建模.還有在訓練時dw乘以一個小參數,輪流多次用同樣的數據訓練,並不是每次訓練減小的誤差越小越好.(除非用full batch方法)重復多次才能達到最好效果.

⑹ 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的神經網路工具箱實現三層BP網路

這是一個來自<神經網路之家>nnetinfo的例子,在matlab2012b運行後的確可以,因為網路知道的文本寬度不夠,注釋擠到第二行了,有些亂,樓主注意區分哪些是代碼哪些是注釋,
x1 =
[-3,-2.7,-2.4,-2.1,-1.8,-1.5,-1.2,-0.9,-0.6,-0.3,0,0.3,0.6,0.9,1.2,1.5,1.8]; %x1:x1 = -3:0.3:2;
x2 =
[-2,-1.8,-1.6,-1.4,-1.2,-1,-0.8,-0.6,-0.4,-0.2,-2.2204,0.2,0.4,0.6,0.8,1,1.2];%x2:x2 = -2:0.2:1.2;
y = [0.6589,0.2206,-0.1635,-0.4712,-0.6858,-0.7975,-0.8040,...

-0.7113,-0.5326,-0.2875
,0,0.3035,0.5966,0.8553,1.0600,1.1975,1.2618]; %y:
y = sin(x1)+0.2*x2.*x2;
inputData = [x1;x2]; %將x1,x2作為輸入數據

outputData = y; %將y作為輸出數據

%使用用輸入輸出數據(inputData、outputData)建立網路,

%隱節點個數設為3.其中隱層、輸出層的傳遞函數分別為tansig和purelin,使用trainlm方法訓練。
net = newff(inputData,outputData,3,{'tansig','purelin'},'trainlm');

%設置一些常用參數
net.trainparam.goal = 0.0001;
%訓練目標:均方誤差低於0.0001
net.trainparam.show = 400; %每訓練400次展示一次結果
net.trainparam.epochs = 15000;
%最大訓練次數:15000.
[net,tr] = train(net,inputData,outputData);%調用matlab神經網路工具箱自帶的train函數訓練網路
simout = sim(net,inputData);
%調用matlab神經網路工具箱自帶的sim函數得到網路的預測值
figure; %新建畫圖窗口窗口
t=1:length(simout);
plot(t,y,t,simout,'r')%畫圖,對比原來的y和網路預測的y

⑻ 直接用神經網路工具箱構建bp神經網路,希望能給個例子說明,有註解最好,本人matlab新手,謝謝

BP(Back Propagation)神經網路是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層專前饋網路,是目前應用屬最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hidden layer)和輸出層(output layer)。


附件就是利用神經網路工具箱構建BP神經網路進行預測的實例。如果要用可視化工具,可以在命令窗口輸入nntool.

⑼ 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);%得到結果。

閱讀全文

與bp神經網路工具箱調用相關的資料

熱點內容
車站的應急設備主要有什麼 瀏覽:673
盤車裝置電磁閥的作用 瀏覽:149
天津合金閥門廠爆炸 瀏覽:246
有什麼是震動的儀器 瀏覽:25
軸承內套壞了怎麼辦 瀏覽:812
機床太臟了用什麼擦 瀏覽:690
聲吶和超聲波有什麼不一樣 瀏覽:267
暖氣片進水閥門和出水閥門的調節 瀏覽:764
某傳動裝置中的一根傳動軸 瀏覽:942
十層房子設備層一般在多少樓 瀏覽:173
體液室有哪些儀器 瀏覽:7
貨箱鎖件用什麼鐵鑄造的 瀏覽:221
圖例閥門外邊有個W是什麼閥 瀏覽:7
高端養鴨設備多少錢一套 瀏覽:845
家用燃氣上有個閥門什麼東東 瀏覽:62
平面鏡成像需要什麼器材 瀏覽:132
焦爐煤氣放散裝置構造及作用 瀏覽:463
背肌訓練器材怎麼做 瀏覽:272
濟寧市閥門廠 瀏覽:704
氯化銨和氫氧化鈣的反應實驗裝置 瀏覽:238