梯度下降法更新權值理論
阿新 • • 發佈:2019-02-10
使用3層的神經網路(包含輸入層和輸出層)來演示是如何工作的。
網路:input 3個節點;hidden 3個節點;output 3個節點
引數:input:矩陣是3*1的矩陣;為3*3的矩陣;為3*3的矩陣;output:矩陣為3*1的矩陣
計算hidden層節點的矩陣:
計算output層節點的輸出:
如何根據梯度下降法來調節權重:
其中: 是更新後的權重;
其中:是output層第k個節點的誤差值,,是目標值,是實際值
是output層輸出的實際值
是前一層的輸出的轉置
誤差與權重的比值(也叫梯度)推導
- 誤差值 = 目標值 - 實際值,有下面三種選擇
- 誤差值 = 目標值 - 實際值
- 誤差值 = |目標值 - 實際值|
- 誤差值 = (目標值 - 實際值)的平方,一般我們選擇這個,因為使用平方誤差,我們可以很容易的使用代數計算出梯度下降的斜率;誤差函式平滑連續,這使得梯度下降法很好的發揮了作用-沒有間斷,也沒有突然地跳躍;越接近最小值,梯度越小這意味著,如果我們使用了這個函式調節步長,超調的風險就會變得較小。
是output層第k個節點的誤差值,,是目標值,是實際值
由於節點的輸出只取決於所連線的連結,就是取決於連結權重,這意味著誤差函式根本就不需要對所有輸出節點求和,便得到下式: 是一個常數
其中: 也就是3層神經網路的輸出值
所以: