BP神經網路的訓練集需要大樣本嗎?一般樣本個數為多少

時間 2021-09-06 21:09:32

1樓:

這個沒有明確要求,樣本也不是越多越好。

通常情況下,你的樣本可以一部分用來做驗證。

加速你有100個樣本,90%用來做訓練,10%用來做驗證等,當然,有時候還得留下10%做測試用。

我個人的經驗是,樣本數儘量在10以上吧。

2樓:

這要看做什麼用了

只要訓練樣本的規律性很好的話那自然越多越好,如果不能滿足一致規律的話多了反而有害,就比如拿著文革時候的資料最好解決文革時的問題,但不能用來解決2023年世博會問題一樣。

還有就像樓上說的需要保留一些樣本作為測試用,bp網路的話如果是分類問題可以保留10%左右吧,如果是**問題的話5%應該就足夠了,因為bp的**能力的確有點弱,只適合**離訓練樣本比較近的資料,這也是我自己的理解,呵呵。

3樓:千千飛海

69個…… 的確夠少。 不知道你每個樣本的特徵數是多少? 如果就幾個特徵值的話用很小的神經網路可以試試, 但我覺得你可以嘗試下其餘的機器學習演算法。

神經網路只有當資料量大的時候優勢才會顯現,

bp神經網路演算法迭代一次是所有樣本都算一遍嗎

4樓:匿名使用者

是的,全部樣本都要算一遍。按照順序依次抽取樣本,代入bp演算法,調整權值。也有部分演算法是按隨機方式,每次樣本進來的順序都不同,但仍然是所有樣本都要參與。

唯一可能有點區別的是,標準bp演算法中,每輸入一個樣本,都要回傳誤差並調整權值,這種對每個樣本輪訓的方法稱為「單樣本訓練」。由於單樣本訓練遵循的是隻顧眼前的「本位主義」原則,只針對每個樣本產生的誤差進行調整,難免顧此失彼,使訓練次數增加,導致收斂速度過慢。因此,有另外一種方法,就是在所有樣本輸入之後,計算網路的總誤差,再根據總誤差調整權值,這種累積誤差的批處理方式稱為「批訓練」或「週期訓練」。

在樣本數較多時,批訓練比單樣本訓練的收斂速度更快。

matlab在bp神經網路訓練時出現錯誤說未定義與

依然特雷西 1 實現 以函式的形式訓練神經網路命令。2 實現 p為輸入向量的方法命令。3 實現 t為目標向量的命令。4 實現 建立一個新的前向神經網路的命令。5 實現 呼叫演算法訓練bp網路的命令。6 其他設定命令。 主要問題出在txt樣本上,資料之間應以空格間隔,而不能是製表符,否則fcanf不能...

神經網路權值怎麼確定,BP神經網路中初始權值和閾值的設定

致愛麗絲星空之夜 神經網路的權值是通過對網路的訓練得到的。如果使用matlab的話不要自己設定,newff之後會自動賦值。也可以手動 net.iw net.bias 一般來說輸入歸一化,那麼w和b取0 1的隨機數就行。神經網路的權值確定的目的是為了讓神經網路在訓練過程中學習到有用的資訊,這意味著引數...

MATLAB神經網路BP,誤差超大,怎樣除錯是誤差更接近目標值?主要除錯哪些引數?謝謝

被推薦的答案倒是沒說錯,基本上和沒說一樣 就好比問怎麼安排時間,回答一個 合理安排時間 誤差大,第一步需要嘗試的是做歸一化處理。有線性歸一化,有對數函式歸一化等等,這個你可以去網上搜尋資料歸一化方法,有相關的 應該。第二部需要做出的改動是隱層節點數量,如果節點數量太多,那麼結果的隨機性就會很大,如果...