2

我想實現卷積神經網絡的隨機對角Levenberg-Marquardt方法,以便爲學習權重進行反向傳播。 我是新來的,它很混亂,所以我有幾個問題,我希望你能幫助我。如何計算神經網絡輸出層的二階導數?

1)如何計算輸出層的二階導數。 由於我在一階導數,我必須從所需的輸出中減去輸出並將其與輸出的導數相乘。 但在二階導數中,我該怎麼做?

2)在卷積神經網絡的MaxPooling層中,我在2x2窗口中選擇最大值,並將其乘以權重,現在是否必須通過激活函數傳遞它呢?

有人能給我解釋如何在opencv中做到這一點,或者如何用數學解釋或任何顯示數學的參考。 在此先感謝。

+0

這更關係到math.stackexchange.com –

+0

你能解釋一下你的函數,數據,變量,你想計算什麼導數(與什麼變量有關)?然後我可以幫你。 – 4pie0

回答

2

如果已計算雅可比矩陣已經(部分一階導數的矩陣),則可以通過乘以J 1 T *Ĵ獲得海森(部分二階導數的矩陣)的近似(如果殘差很小)。

可以從兩個輸出計算二階導數:ÿF(X)雅可比這種方式:

enter image description here

在Hessian矩陣近似被選擇爲換句話說滿足:

enter image description here

在本文中,您可以找到更多關於它的信息。 Ananth Ranganathan: The Levenberg-Marquardt Algorithm

+0

對不起,遲到了...謝謝你的回覆。你的意思是一階導數叫做雅卡比矩陣嗎?如果是,那麼我確實有。我在輸出層使用S形函數。所以你的意思是Hessian是轉置乘以原始矩陣。 (我的輸出是2x1 Mat。[0,1]或[1,0]所以你的意思是2x1是我的Hessian矩陣) – khan

+0

更多信息? – khan

+1

@khan是的,雅可比矩陣是一階偏導數矩陣,[Hessian](http://en.wikipedia.org/wiki/Hessian_matrix)是部分二階導數矩陣。這些矩陣被平方。 – 4pie0