怎樣使用matlab2012b實現BP人工神經網路

2025-02-17 12:05:01 字數 1526 閱讀 9097

1樓:雨之風清

p=[ 47 ;20 44 23; 42 16;21 45 10;

t=[1 0 0 0 0;1 0 0 0 0;1 0 0 00;1 0 0 0 0;

0 0 0 0 1;0 0 0 0 1;0 0 0 01;0 0 0 0 1]';訓練樣本。

p,ps]=mapminmax(p,-1,1);

t,ts]=mapminmax(t,0,1);

net=newff(minmax(p),[8,5],,trainrp');;

net=train(net,p,t);

y=sim(net,p);

error=y-t;

res=norm(error);

w1=theta1=

w2=theta2=

你模仿這個就行了我的是3-8-5的。

matlab中bp神經網路的訓練演算法具體是怎麼樣的

2樓:網友

bp演算法的基本思想是,學習過程由訊號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經各隱層逐層處理後,傳向輸出層。若輸出層的實際輸出與期望的輸出(教師訊號)不符,則轉入誤差的反向傳播階段。

誤差反傳是將輸出誤差以某種形式通過隱層向輸入層逐層反傳,並將誤差分攤給各層的所有單元,從而獲得各層單元的誤差訊號,此誤差訊號即作為修正各單元權值的依據。這種訊號正向傳播與誤差反向傳播的各層權值調整過程,是週而復始地進行的。權值不斷調整的過程,也就是網路的學習訓練過程。

此過程一直進行到網路輸出的誤差減少到可接受的程度,或進行到預先設定的學習次數為止。

1)正向傳播:輸入樣本->輸入層->各隱層(處理)->輸出層。

注1:若輸出層實際輸出與期望輸出(教師訊號)不符,則轉入2)(誤差反向傳播過程)

2)誤差反向傳播:輸出誤差(某種形式)->隱層(逐層)->輸入層。

其主要目的是通過將輸出誤差反傳,將誤差分攤給各層所有單元,從而獲得各層單元的誤差訊號,進而修正各單元的權值(其過程,是乙個權值調整的過程)。

注2:權值調整的過程,也就是網路的學習訓練過程(學習也就是這麼的由來,權值調整)。

具體的公式和推導請參閱相關教材,這裡很難表述公式。

3樓:網友

就是用一組非線性的表示式逼近資料。

求乙個bp神經網路**模型的matlab程式

4樓:網友

bp神經網路**的步驟:

1、輸入和輸出資料。

2、建立網路。fitnet()

3、劃分訓練,測試和驗證資料的比例。;

4、訓練網路。 train()

5、根據圖表判斷擬合好壞。ploterrcorr();parcorr();plotresponse()

6、**往後資料。net()

7、畫出**圖。plot()

執行下列命令。

bp_prediction

得到結果: 2016, 2017, 2018, 2019, 2020,

matlab錯誤使用feedback line 71 輸入引數的數目不足

就是當執行函式的時候,沒有提供足夠的引數。比如,如果需要計算一個數 x 的正弦值,那麼,如果不給定x的話,是沒有辦法得到一個確切的數值的。也就是說,當在命令列中輸入sin 的時候,是不會有正確結果的。這就是作為的輸入引數不足。matlab中的.m檔案實際上氛圍兩種,一種叫做指令碼 script 一種...

如何使用matlab繪製函式曲線

使用matlab繪製函式曲線的方法和操作步驟如下 2 其次,完成上述步驟後,請根據實際情況設定圖示 如下圖所示。3 接著,完成上述步驟後,需要填寫註釋資訊,如下圖所示。4 最後,完成上述步驟後,將獲得相應的效果圖,函式曲線就繪製完成了,如下圖所示。1 用matlabc開啟命令列視窗,直接輸入相關的內...

如何使用Matlab提取Excel中指定列的資料

只讀 張三 num,txt xlsread 工作薄1.xls n find strcmp txt 1,2 end 張三 cj num 1 end,n cj 8691 8685 78 mean cj ans 85.2000 2.全部讀取 num,txt xlsread 工作薄1.xls s size ...