深度神經(jīng)網(wǎng)絡課件_第1頁
深度神經(jīng)網(wǎng)絡課件_第2頁
深度神經(jīng)網(wǎng)絡課件_第3頁
深度神經(jīng)網(wǎng)絡課件_第4頁
深度神經(jīng)網(wǎng)絡課件_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、深度神經(jīng)網(wǎng)絡 IDeep Neural Networks中國科學院自動化研究所吳高巍gaowei.wu2016-12-6內容深度神經(jīng)網(wǎng)絡發(fā)展歷史、背景動機Why Deep Learning?深度學習常用模型Neural networkBack propagation1986 解決了一般性學習問題 與生物系統(tǒng)相聯(lián)系Nature歷史Neural networkBack propagation1986Nature歷史x1x2x3w1w2w3Neural networkBack propagation1986 解決了一般性學習問題 與生物系統(tǒng)相聯(lián)系Nature歷史But it is given upS

2、VMBoostingDecision tree2006深度學習浪潮IT Companies are Racing into Deep LearningNeural networkBack propagation1986 Solve general learning problems Tied with biological systemBut it is given up2006Deep belief netSciencedeep learning resultsSpeech2011NatureNeural networkBack propagation19862006Deep belief

3、netScienceSpeech20112012ImageNet 2013 image classification challengeMSRA, IBM, Adobe, NEC, Clarifai, Berkley, U. Tokyo, UCLA, UIUC, Toronto . Top 20 groups all used deep learningImageNet 2013 object detection challengeNeural networkBack propagation19862006Deep belief netScienceSpeech20112012ImageNet

4、 2014 Image classification challengeImageNet 2014 object detection challengeNeural networkBack propagation19862006Deep belief netScienceSpeech20112012Google and Baidu announced their deep learning based visual search engines (2013)Google “on our test set we saw double the average precision when comp

5、ared to other approaches we had tried. We acquired the rights to the technology and went full speed ahead adapting it to run at large scale on Googles computers. We took cutting edge research straight out of an academic research lab and launched it, in just a little over six months.”Baidu深度學習浪潮Deep

6、Learning深度學習浪潮時代背景-數(shù)據(jù)爆炸還存在很多沒有良好解決的問題,例如圖像識別、語音識別、自然語言理解、天氣預測、基因表達、內容推薦等。動機Why Deep Learning? 深度學習What is Deep Learning?“Deep learning is a set of algorithms in machine learning that attempt to learn in multiple levels, corresponding to different levels of abstraction. It typically uses artificial n

7、eural networks. The levels in these learned statistical models correspond to distinct levels of concepts, where higher-level concepts are defined from lower-level ones, and the same lower-level concepts can help to define many higher-level concepts.” (Oct. 2013.)“Deep learning is a set of algorithms

8、 in machine learning that attempt to model high-level abstractions in data by using model architectures composed of multiple non-linear transformations.” (Aug. 2014)傳統(tǒng)機器學習解決這些問題的思路良好的特征表達,對最終算法的準確性起了非常關鍵的作用,而且系統(tǒng)主要的計算和測試工作都耗在這一大部分。但實際中一般都是人工完成的。特征表達能不能自動地學習一些特征呢?能!Deep Learning生物學啟示人腦視覺機理“視覺系統(tǒng)的信息處理”:

9、可視皮層是分級的神經(jīng)-中樞-大腦的工作過程,或許是一個不斷迭代、不斷抽象的過程。關鍵詞:一個是抽象,一個是迭代。從原始信號,做低級抽象,逐漸向高級抽象迭代。人類的邏輯思維,經(jīng)常使用高度抽象的概念。不同水平的抽象層次化表示腦的深層結構why go deep?深層結構能夠有效被表達對相同的函數(shù)需要更少的計算單元深層結構可產生層次化特征表達允許非局部擴展可解釋性多層隱變量允許統(tǒng)計上的組合共享深層結構有效(vision, audio, NLP等)!Audio FeaturesDeep Learning 基本思想自動地學習特征假設有一堆輸入I(如圖像或者文本),我們設計了一個系統(tǒng)S(有n層),通過調整系

