天天看點

監督學習三 神經網絡

神經網絡是受人類大腦的啟發而建構的一種模型,它們在很多方面彌補了機器學習和認知科學之間的空白。

1、人工神經網絡

     人工神經網絡是模仿人類大腦的神經網絡而建構的一種模型,感覺器是神經網絡組成單元,也叫神經元。

    神經元的組成部分:

            · 輸入層:X1、X2、X3等,輸入資料;

            · 權重 :w1、w2、w3等,輸入層輸入的資料在模型中所占的比重;

            · 門檻值激活函數:y =  x1w1 + x2w2 + x3w3 + ..... + xkwk (i=1...k)  → 階躍函數

                                          y >= θ → y = 1

                                          y < θ → y = 0

            · 輸出層:Y,輸出資料 → 離散型資料。

     以下是神經網絡中的感覺器單元(perceptron unit)簡圖。

監督學習三 神經網絡

單個感覺器單元能夠實作AND、OR、NOT邏輯運算。XOR邏輯運算是一個神經網絡。

注:以下坐标軸傳回的是一個超平面(超平面是n維歐氏空間中餘次元等于一的線性子空間(也就是必須是(n-1)次元)。來自百度百科定義)。

監督學習三 神經網絡
監督學習三 神經網絡

2、兩種學習規則

      在機器學習中,在給出樣本的情況下,通過權重的調整,根據輸入的資料能夠自動映射為輸出資料的權值,以下兩種規則就是專門用于解決此類問題的。

      a、感覺器訓練 → 線上性可分的資料集上得到很好的應用,具有很好的收斂性。

      b、梯度下降/delta定律 → 在非線性可分的資料集上的運用很好,更具健壯性,隻能收斂于局部最優解。

      ※兩者的差別在于門檻值的使用,感覺器訓練使用門檻值的輸出,而梯度下降則不使用門檻值。

          梯度下降不适用門檻值的原因是實際輸出的結果不可導,是以引入了Sigmoid函數代替階躍函數,它可以了解為一個可導的門檻值。

         Sigmoid函數:f(x) = 1/1+exp(-x)      0<f(x)<1

監督學習三 神經網絡

3、多層神經網絡

     如圖所示,由輸入層、隐藏層和輸出層組成。

監督學習三 神經網絡

4、BP算法

      顧名思義反向傳播算法(back propagation algorithm),又稱為誤差反向傳播算法(error back propagation algorithm)。

      在神經網絡中的傳播可參考上圖的紅線,輸入→輸出傳的是資訊,反之,誤差資訊回傳。

      目的:調整權值以便實際輸出得到所期待的輸出值。

5、優化權值

      原因:在神經網絡中存在更多的節點,層數或者數值更大的情況下,容易出現過拟合的情況。

      防止過拟合的手段可以使用交叉驗證法。

     ※交叉驗證有三個作用:

          1、決定神經網絡中有多少隐藏層再利用中;

          2、決定每層中放了多少節點;

          3、決定什麼時候停止訓練,因為權重由于訓練過多會導緻越來越大。

下圖是誤差與疊代的關系,綠線是交叉驗證,黑線是正常的神經網絡。

監督學習三 神經網絡

6、小結

      A、感覺器(perceptron)是一個門檻值單元,一個線性的門檻值單元;

      B、将各感覺器的網絡連接配接起來可以産生任何布爾函數;

      C、感覺器規則:針對線性可分資料集,能有限的時間内運作并得到結果;

      D、可微規則:使用梯度集(gradient set)進行反向傳播

      E、神經網絡的優選偏置和限定偏置

繼續閱讀