新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 業(yè)界動(dòng)態(tài) > 深度學(xué)習(xí)(Deep Learning)算法簡(jiǎn)介

深度學(xué)習(xí)(Deep Learning)算法簡(jiǎn)介

作者: 時(shí)間:2016-12-28 來(lái)源:網(wǎng)絡(luò) 收藏

  深度(Depth)

本文引用地址:http://butianyuan.cn/article/201612/342181.htm

  從一個(gè)輸入中產(chǎn)生一個(gè)輸出所涉及的計(jì)算可以通過(guò)一個(gè)流向圖(flow graph)來(lái)表示:流向圖是一種能夠表示計(jì)算的圖,在這種圖中每一個(gè)節(jié)點(diǎn)表示一個(gè)基本的計(jì)算并且一個(gè)計(jì)算的值(計(jì)算的結(jié)果被應(yīng)用到這個(gè)節(jié)點(diǎn)的孩子節(jié)點(diǎn)的值)??紤]這樣一個(gè)計(jì)算集合,它可以被允許在每一個(gè)節(jié)點(diǎn)和可能的圖結(jié)構(gòu)中,并定義了一個(gè)函數(shù)族。輸入節(jié)點(diǎn)沒(méi)有孩子,輸出節(jié)點(diǎn)沒(méi)有父親。

  這種流向圖的一個(gè)特別屬性是深度(depth):從一個(gè)輸入到一個(gè)輸出的最長(zhǎng)路徑的長(zhǎng)度。

  傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)能夠被看做擁有等于層數(shù)的深度(比如對(duì)于輸出層為隱層數(shù)加1)。SVMs有深度2(一個(gè)對(duì)應(yīng)于核輸出或者特征空間,另一個(gè)對(duì)應(yīng)于所產(chǎn)生輸出的線性混合)。

  深度架構(gòu)的動(dòng)機(jī)

  學(xué)習(xí)基于深度架構(gòu)的學(xué)習(xí)算法的主要?jiǎng)訖C(jī)是:

  不充分的深度是有害的;

  大腦有一個(gè)深度架構(gòu);

  認(rèn)知過(guò)程是深度的;

  不充分的深度是有害的

  在許多情形中深度2就足夠(比如logical gates, formal [threshold] neurons, sigmoid-neurons, Radial Basis Function [RBF] units like in SVMs)表示任何一個(gè)帶有給定目標(biāo)精度的函數(shù)。但是其代價(jià)是:圖中所需要的節(jié)點(diǎn)數(shù)(比如計(jì)算和參數(shù)數(shù)量)可能變的非常大。理論結(jié)果證實(shí)那些事實(shí)上所需要的節(jié)點(diǎn)數(shù)隨著輸入的大小指數(shù)增長(zhǎng)的函數(shù)族是存在的。這一點(diǎn)已經(jīng)在logical gates, formal [threshold] neurons 和rbf單元中得到證實(shí)。在后者中Hastad說(shuō)明了但深度是d時(shí),函數(shù)族可以被有效地(緊地)使用O(n)個(gè)節(jié)點(diǎn)(對(duì)于n個(gè)輸入)來(lái)表示,但是如果深度被限制為d-1,則需要指數(shù)數(shù)量的節(jié)點(diǎn)數(shù)O(2^n)。

  我們可以將深度架構(gòu)看做一種因子分解。大部分隨機(jī)選擇的函數(shù)不能被有效地表示,無(wú)論是用深地或者淺的架構(gòu)。但是許多能夠有效地被深度架構(gòu)表示的卻不能被用淺的架構(gòu)高效表示(see the polynomials example in the Bengio survey paper)。一個(gè)緊的和深度的表示的存在意味著在潛在的可被表示的函數(shù)中存在某種結(jié)構(gòu)。如果不存在任何結(jié)構(gòu),那將不可能很好地泛化。

  大腦有一個(gè)深度架構(gòu)

  例如,視覺皮質(zhì)得到了很好的研究,并顯示出一系列的區(qū)域,在每一個(gè)這種區(qū)域中包含一個(gè)輸入的表示和從一個(gè)到另一個(gè)的信號(hào)流(這里忽略了在一些層次并行路徑上的關(guān)聯(lián),因此更復(fù)雜)。這個(gè)特征層次的每一層表示在一個(gè)不同的抽象層上的輸入,并在層次的更上層有著更多的抽象特征,他們根據(jù)低層特征定義。

  需要注意的是大腦中的表示是在中間緊密分布并且純局部:他們是稀疏的:1%的神經(jīng)元是同時(shí)活動(dòng)的。給定大量的神經(jīng)元,任然有一個(gè)非常高效地(指數(shù)級(jí)高效)表示。

  認(rèn)知過(guò)程看起來(lái)是深度的

  人類層次化地組織思想和概念;

  人類首先學(xué)習(xí)簡(jiǎn)單的概念,然后用他們?nèi)ケ硎靖橄蟮?

  工程師將任務(wù)分解成多個(gè)抽象層次去處理;

  學(xué)習(xí)/發(fā)現(xiàn)這些概念(知識(shí)工程由于沒(méi)有反省而失敗?)是很美好的。對(duì)語(yǔ)言可表達(dá)的概念的反省也建議我們一個(gè)稀疏的表示:僅所有可能單詞/概念中的一個(gè)小的部分是可被應(yīng)用到一個(gè)特別的輸入(一個(gè)視覺場(chǎng)景)。

  學(xué)習(xí)深度架構(gòu)的突破

  2006年前,嘗試訓(xùn)練深度架構(gòu)都失敗了:訓(xùn)練一個(gè)深度有監(jiān)督前饋神經(jīng)網(wǎng)絡(luò)趨向于產(chǎn)生壞的結(jié)果(同時(shí)在訓(xùn)練和測(cè)試誤差中),然后將其變淺為1(1或者2個(gè)隱層)。

  2006年的3篇論文改變了這種狀況,由Hinton的革命性的在深度信念網(wǎng)(Deep Belief Networks, DBNs)上的工作所引領(lǐng):

  Hinton, G. E., Osindero, S. and Teh, Y., A fast learning algorithm for deep belief nets .Neural Computation 18:1527-1554, 2006

  Yoshua Bengio, Pascal Lamblin, Dan Popovici and Hugo Larochelle, Greedy Layer-Wise Training of Deep Networks, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems 19 (NIPS 2006), pp. 153-160, MIT Press, 2007

  Marc’Aurelio Ranzato, Christopher Poultney, Sumit Chopra and Yann LeCun Efficient Learning of Sparse Representations with an Energy-Based Model, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems (NIPS 2006), MIT Press, 2007

  在這三篇論文中以下主要原理被發(fā)現(xiàn):

  表示的無(wú)監(jiān)督學(xué)習(xí)被用于(預(yù))訓(xùn)練每一層;

  在一個(gè)時(shí)間里的一個(gè)層次的無(wú)監(jiān)督訓(xùn)練,接著之前訓(xùn)練的層次。在每一層學(xué)習(xí)到的表示作為下一層的輸入;

  用無(wú)監(jiān)督訓(xùn)練來(lái)調(diào)整所有層(加上一個(gè)或者更多的用于產(chǎn)生預(yù)測(cè)的附加層);

  DBNs在每一層中利用用于表示的無(wú)監(jiān)督學(xué)習(xí)RBMs。Bengio et al paper 探討和對(duì)比了RBMs和auto-encoders(通過(guò)一個(gè)表示的瓶頸內(nèi)在層預(yù)測(cè)輸入的神經(jīng)網(wǎng)絡(luò))。Ranzato et al paper在一個(gè)convolutional架構(gòu)的上下文中使用稀疏auto-encoders(類似于稀疏編碼)。Auto-encoders和convolutional架構(gòu)將在以后的課程中講解。

  從2006年以來(lái),大量的關(guān)于的論文被發(fā)表,一些探討了其他原理來(lái)引導(dǎo)中間表示的訓(xùn)練,查看Learning Deep Architectures for AI



關(guān)鍵詞: 深度學(xué)習(xí)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