10、統(tǒng)中參數(shù),使得它的輸出仍然是輸入I,那么我們就可以自動地獲取得到輸入I的一系列層次特征,即S1,, Sn。對于深度學習來說,其思想就是堆疊多個層也就是說這一層的輸出作為下一層的輸入。通過這種方式,就可以實現(xiàn)對輸入信息進行分級表達了??梢月晕⒌胤潘伞拜敵龅扔谳斎搿钡南拗粕顚?vs 淺層神經(jīng)網(wǎng)絡“深度模型”是手段,“特征學習”是目的。強調了模型結構的深度,通常有5層、6層,甚至10多層的隱層節(jié)點;明確突出了特征學習的重要性,也就是說,通過逐層特征變換,將樣本在原空間的特征表示變換到一個新特征空間,從而使分類或預測更加容易。與人工規(guī)則構造特征的方法相比,利用大數(shù)據(jù)來學習特征,更能夠刻畫數(shù)據(jù)的豐富內在

11、信息。BP算法的問題需要帶標簽訓練數(shù)據(jù)幾乎所有的數(shù)據(jù)是無標簽的人腦可以從無標簽數(shù)據(jù)中學習局部極小對深層網(wǎng)絡遠離了最優(yōu)解學習時間不適合大數(shù)據(jù)梯度消失Below top few layers, correction signal is minimal克服BP的限制梯度方法對輸入的結構建模建立產生輸入的生成式模型,調整參數(shù)使得生成式模型的概率最大Learn p(image) not p(label | image)What kind of generative model should we learn?Deep learning訓練自下向上的非監(jiān)督學習(greedy layer-wise trai

12、ning)自頂向下的監(jiān)督學習就是通過帶標簽的數(shù)據(jù)去訓練,誤差自頂向下傳輸,對網(wǎng)絡進行微調微調特征(中間層),使得與問題更相關。Deep Learning的常用模型 AutoEncoder自動編碼器AutoEncoder自動編碼器Deep Learning最簡單的一種方法利用人工神經(jīng)網(wǎng)絡本身的層次結構特點如果給定一個神經(jīng)網(wǎng)絡,假設其輸出與輸入是相同的,然后訓練調整其參數(shù),得到每一層中的權重。自然地,就得到了輸入I的幾種不同表示(每一層代表一種表示),這些表示就是特征。自動編碼器就是一種盡可能復現(xiàn)輸入信號的神經(jīng)網(wǎng)絡。為了實現(xiàn)這種復現(xiàn),自動編碼器就必須捕捉可以代表輸入數(shù)據(jù)的最重要的因素,就像PCA那

13、樣,找到可以代表原信息的主要成分AutoEncoder自動編碼器學習過程無標簽數(shù)據(jù),用非監(jiān)督學習學習特征在之前的前向神經(jīng)網(wǎng)絡中,如左圖,輸入的樣本是有標簽的,即(input, target),這樣根據(jù)當前輸出和target(label)之間的差去改變前面各層的參數(shù),直到收斂。但現(xiàn)在我們只有無標簽數(shù)據(jù),也就是右邊的圖。那么這個誤差怎么得到呢?AutoEncoder自動編碼器將input輸入一個encoder編碼器,就會得到一個code,這個code也就是輸入的一個表示那么我們怎么知道這個code表示的就是input呢?增加一個decoder解碼器decoder輸出的信息 vs 開始的輸入信號in

