深度学习基础知识(一): 概述-神经网络起源和发展
目錄
1. 神經(jīng)網(wǎng)絡(luò)概述
1.1 概念和起源
1.2?神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
1.2.1 神經(jīng)元數(shù)學模型
1.2.2 sigmoid激活函數(shù)
?1.2.3 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
1.3 我對神經(jīng)網(wǎng)絡(luò)的構(gòu)建和流程理解
1.3.1 單個神經(jīng)元
1.3.2 單個隱含層?
1.3.3 多個隱含層?
1.3.4 調(diào)參?
?1.4 BP算法
2. 梯度消失或爆炸
3. 人們對神經(jīng)網(wǎng)絡(luò)的預(yù)期與現(xiàn)實
參考
???????1. 神經(jīng)網(wǎng)絡(luò)概述
1.1 概念和起源
概念:神經(jīng)網(wǎng)絡(luò)是一種由許多非線性計算單元(或稱神經(jīng)元、節(jié)點)組成的分層系統(tǒng)。
網(wǎng)絡(luò)深度:就是不包括輸入層的層數(shù)。
多層感知器(multilayer perceptron):在隱含層數(shù)大于1時常常稱為深層感知器,實際上是一種由多層節(jié)點有向圖構(gòu)成的前饋神經(jīng)網(wǎng)絡(luò)。其中,每一個非輸入節(jié)點時具有非線性激活函數(shù)的神經(jīng)元,每一層與其下一層是全連接的。
1.2?神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
1.2.1 神經(jīng)元數(shù)學模型
MP神經(jīng)元數(shù)學模型,包含n個輸入,n個權(quán)值,一個偏置b,以及一個輸出y。 ==>即我們高中學到的多元一次方程:
y表示激活函數(shù)
????????
1.2.2 sigmoid激活函數(shù)
f是一個非線性變換,稱為激活函數(shù),通常選為sigmoid函數(shù),公式為:
?1.2.3 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
在訓(xùn)練神經(jīng)網(wǎng)絡(luò)方面,BP(Back Propagation)反向傳播無疑是最常用最著名的算法。這是一種有監(jiān)督的學習算法。
淺層網(wǎng)絡(luò):主要是指具有一個隱含層的神經(jīng)網(wǎng)絡(luò)。
深層網(wǎng)絡(luò):主要是指具有2個及以上隱含層的神經(jīng)網(wǎng)絡(luò)。
1.3 我對神經(jīng)網(wǎng)絡(luò)的構(gòu)建和流程理解
1.3.1 單個神經(jīng)元
單個神經(jīng)元即高中多元一次方程。
激活函數(shù):sigmoid(y).
1.3.2 單個隱含層?
?
1.3.3 多個隱含層?
?
1.3.4 調(diào)參?
?iteration(迭代):每一次迭代都是一次權(quán)重更新,每一次權(quán)重更新需要batch_size個數(shù)據(jù)進行Forward運算得到損失函數(shù),再BP算法更新參數(shù)。1個iteration等于使用batchsize個樣本訓(xùn)練一次
bath_size:
epochs/?i?.p?k/:被定義為向前和向后傳播中所有批次的單次訓(xùn)練迭代。這意味著1個周期是整個輸入數(shù)據(jù)的單次向前和向后傳遞。簡單說,epochs指的就是訓(xùn)練過程中數(shù)據(jù)將被“輪”多少次,就這樣
one?epoch?= numbers of?iterations?= N = 訓(xùn)練樣本的數(shù)量/batch_size
?1.4 BP算法
在訓(xùn)練神經(jīng)網(wǎng)絡(luò)方面,BP(Back Propagationi)反向傳播無疑是最常用、最著名的算法。
這是有監(jiān)督學習算法,應(yīng)提供一組訓(xùn)練樣本,對給定的輸入,指明相應(yīng)的輸出。
2. 梯度消失或爆炸
problem:1991年,Hochreiter正式指出,典型的深層網(wǎng)絡(luò)存在梯度消失或爆炸問題,從而明確了深度學習的一個里程碑。
該問題是,累積反向傳播誤差信號在神經(jīng)網(wǎng)絡(luò)的層數(shù)增加時會出現(xiàn)指數(shù)衰減或增長的現(xiàn)象,從而導(dǎo)致數(shù)值計算快速收縮或越界。這就是深層網(wǎng)絡(luò)很難用反向傳播算法訓(xùn)練的主要原因。
梯度消失或爆炸問題又稱為長時滯后問題,在循環(huán)神經(jīng)網(wǎng)絡(luò)CNN中也會出現(xiàn)。
1990-2000年,Hochreiter的深邃思想推動了若干新方法的探索。
但除了卷積神經(jīng)網(wǎng)絡(luò)之外,訓(xùn)練深層網(wǎng)絡(luò)的問題直到2006年才開始得到嚴肅認真的對待。因為1995年之后,支持向量機SVM的快速發(fā)展減緩了神經(jīng)網(wǎng)絡(luò)的有關(guān)工作進展。
所以,普遍認為,深度學習正式發(fā)端于2006年,以Hinton及其合作者發(fā)表的兩篇重要論文為標志。"A fast learning algorithm for deep belief nets"; "Reducing the dimensionality of data with neural networks"。
從那以后,大量的深度學習模型如雨后春筍般迅速發(fā)展起來,其中主要包括受限玻爾茲曼機(Restricted Boltzman Machine, RBM)、深層自編碼器(deep AutoEncoder, deep AE)、深層信念網(wǎng)絡(luò)(deep beliefnet)、深層玻爾茲曼機(Deep Boltzman Machine, DBM)、和積網(wǎng)絡(luò)(Sum-Product Network, SPN)、深層堆疊網(wǎng)絡(luò)(Deep Stacked Network, DSN)、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)、長短時記憶網(wǎng)絡(luò)(Long Short-Term Memory network, LSTM network)、強化學習網(wǎng)絡(luò)(Reinforcement Learning Network, RLN)、生成對抗網(wǎng)絡(luò)(Generative Adversarial Network, GAN)等。
訓(xùn)練技巧:最大池化(max pooling)、丟棄輸出(dropout)、丟棄連接(dropconnect)
取得了許多歷史性突破和成就的領(lǐng)域:手寫數(shù)字識別、ImageNet分類和語音識別。
3. 人們對神經(jīng)網(wǎng)絡(luò)的預(yù)期與現(xiàn)實
一個具有淺層結(jié)構(gòu)或?qū)訑?shù)不夠深的神經(jīng)網(wǎng)絡(luò)雖然在節(jié)點數(shù)足夠大時也可能充分逼近地表達任意的多元非線性函數(shù),但這種淺層表達在具體實現(xiàn)時往往由于需要太多的結(jié)點而無法實際應(yīng)用。
期望:一般說來,對于給定數(shù)目的訓(xùn)練樣本,如果缺乏其他先驗知識,人們更期望使用少量的計算單元來建立目標函數(shù)的“緊表達”,以獲得更好的泛化能力。
現(xiàn)實:在網(wǎng)絡(luò)深度不夠時,這種緊表達可能根本無法建立起來。因為理論研究表明,深度為k的網(wǎng)絡(luò)能夠緊表達的函數(shù)在用深度為k-1的網(wǎng)絡(luò)來表達時有時需要的計算單元會呈指數(shù)增長。
但在網(wǎng)絡(luò)深度不夠時,這種緊表達可能根本無法建立起來,因為理論研究表明,深度為k的網(wǎng)絡(luò)能夠緊表達的函數(shù)在用深度為k-1的網(wǎng)絡(luò)來表達時有時需要的計算單元會呈指數(shù)增長。???????
解決:深層神經(jīng)網(wǎng)絡(luò)(又稱深度神經(jīng)網(wǎng)絡(luò))在一定的條件下具有非常重要的應(yīng)用前景。
參考
[1] 深度學習:卷積神經(jīng)網(wǎng)絡(luò)從入門到精通。李玉鑑,張婷
總結(jié)
以上是生活随笔為你收集整理的深度学习基础知识(一): 概述-神经网络起源和发展的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 注意力机制~Attention Mech
- 下一篇: 知识图谱基础知识(一): 概念和构建