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

分享

AI從業(yè)人員需要掌握的10大算法(方法)

 zhuxrgf 2020-11-09
作者:James Le
編譯:ronghuaiyang

導(dǎo)讀

這10個(gè)算法(方法)可以說是目前深度學(xué)習(xí)中非?;A(chǔ)和出鏡率非常高的算法和方法,,關(guān)鍵是非常的有效,一起來看看吧,!

過去十年,,人們對機(jī)器學(xué)習(xí)的興趣激增。你幾乎每天都能在計(jì)算機(jī)科學(xué)項(xiàng)目,、行業(yè)會議和華爾街日報(bào)上看到機(jī)器學(xué)習(xí),。在所有關(guān)于機(jī)器學(xué)習(xí)的討論中,許多人把它能做什么與希望它能做什么混為一談,。從根本上說,,機(jī)器學(xué)習(xí)是利用算法從原始數(shù)據(jù)中提取信息,并用某種模型表示出來,。我們使用這個(gè)模型來推斷關(guān)于尚未建模的其他數(shù)據(jù)的信息,。

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

在20世紀(jì)80年代中期和90年代早期,神經(jīng)網(wǎng)絡(luò)在架構(gòu)上取得了許多重要的進(jìn)步,。然而,,獲得良好結(jié)果所需的時(shí)間和數(shù)據(jù)減少了實(shí)用的速度,從而降低了人們對它的興趣,。在21世紀(jì)初,,計(jì)算能力呈指數(shù)級增長,業(yè)界見證了計(jì)算技術(shù)的“寒武紀(jì)大爆發(fā)”,,這在此之前是不可能的,。深度學(xué)習(xí)(Deep learning)在那十年爆炸式的計(jì)算增長中脫穎而出,成為該領(lǐng)域的有力競爭者,,贏得了許多重要的機(jī)器學(xué)習(xí)競賽,。截至2017年,,投資者的興趣并未降溫,,今天,我們在機(jī)器學(xué)習(xí)的每個(gè)角落都可以看到深度學(xué)習(xí),。

在這里,,我想分享10種強(qiáng)大的深度學(xué)習(xí)方法,, AI工程師可以應(yīng)用到他們的機(jī)器學(xué)習(xí)問題中。但首先,,讓我們來定義什么是深度學(xué)習(xí),。對許多人來說,深度學(xué)習(xí)一直是一個(gè)難以定義的挑戰(zhàn),,因?yàn)樵谶^去十年中,,它的形式發(fā)生了緩慢的變化。為了直觀地將深度學(xué)習(xí)置于語境中,,下圖說明了人工智能,、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)之間的關(guān)系的概念。

AI從業(yè)人員需要掌握的10大算法(方法)

人工智能的領(lǐng)域很廣,,已經(jīng)存在很長時(shí)間了,。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域的一個(gè)子集,機(jī)器學(xué)習(xí)是人工智能的一個(gè)子領(lǐng)域,。深度學(xué)習(xí)網(wǎng)絡(luò)與“古典的”前饋多層網(wǎng)絡(luò)的區(qū)別在于:

  • 比之前的網(wǎng)絡(luò)更多的神經(jīng)元
  • 連接層的更復(fù)雜方法
  • 有“寒武紀(jì)大爆炸”式的計(jì)算能力來進(jìn)行訓(xùn)練
  • 自動(dòng)特征提取

當(dāng)我說“更多的神經(jīng)元”時(shí),,我的意思是神經(jīng)元的數(shù)量在過去的幾年里一直在上升,可以表達(dá)更復(fù)雜的模型,。層也從多層網(wǎng)絡(luò)中完全連接的每一層發(fā)展到卷積神經(jīng)網(wǎng)絡(luò)中各層之間神經(jīng)元的局部連接塊,,再到循環(huán)神經(jīng)網(wǎng)絡(luò)中同一神經(jīng)元的循環(huán)連接(除了前一層的連接)。

那么深度學(xué)習(xí)可以定義為以下四種基本網(wǎng)絡(luò)架構(gòu)之一的具有大量參數(shù)和層次的神經(jīng)網(wǎng)絡(luò):

  • 無監(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ò)

