久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

CICC科普欄目|AI 實(shí)踐者需要掌握的10大深度學(xué)習(xí)方法:反向傳播,、遷移學(xué)習(xí),、梯度下降……

 虎牙變大貓 2017-11-20



 新智元編譯 

來源:

編譯:馬文  文強(qiáng)

本文來源:新智元


【導(dǎo)讀】本文總結(jié)了10個(gè)強(qiáng)大的深度學(xué)習(xí)方法,包括反向傳播,、隨機(jī)梯度下降,、學(xué)習(xí)率衰減、Dropout,、最大池化,、批量歸一化、長短時(shí)記憶,、Skip-gram,、連續(xù)詞袋、遷移學(xué)習(xí)等,,這是AI工程師可以應(yīng)用于他們的機(jī)器學(xué)習(xí)問題的,。



過去10年,人們對(duì)機(jī)器學(xué)習(xí)的興趣激增,。幾乎每天,,你都可以在各種各樣的計(jì)算機(jī)科學(xué)課程、行業(yè)會(huì)議,、華爾街日?qǐng)?bào)等等看到有關(guān)機(jī)器學(xué)習(xí)的討論,。在所有關(guān)于機(jī)器學(xué)習(xí)的討論中,許多人把機(jī)器學(xué)習(xí)能做的事情和他們希望機(jī)器學(xué)習(xí)做的事情混為一談,。從根本上講,,機(jī)器學(xué)習(xí)是使用算法從原始數(shù)據(jù)中提取信息,并在某種類型的模型中表示這些信息,。我們使用這個(gè)模型來推斷還沒有建模的其他數(shù)據(jù),。


神經(jīng)網(wǎng)絡(luò)是機(jī)器學(xué)習(xí)的一種模型,它們至少有50年歷史了,。神經(jīng)網(wǎng)絡(luò)的基本單元是節(jié)點(diǎn)(node),,基本上是受哺乳動(dòng)物大腦中的生物神經(jīng)元啟發(fā),。神經(jīng)元之間的連接也以生物的大腦為模型,這些連接隨著時(shí)間的推移而發(fā)展的方式是為“訓(xùn)練”,。


在20世紀(jì)80年代中期和90年代初期,,許多重要的架構(gòu)進(jìn)步都是在神經(jīng)網(wǎng)絡(luò)進(jìn)行的。然而,,為了得到好的結(jié)果需要大量時(shí)間和數(shù)據(jù),,這阻礙了神經(jīng)網(wǎng)絡(luò)的采用,因而人們的興趣也減少了,。在21世紀(jì)初,,計(jì)算能力呈指數(shù)級(jí)增長,計(jì)算技術(shù)出現(xiàn)了“寒武紀(jì)大爆發(fā)”,。在這個(gè)10年的爆炸式的計(jì)算增長中,,深度學(xué)習(xí)成為這個(gè)領(lǐng)域的重要的競爭者,贏得了許多重要的機(jī)器學(xué)習(xí)競賽,。直到2017年,,這種興趣也還沒有冷卻下來;今天,,我們看到一說機(jī)器學(xué)習(xí),,就不得不提深度學(xué)習(xí)。


作者本人也注冊(cè)了Udacity的“Deep Learning”課程,,這門課很好地介紹了深度學(xué)習(xí)的動(dòng)機(jī),,以及從TensorFlow的復(fù)雜和/或大規(guī)模的數(shù)據(jù)集中學(xué)習(xí)的智能系統(tǒng)的設(shè)計(jì)。在課程項(xiàng)目中,,我使用并開發(fā)了用于圖像識(shí)別的卷積神經(jīng)網(wǎng)絡(luò),,用于自然語言處理的嵌入式神經(jīng)網(wǎng)絡(luò),以及使用循環(huán)神經(jīng)網(wǎng)絡(luò)/長短期記憶的字符級(jí)文本生成,。


本文中,,作者總結(jié)了10個(gè)強(qiáng)大的深度學(xué)習(xí)方法,這是AI工程師可以應(yīng)用于他們的機(jī)器學(xué)習(xí)問題的,。首先,,下面這張圖直觀地說明了人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)三者之間的關(guān)系,。



人工智能的領(lǐng)域很廣泛,,深度學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域的一個(gè)子集,機(jī)器學(xué)習(xí)又是人工智能的一個(gè)子領(lǐng)域,。將深度學(xué)習(xí)網(wǎng)絡(luò)與“經(jīng)典的”前饋式多層網(wǎng)絡(luò)區(qū)分開來的因素如下:

  • 比以前的網(wǎng)絡(luò)有更多的神經(jīng)元

  • 更復(fù)雜的連接層的方法

  • 用于訓(xùn)練網(wǎng)絡(luò)的計(jì)算機(jī)能力的“寒武紀(jì)大爆炸”

  • 自動(dòng)特征提取


