2017/7/20 朱興全教授學術講座觀點與總結第三講:多層神經網絡

1、多層神經網絡(爲何能夠解決多種問題)html

多層神經網絡:在輸入和輸出層上有隱含層,能夠克服單層神經網絡的限制處理非線性分離問題git

  • 多層有更大的區分度,多條線去擬合

    第三個圖中,每個方塊對應第二個圖中神經網絡,即有兩個隱含層。算法


 

2、Feedforward Neural Networks網絡

一、FF NN模型函數

選擇sigmoid函數做爲激活函數的緣由是其到處可導。性能

 

 

多層神經網絡的偏差,輸出偏差(指望輸出與真實輸出的差)、單個樣本網絡偏差(單個樣本對應全部輸出與指望輸出的偏差)、全部樣本的網絡偏差。學習

前饋神經網絡測試

loss:指望與實際狀況的差別  去調整權重。觀察到某種狀況下(某一權重分佈下)的影響(輸出結果),去更改行爲(權重),以使其往指望的方向改變。spa

 

二、訓練:BP算法設計

重複:

  • 前向傳遞  從輸入到輸出的計算,獲得error
  • 後向傳遞  從輸出層開始,偏差反向傳播,對每個神經元計算局部梯度,更改權重(最後層附近更改權重是最大的,越往前影響越弱,如繩子抖波浪同樣)

 

算法步驟:

 二、BP規則的推導(我的認爲十分調理清晰,簡單易懂,很是推薦看看)

 

輸出層與隱含層神經元的權重更新不一樣

 

 

 

各個層到底學到的是什麼?

權重與特徵並不一樣等,具備可區分性的特徵對應的權重值更大,對應點(神經元)response更高。

 這裏有一個demo,適合運行在32位的計算機上,但願後面有時間來運行一下(64位要在x86裏更改什麼來着。。。)

http://www.inf.ed.ac.uk/teaching/courses/inf1-cg/labs/lab6/mcmaster/digit-demo.html

 

 

 訓練中止法則:兩點,一是整個平均偏差平方達到一個很小的值。二是使用驗證集,整個模型的泛化性能表現足夠良好。

 

  • 有效數據集:訓練數據集、驗證集(監測偏差,決定是否中止迭代)、測試集
  • 控制好模型的複雜度與泛化能力

  • 經過交叉驗證選擇合適的模型

 

三、神經網絡設計

數據表示

 

①網絡拓撲結構(層數等)

②網絡參數(權重、學習率、隱藏層數和神經元個數、訓練集樣本個數)

 

相關文章
相關標籤/搜索