天天看點

十大深度學習算法的原了解析

摘要

深度學習在科學計算領域得到了廣泛的應用,其算法被解決複雜問題的行業廣泛使用。所有的深度學習算法都使用不同類型的神經網絡來執行特定的任務。本文為大家帶來基本的人工神經網絡和深度學習算法,并簡單講解它們如何模拟人腦工作。

什麼是深度學習

深度學習是使用人工神經網絡對大量資料進行複雜的計算。

它是一種基于人腦結構和功能的機器學習。

深度學習算法是通過從執行個體中學習來訓練機器。

醫療保健、電子商務、娛樂和廣告等行業通常使用深度學習。

定義神經網絡

Neural Networks,簡稱NN。針對機器學習算法需要領域專家進行特征工程,模型泛化性能差的問題,提出了NN可以從資料的原始特征學習特征表示,無需進行複雜的特征處理。

神經網絡的結構類似于人腦,由人工神經元組成,也稱為節點。這些節點分為三層并排堆放:

  1. 輸入層
  2. 隐藏層
  3. 輸出層
十大深度學習算法的原了解析

資料以輸入的形式為每個節點提供資訊。該節點将輸入與随機權重相乘,計算它們,并添加一個偏差。最後,非線性函數,也稱為激活函數,被用來确定哪個神經元激活。

其原理可以使用線性回歸了解:y = W x + b y=Wx+by=Wx+b

深度學習算法如何工作?

雖然深度學習算法的特點是自學習表示,但它們依賴于反映大腦計算資訊方式的神經網絡。在訓練過程中,算法使用輸入分布中的未知元素來提取特征、分組對象并發現有用的資料模式。就像自學習的訓練機器一樣,這在多個層次上發生,使用算法來建立模型。

深度學習模型使用了多種算法。雖然沒有一個網絡被認為是完美的,但是一些算法适合執行特定的任務。為了選擇正确的算法,最好對所有的主要算法有一個紮實的了解。

十大最受歡迎的深度學習的算法

Convolutional Neural Networks (卷積神經網絡CNNs)

Long Short Term Memory Networks (長短期記憶網絡LSTMs)

Recurrent Neural Networks (遞歸神經網絡RNNs)

Generative Adversarial Networks (生成對抗網絡GANs)

Radial Basis Function Networks (徑向基函數網絡RBFNs)

Multilayer Perceptrons (多層感覺機MLPs)

Self Organizing Maps (自組織映射神經網絡SOMs)

Deep Belief Networks (深度信念網絡DBNs)

Restricted Boltzmann Machines( 受限玻爾茲曼機RBMs)

Autoencoders(自動編碼器)

深度學習算法可以處理幾乎任何類型的資料,并且需要大量的計算能力和資訊來解決複雜的問題。現在,讓我們深入研究一下排名前十的深度學習算法。

一、卷積神經網絡CNN

卷積神經網絡Convolutional Neural Networks, 簡稱CNN。

CNN也被稱為康維網,由多層組成,主要用于圖像處理和目标檢測。楊 · 樂村在1988年發明了第一台 CNN,當時它被稱為樂網。它被用來識别像郵政編碼和數字這樣的字元。

CNN 廣泛應用于識别衛星圖像、處理醫學圖像、預測時間序列和檢測異常。

CNN 是如何工作的?

CNN 有多個層次,從資料中處理和提取特征:

卷積層

有線電視新聞網有一個卷積層,有幾個過濾器執行卷積操作。

整流線性單元

CNN 有一個 ReLU 層來執行對元素的操作。輸出是一個校正的特征映射。

共用層

經過修正的特性映射接下來被提供到一個池層。池是一種減少特征映射次元的下采樣操作。

然後,彙聚層通過平坦化将彙聚的特征映射得到的二維數組轉換為單個、長的、連續的線性向量。

完全連接配接層

當來自池層的平坦矩陣作為輸入時,形成一個完全連通的層,它對圖像進行分類和識别。

下面是一個通過 CNN 處理的圖像的例子。

十大深度學習算法的原了解析

二、長短期存儲器網絡(LSTMs)

LSTM 是一種遞歸神經網絡(RNN) ,可以學習和記憶長期的依賴關系。長時間回憶過去的資訊是預設行為。

LSTM 随着時間的推移保留資訊。它們在時間序列預測中很有用,因為它們記得以前的輸入。LSTM 具有鍊狀結構,其中四個互相作用的層以獨特的方式進行通信。除了時間序列預測,LSTM 通常用于語音識别、音樂創作和藥物開發。

LSTM 是如何工作的?

  1. 首先,他們忘記了先前狀态中不相關的部分
  2. 接下來,它們有選擇地更新單元格狀态值
  3. 最後,輸出單元格狀态的某些部分

下面是 LSTM 如何運作的示意圖:

十大深度學習算法的原了解析

三、遞歸神經網絡(RNNs)

RNN 具有形成定向循環的連接配接,這允許将 LSTM 的輸出作為輸入饋入到目前階段。