這里說的“更多的神經(jīng)元”時(shí),,是指神經(jīng)元的數(shù)量在逐年增加,以表達(dá)更復(fù)雜的模型,。層(layers)也從多層網(wǎng)絡(luò)中的每一層都完全連接,,到在卷積神經(jīng)網(wǎng)絡(luò)中層之間連接局部的神經(jīng)元,,再到在循環(huán)神經(jīng)網(wǎng)絡(luò)中與同一神經(jīng)元的循環(huán)連接( recurrent connections)。


深度學(xué)習(xí)可以被定義為具有大量參數(shù)和層的神經(jīng)網(wǎng)絡(luò),,包括以下四種基本網(wǎng)絡(luò)結(jié)構(gòu):

  • 無監(jiān)督預(yù)訓(xùn)練網(wǎng)絡(luò)

  • 卷積神經(jīng)網(wǎng)絡(luò)

  • 循環(huán)神經(jīng)網(wǎng)絡(luò)

  • 遞歸神經(jīng)網(wǎng)絡(luò)


在本文中,,主要介紹后三種架構(gòu)?;旧希矸e神經(jīng)網(wǎng)絡(luò)(CNN)是一個(gè)標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò),,通過共享的權(quán)重在空間中擴(kuò)展,。CNN設(shè)計(jì)用于通過內(nèi)部的卷積來識(shí)別圖像,它可以看到圖像中待識(shí)別的物體的邊緣,。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)被設(shè)計(jì)用于識(shí)別序列,,例如語音信號(hào)或文本。它的內(nèi)部有循環(huán),,這意味著網(wǎng)絡(luò)上有短的記憶,。遞歸神經(jīng)網(wǎng)絡(luò)更像是一個(gè)層級(jí)網(wǎng)絡(luò),在這個(gè)網(wǎng)絡(luò)中,,輸入必須以一種樹的方式進(jìn)行分層處理,。下面的10種方法可以應(yīng)用于所有這些架構(gòu)。




1. 反向傳播




反向傳播(Back-prop)是一種計(jì)算函數(shù)偏導(dǎo)數(shù)(或梯度)的方法,,具有函數(shù)構(gòu)成的形式(就像神經(jīng)網(wǎng)絡(luò)中),。當(dāng)使用基于梯度的方法(梯度下降只是方法之一)解決優(yōu)化問題時(shí),你需要在每次迭代中計(jì)算函數(shù)梯度,。



對(duì)于神經(jīng)網(wǎng)絡(luò),,目標(biāo)函數(shù)具有組合的形式。如何計(jì)算梯度呢,?有兩種常用的方法:(i)解析微分(Analytic differentiation),。你已經(jīng)知道函數(shù)的形式,只需要用鏈?zhǔn)椒▌t(基本微積分)來計(jì)算導(dǎo)數(shù),。(ii)利用有限差分進(jìn)行近似微分,。這種方法在計(jì)算上很昂貴,因?yàn)楹瘮?shù)值的數(shù)量是O(N),,N指代參數(shù)的數(shù)量,。不過,有限差分通常用于在調(diào)試時(shí)驗(yàn)證back-prop實(shí)現(xiàn),。




2. 隨機(jī)梯度下降法




一種直觀理解梯度下降的方法是想象一條河流從山頂流下的路徑,。梯度下降的目標(biāo)正是河流努力達(dá)到的目標(biāo)——即,到達(dá)最底端(山腳),。


現(xiàn)在,,如果山的地形是這樣的,,在到達(dá)最終目的地之前,河流不會(huì)完全停下來(這是山腳的最低點(diǎn),,那么這就是我們想要的理想情況,。)在機(jī)器學(xué)習(xí)中,相當(dāng)從初始點(diǎn)(山頂)開始,,我們找到了解決方案的全局最?。ɑ蜃罴眩┙狻H欢?,可能因?yàn)榈匦蔚男再|(zhì)迫使河流的路徑出現(xiàn)幾個(gè)坑,,這可能迫使河流陷入困境。在機(jī)器學(xué)習(xí)術(shù)語中,,這些坑被稱為局部極小值,,這是不可取的。有很多方法可以解決這個(gè)問題,。




