0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺論學(xué)習(xí)深度學(xué)習(xí)的四個(gè)步驟

ss ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:工程師譚軍 ? 2018-10-07 15:19 ? 次閱讀
深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究。含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過(guò)組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。
深度學(xué)習(xí)的概念由Hinton等人于2006年提出。基于深度置信網(wǎng)絡(luò)(DBN)提出非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來(lái)希望,隨后提出多層自動(dòng)編碼器深層結(jié)構(gòu)。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個(gè)真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對(duì)關(guān)系減少參數(shù)數(shù)目以提高訓(xùn)練性能。 [1]
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中一種基于對(duì)數(shù)據(jù)進(jìn)行表征學(xué)習(xí)的方法。觀測(cè)值(例如一幅圖像)可以使用多種方式來(lái)表示,如每個(gè)像素強(qiáng)度值的向量,或者更抽象地表示成一系列邊、特定形狀的區(qū)域等。而使用某些特定的表示方法更容易從實(shí)例中學(xué)習(xí)任務(wù)(例如,人臉識(shí)別或面部表情識(shí)別)。深度學(xué)習(xí)的好處是用非監(jiān)督式或半監(jiān)督式的特征學(xué)習(xí)和分層特征提取高效算法來(lái)替代手工獲取特征。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)研究中的一個(gè)新的領(lǐng)域,其動(dòng)機(jī)在于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),它模仿人腦的機(jī)制來(lái)解釋數(shù)據(jù),例如圖像,聲音和文本。 [2]
同機(jī)器學(xué)習(xí)方法一樣,深度機(jī)器學(xué)習(xí)方法也有監(jiān)督學(xué)習(xí)與無(wú)監(jiān)督學(xué)習(xí)之分.不同的學(xué)習(xí)框架下建立的學(xué)習(xí)模型很是不同.例如,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,簡(jiǎn)稱CNNs)就是一種深度的監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型,而深度置信網(wǎng)(Deep Belief Nets,簡(jiǎn)稱DBNs)就是一種無(wú)監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型。
假設(shè)我們有一個(gè)系統(tǒng)S,它有n層(S1,…Sn),它的輸入是I,輸出是O,形象地表示為: I =》S1=》S2=》…。.=》Sn =》 O,如果輸出O等于輸入I,即輸入I經(jīng)過(guò)這個(gè)系統(tǒng)變化之后沒有任何的信息損失,設(shè)處理a信息得到b,再對(duì)b處理得到c,那么可以證明:a和c的互信息不會(huì)超過(guò)a和b的互信息。這表明信息處理不會(huì)增加信息,大部分處理會(huì)丟失信息。保持了不變,這意味著輸入I經(jīng)過(guò)每一層Si都沒有任何的信息損失,即在任何一層Si,它都是原有信息(即輸入I)的另外一種表示?,F(xiàn)在回到主題Deep Learning,需要自動(dòng)地學(xué)習(xí)特征,假設(shè)我們有一堆輸入I(如一堆圖像或者文本),假設(shè)設(shè)計(jì)了一個(gè)系統(tǒng)S(有n層),通過(guò)調(diào)整系統(tǒng)中參數(shù),使得它的輸出仍然是輸入I,那么就可以自動(dòng)地獲取得到輸入I的一系列層次特征,即S1,…, Sn。 [3]
對(duì)于深度學(xué)習(xí)來(lái)說(shuō),其思想就是對(duì)堆疊多個(gè)層,也就是說(shuō)這一層的輸出作為下一層的輸入。通過(guò)這種方式,就可以實(shí)現(xiàn)對(duì)輸入信息進(jìn)行分級(jí)表達(dá)了。 [3]
另外,前面是假設(shè)輸出嚴(yán)格地等于輸入,這個(gè)限制太嚴(yán)格,可以略微地放松這個(gè)限制,例如只要使得輸入與輸出的差別盡可能地小即可,這個(gè)放松會(huì)導(dǎo)致另外一類不同的Deep Learning方法。上述就是Deep Learning的基本思想。 [3]
把學(xué)習(xí)結(jié)構(gòu)看作一個(gè)網(wǎng)絡(luò),則深度學(xué)習(xí)的核心思路如下:
①無(wú)監(jiān)督學(xué)習(xí)用于每一層網(wǎng)絡(luò)的pre-train;
②每次用無(wú)監(jiān)督學(xué)習(xí)只訓(xùn)練一層,將其訓(xùn)練結(jié)果作為其高一層的輸入;
③用自頂而下的監(jiān)督算法去調(diào)整所有層
主要技術(shù)
線性代數(shù)、概率和信息論
欠擬合、過(guò)擬合、正則化
最大似然估計(jì)和貝葉斯統(tǒng)計(jì)
隨機(jī)梯度下降
監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)
深度前饋網(wǎng)絡(luò)、代價(jià)函數(shù)和反向傳播
正則化、稀疏編碼和dropout
自適應(yīng)學(xué)習(xí)算法
卷積神經(jīng)網(wǎng)絡(luò)
循環(huán)神經(jīng)網(wǎng)絡(luò)
遞歸神經(jīng)網(wǎng)絡(luò)
深度神經(jīng)網(wǎng)絡(luò)和深度堆疊網(wǎng)絡(luò)
LSTM長(zhǎng)短時(shí)記憶
主成分分析
正則自動(dòng)編碼器
表征學(xué)習(xí)
蒙特卡洛
受限波茲曼機(jī)
深度置信網(wǎng)絡(luò)
softmax回歸、決策樹和聚類算法
KNN和SVM
生成對(duì)抗網(wǎng)絡(luò)和有向生成網(wǎng)絡(luò)
機(jī)器視覺和圖像識(shí)別
自然語(yǔ)言處理
語(yǔ)音識(shí)別和機(jī)器翻譯
有限馬爾科夫
動(dòng)態(tài)規(guī)劃
梯度策略算法
增強(qiáng)學(xué)習(xí)(Q-learning)
轉(zhuǎn)折點(diǎn)
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 LayerWise 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í)到的表示作為下一層的輸入;
用有監(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)于深度學(xué)習(xí)的論文被發(fā)表。