LSTM 的輸出成為目前階段的輸入,并且由于其内部存儲器,可以記憶以前的輸入。RNN 通常用于圖像字幕、時間序列分析、自然語言處理、手寫識别和機器翻譯。

展開的 RNN 看起來像這樣:

十大深度學習算法的原了解析

RNN 是如何工作的?

  1. 時間 t-1的輸出在時間 t 輸入。
  2. 類似地,時間 t 的輸出在時間 t + 1輸入。
  3. RNN 可以處理任意長度的輸入。
  4. 計算考慮了曆史資訊,模型大小不會随着輸入大小的增加而增加。

下面是谷歌自動完成功能的一個例子:

十大深度學習算法的原了解析

四、生成性對抗網絡(GAN)

GAN 是生成式深度學習算法,它建立類似于訓練資料的新資料執行個體。GAN 有兩個組成部分: 一個生成器,學習生成虛假資料,一個鑒别器,學習從虛假資訊。

GAN 的使用在一段時間内有所增加。它們可以用來改善天文圖像和模拟暗物質研究的引力透鏡效應。視訊遊戲開發者通過圖像訓練,以4K 或更高的分辨率重新建立低分辨率、2D 紋理的舊視訊遊戲,使用 GAN 來提升它們的分辨率。

GAN 有助于生成逼真的圖像和卡通人物,建立人臉照片,并渲染3D 物體。

GAN 是如何工作的?

  1. 鑒别器學習區分生成器的虛假資料和真實樣本資料。
  2. 在最初的訓練過程中,生成器産生假資料,鑒别器很快學會辨識這些假資料。
  3. GAN 将結果發送給生成器和鑒别器以更新模型。

下面是 GAN 如何運作的示意圖:

十大深度學習算法的原了解析

五、徑向基函數網絡(RBFNs)

RBFN 是一種特殊類型的前饋神經網絡,它使用徑向基函數作為激活函數。它們有一個輸入層、一個隐藏層和一個輸出層,主要用于分類、回歸和時間序列預測。

RBFN 是如何工作的?

  1. RBFN 通過測量輸入與訓練集中的例子的相似性來進行分類。
  2. RBF 神經元有一個輸入向量供給輸入層,它們有一層 RBF 神經元。
  3. 函數找到輸入的權重和,輸出層為每個類别或類别的資料有一個節點。
  4. 隐層中的神經元包含高斯傳遞函數,其輸出與到神經元中心的距離成反比。
  5. 網絡的輸出是輸入的徑向基函數和神經元參數的線性組合。

看看這個 RBFN 的例子:

十大深度學習算法的原了解析

六、多層感覺器(mlp)

MLP 是開始學習深度學習技術的絕佳場所。

MLP 屬于具有多層感覺器的前饋神經網絡,具有激活功能。MLP 由完全連接配接的輸入層和輸出層組成。它們具有相同數量的輸入和輸出層,但可能有多個隐藏層,可用于建構語音識别、圖像識别和機器翻譯軟體。

MLP 是如何工作的?

  1. MLP 将資料提供給網絡的輸入層。神經元層連接配接成一個圖形,以便信号沿一個方向傳遞。
  2. MLP 使用存在于輸入層和隐藏層之間的權重來計算輸入。
  3. MLP 使用激活函數來決定激活哪些節點。激活函數包括 ReLU、 sigmoid 函數和 tanh。
  4. MLP 訓練模型以了解相關性,并從訓練資料集中學習獨立變量和目标變量之間的依賴關系。

下面是 MLP 的一個例子。該圖計算權重和偏差,并應用适當的激活函數來分類貓和狗的圖像。

十大深度學習算法的原了解析

七、自組織映射神經網絡(SOMs)

特沃•科霍甯教授發明了自組織映射神經網絡,使資料可視化能夠通過自組織的人工神經網絡來減少資料的維數。

資料可視化試圖解決人類無法輕易将高維資料可視化的問題。SOM 的建立是為了幫助使用者了解這些高維資訊。

SOM 是如何工作的?

  1. SOM 為每個節點初始化權值,并從訓練資料中随機選擇一個向量。
  2. SOM 檢查每個節點,以找出哪些權重是最可能的輸入向量。獲勝的節點稱為最佳比對單元(BMU)。
  3. SOM 發現了 BMU 的鄰居,随着時間的推移,鄰居的數量減少了。
  4. SOMs 為樣本向量授予一個獲勝的權重。節點越接近 BMU,其權重變化越大。.
  5. 鄰居離 BMU 越遠,它學到的東西就越少。 SOMs 在 N 次疊代中重複第二步。

下面,請看一個不同顔色的輸入向量的示意圖。這些資料提供給 SOM,然後 SOM 将資料轉換為2D RGB 值。最後,它分離和分類不同的顔色。

十大深度學習算法的原了解析

八、深度信念網絡(DBN)

DBN 是由多層随機潛變量組成的生成模型。潛變量具有二進制值,通常稱為隐藏機關。