因此,,梯度下降很容易被困在局部極小值,這取決于地形的性質(zhì)(用ML的術(shù)語來說是函數(shù)的性質(zhì)),。但是,,當(dāng)你有一種特殊的地形時(shí)(形狀像一個(gè)碗,用ML的術(shù)語來說,,叫做凸函數(shù)),,算法總是保證能找到最優(yōu)解。凸函數(shù)對(duì)ML的優(yōu)化來說總是好事,,取決于函數(shù)的初始值,,你可能會(huì)以不同的路徑結(jié)束。同樣地,,取決于河流的速度(即,,梯度下降算法的學(xué)習(xí)速率或步長),你可能以不同的方式到達(dá)最終目的地,。這兩個(gè)標(biāo)準(zhǔn)都會(huì)影響到你是否陷入坑里(局部極小值),。




3. 學(xué)習(xí)率衰減





根據(jù)隨機(jī)梯度下降的優(yōu)化過程調(diào)整學(xué)習(xí)率(learning rate)可以提高性能并減少訓(xùn)練時(shí)間。 有時(shí)這被稱為學(xué)習(xí)率退火( learning rate annealing)或自適應(yīng)學(xué)習(xí)率(adaptive learning rates),。訓(xùn)練過程中最簡單,,也是最常用的學(xué)習(xí)率適應(yīng)是隨著時(shí)間的推移而降低學(xué)習(xí)度。 在訓(xùn)練過程開始時(shí)使用較大學(xué)習(xí)率具有進(jìn)行大的改變的好處,,然后降低學(xué)習(xí)率,,使得后續(xù)對(duì)權(quán)重的訓(xùn)練更新更小。這具有早期快速學(xué)習(xí)好權(quán)重,后面進(jìn)行微調(diào)的效果,。


兩種常用且易于使用的學(xué)習(xí)率衰減方法如下:

  • 逐步降低學(xué)習(xí)率,。

  • 在特定的時(shí)間點(diǎn)較大地降低學(xué)習(xí)率。




4?. Dropout




具有大量參數(shù)的深度神經(jīng)網(wǎng)絡(luò)是非常強(qiáng)大的機(jī)器學(xué)習(xí)系統(tǒng),。然而,,過擬合在這樣的網(wǎng)絡(luò)中是一個(gè)嚴(yán)重的問題。大型網(wǎng)絡(luò)的使用也很緩慢,,這使得在測試時(shí)將許多不同的大型神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)合起來變得困難,。Dropout是解決這個(gè)問題的一種方法。



Dropout 的關(guān)鍵想法是在訓(xùn)練過程中隨機(jī)地從神經(jīng)網(wǎng)絡(luò)中把一些units(以及它們的連接)從神經(jīng)網(wǎng)絡(luò)中刪除,。這樣可以防止單元過度適應(yīng),。在訓(xùn)練過程中,從一個(gè)指數(shù)級(jí)的不同的“稀疏”網(wǎng)絡(luò)中刪除一些樣本,。在測試時(shí),通過簡單地使用一個(gè)具有較小權(quán)重的單一網(wǎng)絡(luò),,可以很容易地估計(jì)所有這些“變瘦”了的網(wǎng)絡(luò)的平均預(yù)測效果,。這顯著減少了過擬合,相比其他正則化方法有了很大改進(jìn),。研究表明,,在視覺、語音識(shí)別,、文檔分類和計(jì)算生物學(xué)等監(jiān)督學(xué)習(xí)任務(wù)中,,神經(jīng)網(wǎng)絡(luò)的表現(xiàn)有所提高,在許多基準(zhǔn)數(shù)據(jù)集上獲得了state-of-the-art的結(jié)果,。




5. Max Pooling




最大池化(Max pooling)是一個(gè)基于樣本的離散化過程,。目標(biāo)是對(duì)輸入表示(圖像,隱藏層輸出矩陣等)進(jìn)行下采樣,,降低其維度,,并允許對(duì)包含在分區(qū)域中的特征進(jìn)行假設(shè)。



這在一定程度上是為了通過提供一種抽象的表示形式來幫助過擬合,。同時(shí),,它通過減少學(xué)習(xí)的參數(shù)數(shù)量,并為內(nèi)部表示提供基本的平移不變性(translation invariance),,從而減少計(jì)算成本,。最大池化是通過將一個(gè)最大過濾器應(yīng)用于通常不重疊的初始表示的子區(qū)域來完成的。




6. 批量歸一化




當(dāng)然,,包括深度網(wǎng)絡(luò)在內(nèi)的神經(jīng)網(wǎng)絡(luò)需要仔細(xì)調(diào)整權(quán)重初始化和學(xué)習(xí)參數(shù),。而批量標(biāo)準(zhǔn)化有助于實(shí)現(xiàn)這一點(diǎn)。


