一篇適合新手的深度學習綜述

本文轉載自機器之心。這篇綜述論文列舉出了近年來深度學習的重要研究成果,從方法、架構,以及正則化、優化技術方面進行概述。機器之心認爲,這篇綜述對於剛入門的深度學習新手是一份不錯的參考資料,在形成基本學術界圖景、指導文獻查找等方面都能提供幫助。

目錄

1. 引言

2. 相關研究

3. 最新進展

3.1 深度架構的演變

4. 深度學習方法

4.1 深度監督學習

4.2 深度無監督學習

4.3 深度強化學習

5. 深度神經網絡

5.2 深度卷積神經網絡

6. 深度生成模型

6.5 生成對抗網絡

6.5.1 拉普拉斯生成對抗網絡

7. 訓練和優化技術

8. 深度學習框架

9. 深度學習的應用

10. 討論


論文:Recent Advances in Deep Learning: An Overview

 

 

論文地址:https://arxiv.org/pdf/1807.08169v1.pdf

 

摘要:深度學習是機器學習和人工智能研究的最新趨勢之一。它也是當今最流行的科學研究趨勢之一。深度學習方法爲計算機視覺和機器學習帶來了革命性的進步。新的深度學習技術正在不斷誕生,超越最先進的機器學習甚至是現有的深度學習技術。近年來,全世界在這一領域取得了許多重大突破。由於深度學習正快度發展,導致了它的進展很難被跟進,特別是對於新的研究者。在本文中,我們將簡要討論近年來關於深度學習的最新進展。

1. 引言

