導航:首頁 > 網路設置 > 術前bp神經網路取多少號好

術前bp神經網路取多少號好

發布時間:2022-07-23 21:10:37

A. BP神經網路中初始權值和閾值的設定

首先需要了解BP神經網路是一種多層前饋網路。以看一下在matlab中BP神經網路的訓練函數,有梯度下降法traingd,彈性梯度下降法trainrp,自適應lr梯度下降法traingda等。

因為初始值(初始權值和閥值)都在x這個向量中,x(n,1)的長度n為:n=inputnum*hiddennum+hiddennum+hiddennum*outputnum+outputnum

其中inputnum*hiddennum是輸入層到隱含層的權值數量,hiddennum是隱含層神經元個數(即隱含層閥值個數),hiddennum*outputnum是隱含層到輸出層權值個數,outputnum是輸出層神經元個數(即輸出層閥值個數)。

結構

BP網路是在輸入層與輸出層之間增加若干層(一層或多層)神經元,這些神經元稱為隱單元,它們與外界沒有直接的聯系,但其狀態的改變,則能影響輸入與輸出之間的關系,每一層可以有若干個節點。

BP神經網路的計算過程由正向計算過程和反向計算過程組成。正向傳播過程,輸入模式從輸入層經隱單元層逐層處理,並轉向輸出層,每~層神經元的狀態隻影響下一層神經元的狀態。如果在輸出層不能得到期望的輸出,則轉入反向傳播,將誤差信號沿原來的連接通路返回,通過修改各神經元的權值,使得誤差信號最小。

以上內容參考:網路-BP神經網路

B. BP神經網路模型各個參數的選取問題

樣本變數不需要那麼多,因為神經網路的信息存儲能力有限,過多的樣本會造成一些有用的信息被丟棄。如果樣本數量過多,應增加隱層節點數或隱層數目,才能增強學習能力。

一、隱層數
一般認為,增加隱層數可以降低網路誤差(也有文獻認為不一定能有效降低),提高精度,但也使網路復雜化,從而增加了網路的訓練時間和出現「過擬合」的傾向。一般來講應設計神經網路應優先考慮3層網路(即有1個隱層)。一般地,靠增加隱層節點數來獲得較低的誤差,其訓練效果要比增加隱層數更容易實現。對於沒有隱層的神經網路模型,實際上就是一個線性或非線性(取決於輸出層採用線性或非線性轉換函數型式)回歸模型。因此,一般認為,應將不含隱層的網路模型歸入回歸分析中,技術已很成熟,沒有必要在神經網路理論中再討論之。
二、隱層節點數
在BP 網路中,隱層節點數的選擇非常重要,它不僅對建立的神經網路模型的性能影響很大,而且是訓練時出現「過擬合」的直接原因,但是目前理論上還沒有一種科學的和普遍的確定方法。 目前多數文獻中提出的確定隱層節點數的計算公式都是針對訓練樣本任意多的情況,而且多數是針對最不利的情況,一般工程實踐中很難滿足,不宜採用。事實上,各種計算公式得到的隱層節點數有時相差幾倍甚至上百倍。為盡可能避免訓練時出現「過擬合」現象,保證足夠高的網路性能和泛化能力,確定隱層節點數的最基本原則是:在滿足精度要求的前提下取盡可能緊湊的結構,即取盡可能少的隱層節點數。研究表明,隱層節點數不僅與輸入/輸出層的節點數有關,更與需解決的問題的復雜程度和轉換函數的型式以及樣本數據的特性等因素有關。

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

  1. 不知你是不是用matlab的神經網路工具箱,因為一般神經網路都是成批處理的,每一次調整都會綜合所有樣本的誤差進行調整,而不是一類一類圖片的去調整,所以不會出現你說的現象。目前我看過的很多C++或者其它語言自己寫的神經網路,都會有這樣或那樣的理解錯誤,建議先使用現成的matlab的神經網路工具箱進行訓練。

  2. 另外是輸入的問題,圖象一般會先提取特徵,再將特徵作為輸入。你在貼吧也提問了吧,這個我在貼吧里也回答了。

  3. 輸出的問題,一般模式識別會用 0 1向量來代表,例如你有三類,目標輸出應該是[ 0 1 0]這樣,來代表它是第2類, 訓練的時候用 0 1 0,當然,預測到的可能是[ 0.1 0.9 0.1]這樣。