權(quán)重問題:無論權(quán)重的初始化如何,是隨機(jī)的也好是經(jīng)驗(yàn)性的選擇也罷,,都距離學(xué)習(xí)到的權(quán)重很遙遠(yuǎn),。考慮一個(gè)小批量(mini batch),,在最初時(shí),,在所需的特征激活方面將會(huì)有許多異常值。


深度神經(jīng)網(wǎng)絡(luò)本身是有缺陷的,,初始層中一個(gè)微小的擾動(dòng),,就會(huì)導(dǎo)致后面層巨大的變化。在反向傳播過程中,,這些現(xiàn)象會(huì)導(dǎo)致對(duì)梯度的分散,,這意味著在學(xué)習(xí)權(quán)重以產(chǎn)生所需輸出之前,梯度必須補(bǔ)償異常值,,而這將導(dǎo)致需要額外的時(shí)間才能收斂,。



批量歸一化將梯度從分散規(guī)范化到正常值,并在小批量范圍內(nèi)向共同目標(biāo)(通過歸一化)流動(dòng),。


學(xué)習(xí)率問題:一般來說,,學(xué)習(xí)率保持較低,只有一小部分的梯度校正權(quán)重,,原因是異常激活的梯度不應(yīng)影響學(xué)習(xí)的激活,。通過批量歸一化,減少異常激活,,因此可以使用更高的學(xué)習(xí)率來加速學(xué)習(xí)過程,。




7. 長短時(shí)記憶




LSTM網(wǎng)絡(luò)在以下三個(gè)方面與RNN的神經(jīng)元不同:


  • 能夠決定何時(shí)讓輸入進(jìn)入神經(jīng)元;

  • 能夠決定何時(shí)記住上一個(gè)時(shí)間步中計(jì)算的內(nèi)容,;

  • 能夠決定何時(shí)讓輸出傳遞到下一個(gè)時(shí)間步長,。


LSTM的優(yōu)點(diǎn)在于它根據(jù)當(dāng)前的輸入本身來決定所有這些。所以,,你看下面的圖表:



當(dāng)前時(shí)間標(biāo)記處的輸入信號(hào)x(t)決定所有上述3點(diǎn),。輸入門從點(diǎn)1接收決策,遺忘門從點(diǎn)2接收決策,,輸出門在點(diǎn)3接收決策,,單獨(dú)的輸入能夠完成所有這三個(gè)決定。這受到我們的大腦如何工作的啟發(fā),,并且可以基于輸入來處理突然的上下文/場景切換,。




8. Skip-gram




詞嵌入模型的目標(biāo)是為每個(gè)詞匯項(xiàng)學(xué)習(xí)一個(gè)高維密集表示,其中嵌入向量之間的相似性顯示了相應(yīng)詞之間的語義或句法相似性,。Skip-gram是學(xué)習(xí)單詞嵌入算法的模型,。


Skip-gram模型(以及許多其他的詞語嵌入模型)的主要思想是:如果兩個(gè)詞匯項(xiàng)(vocabulary term)共享的上下文相似,那么這兩個(gè)詞匯項(xiàng)就相似。



換句話說,,假設(shè)你有一個(gè)句子,,比如“貓是哺乳動(dòng)物”。如果你用“狗”去替換“貓”,,這個(gè)句子仍然是一個(gè)有意義的句子,。因此在這個(gè)例子中,“狗”和“貓”可以共享相同的上下文(即“是哺乳動(dòng)物”),。


基于上述假設(shè),,你可以考慮一個(gè)上下文窗口(context window,一個(gè)包含k個(gè)連續(xù)項(xiàng)的窗口),,然后你跳過其中一個(gè)單詞,,試著去學(xué)習(xí)一個(gè)能夠得到除跳過項(xiàng)外所有項(xiàng)的神經(jīng)網(wǎng)絡(luò),并預(yù)測跳過的項(xiàng)是什么,。如果兩個(gè)詞在一個(gè)大語料庫中反復(fù)共享相似的語境,,則這些詞的嵌入向量將具有相近的向量。




9. 連續(xù)詞袋(Continuous Bag Of Words)




在自然語言處理問題中,,我們希望學(xué)習(xí)將文檔中的每個(gè)單詞表示為一個(gè)數(shù)字向量,,使得出現(xiàn)在相似的上下文中的單詞具有彼此接近的向量。在連續(xù)的單詞模型中,,我們的目標(biāo)是能夠使用圍繞特定單詞的上下文并預(yù)測特定單詞,。