「深度學習」(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 應用進行總結。我們將在最後兩個章節(即討論和結論)中討論深入學習的現狀和未來。

2. 相關研究

在過去的幾年中,有許多關於深度學習的綜述論文。他們以很好的方式描述了 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 概述論文發表之後,仍有許多新的技術和架構被提出。此外,以往的論文從不同的角度進行研究。我們的論文主要是針對剛進入這一領域的學習者和新手。爲此,我們將努力爲新研究人員和任何對這一領域感興趣的人提供一個深度學習的基礎和清晰的概念。

3. 最新進展

在本節中,我們將討論最近從機器學習和人工神經網絡 (ANN) 的中衍生出來的主要深度學習 (DL) 方法,人工神經網絡是深度學習最常用的形式。

3.1 深度架構的演變

人工神經網絡 (ANN) 已經取得了長足的進步,同時也帶來了其他的深度模型。第一代人工神經網絡由簡單的感知器神經層組成,只能進行有限的簡單計算。第二代使用反向傳播,根據錯誤率更新神經元的權重然後支持向量機 (SVM) 浮出水面,在一段時間內超越 ANN。爲了克服反向傳播的侷限性,人們提出了受限玻爾茲曼機(RBM),使學習更容易。此時其他技術和神經網絡也出現了,如前饋神經網絡 (FNN)、卷積神經網絡 (CNN)、循環神經網絡 (RNN) 等,以及深層信念網絡、自編碼器等。從那時起,爲實現各種用途,ANN 在不同方面得到了改進和設計。

Schmidhuber (2014)、Bengio (2009)、Deng 和 Yu (2014)、Goodfellow 等人 (2016)、Wang 等人 (2017) 對深度神經網絡 (DNN) 的進化和歷史以及深度學習 (DL) 進行了詳細的概述。在大多數情況下,深層架構是簡單架構的多層非線性重複,這樣可從輸入中獲得高度複雜的函數。

4. 深度學習方法

深度神經網絡監督學習中取得了巨大的成功。此外,深度學習模型在無監督混合強化學習方面也非常成功。

4.1 深度監督學習

監督學習應用在當數據標記、分類器分類或數值預測的情況。LeCun 等人 (2015) 對監督學習方法以及深層結構的形成給出了一個精簡的解釋。Deng 和 Yu(2014) 提到了許多用於監督和混合學習的深度網絡,並做出解釋,例如深度堆棧網絡 (DSN) 及其變體。Schmidthuber(2014) 的研究涵蓋了所有神經網絡,從早期神經網絡到最近成功的卷積神經網絡 (CNN)、循環神經網絡 (RNN)、長短期記憶 (LSTM) 及其改進。

4.2 深度無監督學習

當輸入數據沒有標記時,可應用無監督學習方法從數據中提取特徵並對其進行分類或標記。LeCun 等人 (2015) 預測了無監督學習在深度學習中的未來。Schmidthuber(2014) 也描述了無監督學習的神經網絡。Deng 和 Yu(2014) 簡要介紹了無監督學習的深度架構,並詳細解釋了深度自編碼器。

4.3 深度強化學習

強化學習使用獎懲系統預測學習模型的下一步。這主要用於遊戲和機器人,解決平常的決策問題。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 架構。

5. 深度神經網絡

在本節中,我們將簡要地討論深度神經網絡 (DNN),以及它們最近的改進和突破。神經網絡的功能與人腦相似。它們主要由神經元和連接組成。當我們說深度神經網絡時,我們可以假設有相當多的隱藏層,可以用來從輸入中提取特徵和計算複雜的函數。Bengio(2009) 解釋了深度結構的神經網絡,如卷積神經網絡 (CNN)、自編碼器 (AE) 等及其變體。Deng 和 Yu(2014) 詳細介紹了一些神經網絡架構,如 AE 及其變體。Goodfellow 等 (2016) 對深度前饋網絡、卷積網絡、遞歸網絡及其改進進行了介紹和技巧性講解。Schmidhuber(2014) 提到了神經網絡從早期神經網絡到最近成功技術的完整歷史。

5.1 深度自編碼器

自編碼器 (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)。

5.2 深度卷積神經網絡

四種基本思想構成了卷積神經網絡 (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 個卷積層組成。

5.3 網絡中的網絡

Lin 等人 (2013) 提出了網絡中的網絡 (Network In Network,NIN)。NIN 以具有複雜結構的微神經網絡代替傳統卷積神經網絡 (CNN) 的卷積層。它使用多層感知器 (MLPConv) 處理微神經網絡和全局平均池化層,而不是全連接層。深度 NIN 架構可以由 NIN 結構的多重疊加組成。

5.4 基於區域的卷積神經網絡

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 的全連接層的相同架構。

5.5 深度殘差網絡

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 來重複使用分割-轉換-合併策略。

5.6 膠囊網絡

Sabour 等人 (2017) 提出了膠囊網絡 (CapsNet),即一個包含兩個卷積層和一個全連接層的架構。CapsNet 通常包含多個卷積層,膠囊層位於末端。CapsNet 被認爲是深度學習的最新突破之一,因爲據說這是基於卷積神經網絡的侷限性而提出的。它使用的是一層又一層的膠囊,而不是神經元。激活的較低級膠囊做出預測,在同意多個預測後,更高級的膠囊變得活躍。在這些膠囊層中使用了一種協議路由機制。Hinton 之後提出 EM 路由,利用期望最大化 (EM) 算法對 CapsNet 進行了改進。

5.7 循環神經網絡

循環神經網絡 (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)。

5.8 記憶網絡

Weston 等人 (2014) 提出了問答記憶網絡 (QA)。記憶網絡由記憶、輸入特徵映射、泛化、輸出特徵映射和響應組成。

5.8.1 動態記憶網絡

Kumar 等人 (2015) 提出了用於 QA 任務的動態記憶網絡 (DMN)。DMN 有四個模塊:輸入、問題、情景記憶、輸出。

5.9 增強神經網絡

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 包括週期性內核、程序內存和特定於領域的編碼器。

5.10 長短期記憶網絡

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 之間創建一個信息交換通道,以學習更好的表徵。

5.11 谷歌神經機器翻譯

Wu 等人 (2016) 提出了名爲谷歌神經機器翻譯 (GNMT) 的自動翻譯系統,該系統結合了編碼器網絡、解碼器網絡和注意力網絡,遵循共同的序列對序列 (sequence-to-sequence) 的學習框架。

5.12 Fader Network

Lample 等人 (2017) 提出了 Fader 網絡,這是一種新型的編碼器-解碼器架構,通過改變屬性值來生成真實的輸入圖像變化。

5.13 超網絡

Ha 等人 (2016) 提出的超網絡(Hyper Networks)爲其他神經網絡生成權值,如靜態超網絡卷積網絡、用於循環網絡的動態超網絡。

Deutsch(2018) 使用超網絡生成神經網絡。

5.14 Highway Networks

Srivastava 等人 (2015) 提出了高速路網絡(Highway Networks),通過使用門控單元來學習管理信息。跨多個層次的信息流稱爲信息高速路。

5.14.1 Recurrent Highway Networks

Zilly 等人 (2017) 提出了循環高速路網絡 (Recurrent Highway Networks,RHN),它擴展了長短期記憶 (LSTM) 架構。RHN 在週期性過渡中使用了 Highway 層。

5.15 Highway LSTM RNN

Zhang 等人 (2016) 提出了高速路長短期記憶 (high - Long short Memory, HLSTM) RNN,它在相鄰層的內存單元之間擴展了具有封閉方向連接 (即 Highway) 的深度 LSTM 網絡。

5.16 長期循環 CNN

Donahue 等人 (2014) 提出了長期循環卷積網絡 (LRCN),它使用 CNN 進行輸入,然後使用 LSTM 進行遞歸序列建模並生成預測。

5.17 深度神經 SVM

Zhang 等人 (2015) 提出了深度神經 SVM(DNSVM),它以支持向量機 (Support Vector Machine, SVM) 作爲深度神經網絡 (Deep Neural Network, DNN) 分類的頂層。

5.18 卷積殘差記憶網絡

Moniz 和 Pal(2016) 提出了卷積殘差記憶網絡,將記憶機制併入卷積神經網絡 (CNN)。它用一個長短期記憶機制來增強卷積殘差網絡。

5.19 分形網絡

Larsson 等人 (2016) 提出分形網絡即 FractalNet 作爲殘差網絡的替代方案。他們聲稱可以訓練超深度的神經網絡而不需要殘差學習。分形是簡單擴展規則生成的重複架構。

5.20 WaveNet

van den Oord 等人 (2016) 提出了用於產生原始音頻的深度神經網絡 WaveNet。WaveNet 由一堆卷積層和 softmax 分佈層組成,用於輸出。

Rethage 等人 (2017) 提出了一個 WaveNet 模型用於語音去噪。

5.21 指針網絡

Vinyals 等人 (2017) 提出了指針網絡 (Ptr-Nets),通過使用一種稱爲「指針」的 softmax 概率分佈來解決表徵變量字典的問題。

6. 深度生成模型

在本節中,我們將簡要討論其他深度架構,它們使用與深度神經網絡類似的多個抽象層和表示層,也稱爲深度生成模型 (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) 開發了一種深度生成模型的單次泛化。

6.1 玻爾茲曼機

玻爾茲曼機是學習任意概率分佈的連接主義方法,使用最大似然原則進行學習。

6.2 受限玻爾茲曼機

受限玻爾茲曼機 (Restricted Boltzmann Machines, RBM) 是馬爾可夫隨機場的一種特殊類型,包含一層隨機隱藏單元,即潛變量和一層可觀測變量。

Hinton 和 Salakhutdinov(2011) 提出了一種利用受限玻爾茲曼機 (RBM) 進行文檔處理的深度生成模型。

6.3 深度信念網絡

深度信念網絡 (Deep Belief Networks, DBN) 是具有多個潛在二元或真實變量層的生成模型。

Ranzato 等人 (2011) 利用深度信念網絡 (deep Belief Network, DBN) 建立了深度生成模型進行圖像識別。

6.4 深度朗伯網絡

Tang 等人 (2012) 提出了深度朗伯網絡 (Deep Lambertian Networks,DLN),它是一個多層次的生成模型,其中潛在的變量是反照率、表面法線和光源。DLNis 是朗伯反射率與高斯受限玻爾茲曼機和深度信念網絡的結合。

6.5 生成對抗網絡

Goodfellow 等人 (2014) 提出了生成對抗網絡 (generate Adversarial Nets, GAN),用於通過對抗過程來評估生成模型。GAN 架構是由一個針對對手(即一個學習模型或數據分佈的判別模型)的生成模型組成。Mao 等人 (2016)、Kim 等人 (2017) 對 GAN 提出了更多的改進。

Salimans 等人 (2016) 提出了幾種訓練 GANs 的方法。

6.5.1 拉普拉斯生成對抗網絡

Denton 等人 (2015) 提出了一種深度生成模型 (DGM),叫做拉普拉斯生成對抗網絡 (LAPGAN),使用生成對抗網絡 (GAN) 方法。該模型還在拉普拉斯金字塔框架中使用卷積網絡。

6.6 循環支持向量機

Shi 等人 (2016a) 提出了循環支持向量機 (RSVM),利用循環神經網絡 (RNN) 從輸入序列中提取特徵,用標準支持向量機 (SVM) 進行序列級目標識別。

7. 訓練和優化技術

在本節中,我們將簡要概述一些主要的技術,用於正則化和優化深度神經網絡 (DNN)。

7.1 Dropout

Srivastava 等人 (2014) 提出 Dropout,以防止神經網絡過擬合Dropout 是一種神經網絡模型平均正則化方法,通過增加噪聲到其隱藏單元。在訓練過程中,它會從神經網絡中隨機抽取出單元和連接。Dropout 可以用於像 RBM (Srivastava et al.,2014) 這樣的圖形模型中,也可以用於任何類型的神經網絡。最近提出的一個關於 Dropout 的改進是 Fraternal Dropout,用於循環神經網絡 (RNN)。

7.2 Maxout

Goodfellow 等人 (2013) 提出 Maxout,一種新的激活函數,用於 Dropout。Maxout 的輸出是一組輸入的最大值,有利於 Dropout 的模型平均。

7.3 Zoneout

Krueger 等人 (2016) 提出了循環神經網絡 (RNN) 的正則化方法 Zoneout。Zoneout 在訓練中隨機使用噪音,類似於 Dropout,但保留了隱藏的單元而不是丟棄。

7.4 深度殘差學習

He 等人 (2015) 提出了深度殘差學習框架,該框架被稱爲低訓練誤差的 ResNet。

7.5 批歸一化

Ioffe 和 Szegedy(2015) 提出了批歸一化,通過減少內部協變量移位來加速深度神經網絡訓練的方法。Ioffe(2017) 提出批重歸一化,擴展了以前的方法。

7.6 Distillation

Hinton 等人 (2015) 提出了將知識從高度正則化模型的集合 (即神經網絡) 轉化爲壓縮小模型的方法。

7.7 層歸一化

Ba 等人 (2016) 提出了層歸一化,特別是針對 RNN 的深度神經網絡加速訓練,解決了批歸一化的侷限性。

8. 深度學習框架

有大量的開源庫和框架可供深度學習使用。它們大多數是爲 Python 編程語言構建的。如 Theano、Tensorflow、PyTorch、PyBrain、Caffe、Blocks and Fuel 、CuDNN、Honk、ChainerCV、PyLearn2、Chainer,、torch 等。

9. 深度學習的應用

在本節中,我們將簡要地討論一些最近在深度學習方面的傑出應用。自深度學習 (DL) 開始以來,DL 方法以監督、非監督、半監督或強化學習的形式被廣泛應用於各個領域。從分類和檢測任務開始,DL 應用正在迅速擴展到每一個領域。

例如:

  • 圖像分類與識別

  • 視頻分類

  • 序列生成 

  • 缺陷分類

  • 文本、語音、圖像和視頻處理

  • 文本分類

  • 語音處理

  • 語音識別和口語理解

  • 文本到語音生成

  • 查詢分類

  • 句子分類

  • 句子建模

  • 詞彙處理

  • 預選擇

  • 文檔和句子處理

  • 生成圖像文字說明

  • 照片風格遷移

  • 自然圖像流形

  • 圖像着色

  • 圖像問答

  • 生成紋理和風格化圖像

  • 視覺和文本問答

  • 視覺識別和描述

  • 目標識別

  • 文檔處理

  • 人物動作合成和編輯

  • 歌曲合成

  • 身份識別

  • 人臉識別和驗證

  • 視頻動作識別

  • 人類動作識別

  • 動作識別

  • 分類和可視化動作捕捉序列

  • 手寫生成和預測

  • 自動化和機器翻譯

  • 命名實體識別

  • 移動視覺

  • 對話智能體

  • 調用遺傳變異

  • 癌症檢測

  • X 射線 CT 重建

  • 癲癇發作預測

  • 硬件加速

  • 機器人

等。

Deng 和 Yu(2014) 提供了 DL 在語音處理、信息檢索、目標識別、計算機視覺、多模態、多任務學習等領域應用的詳細列表。

使用深度強化學習 (Deep Reinforcement Learning, DRL) 來掌握遊戲已經成爲當今的一個熱門話題。每到現在,人工智能機器人都是用 DNN 和 DRL 創建的,它們在戰略和其他遊戲中擊敗了人類世界冠軍和象棋大師,從幾個小時的訓練開始。例如圍棋的 AlphaGo 和 AlphaGo Zero。

10. 討論

儘管深度學習在許多領域取得了巨大的成功,但它還有很長的路要走。還有很多地方有待改進。至於侷限性,例子也是相當多的。例如:Nguyen 等人表明深度神經網絡(DNN)在識別圖像時容易被欺騙。還有其他問題,如 Yosinski 等人提出的學習的特徵可遷移性。Huang 等人提出了一種神經網絡攻擊防禦的體系結構,認爲未來的工作需要防禦這些攻擊。Zhang 等人則提出了一個理解深度學習模型的實驗框架,他們認爲理解深度學習需要重新思考和概括。

Marcus 在 2018 年對深度學習 (Deep Learning, DL) 的作用、侷限性和本質進行了重要的回顧。他強烈指出了 DL 方法的侷限性,即需要更多的數據,容量有限,不能處理層次結構,無法進行開放式推理,不能充分透明,不能與先驗知識集成,不能區分因果關係。他還提到,DL 假設了一個穩定的世界,以近似方法實現,工程化很困難,並且存在着過度炒作的潛在風險。Marcus 認爲 DL 需要重新概念化,並在非監督學習、符號操作和混合模型中尋找可能性,從認知科學和心理學中獲得見解,並迎接更大膽的挑戰。

11. 結論

儘管深度學習(DL)比以往任何時候都更快地推進了世界的發展,但仍有許多方面值得我們去研究。我們仍然無法完全地理解深度學習,我們如何讓機器變得更聰明,更接近或比人類更聰明,或者像人類一樣學習。DL 一直在解決許多問題,同時將技術應用到方方面面。但是人類仍然面臨着許多難題,例如仍有人死於飢餓和糧食危機, 癌症和其他致命的疾病等。我們希望深度學習和人工智能將更加致力於改善人類的生活質量,通過開展最困難的科學研究。最後但也是最重要的,願我們的世界變得更加美好。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章