論文:Recent Advances in Deep Learning: An Overview
#論文網址:https://arxiv. org/pdf/1807.08169v1.pdf
摘要:深度學習是機器學習和人工智慧研究的最新趨勢之一。它也是當今最受歡迎的科學研究趨勢之一。深度學習方法為電腦視覺和機器學習帶來了革命性的進步。新的深度學習技術正在不斷誕生,超越最先進的機器學習甚至是現有的深度學習技術。近年來,全世界在這一領域取得了許多重大突破。由於深度學習正快度發展,導致了它的進展很難被跟進,特別是對於新的研究者。在本文中,我們將簡要討論近年來關於深度學習的最新進展。
「深度學習」(DL)一詞最初在1986 被引入機器學習(ML),後來在2000年時用於人工神經網路(ANN)。深度學習方法由多個層組成,以學習具有多個抽象層次的資料特徵。 DL 方法讓電腦透過相對簡單的概念來學習複雜的概念。對於人工神經網路(ANN),深度學習(DL)(也稱為分層學習(Hierarchical Learning))是指在多個計算階段中精確地分配信用,以轉換網路中的聚合激活。為了學習複雜的功能,深度架構被用於多個抽象層次,即非線性操作;例如 ANNs,具有許多隱藏層。用準確的話總結就是,深度學習是機器學習的一個子領域,它使用了多層次的非線性資訊處理和抽象,用於有監督或無監督的特徵學習、表示、分類和模式識別。
深度學習即表徵學習是機器學習的一個分支或子領域,大多數人認為近代深度學習方法是從 2006 開始發展起來的。本文是關於最新的深度學習技術的綜述,主要推薦給即將涉足該領域的研究者。本文包括 DL 的基本想法、主要方法、最新進展以及應用。
綜述論文是非常有益的,特別是對某一特定領域的新研究者。一個研究領域如果在不久的將來及相關應用領域中有很大的價值,那通常很難被即時追蹤到最新進展。現在,科學研究是一個很有吸引力的職業,因為知識和教育比以往任何時候都更容易分享和獲得。對於一種技術研究的趨勢來說,唯一正常的假設是它會在各個方面有很多的改進。幾年前對某個領域的概述,現在可能已經過時了。
考慮到近年來深度學習的普及和推廣,我們簡要概述了深度學習和神經網路(NN),以及它的主要進展和幾年來的重大突破。我們希望這篇文章將幫助許多新手研究者在這一領域全面了解最近的深度學習的研究和技術,並引導他們以正確的方式開始。同時,我們希望透過這項工作,向這個時代的頂級DL 和ANN 研究者致敬:Geoffrey Hinton(Hinton)、Juergen Schmidhuber(Schmidhuber)、Yann LeCun(LeCun)、Yoshua Bengio(Bengio)和許多其他研究學者,他們的研究建構了現代人工智慧(AI)。跟進他們的工作,以追蹤當前最佳的 DL 和 ML 研究進展對我們來說也至關重要。
在本論文中,我們首先簡述過去的研究論文,對深度學習的模型和方法進行研究。然後,我們將開始描述這一領域的最新進展。我們將討論深度學習(DL)方法、深度架構(即深度神經網路(DNN))和深度生成模型(DGM),其次是重要的正規化和最佳化方法。此外,用兩個簡短的部分對於開源的 DL 框架和重要的 DL 應用進行總結。我們將在最後兩個章節(即討論和結論)中討論深入學習的現狀和未來。
在過去的幾年中,有許多關於深度學習的綜述論文。他們以很好的方式描述了 DL 方法、方法論以及它們的應用和未來研究方向。這裡,我們簡單介紹一些關於深度學習的優秀綜述論文。
Young 等人(2017)討論了 DL 模型和架構,主要用於自然語言處理(NLP)。他們在不同的 NLP 領域中展示了 DL 應用,比較了 DL 模型,並討論了可能的未來趨勢。
Zhang 等人(2017)討論了用於前端和後端語音辨識系統的當前最佳深度學習技術。
Zhu 等人(2017)綜述了 DL 遙感技術的最新進展。他們還討論了開源的 DL 框架和其他深度學習的技術細節。
#Wang 等人(2017)以時間順序的方式描述了深度學習模型的演變。該短文簡要介紹了模型,以及在 DL 研究中的突破。這篇文章以進化的方式來了解深度學習的起源,並對神經網路的優化和未來的研究做了解讀。
Goodfellow 等人(2016)詳細討論了深度網路和生成模型,從機器學習(ML)基礎知識、深度架構的優缺點出發,對近年來的DL 研究和應用進行了總結。
LeCun 等人(2015)從卷積神經網路(CNN)和遞歸神經網路(RNN)概述了深度學習(DL)模型。他們從表徵學習的角度描述了 DL,展示了 DL 技術如何運作、如何在各種應用中成功使用、以及如何對預測未來進行基於無監督學習(UL)的學習。同時他們也指出了 DL 在文獻目錄中的主要進展。
Schmidhuber(2015)從 CNN、RNN 和深度強化學習 (RL) 對深度學習做了一個概述。他強調了序列處理的 RNN,同時指出基本 DL 和 NN 的局限性,以及改進它們的技巧。
Nielsen (2015) 以程式碼和範例描述了神經網路的細節。他還在一定程度上討論了深度神經網路和深度學習。
Schmidhuber (2014) 討論了基於時間序列的神經網路、採用機器學習方法進行分類,以及在神經網路中使用深度學習的歷史和進展。
Deng 和 Yu (2014) 描述了深度學習類別和技術,以及 DL 在幾個領域的應用。
Bengio (2013) 從表徵學習的角度簡要概述了 DL 演算法,即監督和無監督網路、最佳化和訓練模型。他聚焦於深度學習的許多挑戰,例如:為更大的模型和資料擴展演算法,減少最佳化困難,設計有效的縮放方法等。
Bengio 等人 (2013) 討論了表徵和特徵學習即深度學習。他們從應用、技術和挑戰的角度探討了各種方法和模型。
Deng (2011) 從資訊處理及相關領域的角度概述了深度結構化學習及其架構。
Arel 等人 (2010) 簡要概述了近年來的 DL 技術。
Bengio (2009) 討論了深度架構,即人工智慧的神經網路和生成模型。
最近所有關於深度學習(DL)的論文都從多個角度討論了深度學習重點。這對 DL 的研究人員來說是非常有必要的。然而,DL 目前是一個蓬勃發展的領域。在最近的 DL 概述論文發表之後,仍有許多新的技術和架構被提出。此外,以往的論文從不同的角度進行研究。我們的論文主要是針對剛進入這領域的學習者和新手。為此,我們將努力為新研究人員和任何對這一領域感興趣的人提供一個深度學習的基礎和清晰的概念。
在本節中,我們將討論最近從機器學習和人工神經網路(ANN) 的衍生出來的主要深度學習(DL) 方法,人工神經網路是深度學習最常用的形式。
#人工神經網路(ANN) 已經取得了長足的進步,同時也帶來了其他的深度模型。第一代人工神經網路由簡單的感知器神經層組成,只能進行有限的簡單計算。第二代使用反向傳播,根據錯誤率更新神經元的權重。然後支援向量機 (SVM) 浮出水面,在一段時間內超越 ANN。為了克服反向傳播的局限性,人們提出了受限玻爾茲曼機(RBM),使學習更容易。此時其他技術和神經網路也出現了,如前饋神經網路 (FNN)、卷積神經網路 (CNN)、循環神經網路 (RNN) 等,以及深層信念網路、自編碼器等。從那時起,為實現各種用途,ANN 在不同方面得到了改進和設計。
Schmidhuber (2014)、Bengio (2009)、Deng 與Yu (2014)、Goodfellow 等人(2016)、Wang 等人(2017) 對深度神經網路(DNN) 的演化和歷史以及深度學習(DL) 進行了詳細的概述。在大多數情況下,深層架構是簡單架構的多層非線性重複,這樣可從輸入中獲得高度複雜的函數。
深度神經網路在監督學習中取得了巨大的成功。此外,深度學習模式在無監督、混合和強化學習方面也非常成功。
監督學習應用在當資料標記、分類器分類或數值預測的情況。 LeCun 等人 (2015) 對督導學習方法以及深層結構的形成給出了一個精簡的解釋。 Deng 和 Yu(2014) 提到了許多用於監督和混合學習的深度網絡,並做出解釋,例如深度堆疊網絡 (DSN) 及其變體。 Schmidthuber(2014) 的研究涵蓋了所有神經網絡,從早期神經網絡到最近成功的捲積神經網絡 (CNN)、循環神經網絡 (RNN)、長短期記憶 (LSTM) 及其改進。
當輸入資料沒有標記時,可應用無監督學習方法從資料中提取特徵並對其進行分類或標記。 LeCun 等人 (2015) 預測了無監督學習在深度學習的未來。 Schmidthuber(2014) 也描述了無監督學習的神經網路。 Deng 和 Yu(2014) 簡要介紹了無監督學習的深度架構,並詳細解釋了深度自編碼器。
強化學習使用獎懲系統預測學習模型的下一步。這主要用於遊戲和機器人,解決平常的決策問題。 Schmidthuber(2014) 描述了強化學習 (RL) 中深度學習的進展,以及深度前饋神經網路 (FNN) 和循環神經網路 (RNN) 在 RL 中的應用。 Li(2017) 討論了深度強化學習 (Deep Reinforcement Learning, DRL)、它的架構 (例如 Deep Q-Network, DQN) 以及在各個領域的應用。
Mnih 等人 (2016) 提出了一種利用非同步梯度下降進行 DNN 最佳化的 DRL 框架。
van Hasselt 等人 (2015) 提出了一種使用深度神經網路 (deep neural network, DNN) 的 DRL 架構。
在本節中,我們將簡要地討論深度神經網路(DNN),以及它們最近的改進和突破。神經網路的功能與人腦相似。它們主要由神經元和連接組成。當我們說深度神經網路時,我們可以假設有相當多的隱藏層,可以用來從輸入中提取特徵和計算複雜的函數。 Bengio(2009) 解釋了深度結構的神經網絡,如卷積神經網路 (CNN)、自編碼器 (AE) 等及其變體。 Deng 和 Yu(2014) 詳細介紹了一些神經網路架構,如 AE 及其變體。 Goodfellow 等 (2016) 對深度前饋網絡、卷積網絡、遞歸網絡及其改進進行了介紹和技巧性講解。 Schmidhuber(2014) 提到了神經網路從早期神經網路到最近成功技術的完整歷史。
#自編碼器 (AE) 是神經網路 (NN),其中輸出即輸入。 AE 採用原始輸入,編碼為壓縮表示,然後解碼重建輸入。在深度 AE 中,低隱藏層用於編碼,高隱藏層用於解碼,誤差反向傳播用於訓練.。
5.1.1 變分自編碼器
#變分自動編碼器(VAE) 可以算是解碼器。 VAE 建立在標準神經網路上,可以透過隨機梯度下降訓練 (Doersch,2016)。
5.1.2 多層降噪自編碼器
在早期的自編碼器(AE) 中,編碼層的維度比輸入層小(窄)。在多層降噪自編碼器 (SDAE) 中,編碼層比輸入層寬 (Deng and Yu, 2014)。
5.1.3 轉換自編碼器
#深度自動編碼器(DAE) 可以是轉換可變的,也就是從多層非線性處理中提取的特徵可以根據學習者的需要而改變。變換自編碼器 (TAE) 既可以使用輸入向量,也可以使用目標輸出向量來應用轉換不變性屬性,將程式碼引導到期望的方向 (Deng and Yu,2014)。
#四個基本想法構成了卷積神經網路(CNN),即:局部連結、共享權重、池化和多層使用。 CNN 的第一部分由卷積層和池化層組成,後一部分主要是全連接層。卷積層檢測特徵的局部連接,池層將相似的特徵合併為一個。 CNN 在卷積層中使用卷積而不是矩陣乘法。
Krizhevsky 等人(2012) 提出了一種深度卷積神經網路(CNN) 架構,也稱為AlexNet,這是深度學習(Deep Learning, DL) 的一個重大突破。網路由 5 個卷積層和 3 個全連接層組成。架構採用圖形處理單元 (GPU) 進行卷積運算,採用線性整流函數 (ReLU) 作為活化函數,以 Dropout 來減少過度擬合。
Iandola 等人 (2016) 提出了一個小型的 CNN 架構,叫做「SqueezeNet」。
Szegedy 等人 (2014) 提出了一個深度 CNN 架構,名為 Inception。 Dai 等人 (2017) 提出了 Inception-ResNet 的改進。
Redmon 等人 (2015) 提出了一個名為 YOLO (You Only Look Once) 的 CNN 架構,用於均勻和即時的目標偵測。
Zeiler 和 Fergus (2013) 提出了一種將 CNN 內部活化視覺化的方法。
Gehring 等人 (2017) 提出了一個序列到序列學習的 CNN 架構。
Bansal 等人 (2017) 提出了 PixelNet,使用像素來表示。
Goodfellow 等人 (2016) 解釋了 CNN 的基本架構和想法。 Gu 等人 (2015) 對 CNN 的最新進展、CNN 的多種變體、CNN 的架構、正則化方法和功能以及在各個領域的應用進行了很好的概述。
5.2.1 深度最大池化卷積神經網路
最大池化卷積神經網路 (MPCNN) 主要對卷積和最大池化進行操作,特別是在數位影像處理中。 MPCNN 通常由輸入層以外的三種層組成。卷積層獲取輸入影像並產生特徵圖,然後應用非線性激活函數。最大池層向下取樣影像,並保持子區域的最大值。全連接層進行線性乘法。在深度 MPCNN 中,在輸入層之後週期性地使用卷積和混合池化,然後是全連接層。
5.2.2 極深的捲積神經網路
Simonyan 和Zisserman(2014) 提出了非常深層的捲積神經網路(VDCNN) 架構,也稱為VGG Net。 VGG Net 使用非常小的捲積濾波器,深度達到 16-19 層。 Conneau 等人 (2016) 提出了另一個文本分類的 VDCNN 架構,使用小卷積和池化。他們聲稱這個 VDCNN 架構是第一個在文字處理中使用的,它在字元層級上運作。此架構由 29 個卷積層組成。
Lin 等人 (2013) 提出了網路中的網路 (Network In Network,NIN)。 NIN 以具有複雜結構的微神經網路取代傳統卷積神經網路 (CNN) 的捲積層。它使用多層感知器 (MLPConv) 處理微神經網路和全域平均池化層,而不是全連接層。深度 NIN 架構可以由 NIN 結構的多重重疊加組成。
#Girshick 等人(2014) 提出了基於區域的捲積神經網路(R- CNN),使用區域進行識別。 R-CNN 使用區域來定位和分割目標。該架構由三個模組組成:定義了候選區域的集合的類別獨立區域建議,從區域中提取特徵的大型捲積神經網路 (CNN),以及一組特定類別的線性支持向量機 (SVM)。
5.4.1 Fast R-CNN
#Girshick(2015) 提出了快速的基於區域的捲積網路(Fast R-CNN)。這種方法利用 R-CNN 架構能快速地產生結果。 Fast R-CNN 由卷積層和池化層、區域建議層和一系列全連接層組成。
5.4.2 Faster R-CNN
#Ren 等人(2015) 提出了更快的基於區域的捲積神經網路(Faster R-CNN),它使用區域建議網路(Region Proposal Network, RPN) 進行即時目標偵測。 RPN 是一個全卷積網絡,能夠準確、有效率地產生區域建議 (Ren et al.,2015)。
5.4.3 Mask R-CNN
#何愷明等人(2017) 提出了基於區域的掩模卷積網路(Mask R-CNN) 實例目標分割。 Mask R-CNN 擴展了 R-CNN 的架構,並使用一個額外的分支用於預測目標掩模。
5.4.4 Multi-Expert R-CNN
#Lee 等人(2017) 提出了基於區域的多專家卷積神經網路(ME R-CNN),利用了Fast R-CNN 架構。 ME R-CNN 從選擇性和詳盡的搜尋中產生興趣區域 (RoI)。它也使用 per-RoI 多專家網路而不是單一的 per-RoI 網路。每個專家都是來自 Fast R-CNN 的全連接層的相同架構。
#He 等人 (2015) 提出的殘差網路 (ResNet) 由 152 層組成。 ResNet 具有較低的誤差,並且容易透過殘差學習進行訓練。更深層的 ResNet 可以獲得更好的效能。在深度學習領域,人們認為 ResNet 是一個重要的進步。
5.5.1 Resnet in Resnet
Targ 等人(2016) 在Resnet in Resnet (RiR) 中提出將ResNets 和標準卷積神經網路(CNN) 結合到深層雙流架構。
5.5.2 ResNeXt
#Xie 等人 (2016) 提出了 ResNeXt 架構。 ResNext 利用 ResNets 來重複使用分割-轉換-合併策略。
#Sabour 等人(2017) 提出了膠囊網路(CapsNet),即一個包含兩個卷積層和一個全連接層的架構。 CapsNet 通常包含多個卷積層,膠囊層位於末端。 CapsNet 被認為是深度學習的最新突破之一,因為據說這是基於卷積神經網路的限製而提出的。它使用的是一層又一層的膠囊,而不是神經元。活化的較低級膠囊做出預測,在同意多個預測後,更高級的膠囊變得活躍。在這些膠囊層中使用了一種協定路由機制。 Hinton 之後提出 EM 路由,利用期望最大化 (EM) 演算法對 CapsNet 進行了改進。
循環神經網路 (RNN) 更適合序列輸入,如語音、文字和生成序列。一個重複的隱藏單元在時間展開時可以被認為是具有相同權重的非常深的前饋網路。由於梯度消失和維度爆炸問題,RNN 曾經很難訓練。為了解決這個問題,後來許多人提出了改進意見。
Goodfellow 等人 (2016) 詳細分析了循環和遞歸神經網路和架構的細節,以及相關的門控和記憶網路。
#Karpathy 等人 (2015) 使用字元級語言模型來分析和視覺化預測、表徵訓練動態、RNN 及其變體 (如 LSTM) 的錯誤類型等。
J´ozefowicz 等人 (2016) 探討了 RNN 模型和語言模型的限制。
5.7.1 RNN-EM
#Peng 和Yao(2015) 提出了利用外部記憶(RNN- EM) 來改善RNN 的記憶能力。他們聲稱在語言理解方面達到了最先進的水平,比其他 RNN 更好。
5.7.2 GF-RNN
Chung 等(2015) 提出了門控回饋遞歸神經網路( GF-RNN),它透過將多個遞歸層與全域閘控單元疊加來擴展標準的RNN。
5.7.3 CRF-RNN
Zheng 等人(2015) 提出條件隨機場作為循環神經網絡(CRF-RNN),將卷積神經網路(CNN) 和條件隨機場(CRF) 結合起來進行機率圖形建模。
5.7.4 Quasi-RNN
#Bradbury 等人(2016) 提出了用於神經序列建模和沿著時間步的平行應用的準循環神經網路(QRNN)。
Weston 等人 (2014) 提出了問答記憶網絡 (QA)。記憶網路由記憶、輸入特徵映射、泛化、輸出特徵映射和反應組成。
5.8.1 動態記憶網路
#Kumar 等人(2015) 提出了用於QA 任務的動態記憶網路(DMN)。 DMN 有四個模組:輸入、問題、情境記憶、輸出。
Olah 和Carter(2016) 很好地展示了注意力和增強循環神經網絡,即神經圖靈機(NTM)、注意力介面、神經編碼器和自適應計算時間。增強神經網路通常是使用額外的屬性,如邏輯函數以及標準的神經網路架構。
5.9.1 神經圖靈機
Graves 等人(2014) 提出了神經圖靈機(NTM)架構,由神經網路控制器和記憶庫組成。 NTM 通常將 RNN 與外部記憶庫結合。
5.9.2 神經GPU
Kaiser 和Sutskever(2015) 提出了神經GPU,解決了NTM 的並行問題。
5.9.3 神經隨機存取機
#Kurach 等人(2015) 提出了神經隨機存取機,它使用外部的可變大小的隨機存取記憶體。
5.9.4 神經編程器
#Neelakantan 等人(2015) 提出了神經程式設計器,一種具有算術和邏輯功能的增強神經網路。
5.9.5 神經程式設計器-解譯器
Reed 和de Freitas(2015) 提出了可以學習的神經編程器-解釋器(NPI)。 NPI 包括週期性內核、程式記憶體和特定於領域的編碼器。
Hochreiter 和Schmidhuber(1997) 提出了長短期記憶(Long short - Short-Term Memory, LSTM ),克服了循環神經網路(RNN) 的誤差回流問題。 LSTM 是基於循環網路和基於梯度的學習演算法,LSTM 引入自循環產生路徑,使得梯度能夠流動。
Greff 等人 (2017) 對標準 LSTM 和 8 個 LSTM 變體進行了大規模分析,分別用於語音識別、手寫識別和復調音樂建模。他們聲稱 LSTM 的 8 個變種沒有顯著改善,而只有標準 LSTM 表現良好。
Shi 等人 (2016b) 提出了深度長短期記憶網路 (DLSTM),它是一個 LSTM 單元的堆疊,用於特徵映射學習表示。
5.10.1 批-歸一化LSTM
Cooijmans 等人(2016) 提出了批-歸一化LSTM (BN-LSTM),它對遞歸神經網路的隱藏狀態使用批-歸一化。
5.10.2 Pixel RNN
van den Oord 等人(2016b) 提出像素遞歸神經網路(Pixel -RNN),由12 個二維LSTM 層組成。
5.10.3 雙向LSTM
W¨ollmer 等人(2010) 提出了雙向LSTM(BLSTM)的循環網路與動態貝葉斯網路(DBN) 一起用於上下文敏感關鍵字檢測。
5.10.4 Variational Bi-LSTM
Shabanian 等人(2017) 提出了變分雙向LSTM( Variational Bi-LSTM),它是雙向LSTM 體系結構的變體。 Variational Bi-LSTM 使用變分自編碼器 (VAE) 在 LSTM 之間建立一個資訊交換通道,以學習更好的表徵。
#Wu 等人(2016) 提出了名為Google神經機器翻譯(GNMT) 的自動翻譯系統,該系統結合了編碼器網絡、解碼器網絡和注意力網絡,遵循共同的序列對序列(sequence-to-sequence) 的學習框架。
#Lample 等人(2017) 提出了Fader 網絡,這是一種新型的編碼器-解碼器架構,透過改變屬性值來產生真實的輸入影像變化。
#Ha 等人(2016) 提出的超網路(Hyper Networks)為其他神經網路產生權值,如靜態超網路卷積網路、用於循環網路的動態超網路。
Deutsch(2018) 使用超網路產生神經網路。
#Srivastava 等人(2015) 提出了高速路網路(Highway Networks),透過使用閘控單元來學習管理資訊。跨多個層次的資訊流稱為資訊高速路。
5.14.1 Recurrent Highway Networks
Zilly 等人(2017) 提出了循環高速公路網路(Recurrent Highway Networks,RHN),它擴展了長短期記憶(LSTM) 架構。 RHN 在週期性過渡中使用了 Highway 層。
Zhang 等人(2016) 提出了高速路長短期記憶(high - Long short Memory, HLSTM) RNN,它在相鄰層的記憶體單元之間擴展了具有封閉方向連接(即Highway) 的深度LSTM 網路。
Donahue 等人(2014) 提出了長期迴圈卷積網路(LRCN),它使用CNN 進行輸入,然後使用LSTM 進行遞歸序列建模並產生預測。
Zhang 等人(2015) 提出了深度神經SVM(DNSVM),它以支援向量機(Support Vector Machine, SVM) 作為深度神經網路(Deep Neural Network, DNN) 分類的頂層。
#Moniz 和Pal(2016) 提出了卷積殘差記憶網絡,將記憶機制並入卷積神經網路(CNN)。它用一個長短期記憶機制來增強卷積殘差網。
Larsson 等人 (2016) 提出分形網路即 FractalNet 作為殘差網路的替代方案。他們聲稱可以訓練超深度的神經網路而不需要殘差學習。分形是簡單擴充規則產生的重複架構。
van den Oord 等人 (2016) 提出了用於產生原始音訊的深度神經網路 WaveNet。 WaveNet 由一堆卷積層和 softmax 分佈層組成,用於輸出。
Rethage 等人 (2017) 提出了一個 WaveNet 模型用於語音去雜訊。
Vinyals 等人(2017) 提出了指標網路(Ptr-Nets),透過使用一種稱為“指標」的softmax 機率分佈來解決表徵變數字典的問題。
在本節中,我們將簡要討論其他深度架構,它們使用與深度神經網路類似的多個抽象層和表示層,也稱為深度產生模型(deep generate Models, DGM)。 Bengio(2009) 解釋了深層架構,例如 Boltzmann machine (BM) 和 Restricted Boltzmann Machines (RBM) 等及其變體。
Goodfellow 等人(2016) 詳細解釋了深度生成模型,如受限和非受限的玻爾茲曼機及其變種、深度玻爾茲曼機、深度信念網路(DBN)、定向生成網路和產生隨機網路等。
Maaløe 等人(2016)提出了輔助的深層生成模型(Auxiliary Deep Generative Models),在這些模型中,他們擴展了具有輔助變數的深層生成模型。輔助變數利用隨機層和跳過連接產生變分分佈。
Rezende 等人 (2016) 開發了一種深度生成模型的單次泛化。
#玻爾茲曼機是學習任意機率分佈的連結主義方法,使用最大似然原則進行學習。
#受限玻爾茲曼機(Restricted Boltzmann Machines, RBM) 是馬可夫隨機場的一種特殊類型,包含一層隨機隱藏單元,即潛在變數和一層可觀測變數。
Hinton 和 Salakhutdinov(2011) 提出了一種利用受限玻爾茲曼機 (RBM) 進行文件處理的深度生成模型。
深度信念網路(Deep Belief Networks, DBN) 是具有多個潛在二元或真實變數層的生成模型。
Ranzato 等人 (2011) 利用深度信念網路 (deep Belief Network, DBN) 建立了深度生成模型進行影像辨識。
#Tang 等人(2012) 提出了深度朗伯網路(Deep Lambertian Networks,DLN),它是一個多層次的生成模型,其中潛在的變數是反照率、表面法線和光源。 DLNis 是朗伯反射率與高斯受限玻爾茲曼機和深度信念網路的結合。
Goodfellow 等人(2014) 提出了生成對抗網路(generate Adversarial Nets, GAN),用於透過對抗過程來評估生成模型。 GAN 架構是由一個針對對手(即一個學習模型或資料分佈的判別模型)的生成模型所組成。 Mao 等人 (2016)、Kim 等人 (2017) 對 GAN 提出了更多的改進。
#Salimans 等人 (2016) 提出了幾種訓練 GANs 的方法。
6.5.1 拉普拉斯生成對抗網路
Denton 等(2015) 提出了一種深度生成模型(DGM),叫做拉普拉斯生成對抗網路(LAPGAN),使用生成對抗網路(GAN) 方法。該模型還在拉普拉斯金字塔框架中使用卷積網路。
#Shi 等人(2016a) 提出了循環支援向量機(RSVM),利用循環神經網路( RNN) 從輸入序列中提取特徵,以標準支援向量機(SVM) 進行序列級目標辨識。
#在本節中,我們將簡要概述一些主要的技術,用於正則化和最佳化深度神經網路(DNN)。
Srivastava 等人 (2014) 提出 Dropout,以防止神經網路過度擬合。 Dropout 是一種神經網路模型平均正規化方法,透過增加雜訊到其隱藏單元。在訓練過程中,它會從神經網路中隨機抽取出單元和連接。 Dropout 可以用於像 RBM (Srivastava et al.,2014) 這樣的圖形模型中,也可以用於任何類型的神經網路。最近提出的一個關於 Dropout 的改進是 Fraternal Dropout,用於循環神經網路 (RNN)。
Goodfellow 等人 (2013) 提出 Maxout,一種新的激活函數,用於 Dropout。 Maxout 的輸出是一組輸入的最大值,有利於 Dropout 的模型平均。
Krueger 等 (2016) 提出了循環神經網路 (RNN) 的正則化方法 Zoneout。 Zoneout 在訓練中隨機使用噪音,類似於 Dropout,但保留了隱藏的單元而不是丟棄。
#He 等人(2015) 提出了深度殘差學習框架,稱為低訓練誤差的ResNet。
#Ioffe 和Szegedy(2015) 提出了批次歸一化,透過減少內部協變數移位來加速深度神經網路訓練的方法。 Ioffe(2017) 提出批重歸一化,擴展了先前的方法。
Hinton 等人(2015) 提出了將知識從高度正則化模型的集合(即神經網路) 轉化為壓縮小模型的方法。
#Ba 等人(2016) 提出了層歸一化,特別是針對RNN 的深度神經網絡加速訓練,解決了批歸一化的限制。
有大量的開源函式庫和框架可供深度學習使用。它們大多數是為 Python 程式語言建構的。如 Theano、Tensorflow、PyTorch、PyBrain、Caffe、Blocks and Fuel 、CuDNN、Honk、ChainerCV、PyLearn2、Chainer,、torch 等。
#在本節中,我們將簡要地討論一些最近在深度學習方面的傑出應用。自深度學習 (DL) 開始以來,DL 方法以監督、非監督、半監督或強化學習的形式被廣泛應用於各個領域。從分類和檢測任務開始,DL 應用正在迅速擴展到每個領域。
例如:
影像分類與辨識
影片分類
序列產生
缺陷分類
文字、語音、圖像和視訊處理
文字分類
語音處理
#語音辨識與口語理解
文字轉語音產生
查詢分類
句子分類
句子建模
詞彙處理
預先選擇
文件與句子處理
產生圖像文字說明
照片風格遷移
自然圖像流形
圖片著色
圖像問答
產生紋理和風格化圖像
視覺和文字問答
視覺識別和描述
#目標識別
文件處理
人物動作合成與編輯
歌曲合成
識別
人臉辨識與驗證
影片動作辨識
##人類動作辨識動作識別分類和視覺化動作捕捉序列手寫生成和預測自動化和機器翻譯命名實體識別移動視覺對話智能體調用遺傳變異癌症檢測X 射線CT 重建癲癇發作預測硬體加速機器人等。 Deng 和 Yu(2014) 提供了 DL 在語音處理、資訊檢索、目標辨識、電腦視覺、多模態、多任務學習等領域應用的詳細清單。 ####使用深度強化學習 (Deep Reinforcement Learning, DRL) 來掌握遊戲已經成為當今的熱門話題。每到現在,人工智慧機器人都是用 DNN 和 DRL 創建的,它們在戰略和其他遊戲中擊敗了人類世界冠軍和象棋大師,從幾個小時的訓練開始。例如圍棋的 AlphaGo 和 AlphaGo Zero。
儘管深度學習在許多領域取得了巨大的成功,但它還有很長的路要走。還有很多地方有待改進。至於局限性,例子也是相當多的。例如:Nguyen 等人顯示深度神經網路(DNN)在辨識影像時容易被欺騙。還有其他問題,如 Yosinski 等人提出的學習的特徵可遷移性。 Huang 等人提出了一種神經網路攻擊防禦的體系結構,認為未來的工作需要防禦這些攻擊。 Zhang 等人則提出了一個理解深度學習模型的實驗框架,他們認為理解深度學習需要重新思考與概括。
Marcus 在 2018 年對深度學習 (Deep Learning, DL) 的角色、限制和本質進行了重要的回顧。他強烈指出了 DL 方法的局限性,即需要更多的數據,容量有限,不能處理層次結構,無法進行開放式推理,不能充分透明,不能與先驗知識集成,不能區分因果關係。他還提到,DL 假設了一個穩定的世界,以近似方法實現,工程化很困難,並且存在過度炒作的潛在風險。 Marcus 認為 DL 需要重新概念化,並在非監督式學習、符號操作和混合模型中尋找可能性,從認知科學和心理學中獲得見解,並迎接更大膽的挑戰。
儘管深度學習(DL)比以往任何時候都更快地推進了世界的發展,但仍有許多方面值得我們去研究。我們仍然無法完全地理解深度學習,我們如何讓機器變得更聰明,更接近或比人類更聰明,或像人類一樣學習。 DL 一直在解決許多問題,同時將技術應用到各個方面。但是人類仍然面臨著許多難題,例如仍有人死於飢餓和糧食危機, 癌症和其他致命的疾病等。我們希望深度學習和人工智慧將更加致力於改善人類的生活質量,透過進行最困難的科學研究。最後但也是最重要的,願我們的世界變得更美好。
以上是一篇適合新手的深度學習的萬字綜述的詳細內容。更多資訊請關注PHP中文網其他相關文章!