# 神經網路 --- ## 什麼是神經網路 ![](https://i.imgur.com/4R1uJd0.png =x300) ---- ## 神經網路的表示和學習 ### 基本神經元模型 ![](https://i.imgur.com/WQbrQ1H.png) * a1~an為輸入向量的各個分量 * w1~wn為神經元各個突觸的權值 * b為偏置 * f為傳遞函式,通常為非線性函式。一般有traingd(),tansig(),hardlim()。以下預設為hardlim() * t為神經元輸出 ![](https://i.imgur.com/lXRZerc.png =x150) * 可見,一個神經元的功能是求得輸入向量與權向量的內積後,經一個非線性傳遞函式得到一個純量結果。 * 單個神經元的作用:把一個n維向量空間用一個超平面分割成兩部分(稱之為判斷邊界),給定一個輸入向量,神經元可以判斷出這個向量位於超平面的哪一邊。 ![](https://i.imgur.com/EovssvD.png =x110) ### 基本的神經網路模型 ### 感知器Perceptron ![](https://i.imgur.com/5JAxvhk.png) ### 神經網路的學習 依學習策略(Algorithm)分類主要有: * 監督式學習網絡(Supervised Learning Network)為主 * 無監督式學習網絡(Unsupervised Learning Network) * 混合式學習網絡(Hybrid Learning Network) * 聯想式學習網絡(Associate Learning Network) * 最適化學習網絡(Optimization Application Network) #### 感知機學習規則演算法步驟如下The perceptron learning algorithm ![](https://i.imgur.com/KfUx43E.png) ## 多層前饋神經網路 multilayer feedforward neural network 在前饋神經網路中,不同的神經元屬於不同的層,每一層的神經元可以接受到前一層的神經元訊號,併產生訊號輸出到下一層。第0層叫做輸入層,最後一層叫做輸出層,中間的叫做隱藏層,整個網路中無反饋,訊號從輸入層到輸出層單向傳播,可用一個有用無環圖表示。 前饋神經網路也成為多層感知器(Mutlti-Layer Perceptron,MLP)。但是多層感知器的叫法並不準確,因為前饋神經網路其實是由多層Logistic迴歸模型(連續的非線性模型)組成,而不是有多層感知器模型(非連續的非線性模型)組成。 ![](https://i.imgur.com/IpYX77r.png) ### 前饋神經網路模型和表徵能力 ![](https://i.imgur.com/mYoySfW.png) ![](https://i.imgur.com/GBxvh1s.png) ### 後向傳播演算法Backpropagation 反向傳播是誤差反向傳播的簡稱,是一種與最優化方法 (如梯度下降法) 結合使用的方法,該方法對網路中所有權重計算損失函數的梯度。這個梯度會反饋給最優化方法,用來更新權值以最小化損失函數。 反向傳播要求對每個輸入值想得到已知輸出,來計算損失函數梯度。因此它通常被認為是一種監督式學習的方法,可以對每層迭代計算梯度,另外反向傳播要求神經元的啟動函數是可微分的。 ### 後向傳播法則的推導 ![](https://i.imgur.com/O4TbDF8.png)