神經網絡
結構 (Architecture) :
結構指定了網絡中的變量和它們的拓撲關系。例如,神經網絡中的變量可以是神經元連接的權重(weights)和神經元的激勵值(activities of the neurons)。
激勵函數(Activity Rule):
作用:激勵函數是用來加入非線性因素的,因為線性模型的表達能力不夠。
常用的激活函數:
1.sigmoid 采用S形函數,取值范圍[0,1]
2.tanh 雙切正切函數,取值范圍[-1,1]
3.ReLU 簡單而粗暴,大於0的留下,否則一律為0。
學習規則(Learning Rule):
學習規則指定了網絡中的權重如何隨着時間推進而調整。這一般被看做是一種長時間尺度的動力學規則。一般情況下,學習規則依賴於神經元的激勵值。它也可能依賴於監督者提供的目標值和當前權重的值。
人工神經網絡
人工神經網絡結構圖例
內部計算圖例:
邏輯回歸sigmoid函數圖像:
內部結構是具有輸入(xi),加權輸入(x*wi)和Sigmoid函數。
a.他們的節點排列在輸入,輸出和中間層,最后從外部隱藏;
b.每個層中的每個節點都連接其他節點到下一層。這保證了層與層之間信息的不斷向前流動;
c.同一層內的節點彼此完全隔離。
這里學習過程發生在將輸入 - 輸出對的樣本反復饋送到網絡中,直到它“學習”元素之間的關系為止。 這個過程稱為前饋人工神經網絡中的監督學習。 特別地,反向傳播學習是指學習會話的輸出與預期結果之間的差異盡可能地最小的監督學習方法。
神經網絡在分類問題中應用:
非線性可分:
邏輯回歸的比較擅長解決線性可分的問題。對於非線性可分的問題,邏輯回歸有一種運用復雜映射函數的思路,但這種思路只做了一次(非線性的)幾何變換,就得到了線性可分的情形。引入多項式回歸:
神經網絡處理非線性可分原理(利用神經元):
神經元結構:
a1~an為輸入向量的各個分量
w1~wn為神經元各個突觸的權值
b為偏置
f為傳遞函數,通常為非線性函數。一般有traingd(),tansig(),hardlim()。以下默認為hardlim()
t為神經元輸出
數學表示 t=f(W'A+b)
W為權向量,W'為 W的轉置
A為輸入向量
b為偏置
f為傳遞函數
可見,一個神經元的功能是求得輸入向量與權向量的內積后,經一個非線性傳遞函數得到一個標量結果。
單個神經元的作用:把一個n維向量空間用n-1超平面分區成兩部分(稱之為判斷邊界),給定一個輸入向量,神經元可以判斷出這個向量位於超平面的哪一邊。該超平面的方程:W'p+b=0 ,其中W權向量,b偏置,p超平面上的向量
1.神經元邏輯與(交集):
2.神經元邏輯或(並集):
對線性分類器的[與]和[或]的組合,可以完美對平面樣本點分布進行分類:
bp神經網絡
誤差反向傳播(Error Back Propagation, BP)算法。BP算法的基本思想是,學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。
“正向傳播” 求損失, “反向傳播” 回傳誤差
輸入層和中間隱層,可以把它們看成一種特征提取的過程,就是把激勵函數(例如 Logistic Regression)的輸出當作特征,然后再將它送入下一個激勵函數(例如 Logistic Regression),一層層變換。神經網絡的訓練,實際上就是同時訓練特征提取算法以及最后的 激勵函數(例如 Logistic Regression)的參數
算法:
輸出層:
誤差展開至隱層:
展開至輸入層:
調整權重讓誤差不斷減小:
隨機梯度下降.