3.誤差逆傳播演算法
累計bp演算法
4.神經網路其他問題
引數初始化
神經網路(neural networks)
神經元(neuro)
"閾值" (threshold)
"啟用函式" (activation function)
"擠壓函式" (squashig function)
感知機(perceptron)
"闊值邏輯單元" (threshold logic unit)
"啞結點" (dummy node)
功能神經元(functionalneuron)
線性可分(linearly separable)
收斂(converge)
振藹(fluctuation)
隱居或隱含層(hidden layer)
"多層前饋神經網路" (multi-layer feedforward neural networks)
"連線權" (connection weight)
誤差逆傳播(error backpropagation)
梯度下降(gradient descent)
累積誤差逆傳 播(accumulated error backpropagation)
"試錯法" (trial-by-error)
"早停" (early stopping):
"正則化" (regularization)
"區域性極小" (local minimum)
"全域性最小" (global minimum)
訓練時就是迭代訓練權重引數和閾值引數通常把閾值看作乙個固定輸入為-1的"啞結點",所對應的連線權重 wn+1,這樣,權重和閾值的學習就可統一為權重的學習感知機只有輸出層神經元進行啟用函式處理,只擁有這一層功能神經元,學習能力非常有限,所以只能解決線性可分的問題(與,或,與非)
舉個簡單的例子,當輸入層只有兩個神經元感知機之所以能模擬與,或,與非演算法,是因為他是線性可分問題多次迭代後,引數影響下,會收斂與一條直線,多個神經元一樣的道理會收斂於乙個超平面
[minsky and *****t, 1969],若兩類模式是線性可分的,即存在乙個線性超平面能將它們分開感知機再加乙個隱層就可以解決「異或」問題:原理上來看「異或」可由」與非「來組成,所以兩層感知機相當於多個「與非」的組合。
多層前饋神經網路:神經元之間不存在同層連線,也不存在跨層連線
輸出層&輸入層神經元個數
損失函式(目標函式)
輸出向量和標籤向量的均方誤差(這裡特地加上1/2是為了後面求偏導消掉)
反向梯度分配
這裡的 f(x)是sigmoid函式
sigmoid函式有個較好的性質這個偏導乘上學習率和-1後就是引數的更新值
無論哪一步的引數(權重或閾值)都是一樣的計算方法
標準bp&累計bp區別
標準 bp 演算法和累積 bp 演算法的區別類似於隨機梯度下降與標準梯度下降之間的區別.
正是由於其強大的表示能力, bp 神經網路經常遭遇過擬合,其訓練誤差持 續降低,但測試誤差卻可能上公升
早停將資料分成訓練集和驗證集,訓練集用來計算梯度、更新連線權和閾值,驗證集用來估計誤差,若訓練集誤差降低但驗證集誤差公升高,則停止訓練,同時返回具有最小驗證集誤差的連線權和閾值
隨時監測模型對驗證集的誤差
正則化基本思想是在誤差目標函式中增加乙個用於描述網路複雜度的部分
隨機數,不能全0初始化
BP神經網路
基本bp神經網路演算法包括 訊號的前向傳播 誤差的反向傳播 也即計算實際輸出時按照輸入到輸出的方向進行,權值閾值調整則相反。bp是一種多層前饋神經網路,由輸入層 隱含層和輸出層組成。層與層之間有兩種訊號在流動 一種是從輸入流向輸出的工作訊號,是輸入和權值的函式 另一種是輸入流向輸出的訊號,即誤差。隱...
BP神經網路
x 為輸入向量,y為隱藏層的神經元,z 為輸出層,d為目標真實值,本文預設 z 不經過sigmod處理。x y的權重為 w,y z的權重為 v yj ix iwij 1 oyi f y j 2 其中激勵函式f x 1 1 e x f x f x 1 f x 3 z k j f yj vjk 此時系統...
BP神經網路
bp是back propagation bp神經網路主要的演算法在於誤差反向傳播error backpropagation 有三層 輸入層 input 隱含層 hidden 輸出層 output 輸入層 n個神經元 隱含層 p個神經元 輸出層 q個神經元 輸入向量 x x1,x2,x n 隱含層輸入...