在這篇文章中,,我主要對后3個(gè)架構(gòu)感興趣,。卷積神經(jīng)網(wǎng)絡(luò)基本上是一個(gè)標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò),它使用共享的權(quán)值進(jìn)行了跨空間的擴(kuò)展,。CNN的設(shè)計(jì)是通過內(nèi)部的卷積來識別圖像,,卷積可以看到圖像上識別的物體的邊緣。循環(huán)神經(jīng)網(wǎng)絡(luò)基本上是一種標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò),,它將輸出送到下一個(gè)時(shí)間步而不是下一層,。RNN用于識別序列,例如語音信號或文本,。它內(nèi)部有循環(huán),,這意味著網(wǎng)絡(luò)中存在短時(shí)記憶。遞歸神經(jīng)網(wǎng)絡(luò)更像是一個(gè)層次網(wǎng)絡(luò),,其中輸入序列實(shí)際上沒有時(shí)間的概念,,但輸入必須以樹的方式分層處理。下面的10個(gè)方法可以應(yīng)用于所有這些體系結(jié)構(gòu),。

1?—反向傳播

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

AI從業(yè)人員需要掌握的10大算法(方法)

對于神經(jīng)網(wǎng)絡(luò),,目標(biāo)函數(shù)具有組合形式。如何計(jì)算梯度,?有兩種常見的方法:(i) 解析微分,。你知道函數(shù)的形式。你只要用鏈?zhǔn)椒▌t(基本微積分)計(jì)算導(dǎo)數(shù)就行了,。(ii) 近似微分利用有限差分,。這種方法的計(jì)算代價(jià)很高,因?yàn)楹瘮?shù)求值的個(gè)數(shù)是O(N),,其中N是參數(shù)的個(gè)數(shù),。與解析微分相比,這個(gè)計(jì)算代價(jià)是非常大的,。然而,,有限差分通常用于調(diào)試時(shí)驗(yàn)證反向傳播的實(shí)現(xiàn)是不是正確。

2?—?隨機(jī)梯度下降

一種直觀的方法來考慮梯度下降是想象一條河流的路徑起源于山頂,。坡度下降的目標(biāo)正是這條河努力要達(dá)到的目標(biāo),,即從山上爬下來,到達(dá)山腳的最低處,。

現(xiàn)在,,如果山的地形是這樣形成的,在到達(dá)最終目的地(山腳的最低點(diǎn))之前,,河流不會在任何地方完全停止流動(dòng),,那么這就是我們想要的理想情況。在機(jī)器學(xué)習(xí)中,,這相當(dāng)于說,,我們已經(jīng)從初始點(diǎn)(山頂)開始找到了解決方案的全局最小(或最優(yōu))。然而,,有可能是地形的原因?qū)е铝撕恿鞯牧鹘?jīng)路徑上有幾個(gè)坑,,這可能會使得河流的流動(dòng)陷入困境并停滯不前。在機(jī)器學(xué)習(xí)術(shù)語中,,這種凹坑被稱為局部極小解,,這是不可取的。有很多方法可以解決這個(gè)問題(我沒有討論這個(gè)問題),。

AI從業(yè)人員需要掌握的10大算法(方法)

3?—?學(xué)習(xí)率下降

AI從業(yè)人員需要掌握的10大算法(方法)

在隨機(jī)梯度下降優(yōu)化過程調(diào)整學(xué)習(xí)率可以提高性能并減少訓(xùn)練時(shí)間,。有時(shí)這被稱為“學(xué)習(xí)率退火”或“自適應(yīng)學(xué)習(xí)率”。在訓(xùn)練過程中,,對學(xué)習(xí)率的最簡單,、也許也是最常用的調(diào)整是隨著時(shí)間的推移降低學(xué)習(xí)率的技術(shù)。當(dāng)使用較大的學(xué)習(xí)率值時(shí),,這些方法可以在訓(xùn)練過程的開始時(shí)進(jìn)行較大的更改,,并降低學(xué)習(xí)率,,從而在訓(xùn)練過程的后期對權(quán)重進(jìn)行較小的更新,,從而減少更新的次數(shù),。這樣做的效果是,及早快速學(xué)習(xí)良好的權(quán)重,,然后對其進(jìn)行微調(diào),。

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

  • 根據(jù)時(shí)間逐步降低學(xué)習(xí)速度。
  • 在特定時(shí)間點(diǎn)對學(xué)習(xí)率進(jìn)行大幅的下降,。

4?—?Dropout