14、put通過調整encoder和decoder的參數(shù),使得重構誤差最小,這樣就得到輸入input信號的一個表示了,也就是編碼code。因為是無標簽數(shù)據(jù),所以誤差的來源就是直接重構后與原輸入相比得到。AutoEncoder自動編碼器網(wǎng)絡結構三層結構輸入層,隱藏層,輸出層神經(jīng)元模型限定神經(jīng)元的數(shù)量輸入層神經(jīng)元數(shù)=輸出層神經(jīng)元數(shù)隱層神經(jīng)元數(shù)量輸入層神經(jīng)元數(shù)量意義:迫使隱藏層節(jié)點學習得到輸入數(shù)據(jù)的壓縮表示方法AutoEncoder自動編碼器利用類似神經(jīng)網(wǎng)絡的雙隱層的方式,簡單粗暴地提取了樣本的特征。Tied Weights (Vincent,2010)W=WT只訓練單組W就可以若W-1=WT的話,W就是

15、個正交矩陣了,即W是可以訓成近似正交陣的。AutoEncoder自動編碼器Deep結構逐層訓練自編碼器“?;蓖ㄟ^編碼器產生特征,然后訓練下一層。得到第一層的code,重構誤差最小讓我們相信這個code就是原輸入信號的良好表達了,或者牽強點說,它和原信號是一模一樣的(表達不一樣,反映的是一個東西)。那第二層和第一層的訓練方式就沒有差別了,將第一層輸出的code當成第二層的輸入信號,同樣最小化重構誤差,就會得到第二層的參數(shù),并且得到第二層輸入的code,也就是原輸入信息的第二個表達了。其他層也以同樣的方法進行。AutoEncoder自動編碼器監(jiān)督學習Deep結構,每一層都會得到原始輸入的不同層次

16、的表達。有監(jiān)督微調為了實現(xiàn)分類,可以在AutoEncoder的最頂?shù)木幋a層添加一個分類器(例如Logistic回歸、SVM等),然后通過標準的多層神經(jīng)網(wǎng)絡的監(jiān)督訓練方法(梯度下降法)去訓練。AutoEncoder自動編碼器監(jiān)督學習最后層的特征code輸入到分類器中,基于有標簽樣本,通過監(jiān)督學習對網(wǎng)絡進行微調1、只調整分類器2、通過有標簽樣本,微調整個系統(tǒng):(如果有足夠多的數(shù)據(jù),end-to-end learning端對端學習)AutoEncoder擴展Sparse AutoEncoder稀疏自動編碼器限制得到的表達code盡量稀疏Denoising AutoEncoders降噪自動編碼器數(shù)據(jù)存

17、在噪聲Sparse AutoEncoder稀疏自動編碼器限制得到的表達code盡量稀疏在AutoEncoder的基礎上加上L1的Regularity限制人腦好像也是這樣的,某個輸入只是刺激某些神經(jīng)元,其他的大部分的神經(jīng)元是受到抑制的Denoising AutoEncoders降噪自動編碼器若訓練數(shù)據(jù)中存在噪聲,自動編碼器必須學習去除這種噪聲而獲得真正的沒有被噪聲污染過的輸入。迫使編碼器去學習輸入信號的更加魯棒的表達。就是以一定概率分布(通常使用二項分布)去擦除原始input矩陣,即每個值都隨機置0, 這樣看起來部分數(shù)據(jù)的部分特征是丟失了。以這丟失的數(shù)據(jù)x去計算y,計算z,并將z與原始x做誤差迭

