8

我在一個訓練週期中使用了多少次訓練數據樣本?假設我有60個訓練數據。我通過第一排進行前鋒傳球並使用後傳球的結果來調整體重。使用S形函數如下:在神經網絡中循環訓練數據反向傳播算法

Forward pass 
Si = sum of (Wi * Uj) 
Ui = f(Si) = 1/1 + e^ - Si 

Backward pass 
Output Cell = (expected -Ui)(f'(Si)), where 
f'(Si) = Ui(1-Ui) 

難道我然後再通過第2行做同樣的過程,第一次還是我去的第1列四周,直至誤差小於?

我希望有人能幫助取悅

回答

5

培訓網絡

你應該使用每個訓練時期設置一次訓練的每個實例。

一個訓練劃時代是通過你的數據集一個完整的週期。

當你通過數據集並計算出增量後,你應該調整網絡的權重。然後你可以在神經網絡上執行一個新的正向傳遞,並且做另一個訓練時期,循環你的訓練數據集。

圖形表示
反向傳播的真正偉大的圖形表示可能會發現at this link.


單步訓練

有訓練你的網絡上進行分類的兩種方法一個數據集。最簡單的方法稱爲單步或在線學習。這是您在大多數文獻中都會找到的方法,也是最快速收斂的方法。在訓練網絡時,您將計算每個圖層的增量,並調整的每個實例的權重

因此,如果您有60個實例的數據集,這意味着您應該在訓練時期結束之前調整權重60次。

批培訓

另一種方法是所謂的間歇訓練或離線學習。這種方法通常會產生殘留誤差較低的網絡。 當你訓練網絡時,你應該爲每個數據集的每個實例計算每層的增量,然後平均每個增量和對每個時期的權重進行一次校正。

如果您有60個實例的數據集,這意味着您應該在訓練時期結束之前調整一次權重。

+0

只是留下評論,如果有什麼不清楚:) – jorgenkg

+0

真的很感謝你的幫助。你是說我應該遍歷所有60個數據並計算增量,一旦循環完成,我調整權重?或者,我是否循環了60個數據,並在計算出增量後立即調整權重? – obsessiveCookie

+0

我已經擴展了我的答案,因爲這無法用600行內字符解釋。我認爲你應該去網絡版! – jorgenkg