具有大量參數(shù)的深度神經(jīng)網(wǎng)絡(luò)是非常強(qiáng)大的機(jī)器學(xué)習(xí)系統(tǒng),。然而,在這樣的網(wǎng)絡(luò)中,,過擬合是一個(gè)嚴(yán)重的問題,。大型的網(wǎng)絡(luò)用起來往往很慢,這樣的話,,想通過對多個(gè)大型神經(jīng)網(wǎng)絡(luò)組合的方式來解決過擬合問題就非常困難了,。Dropout是解決這個(gè)問題的一種技術(shù)。

AI從業(yè)人員需要掌握的10大算法(方法)

其關(guān)鍵思想是,,在訓(xùn)練過程中隨機(jī)地從神經(jīng)網(wǎng)絡(luò)中刪除單元(以及它們的連接),。這就避免了神經(jīng)元之間的過度協(xié)作。在訓(xùn)練過程中,,從指數(shù)數(shù)量的不同的“稀疏”網(wǎng)絡(luò)對神經(jīng)元進(jìn)行dropout,。在測試時(shí),簡單地使用具有較小權(quán)重的單個(gè)網(wǎng)絡(luò),,就可以很容易地近似所有這些稀疏網(wǎng)絡(luò)的預(yù)測平均值的效果,。這大大減少了過擬合,與其他正則化方法相比有了很大的改進(jìn),。Dropout在視覺,、語音識別、文檔分類和計(jì)算生物學(xué)等方面改善了神經(jīng)網(wǎng)絡(luò)在監(jiān)督學(xué)習(xí)任務(wù)中的性能,,在許多基準(zhǔn)數(shù)據(jù)集上獲得了最先進(jìn)的結(jié)果,。

5?—?最大池化

Max池是一個(gè)基于采樣的離散化過程。目標(biāo)是對輸入表示(圖像,、隱藏層輸出矩陣等)進(jìn)行下采樣,,降低其維數(shù),并允許對被包含的特征的子區(qū)域做出估計(jì),。

AI從業(yè)人員需要掌握的10大算法(方法)

這樣做的部分原因是,,通過提供一種抽象的表示形式來幫助減少過擬合。此外,,它還通過減少要學(xué)習(xí)的參數(shù)的數(shù)量來降低計(jì)算成本,,并為內(nèi)部表示提供基本的平移不變性,。最大池化是通過對通常是不重疊的子區(qū)域使用最大化濾波器來實(shí)現(xiàn)的。

6?—?Batch Normalization

神經(jīng)網(wǎng)絡(luò)包括深度網(wǎng)絡(luò)都需要對權(quán)值初始化和學(xué)習(xí)參數(shù)進(jìn)行仔細(xì)的調(diào)試,,Batch Normalization可以使得對初始化和學(xué)習(xí)的要求放松一點(diǎn),。

權(quán)重問題:

無論初始化的權(quán)重是隨機(jī)的還是經(jīng)驗(yàn)選擇的,它們都與學(xué)習(xí)的權(quán)重相差甚遠(yuǎn),??紤]一個(gè)mini batch,在初始階段,,在所需的特征激活方面會有許多異常值,。

深度神經(jīng)網(wǎng)絡(luò)本身是不適定的,即初始層的一個(gè)小擾動(dòng)會導(dǎo)致后一層的大變化,。

在反向傳播過程中,,這些現(xiàn)象會對梯度造成干擾,這意味著在學(xué)習(xí)權(quán)重以產(chǎn)生所需輸出之前,,梯度必須對異常值進(jìn)行補(bǔ)償,。這就需要額外的時(shí)間來收斂。

AI從業(yè)人員需要掌握的10大算法(方法)

Batch normalization將這些梯度從分散的離群值變成歸一化的值,,并在mini batch的范圍內(nèi)讓它們向共同的目標(biāo)流動(dòng)(通過對它們進(jìn)行歸一化),。

學(xué)習(xí)率問題:一般情況下,學(xué)習(xí)率保持在較小的范圍內(nèi),,只有很小一部分梯度可以修正權(quán)重,,原因是異常激活的梯度不應(yīng)該影響學(xué)習(xí)到的激活。通過Batch normalization,,這些異常激活被減少,,因此可以使用較高的學(xué)習(xí)率來加速學(xué)習(xí)過程。

7?—?長短時(shí)記憶Long Short-Term Memory:

LSTM網(wǎng)絡(luò)與遞歸神經(jīng)網(wǎng)絡(luò)中常見的神經(jīng)元有以下三個(gè)不同之處:

  1. 它可以控制輸入什么時(shí)候進(jìn)入神經(jīng)元
  2. 它可以控制何時(shí)記住上一個(gè)時(shí)間步驟中計(jì)算的內(nèi)容
  3. 它可以控制何時(shí)將輸出傳遞到下一個(gè)時(shí)間步

LSTM的美妙之處在于,,它根據(jù)當(dāng)前輸入本身來決定這一切,。

AI從業(yè)人員需要掌握的10大算法(方法)

當(dāng)前時(shí)間戳處的輸入信號x(t)決定了以上3個(gè)點(diǎn)。輸入門為點(diǎn)1做一個(gè)決定,,忘記門在點(diǎn)2上做決定,,輸出門在點(diǎn)3上做決定。僅憑輸入就能做出這三個(gè)決定,。它的靈感來自于我們的大腦如何工作,,以及如何處理基于輸入的突然的上下文切換。

8?—?Skip-gram:

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

skip-gram模型(以及許多其他詞嵌入模型)背后的主要思想如下:如果兩個(gè)詞共享相似的上下文,那么這兩個(gè)詞是相似的,。

AI從業(yè)人員需要掌握的10大算法(方法)

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

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

9?—?連續(xù)詞袋模型:

在自然語言處理問題中,我們希望將文檔中的每個(gè)單詞表示為一個(gè)數(shù)字向量,,這樣在類似上下文中出現(xiàn)的單詞的向量就會非常接近,。在連續(xù)詞袋模型中,目標(biāo)是能夠使用特定單詞周圍的上下文并預(yù)測特定的單詞,。

AI從業(yè)人員需要掌握的10大算法(方法)

我們通過在一個(gè)大語料庫中使用很多很多的句子來做到這一點(diǎn),,每次我們看到一個(gè)單詞,我們就使用周圍的單詞,。然后我們將上下文單詞輸入神經(jīng)網(wǎng)絡(luò),,并預(yù)測該上下文中心的單詞。

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

10?—?遷移學(xué)習(xí):

讓我們考慮一下圖像是如何通過卷積神經(jīng)網(wǎng)絡(luò)的,。假設(shè)你有一個(gè)圖像,,你對它進(jìn)行卷積,你得到像素的組合作為輸出。假設(shè)它們是邊緣?,F(xiàn)在再次應(yīng)用卷積,,現(xiàn)在你的輸出是邊緣或者線的組合。現(xiàn)在再次應(yīng)用卷積,,你的輸出是線的組合,,等等。你可以把它想象成每一層都在尋找一個(gè)特定的模式,。神經(jīng)網(wǎng)絡(luò)的最后一層會變得非常特殊,。如果你在ImageNet上訓(xùn)練,你的網(wǎng)絡(luò)的最后一層會尋找孩子,、狗,、飛機(jī)或其他東西。在后面幾層,,你可能會看到網(wǎng)絡(luò)在尋找眼睛,、耳朵、嘴巴或輪子,。

AI從業(yè)人員需要掌握的10大算法(方法)

深度CNN中的每一層都在逐步構(gòu)建越來越高級的特征表示,。最后兩層往往專門處理你輸入模型的隨便什么數(shù)據(jù)。另一方面,,早期的層更加通用,,在更大的圖片類中有很多簡單的模式。

遷移學(xué)習(xí)就是說,,你在一個(gè)數(shù)據(jù)集上訓(xùn)練CNN,,去掉最后一層,然后在另一個(gè)數(shù)據(jù)集上重新訓(xùn)練模型的最后一層,。直觀地說,,你是在對模型進(jìn)行再訓(xùn)練,以識別不同的高級特征,。因此,,當(dāng)你沒有足夠的數(shù)據(jù)或者訓(xùn)練需要太多的資源時(shí),遷移學(xué)習(xí)是一個(gè)有用的工具,。

深度學(xué)習(xí)非常注重技術(shù),。對于每一個(gè)新想法都沒有太多具體的解釋,大多數(shù)新想法的提出都附有實(shí)驗(yàn)結(jié)果,,以證明它們是可行的,。深度學(xué)習(xí)就像玩樂高。掌握樂高積木和其他藝術(shù)一樣具有挑戰(zhàn)性,,但更容易入門,。

英文原文:https:///cracking-the-data-science-interview/the-10-deep-learning-methods-ai-practitioners-need-to-apply-885259f402c1

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多