我們通過在一個(gè)龐大的語料庫中抽取大量的句子來做到這一點(diǎn),,每當(dāng)我們看到一個(gè)單詞時(shí),,我們就會(huì)提取它周圍的單詞。然后,,我們將上下文單詞輸入到一個(gè)神經(jīng)網(wǎng)絡(luò),,并預(yù)測位于這個(gè)上下文中心的單詞。


當(dāng)我們有成千上萬的這樣的上下文單詞和中心詞以后,,我們就有了一個(gè)神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)集的實(shí)例,。訓(xùn)練神經(jīng)網(wǎng)絡(luò),最后編碼的隱藏層輸出表示特定單詞的嵌入,。而當(dāng)我們對(duì)大量的句子進(jìn)行訓(xùn)練時(shí)也能發(fā)現(xiàn),,類似語境中的單詞得到的是相似的向量。




10. 遷移學(xué)習(xí)




讓我們考慮圖像如何穿過卷積神經(jīng)網(wǎng)絡(luò),。假設(shè)你有一個(gè)圖像,,你應(yīng)用卷積,并得到像素的組合作為輸出,。假設(shè)這些輸出是邊緣(edge)?,F(xiàn)在再次應(yīng)用卷積,現(xiàn)在你的輸出就是邊或線的組合。然后再次應(yīng)用卷積,,你的輸出是線的組合,,以此類推……你可以把它看作是每一層尋找一個(gè)特定的模式。神經(jīng)網(wǎng)絡(luò)的最后一層往往會(huì)變得非常特異化,。如果你在ImageNet上工作,,你的網(wǎng)絡(luò)最后一層大概就是在尋找兒童、狗或飛機(jī)等整體圖案,。再往后倒退幾層,,你可能會(huì)看到網(wǎng)絡(luò)在尋找眼睛或耳朵或嘴巴或輪子這樣的組成部件。



深度CNN中的每一層都逐步建立起越來越高層次的特征表征,。最后幾層往往是專門針對(duì)輸入模型的數(shù)據(jù),。另一方面,早期的圖層更為通用,。而遷移學(xué)習(xí)就是當(dāng)你在一個(gè)數(shù)據(jù)集上訓(xùn)練CNN時(shí),,切掉最后一層,在不同的數(shù)據(jù)集上重新訓(xùn)練最后一層的模型,。直觀地說,,你正在重新訓(xùn)練模型以識(shí)別不同的高級(jí)特征。因此,,訓(xùn)練時(shí)間會(huì)減少很多,,所以當(dāng)你沒有足夠的數(shù)據(jù)或者訓(xùn)練需要太多的資源時(shí),遷移學(xué)習(xí)是一個(gè)有用的工具,。




結(jié)語




這篇文章簡單介紹了深度學(xué)習(xí),,如果你想了解更多更深層次的東西,建議你繼續(xù)閱讀以下資料:


  • Andrew Beam “Deep Learning 101http://beamandrew./deeplearning/2017/02/23/deep_learning_101_part1.html

  • Andrey Kurenkov “A Brief History of Neural Nets and Deep Learninghttp://www./writing/a-brief-history-of-neural-nets-and-deep-learning/

  • Adit Deshpande  “A Beginner’s Guide to Understanding Convolutional Neural Networkshttps://adeshpande3./adeshpande3./A-Beginner%27s-Guide-To-Understanding-Convolutional-Neural-Networks/

  • Chris Olah “Understanding LSTM Networkshttp://colah./posts/2015-08-Understanding-LSTMs/

  • Algobean  “Artificial Neural Networkshttps:///2016/03/13/how-do-computers-recognise-handwriting-using-artificial-neural-networks/

  • Andrej Karpathy “The Unreasonable Effectiveness of Recurrent Neural Networkshttp://karpathy./2015/05/21/rnn-effectiveness/


深度學(xué)習(xí)強(qiáng)烈注重技術(shù),。對(duì)每一個(gè)新想法都沒有太多具體的解釋,。 大多數(shù)新想法都附帶了實(shí)驗(yàn)結(jié)果來證明它們能夠工作。深度學(xué)習(xí)就像玩樂高,。掌握樂高跟掌握其他藝術(shù)一樣具有挑戰(zhàn)性,,但入門樂高可是相對(duì)容易很多的。祝你學(xué)習(xí)愉快~



原文:https:///the-10-deep-learning-methods-ai-practitioners-need-to-apply-885259f402c1


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多