步驟1.學(xué)習(xí)深度學(xué)習(xí)的基本知識(shí)

(可選的,但是建議你這樣做)

由Andrew Ng的機(jī)器學(xué)習(xí)課程開始https://www.coursera.org/learn/machine-learning.他的課程提供了一些關(guān)于各種機(jī)器學(xué)習(xí)算法的介紹,更重要的是,一般的程序/機(jī)器學(xué)習(xí)的方法,包括數(shù)據(jù)預(yù)處理,大參數(shù)調(diào)優(yōu)等。

閱讀由Geoff Hinton、Yoshua Bengio和Yann LeCun寫的NIPS 2015 深度學(xué)習(xí)教材,是一個(gè)以通俗易懂的介紹。

步驟2.深入專研深度學(xué)習(xí)

我學(xué)習(xí)的偏好是觀看講座視頻,并感謝幾個(gè)優(yōu)秀的網(wǎng)上課程,這里有我喜歡的幾個(gè)課程:

1.Deep learning at Oxford 2015,Nando de Freitas沒有過(guò)于復(fù)雜的熟練解釋基本原理。從講座9開始,如果你熟悉神經(jīng)網(wǎng)絡(luò)并想要再深一點(diǎn),他在他的例子中使用了火炬框架(Video on Youtube)。

2.Neural Network for Machine Learning :這是Geoff Hinton的課程。Hinton是一個(gè)杰出的研究者,他證明了一般的BP算法的使用并對(duì)于深度學(xué)習(xí)的發(fā)展起著至關(guān)重要的作用。我尊重他,但是我發(fā)現(xiàn)該課程沒有組織。更進(jìn)一步的,課程會(huì)由于布置的測(cè)試陷入困境。

3.Neural Networks Class,是由Hugo Larochelle 教授:另外一個(gè)極好的課程。

4.Yaser Abu-Mostafa’s machine learing course:如果你感興趣更多的理論的話。

