從機器學習的角度看,神經網路一般可以看做是乙個非線性模型。
淨輸入z 在經過乙個非線性函式f(·)後,得到神經元的活性值(activation)a,a = f(z), 其中非線性函式f(·)稱為啟用函式(activation function)。
啟用函式 啟用函式在神經元中非常重要的。為了增強網路的表示能力和學習能力,啟用函式需要具備以下幾點性質:
連續並可導(允許少數點上不可導)的非線性函式。可導的啟用函式可以直接利用數值優化的方法來學習網路引數。
啟用函式及其導函式要盡可能的簡單,有利於提高網路計算效率。
啟用函式的導函式的值域要在乙個合適的區間內,不能太大也不能太小,否則會影響訓練的效率和穩定性。
sigmoid型函式是指一類s型曲線函式,為兩端飽和函式.常用的sigmoid型 函式有logistic函式和tanh函式。
對於函式f(x),若x → −∞時,其導數f′(x) → 0,則稱其為左飽和。若x → +∞時,其導數f′(x) → 0,則稱其為右飽和。當同時滿足左、右飽和時,就稱為兩端飽和。
修正線性單元(rectified linear unit,relu),也叫rectifier函式,是目前深層神經網路中經常使用的啟用函式。
swish 函式是一種自門控(self-gated)啟用函式。swish(x) = xσ(βx), 其中σ(·)為logistic函式,β 為可學習的引數或乙個固定超引數。σ(·) ∈ (0, 1)可以看作是一種軟性的門控機制。當σ(βx)接近於1時,門處於「開」狀態,啟用函式的輸出近似於x本身;當σ(βx)接近於0時,門的狀態為「關」,啟用函式的輸出近似於0。
輸入是上一層神經元的全部原始輸入,是乙個向量x = [x1; x2; · · · , xd]。
前饋網路包括全連線前饋網路[本章中的第4.3節] 和卷積神經網路[第5章]等。
前饋網路可以看作乙個函式,通過簡單非線性函式的多次復合,實現輸入空間到輸出空間的複雜對映。這種網路結構簡單,易於實現
記憶網路,也稱為反饋網路,網路中的神經元不但可以接收其它神經元的資訊,也可以接收自己的歷史資訊。和前饋網路相比,記憶網路中的神經元具有記憶功能,在不同的時刻具有不同的狀態。記憶神經網路中的資訊傳播可以是單向或雙向傳遞,因此可用乙個有向迴圈圖或無向圖來表示。記憶網路包括迴圈神經網路[第6章],hopfield網路[第6章]、玻爾茲曼機[第12章]等。
為了增強記憶網路的記憶容量,可以引入外部記憶單元和讀寫機制,用來儲存一些網路的中間狀態,成為記憶增強神經網路。
前饋網路和反饋網路難以處理圖結構的資料。
圖網路是前饋網路和記憶網路的泛化,包含很多事實現方式,如圖卷積網路,訊息傳遞網路等。
前饋神經網路fnn,是最早發明的簡單人工神經網路。也稱為多層感知器。(實際上是多層的logistic回歸模型)
前饋神經網路通過逐層的資訊傳遞, 最後得到網路最後的輸出。
前饋神經網路具有很強的擬合能力,常見的連續非線性函式都可以用前饋網路來近似。
根據通用近似定理,對於具有線性輸出層和至少乙個使用「擠壓」性質的啟用函式的隱藏層組成的前饋神經網路,只要其隱藏層神經元的數量足夠,它可以以任意的精度來近似任何從乙個定義在實數空間 rd 中的有界閉集函式 。所謂「擠壓」性質的函式是指像 sigmoid 函式的有界函式,但神經網路的通用近似性質也被證明對於其它型別的啟用函式,比如relu,也都是適用的。
依據通用近似定理,神經網路在某種程度上可以作為乙個「萬能」函式來使用,用來進行複雜的特徵轉換或者逼近乙個負責的條件分布。
梯度下降法需要計算損失函式對引數的偏導數,如果通過鏈式法則逐一對每個引數進行求偏導比較低效。在神經網路的訓練中經常使用反向傳播演算法來高效地計算梯度。
第l層的誤差項可以通過第l + 1層的誤差項計算得到,這就是誤差的反向傳播。
反向傳播演算法的含義是:第l 層的乙個神經元的誤差項(或敏感性)是所有與該神經元相連的第l + 1層的神經元的誤差項的權重和。然後,再乘上該神經元啟用函式的梯度。在計算出每一層的誤差項之後,我們就可以得到每一層引數的梯度。
因此,基於誤差反向傳播演算法(backpropagation,bp)的前饋神經網路訓練過程可以
分為以下三步:
前饋計算每一層的淨輸入z(l) 和啟用值a(l),直到最後一層;
反向傳播計算每一層的誤差項δ(l);
計算每一層引數的偏導數,並更新引數。
目前,幾乎所有的主流深度學習框架都包含了自動梯度計算的功能,即我們可以只考慮網路結構並用**實現,其梯度可以自動進行計算,無需人工干預,這樣可以大幅提高開發效率。
神經網路的引數學習比線性模型要更加困難,主要原因有兩點:(1)非凸優化問題和(2)梯度消失問題。
本章介紹的前饋神經網路是一種型別最簡單的網路,相鄰兩層的神經元之間為全連線關係,也稱為全連線神經網路(fully connected neural network,fcnn)或多層感知器。
雖然當時前饋神經網路的引數學習依然有很多難點,但其作為一種連線主義的典型模型,標誌人工智慧從高度符號化的知識期向低符號化的學習期開始轉變。
讀書筆記《神經網路與深度學習》
機器學習是人工只能的乙個分支,機器學習本身是乙個非常大的概念。輸入資料報括 歷史資料 正確期望值 錯誤期望值 輸入資料後有模型自行進行聚類 規則區分 乙個連續決策的過程,其數學本質是馬爾科夫決策過程。馬爾科夫過程 對於乙個系統,有乙個狀態轉移到另乙個狀態的過程中,存在著轉移概率,且轉移概率可以通過前...
讀書筆記 神經網路與深度學習(五)迴圈神經網路
建立乙個額外的延時單元,儲存歷史資訊。延時神經網路在前饋網路中非輸出層都增加了乙個延時器,記錄最近幾次神經元的輸出。這樣就具有了短期記憶能力。自回歸模型是統計學上常用的一類時間序列模型,用乙個變數的歷史資訊來 自己。有外部輸入的非線性自回歸模型是乙個擴充套件,每個時刻都有乙個外部輸入x,產生乙個輸出...
ML讀書筆記(前向神經網路)
a.1.擬合異或的問題 2個輸入變數x和y,寫出異或真值表 0,0 0,0,1 1,1,0 1,1,1 0 擬合異或 如果直接使用線性變化 啟用函式,即f ax by c f可以為sigmoid函式,根據啟用函式單調性,由第1和第2條可得b是正數,由第1和第3條可得a是正數,第2和第4條可得a是負數...