這是我所想到的問題,樓主看看是不是這樣一回事。

下面是我的一些建議:

  1. 改為用神經網路工具箱。

  2. 借鑒《 MATLAB神經網路原理與實例精解 》里的 基於概率神經網路的手寫體數字識別 ,對圖象作預處理。

  3. 參考2012Bmatlab R2012b oolbox net ndemos下的classify_crab_demo例子。調用patternnet建立模式識別網路。


可以到 《神經網路之家》 學習神經網路。

D. BP神經網路輸入層神經元個數是越多越好嗎

作非線性擬合的話,一般隱藏層是1-2層;至於隱藏層神經元數目也並不是越多越好,太多可能出現過擬合現象,具體的話需要嘗試,也可以參考一些經驗公式。

E. BP神經網路中的訓練函數如何選取

神經網路不同的網路有這不同的訓練函數,BP神經網路有兩種訓練函數,trainbp(),利用BP演算法訓練前向神經網路。trainbpx(),利用快速BP演算法訓練前向神經網路,即採用了動量或自適應學習,可減少訓練時間,tansig函數是神經元的傳遞函數,與訓練函數無關,在trainbp()函數中含有要訓練神經元的函數。

F. BP神經網路中隱藏層節點個數怎麼確定最佳

神經網路演算法隱含層的選取:構造法,刪除法,黃金分割法。

首先在[a,b]內尋找理想的隱含層節點數,這樣就充分保證了網路的逼近能力和泛化能力,為滿足高精度逼近的要求,再按照黃金分割原理拓展搜索區間;

即得到區間[b,c](其中b=0.619*(c-a)+a),在區間[b,c]中搜索最優,則得到逼近能力更強的隱含層節點數,在實際應用根據要求,從中選取其一即可。

計算過程

BP神經網路的計算過程由正向計算過程和反向計算過程組成。正向傳播過程,輸入模式從輸入層經隱單元層逐層處理,並轉向輸出層,每一層神經元的狀態隻影響下一層神經元的狀態。如果在輸出層不能得到期望的輸出,則轉入反向傳播,將誤差信號沿原來的連接通路返回,通過修改各神經元的權值,使得誤差信號最小。

以上內容參考:網路-BP神經網路

G. BP神經網路學習樣本是不是越多越好!

這個沒有明確要求,樣本也不是越多越好。通常情況下,你的樣本可以一部分用來做驗證。加速你有100個樣本,90%用來做訓練,10%用來做驗證等,當然,有時候還得留下10%做測試用。我個人的經驗是,樣本數盡量在10以上吧。

H. Matlab BP神經網路隱層選擇幾層合適隱層中的神經節點選擇幾個合適

我是一個一個挨著順序試的,把神經元的節點一個個的增加,記錄下每次的誤差。一般來說,當神經元個數增加到某一個數後,誤差就穩定了或者出現誤差增大的情況。把誤差最小的那個點作為較優點。

閱讀全文

與術前bp神經網路取多少號好相關的資料

熱點內容
悅盒連接無線網路 瀏覽:168
中國電信改移動網路 瀏覽:288
如果網線沒接好網路會出什麼問題 瀏覽:590
疫情期間網路異常活躍 瀏覽:844
網路打車平台投訴找哪個部門 瀏覽:683
搶單軟體顯示網路異常是咋回事 瀏覽:788
網路分析儀測量相位校準設置 瀏覽:256
mp3電腦傳歌需要網路嗎 瀏覽:29
不能拉黑的網路電話哪個好 瀏覽:265
周口下樓無線網路管理中心 瀏覽:696
網路欺詐金額多少錢才能立案 瀏覽:746
如何做一張網路虛擬電話卡 瀏覽:46
如何打開共享網路搜索 瀏覽:30
如何看待網路的普及和危害 瀏覽:537
蘋果xr玩游戲網路卡頓 瀏覽:368
邢台淘寶網路運營電話多少 瀏覽:540
手機的網路經常斷開 瀏覽:576
黑鯊手機wifi網路連接受限 瀏覽:362
怎麼查看同一網路下的其他電腦 瀏覽:73
網路核相儀公司有哪些 瀏覽:177

友情鏈接