DNN(深度神经网络)
深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, 以下簡稱DNN)
神經(jīng)網(wǎng)絡(luò)發(fā)展
-
第一代神經(jīng)網(wǎng)絡(luò)又稱為感知器,由科學(xué)家Frank Rosenblatt發(fā)明于1950至1960年代,它的算法只有兩層,輸入層輸出層,,主要使用的是一種叫做sigmoid神經(jīng)元(sigmoid neuron)的神經(jīng)元模型,主要是線性結(jié)構(gòu)。它不能解決線性不可分的問題,如異或操作。
-
為了解決第一代神經(jīng)網(wǎng)絡(luò)的缺陷,在1980年左右提出第二代神經(jīng)網(wǎng)絡(luò)多層感知器(MLP)。和第一代神經(jīng)網(wǎng)絡(luò)相比,第二代在輸入輸出層之間有增加了隱含層的感知機,引入一些非線性的結(jié)構(gòu),解決了之前無法模擬異或邏輯的缺陷。第二代神經(jīng)網(wǎng)絡(luò)讓科學(xué)家們發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)的層數(shù)直接決定了它對現(xiàn)實的表達能力,但是隨著層數(shù)的增加,優(yōu)化函數(shù)愈發(fā)容易出現(xiàn)局部最優(yōu)解的現(xiàn)象,由于存在梯度消失的問題,深層網(wǎng)絡(luò)往往難以訓(xùn)練,效果還不如淺層網(wǎng)絡(luò)。
-
2006年Hinton采取無監(jiān)督預(yù)訓(xùn)練(Pre-Training)的方法解決了梯度消失的問題,使得深度神經(jīng)網(wǎng)絡(luò)變得可訓(xùn)練,將隱含層發(fā)展到7層,有一個預(yù)訓(xùn)練的過程。使用微調(diào)技術(shù)作為反向傳播和調(diào)優(yōu)手段。減少了網(wǎng)絡(luò)訓(xùn)練時間,并且提出了一個新的概念叫做"深度學(xué)習(xí),
直到2012年,在ImageNet競賽中,Hinton教授的團隊,使用以卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的深度學(xué)習(xí)方案,他們訓(xùn)練的模型面對15萬張測試圖像時,預(yù)測的頭五個類別的錯誤率只有 15.3%,而排名第二的日本團隊,使用的SVM方法構(gòu)建的模型,相應(yīng)的錯誤率則高達 26.2%。從此一戰(zhàn)成名!2012年后深度學(xué)習(xí)就成為主流。
DNN
DNN是一個很廣的概念,CNN(卷積神經(jīng)網(wǎng)絡(luò))、RNN(遞歸神經(jīng)網(wǎng)絡(luò))等都屬于其范疇之內(nèi)。CNN多用于網(wǎng)絡(luò)結(jié)構(gòu)數(shù)據(jù)類型的任務(wù),如圖像;RNN多用于時間序列類型的任務(wù),如音頻、文本(NLP)等
DNN神經(jīng)網(wǎng)絡(luò)的組成:
神經(jīng)網(wǎng)絡(luò)的特點:
由于DNN層數(shù)多,權(quán)重系數(shù)w和偏置b的數(shù)量很多。在DNN是如何定義的呢?
以下圖一個三層的DNN為例,第二層的第4個神經(jīng)元到第三層的第2個神經(jīng)元的線性系數(shù)定義為w324。上標(biāo)3代表w所在的層數(shù),而下標(biāo)對應(yīng)的是輸出的第三層索引2和輸入的第二層索引4,輸入層是沒有w參數(shù)的
偏置b,以這個三層的DNN為例,第二層的第三個神經(jīng)元對應(yīng)的偏置定義為b23上標(biāo)2代表所在的層數(shù),下標(biāo)3代表偏置所在的神經(jīng)元的索引。輸入層是沒有偏置參數(shù)b的。
總結(jié)
以上是生活随笔為你收集整理的DNN(深度神经网络)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。