如果你更傾向于書籍,這里有一些極好的資源。

1.Neural Networks and Deep Learning Book,是由Michael Nielsen撰寫:在線書籍并有幾個(gè)交互式的 JavaScript元素可以玩。

2.Deep Learning Book,是由Ian Goodfellow, Yoshua Bengio和Aaron Courville撰寫:有一些密集。

步驟3.挑選一個(gè)專注領(lǐng)域并深入研究

確定你所熱愛的并深入研究,領(lǐng)域是寬廣的,所以列表是一個(gè)全面的列表。

1.計(jì)算機(jī)視覺

深度學(xué)習(xí)已經(jīng)改變了這一領(lǐng)域。斯坦福CS231課程是我最經(jīng)歷的最好課程,它教會(huì)你基礎(chǔ)知識(shí)和卷積,同時(shí)也幫助你在AWS上建立GPU實(shí)例,同時(shí),也可以看由Mofstafa S,Ibrahimz制作的課程Getting Started in Computer Vision。

2.自然語(yǔ)言處理(NLP)

用于機(jī)器翻譯,提問(wèn)和回答,以及情感分析。為了掌握這一領(lǐng)域,深度理解自然語(yǔ)言的算法和基礎(chǔ)計(jì)算屬性是必須的。CS224N/Ling284課程是一個(gè)很好的起步課程。CS224d:Deep Learning for Natural Language Processing,是由David Socher教授的另外一門極好的課程,回顧了所有關(guān)于自然語(yǔ)言的最新深度學(xué)習(xí)的研究。更細(xì)節(jié)的可以看How do I learn Natural Language Processing?

3.記憶網(wǎng)絡(luò)(RNN-LSTM)

最近的工作是將在LSTM復(fù)發(fā)神經(jīng)的注意機(jī)制與外部可寫內(nèi)存相結(jié)合,這意味著在建筑系統(tǒng)中有一些有趣的工作,可以被理解、存儲(chǔ)并在以問(wèn)答的方式檢索。這個(gè)研究領(lǐng)域是由Dr.Yann Lecun的facebook實(shí)驗(yàn)室起步的,原始文字是在arxiv上:Memory Network。這里有許多研究變體、數(shù)據(jù)集、標(biāo)準(zhǔn)等,比如,Metamind的Dynamic Memory Networks for Natural Language Processing。

4.深度強(qiáng)化學(xué)習(xí)

由AlphaGo出名,圍棋系統(tǒng)在歷史上擊敗了最強(qiáng)圍棋選手,David Sliver的(谷歌深度思維)視頻課程和教授Rich Stutton的書籍是很好的起步。對(duì)于關(guān)于LSTM的一般介紹可以看Christopher的文章Understand LSTM nework和Andrej karpathy的The Unreasonable Effectiveness of Recurrent Neural Networks。

5.一般模型

雖然有辨識(shí)率模型試著去檢測(cè)、區(qū)分和分類,它們最終是在一個(gè)基本層面上尋找功能分化并不理解數(shù)據(jù)。除了短期應(yīng)用之外,生成模型提供了潛在的自動(dòng)學(xué)習(xí)的自然特性;類別、維度或者完全不同的東西。三個(gè)常用的生成模型——Generative Adversarial Networks(GANs),

Variational Autoencoders (VAEs) 和Autoregressive models(比如像素RNN),GAN是最流行的。想進(jìn)一步深入閱讀

1.Original GAN paper.

2.The Laplacian Adversarial Networks (LAPGAN) Paper.

3.The Deep Convolutional Generative Adversarial Networks (DCGAN)paper和DCGAN Code(可以被用來(lái)學(xué)習(xí)層次特征而不需要任何監(jiān)督),也可以參考DCGNN used for Image Superresolution.

步驟4.建立一些東西

動(dòng)手制作是成為一個(gè)專家的關(guān)鍵,試著去建立一些吸引你的并匹配你技能等級(jí)的。這里有一些建議去啟發(fā)你。

1.作為傳統(tǒng),開始是從分類手寫數(shù)據(jù)庫(kù)MNIST dataset.