18、代,這樣,網(wǎng)絡就學習了這個破損(Corruputed)的數(shù)據(jù)。Denoising AE降噪自動編碼器破損數(shù)據(jù)的作用通過與非破損數(shù)據(jù)訓練的對比,破損數(shù)據(jù)訓練出來的Weight噪聲比較小。破損數(shù)據(jù)一定程度上減輕了訓練數(shù)據(jù)與測試數(shù)據(jù)的代溝。這樣胡亂擦除原始input真的很科學?真的沒問題? Vincent又從大腦認知角度給了解釋:人類具有認知被阻擋的破損圖像能力,此源于我們高等的聯(lián)想記憶感受機能。我們能以多種形式去記憶(比如圖像、聲音),所以即便是數(shù)據(jù)破損丟失,我們也能回想起來。兩隱層自編碼網(wǎng)絡MNIST手寫數(shù)字識別訓練一個包含兩個隱含層的棧式自編碼網(wǎng)絡,用來進行MNIST手寫數(shù)字分類用原始輸入x(

19、k)訓練第一個自編碼器,學習得到原始輸入的一階特征表示h(1)(k)/wiki/index.php/棧式自編碼算法兩隱層自編碼網(wǎng)絡MNIST手寫數(shù)字識別把上一層的一階特征作為另一個稀疏自編碼器的輸入,使用它們來學習二階特征h(2)(k)兩隱層自編碼網(wǎng)絡MNIST手寫數(shù)字識別將二階特征作為softmax分類器的輸入,訓練得到一個能將二階特征映射到數(shù)字標簽的模型兩隱層自編碼網(wǎng)絡MNIST手寫數(shù)字識別將這三層結合起來構成一個棧式自編碼網(wǎng)絡,通過反向傳播算法(BP)同時調整所有層的參數(shù)以改善學習結果(稱為整體細調fine-tuning)棧式自編碼器神經(jīng)網(wǎng)絡棧式自編碼神經(jīng)網(wǎng)絡具有強大的表達能力及深度神經(jīng)

20、網(wǎng)絡的所有優(yōu)點。通常能夠獲取到輸入的“層次型分組”或者“部分-整體分解”結構。學習方式:前層的輸出作為下一層輸入的方式依次訓練。如果網(wǎng)絡的輸入數(shù)據(jù)是圖像,網(wǎng)絡的第一層會學習如何去識別邊,第二層一般會學習如何去組合邊,從而構成輪廓、角等。更高層會學習如何去組合更形象且有意義的特征。如果輸入數(shù)據(jù)集包含人臉圖像,更高層會學習如何識別或組合眼睛、鼻子、嘴等人臉器官。Deep Learning的常用模型 Deep Belief Networks(DBN)發(fā)展歷程Hopfield networkBoltzman machineRestricted Boltzman machineDBNHopfield N

21、etwork結構單層全互連、對稱權值的反饋網(wǎng)絡狀態(tài):-1(0),+1網(wǎng)絡演化Hopfield網(wǎng)絡按動力學方式運行。,其工作過程為狀態(tài)的演化過程,即從初始狀態(tài)按能量減小的方向進行演化,直到達到穩(wěn)定狀態(tài)。穩(wěn)定狀態(tài)即為網(wǎng)絡的輸出52二值隨機神經(jīng)元 (Bernoulli variables)These have a state of 1 or 0.The probability of turning on is determined by the weighted input from other units (plus a bias)001波爾茲曼機 Boltzmann Machine結構類似于Ho

22、pfield 網(wǎng)絡,但它是具有隱單元的反饋互聯(lián)網(wǎng)絡遵循波爾茲曼分布,學習數(shù)據(jù)的固有內在表示BM基本原理1. Hopfield網(wǎng)絡的神經(jīng)元的結構功能及其在網(wǎng)絡中的地位是一樣的。但BM中一部分神經(jīng)元與外部相連,可以起到網(wǎng)絡的輸入、輸出功能,或者嚴格地說可以受到外部條件的約束。另一部分神經(jīng)元則不與外部相連,因而屬于隱單元2.每個神經(jīng)元只取1或0這兩種狀態(tài): 狀態(tài)1代表該神經(jīng)元處于接通狀態(tài),狀態(tài)0代表該神經(jīng)元處于斷開狀態(tài)wji= wij , wii =0網(wǎng)絡結構復雜、訓練代價大、局部極小受限波爾茲曼機 Restricted Boltzmann MachinesRestricted Boltzmann

23、Machine(RBM)通過輸入數(shù)據(jù)集學習概率分布的隨機生成神經(jīng)網(wǎng)絡RBM結構:一個可見層一個隱層層內無連接二層圖: 一層是可視層,即輸入數(shù)據(jù)層(v) 一層是隱藏層(h)所有的節(jié)點都是二值變量RBM中,隱單元在給定可視單元情況下,條件獨立55受限波爾茲曼機 RBM的參數(shù) ,均為實數(shù),Wij表示可見單元i和隱單元j之間的連接權重,bi和aj分別表示可見單元i和隱單元j的偏置。定義聯(lián)合組態(tài)(jointconfiguration)能量:當參數(shù)確定時,基于該能量函數(shù),得到 (v,h)的聯(lián)合概率分布受限波爾茲曼機 受限波爾茲曼機學習目標:極大似然給定N個樣本RBM極大似然v 為觀測變量,h 為隱變量,其