DBN 是一組 Boltzmann 機器,它們在各層之間建立連接配接,每個 RBM 層與前面的層和後面的層進行通信。深度信任網絡(DBN)用于圖像識别、視訊識别和運動捕捉資料。

DBN 是如何工作的?

  1. 貪婪學習算法訓練 DBN。貪婪學習算法使用一層一層的方法來學習自頂向下的生成權重。
  2. DBN 在最上面的兩個隐藏層上運作 Gibbs 采樣的步驟。這個階段從頂部兩個隐藏層定義的 RBM 中提取一個樣本。
  3. DBN 使用一次通過模型其餘部分的祖先抽樣來從可見單元中抽取樣本。
  4. DBN 每一層中潛變量的值都可以通過一次自底向上的傳遞來推斷。

下面是 DBN 體系結構的一個示例:

十大深度學習算法的原了解析

九、受限制的玻爾茲曼機器(RBM)

由 Geoffrey Hinton 開發的 RBM 是一種随機神經網絡,可以從一組輸入的機率分布中學習。

這種深度學習算法用于降維、分類、回歸、協同過濾、特征學習和主題模組化。RBM構成了 DBN 的組成部分。

RBM由兩層組成:

  1. 可見機關
  2. 隐藏機關

每個可見單元都連接配接到所有隐藏單元。RBM 有一個連接配接到所有可見單元和隐藏單元的偏置單元,它們沒有輸出節點。

RBM 是如何工作的?

RBM有兩個階段: 前向傳遞和後向傳遞。

  1. RBM接受輸入,并将其轉換成一組數字,在前向傳遞中對輸入進行編碼。
  2. RBM 算法将每個輸入與單個權值和一個總偏差相結合,将輸出傳遞給隐層。
  3. 在向後傳遞過程中,RBM 擷取這組數字并将它們轉換為重構的輸入。
  4. RBM 将每個激活與個體重量和整體偏差相結合,并将輸出傳遞到可見層進行重建。
  5. 在可見層,RBM 将重建結果與原始輸入進行比較,分析結果的品質。

以下是RBM如何運作圖表:

十大深度學習算法的原了解析

十、自動編碼器

自動編碼器是一種特殊類型的前饋神經網絡,其輸入和輸出是相同的。傑弗裡•辛頓(Geoffrey Hinton)在上世紀80年代設計了自動編碼器,以解決非監督式學習問題。它們是經過訓練的神經網絡,将資料從輸入層複制到輸出層。自動編碼器用于藥物發現、流行預測和圖像處理等目的。

自動編碼器是如何工作的?

自動編碼器由三個主要部分組成: 編碼器、代碼和解碼器。

  1. 自動編碼器的結構是接收輸入并将其轉換為不同的表示形式。然後,他們試圖盡可能準确地重建原始輸入。
  2. 當一個數字的圖像不清楚可見,它饋送到自動編碼器神經網絡。
  3. 自動編碼器首先對圖像進行編碼,然後将輸入的大小減小為較小的表示形式。
  4. 最後,自動編碼器對圖像進行解碼,生成重建圖像。

下圖示範了自動編碼器的工作方式:

十大深度學習算法的原了解析

結論

深度學習在過去的五年中得到了發展,深度學習算法在許多行業中廣泛流行。以下是常見的問答交流環節。

Q1:深度學習中哪種算法最好?

多層感覺器(MLPs)是最好的深度學習算法。這是一個最古老的深度學習技術使用的幾個社會媒體網站,包括 Instagram 和 Meta。這有助于在弱網絡中加載圖像,輔助資料壓縮,并經常用于速度和圖像識别應用程式。

Q2:哪一個是深度學習算法的例子?

一些許多深度學習算法包括徑向函數網絡,多層感覺器,自組織映射,卷積神經網絡等等。這些算法包括受人類大腦神經元功能啟發的結構。

Q3:CNN 是一種深度學習算法嗎?

是的,CNN 是一個深度學習算法,負責處理動物視覺皮層啟發的圖像在網格模式的形式。它們被設計用于自動檢測和分割特定對象,并從低層到高層模式學習特征的空間層次結構。

Q4:深度學習的三個層次是什麼?

該神經網絡由輸入層、隐層和輸出層三層組成。當輸入資料應用于輸入層時,獲得輸出層中的輸出資料。隐藏層負責執行所有的計算和“隐藏”任務。

Q5:深度學習模式是如何工作的?

深度學習模型使用神經網絡結構或一組包含多層的标記資料進行訓練。它們有時超過人類水準的表現。這些體系結構直接從資料中學習特征,而不受手工特征提取的阻礙。

Q6:深度學習算法從哪個入門?

無論你是初學者還是專業人士,這三個最好的深度學習算法将幫助你解決與深度學習有關的複雜問題: CNN 或卷積神經網絡,LSTM 或長短期記憶網絡和 RNN 或回歸神經網絡(RNN)。

繼續閱讀