2.試著在數(shù)據(jù)庫(kù)ImageNet上進(jìn)行人臉識(shí)別和分類,如果你一直在做這個(gè),可以參加ImageNet Challenge 2016.

3.使用RNNs或者CNNs做一個(gè)Twitter情緒分析。

4.訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)去復(fù)制著名畫家的藝術(shù)風(fēng)格(A Neural Algorithm of Artistic Style)。

5.使用RNN制作音樂(lè):Compose Music With Recurrent Neural Networks。

6.使用深度強(qiáng)化學(xué)習(xí)打乒乓球:Play ping-pong using Deep Reinforcement Learning。

7.使用神經(jīng)網(wǎng)絡(luò)自拍:Use Neural Networks to Rate a selfie。

8.使用深度學(xué)習(xí)自動(dòng)著色黑白照片:Automatically color Black & White pictures using Deep Learning。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    學(xué)習(xí)Linux的四個(gè)步驟

    學(xué)習(xí)Linux的四個(gè)步驟解答:學(xué)習(xí)Linux的四個(gè)步驟假設(shè)你是計(jì)算機(jī)科班出身,計(jì)算機(jī)系的基本課程
    發(fā)表于 09-24 15:27

    什么是深度學(xué)習(xí)?使用FPGA進(jìn)行深度學(xué)習(xí)的好處?

    上述分類之外,還被用于多項(xiàng)任務(wù)(下面顯示了四個(gè)示例)。在 FPGA 上進(jìn)行深度學(xué)習(xí)的好處我們已經(jīng)提到,許多服務(wù)和技術(shù)都使用深度學(xué)習(xí),而 GP
    發(fā)表于 02-17 16:56

    單片機(jī)學(xué)習(xí)四個(gè)階段

    單片機(jī)學(xué)習(xí)四個(gè)階段 經(jīng)常有單片機(jī)愛好者問(wèn)我們,如何學(xué)習(xí)單片機(jī)?學(xué)習(xí)單片機(jī)的步驟是什么? 我們初略總結(jié)了一下,單片機(jī)
    發(fā)表于 05-17 09:02 ?1278次閱讀

    根據(jù)學(xué)習(xí)經(jīng)驗(yàn)以及教學(xué)經(jīng)驗(yàn)總結(jié)出學(xué)習(xí)單片機(jī)的4個(gè)步驟

    如何學(xué)習(xí)單片機(jī)的問(wèn)題,我設(shè)計(jì)的這四個(gè)步驟,并不是拍拍腦袋想出來(lái)的,而是根據(jù)很多的學(xué)習(xí)經(jīng)驗(yàn)以及教學(xué)經(jīng)驗(yàn)總結(jié)出來(lái)的一套非??茖W(xué)的學(xué)習(xí)方法,下面我
    的頭像 發(fā)表于 01-18 15:10 ?3834次閱讀
    根據(jù)<b class='flag-5'>學(xué)習(xí)</b>經(jīng)驗(yàn)以及教學(xué)經(jīng)驗(yàn)總結(jié)出<b class='flag-5'>學(xué)習(xí)</b>單片機(jī)的4<b class='flag-5'>個(gè)</b><b class='flag-5'>步驟</b>

    拆解深度學(xué)習(xí)生態(tài)系的五個(gè)層級(jí)

    淺談深度學(xué)習(xí)的架構(gòu),主要可分為訓(xùn)練(Training)與推論(Inference)兩個(gè)階段。簡(jiǎn)單來(lái)說(shuō),就是訓(xùn)練機(jī)器學(xué)習(xí),以及讓機(jī)器展現(xiàn)學(xué)習(xí)
    發(fā)表于 02-09 08:48 ?2922次閱讀

    四個(gè)經(jīng)典角度看機(jī)器學(xué)習(xí)的本質(zhì)

    何謂“機(jī)器學(xué)習(xí)”,學(xué)界尚未有統(tǒng)一的定義。本文摘取Tom Mitchell、Christopher M. Bishop、去年出版的《深度學(xué)習(xí)》和側(cè)重實(shí)戰(zhàn)的《數(shù)據(jù)挖掘》,總結(jié)了種機(jī)器
    的頭像 發(fā)表于 02-13 09:44 ?3377次閱讀
    從<b class='flag-5'>四個(gè)</b>經(jīng)典角度看機(jī)器<b class='flag-5'>學(xué)習(xí)</b>的本質(zhì)

    雙目立體匹配的四個(gè)步驟解析

    雙目立體匹配可劃分為四個(gè)步驟:匹配代價(jià)計(jì)算、代價(jià)聚合、視差計(jì)算和視差優(yōu)化。
    的頭像 發(fā)表于 08-31 10:08 ?5055次閱讀

    機(jī)器學(xué)習(xí)將在四個(gè)領(lǐng)域推動(dòng)智能運(yùn)輸和物流行業(yè)的革命

    亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)看到了機(jī)器學(xué)習(xí)為運(yùn)輸和物流行業(yè)推動(dòng)移動(dòng)革命的四個(gè)主要領(lǐng)域。
    的頭像 發(fā)表于 10-26 12:01 ?3026次閱讀

    構(gòu)建深度學(xué)習(xí)模型的五個(gè)基本步驟

    深度學(xué)習(xí)的關(guān)注度正持續(xù)上升,它是機(jī)器學(xué)習(xí)的一個(gè)子領(lǐng)域,基于人工神經(jīng)網(wǎng)絡(luò)的概念來(lái)執(zhí)行特定任務(wù)。然而在理論上,人工神經(jīng)網(wǎng)絡(luò)與人類大腦的運(yùn)作方式并不相同,甚至都不相似!
    發(fā)表于 12-22 09:35 ?6027次閱讀

    組織成功實(shí)施人工智能的四個(gè)步驟

    人工智能和機(jī)器學(xué)習(xí)解決方案如今在各行業(yè)組織中的應(yīng)用變得越來(lái)越普遍,組織可以通過(guò)四個(gè)步驟成功實(shí)施人工智能技術(shù)。
    的頭像 發(fā)表于 02-02 12:00 ?3902次閱讀

    你們知道深度學(xué)習(xí)有哪四個(gè)學(xué)習(xí)階段嗎

    DNN、CNN和RNN 數(shù)據(jù)處理 在入門級(jí)使用的數(shù)據(jù)集很小,可以放入主內(nèi)存中。只需幾行代碼即可應(yīng)用此類操作。在此階段數(shù)據(jù)包括Audio、Image、Time-series和Text等類型。 經(jīng)典機(jī)器學(xué)習(xí) 在深入研究深度學(xué)習(xí)之前,
    的頭像 發(fā)表于 06-10 15:27 ?2412次閱讀

    什么是深度學(xué)習(xí)算法?深度學(xué)習(xí)算法的應(yīng)用

    什么是深度學(xué)習(xí)算法?深度學(xué)習(xí)算法的應(yīng)用 深度學(xué)習(xí)算法被認(rèn)為是人工智能的核心,它是一種模仿人類大腦
    的頭像 發(fā)表于 08-17 16:03 ?1859次閱讀

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?? 深度學(xué)習(xí)框架是一種軟件工具,它可以幫助開發(fā)者輕松快速
    的頭像 發(fā)表于 08-17 16:03 ?2476次閱讀

    深度學(xué)習(xí)框架和深度學(xué)習(xí)算法教程

    深度學(xué)習(xí)框架和深度學(xué)習(xí)算法教程 深度學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)
    的頭像 發(fā)表于 08-17 16:11 ?953次閱讀

    機(jī)器學(xué)習(xí)深度學(xué)習(xí)的區(qū)別

    機(jī)器學(xué)習(xí)深度學(xué)習(xí)的區(qū)別 隨著人工智能技術(shù)的不斷發(fā)展,機(jī)器學(xué)習(xí)深度學(xué)習(xí)已經(jīng)成為大家熟知的兩
    的頭像 發(fā)表于 08-17 16:11 ?3965次閱讀