24、能量函數(shù)為:E(v, h; )概率值:p(v,h), p(v), p(h), p(v|h), p(h|v)RBM極大似然RBMCD 算法思想 (Hinton, 2002)Contrastive Divergence觀測分布真實分布RBM具體參數(shù)W, a, bRBM 的能量:E(v,h) = vTWh bTv aTh概率形式RBM具體參數(shù)RBM對于hj0;1, vi 0;1, 可進一步化簡:RBM通過采樣來計算第二項:CD-K算法再回顧ML算法目標RBM算法流程(CD-1):輸入樣本為v1,v2, vn,設觀測變量v, 隱變量h將對各參數(shù)的偏導數(shù)初始化為 wij=0, aj=0, bi=0;Fo

25、r k =1, N: v(0) vnFor j = 1,.,m, do sample:For i=1,.,n, do sample:計算梯度,最后平均(樣本數(shù))(隱結點數(shù))(維數(shù))RBMCD-1算法RBM圖解RBM訓練技巧(結構已定)將數(shù)據(jù)分成Batch, 在每個batch 內并行計算將CD-算法折衷成CD-1算法監(jiān)控學習過程防止overfitting監(jiān)控學習率增加動力機制(選樣)增加稀疏機制(聯(lián)接)G. Hinton. A Practical Guide to Training Restricted Boltzmann Machines, Tech Report, No.UTML TR 20

26、10-003, Department of Computer Science, University of Toronto, CanadaDeep Belief Networks(DBNs)概率生成模型深層結構多層非監(jiān)督的預學習提供了網(wǎng)絡好的初始化maximizing the lower-bound of the log-likelihood of the data監(jiān)督微調(fine-tuning)Generative: Up-down algorithmDiscriminative: backpropagationDBN結構Hinton et al., 2006DBN Greedy trai

27、ning第一步Construct an RBM with an input layer v and a hidden layer hTrain the RBMDBN Greedy training第二步Stack another hidden layer on top of the RBM to form a new RBMFix W1, sample h1 from Q(h1|v) as input. Train W2 as RBM.DBN Greedy training第三步Continue to stack layers on top of the network, train it a

28、s previous step, with sample sampled from Q(h2|h1)And so onFine-tuningTraining for classification逐層貪婪訓練RBM specifies P(v,h) from P(v|h) and P(h|v)Implicitly defines P(v) and P(h)Key idea of stackingKeep P(v|h) from 1st RBMReplace P(h) by the distribution generated by 2nd level RBM逐層貪婪訓練Easy approxim

29、ate inferenceP(hk+1|hk) approximated from the associated RBMApproximation because P(hk+1) differs between RBM and DBNTraining:Variational bound justifies greedy layerwise training of RBMsDBN識別手寫數(shù)字待識別數(shù)字的黑白位圖隱性神經(jīng)元識別結果關閉狀態(tài)的神經(jīng)元開啟狀態(tài)的神經(jīng)元Result is righterror rate: DBN 1.2%,Compare with SVM 1.4%DBN提取音頻特征DBN訓練一個5層的深度網(wǎng)絡提取音樂的特征,用于音樂風格的分類參考文獻:Philippe Hamel and Douglas Eck, LEARNING FEATURES FROM MUSIC AUDIO WITH DEEP BELIEF NETWORKS.3個隱藏層輸入的原始數(shù)據(jù)是經(jīng)過分幀,加窗之后的信號的頻譜分類器采用的是支持向量機SVM對比的方法是MFCCs,分類器同樣采用SVMDBN提

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論