深度學習的數學基礎part1
深度學習所需的數學基礎part1
神經網路的思想
神經元工作的數學表示
這裡先介紹一下神經元。
根據生物學的知識,神經元可以歸納具有以下三種性質:
- 來自其他多個神經元的訊號之和成為神經元的輸入
- 如果這個神經元之和超過神經元固有的閾值,則點火(即神經元做出反應)
- 神經元的輸出訊號可以用數字訊號0和1來表示。即使有多個輸出端,其值也是同一個
如果我們用數學方式表示神經元的點火結構,則無輸入訊號時x=0,有輸入訊號時x=1;無輸出訊號時y=0,有輸出訊號時y=1。
神經元的輸入訊號是考慮了權重的訊號之和。假設相鄰神經元1、2、3的輸入訊號分別為x1
其中:w1,w2,w3 是輸入訊號x1,x2,x3對應的權重。
此外,利用單位階躍函式u(z)(將在後續內容中介紹)可以得到一個點火的式子:
y = u(w1x1+w2x2+w3x3 - θ)
其中:z = w1x1+w2x2+w3x3 - θ 稱為該神經元的加權輸入,而θ為該神經元的閾值。
為了便於優化引入b = -θ ,該式子變為z = w1x1+w2x2+w3x3+b
其中b稱為偏置。
啟用函式的定義
所謂啟用函式(Activation Function),就是在人工神經網路的神經元上執行的函式,負責將神經元的輸入對映到輸出端。通俗的說,即讓生物神經元抽象出來的神經元一般化。如下所示:
什麼是神經網路
神經網路可以指向兩種,一個是生物神經網路,一個是人工神經網路。
生物神經網路:一般指生物的大腦神經元,細胞,觸點等組成的網路,用於產生生物的意識,幫助生物進行思考和行動。
人工神經網路(Artificial Neural Networks,簡寫為ANNs)也簡稱為神經網路(NNs)或稱作連線模型(Connection Model),它是一種模仿動物神經網路行為特徵,進行分散式並行資訊處理的演算法數學模型。這種網路依靠系統的複雜程度,通過調整內部大量節點之間相互連線的關係,從而達到處理資訊的目的。
人工神經網路:是一種應用類似於大腦神經突觸聯接的結構進行資訊處理的數學模型。在工程與學術界也常直接簡稱為“神經網路”或類神經網路。
通俗的來說即為各神經元連線成的網路狀結構。而深度學習基於神經網路進行。
這裡先介紹作為基礎的階層型神經網路。它按照層劃分神經單元,通過這些神經單元處理訊號,並從輸出層得到結果。
通常由三層構成:輸入層,隱藏層(也叫中間層),輸出層。
網路自學習的神經網路
神經網路訓練的訓練:指對人工神經網路訓練。
向網路輸人足夠多的樣本,通過一定演算法調整網路的結構(主要是調節權值),使網路的輸出與預期值相符。訓練資料通常也稱學習資料。
神經網路的訓練本質上是一個最優化問題。通常會使用迴歸分析的常規手段。
神經網路的引數確定方法分為有監督學習和無監督學習,這裡目前先介紹有監督學習,無監督學習將在後續的學習中有所涉及。