人工神经网络之BP神经网络模型
一、什么是BP
BP(Back Propagation)網絡是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播算法訓練的多層前饋網絡,是目前應用最廣泛的神經網絡模型之一。BP網絡能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用梯度下降法,通過反向傳播來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。BP神經網絡模型拓撲結構包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。
我們現在來分析下這些話:
- “是一種按誤差逆傳播算法訓練的多層前饋網絡”
BP是后向傳播的英文縮寫,那么傳播對象是什么?傳播的目的是什么?傳播的方式是后向,可這又是什么意思呢。
傳播的對象是誤差,傳播的目的是得到所有層的估計誤差,后向是說由后層誤差推導前層誤差:
即BP的思想可以總結為
利用輸出后的誤差來估計輸出層的直接前導層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層的反傳下去,就獲得了所有其他各層的誤差估計。?- “BP神經網絡模型拓撲結構包括輸入層(input)、隱層(hide layer)和輸出層(output layer)”
我們來看一個最簡單的三層BP:
- 網絡能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。”
? ? BP利用一種稱為激活函數來描述層與層輸出之間的關系,從而模擬各層神經元之間的交互反應。
? ? 激活函數必須滿足處處可導的條件。那么比較常用的是一種稱為S型函數的激活函數:
那么上面的函數為什么稱為是S型函數呢:
我們來看它的形態和它導數的形態:
p.s. S型函數的導數:
神經網絡的學習目的:
希望能夠學習到一個模型,能夠對輸入輸出一個我們期望的輸出。 ? 學習的方式: 在外界輸入樣本的刺激下不斷改變網絡的連接權值 ? 學習的本質: 對各連接權值的動態調整學習的核心:
權值調整規則,即在學習過程中網絡中各神經元的連接權變化所依據的一定的調整規則。
二、有監督的BP模型訓練過程
1. 思想
有監督的BP模型訓練表示我們有一個訓練集,它包括了: input X 和它被期望擁有的輸出 output Y
所以對于當前的一個BP模型,我們能夠獲得它針對于訓練集的誤差
所以BP的核心思想就是:將輸出誤差以某種形式通過隱層向輸入層逐層反傳,這里的某種形式其實就是:
也就是一種 "信號的正向傳播 ----> 誤差的反向傳播"的過程:
2.具體
總結
以上是生活随笔為你收集整理的人工神经网络之BP神经网络模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spark Shuffle Write阶
- 下一篇: BP+SGD+激活函数+代价函数+基本问