BP演算法和LMBP演算法
BP演算法
反向傳播演算法(BP演算法)是一種監督學習演算法,常被用來訓練多層感知機。BP演算法由兩個環節(激勵傳播、權重更新)反覆迴圈迭代,直到網路對輸入的響應大到預定的目標範圍為止。
激勵傳播包含:(向前傳播階段)將訓練輸入送入網路以獲得激勵響應啊;(反向傳播階段)將激勵響應同訓練輸入對應的目標輸入求差(t-a),從而獲得隱層和輸出層的響應誤差。
權重更新包括:首先將輸入激勵和響應誤差相乘(sm*(a(m-1))),從而獲得權重的梯度;然後,將這個梯度乘上一個比例(∂*sm*(a(m-1)))並去反後加到權重上。
LMBP演算法
Levenberg-Marquardt演算法是牛頓法的一種變形,用於最小化非線性函式的平方和。也可以看成是最速下降法和高斯牛頓法的結合(通過調節阻尼μ切換),當解距離最優解較遠時,演算法更接近最速下降法,慢卻保證下降;當解接近最優解,演算法接近高斯牛頓法,快速收斂。非常適用於採用均方誤差為效能指標的神經網路的訓練。
核心思想:用雅可比矩陣(易計算)代替Hessian矩陣的計算,使得優化效率得到提升。
LMBP是加速收斂BP演算法的其中一種標準的數值優化方法。
優點:由於需要求解矩陣的逆,所以在每次迭代中需要更多的計算。但是既便如此,在網路引數個數適中的情況下,LMBP演算法依然是最快的神經網路訓練演算法。
缺點:儲存需求大。所需儲存近似Hessian矩陣JTJ(n*n的矩陣,其中n是神經網路中引數(權值與偏置值)的個數)。因此當引數的數量非常大時,LMBP演算法是不實用的。
Levenberg-Marquardt反向傳播演算法迭代總結:
1、將所有的輸入傳入網路,並計算網路對應的輸出及誤差 。計算所有輸入的平方誤差之和F(X)。
2、計算Jacobian矩陣。通過初始化之後,使用回覆關係來計算這些敏感度。增廣個體矩陣到Levenberg-Marquardt敏感度。計算Jacobian矩陣中的元素。
3、求解獲得
4、使用來再次計算平方誤差的和。如果新的平方和小於第1步中計算的結果,將μ除以 ,令 並回到第1步。如果平方和沒有減小,那麼使用 乘以μ,並回到第3步。
當這個梯度的範數小於某一個先前設定值時,或者當平方和減小到某個目標誤差時,此演算法被認為是已經收斂的。
相關文章
- 《TensorFlow2.0》前饋神經網路和 BP 演算法神經網路演算法
- TensorFlow系列專題(五):BP演算法原理演算法
- 關於BP演算法的一點理解演算法
- BP演算法是從天上掉下來的嗎?演算法
- KMP演算法和bfprt演算法總結KMP演算法
- 字串匹配-BF演算法和KMP演算法字串匹配演算法KMP
- 粒子群優化演算法對BP神經網路優化 Matlab實現優化演算法神經網路Matlab
- BP-Wrapper:無鎖競爭的快取替換演算法系統框架APP快取演算法框架
- 演算法和大便演算法
- 最短路徑——Dijkstra演算法和Floyd演算法演算法
- 最小生成樹——Prim演算法和Kruscal演算法演算法
- 最小生成樹-Prim演算法和Kruskal演算法演算法
- 最小生成樹:Kruskal演算法和Prim演算法演算法
- 演算法---貪心演算法和動態規劃演算法動態規劃
- CAS演算法和ThreadLocal演算法thread
- 雪花演算法和UUID演算法UI
- 基於BP神經網路的64QAM解調演算法matlab效能模擬神經網路演算法Matlab
- 基於BP神經網路的16QAM解調演算法matlab效能模擬神經網路演算法Matlab
- 粒子群演算法和遺傳演算法的比較演算法
- js資料結構和演算法(9)-排序演算法JS資料結構演算法排序
- 模式識別中的Apriori演算法和FPGrowth演算法模式演算法
- 總結下js排序演算法和亂序演算法JS排序演算法
- Dijkstra演算法和Prim演算法有什麼區別?演算法
- 最小生成樹---普里姆演算法(Prim演算法)和克魯斯卡爾演算法(Kruskal演算法)演算法
- 強化學習演算法筆記之【Q-learning演算法和DQN演算法】強化學習演算法筆記
- 【資料結構與演算法】字串匹配(Rabin-Karp 演算法和KMP 演算法)資料結構演算法字串匹配KMP
- 一文徹底搞懂BP演算法:原理推導+資料演示+專案實戰(上篇)演算法
- 演算法設計與分析中的幾個核心演算法策略:動態規劃、貪心演算法、回溯演算法和分治演算法演算法動態規劃
- 聊聊演算法——BFS和DFS演算法
- 《演算法》- 佇列和棧演算法佇列
- 演算法面試(七) 廣度和深度優先演算法演算法面試
- 關聯分析Apriori演算法和FP-growth演算法初探演算法
- Dijkstra演算法和Floyd演算法超詳解以及區別演算法
- 資料結構和演算法——棧的面試演算法資料結構演算法面試
- 連通圖演算法詳解之① :Tarjan 和 Kosaraju 演算法演算法
- 03EM演算法-EM演算法流程和直觀案例演算法
- 手寫fft演算法,和內建fft演算法對比FFT演算法
- TTS 演算法對比:DNN 結果和 HMM 演算法結果TTS演算法DNNHMM