深度學習有著悠久而豐富的歷史,但隨著許多不同哲學觀點的漸漸消逝,與之對應的名稱也漸漸塵封。
隨著可用的訓練數據量不斷增加,深度學習變得更加有用。
隨著時間的推移,針對深度學習的計算機軟硬體基礎設施都有所改善,深度學習模型的規模也隨之增長。
隨著時間的推移,深度學習已經解決日益複雜的應用,並且精度不斷提高。
事實上,深度學習的歷史可以追溯到20世紀40年代。深度學習看似是一個全新的領域,只不過因為在目前流行的前幾年它還是相對冷門的,同時也因為它被賦予了許多不同的名稱(其中大部分已經不再使用),最近才成為眾所周知的「深度學習」。這個領域已經更換了很多名稱,它反映了不同的研究人員和不同觀點的影響。
迄今為止深度學習已經經歷了3次發展浪潮:20世紀40年代到60年代,深度學習的雛形出現在控制論(cybernetics)中;20世紀 80年代到 90年代,深度學習表現為聯結主義(connectionism);直到 2006 年,才真正以深度學習之名復興。圖1給出了定量的展示。
我們今天知道的一些最早的學習算法,旨在模擬生物學習的計算模型,即大腦怎樣學習或為什麼能學習的模型。其結果是深度學習以人工神經網絡(artificial neural network,ANN)之名而淡去。彼時,深度學習模型被認為是受生物大腦(無論人類大腦或其他動物的大腦)所啟發而設計出來的系統。儘管有些機器學習的神經網絡有時被用來理解大腦功能(Hinton and Shallice,1991),但它們一般都沒有設計成生物功能的真實模型。深度學習的神經觀點受兩個主要思想啟發:一個想法是,大腦作為例子證明智能行為是可能的,因此,概念上,建立智能的直接途徑是逆向大腦背後的計算原理,並複製其功能;另一種看法是,理解大腦和人類智能背後的原理也非常有趣,因此機器學習模型除了解決工程應用的能力,如果能讓人類對這些基本的科學問題有進一步的認識,也將會很有用。
圖2 根據Google圖書中短語「控制論」「聯結主義」或「神經網絡」頻率衡量的人工神經網絡研究的歷史浪潮(圖中展示了3次浪潮的前兩次,第3次最近才出現)。第1次浪潮開始於20世紀40年代到20世紀60年代的控制論,隨著生物學習理論的發展(Mc Culloch and Pitts,1943;Hebb,1949)和第一個模型的實現(如感知機(Rosenblatt,1958)),能實現單個神經元的訓練。第2次浪潮開始於1980—1995年間的聯結主義方法,可以使用反向傳播(Rumelhart et al.,1986a)訓練具有一兩個隱藏層的神經網絡。當前第3次浪潮,也就是深度學習,大約始於2006年(Hinton et al.,2006a;Bengio et al.,2007a;Ranzato et al.,2007a),並且於2016年以圖書的形式出現。另外,前兩次浪潮類似地出現在書中的時間比相應的科學活動晚得多
現代術語「深度學習」超越了目前機器學習模型的神經科學觀點。它訴諸於學習多層次組合這一更普遍的原理,這一原理也可以應用於那些並非受神經科學啟發的機器學習框架。
現代深度學習最早的前身是從神經科學的角度出發的簡單線性模型。這些模型設計為使用一組n個輸入x1,…,xn,並將它們與一個輸出y相關聯。這些模型希望學習一組權重w1,…,wn,並計算它們的輸出f(x,w)=x1w1+…+xnwn。如圖1.7所示,第一次神經網絡研究浪潮稱為控制論。
McCulloch-Pitts 神經元(McCulloch and Pitts,1943)是腦功能的早期模型。該線性模型通過檢驗函數 f(x,w)的正負來識別兩種不同類別的輸入。顯然,模型的權重需要正確設置後才能使模型的輸出對應於期望的類別。這些權重可以由操作人員設定。20 世紀 50 年代,感知機(Rosenblatt,1956,1958)成為第一個能根據每個類別的輸入樣本來學習權重的模型。大約在同一時期,自適應線性單元(adaptive linear element,ADALINE)簡單地返回函數f(x)本身的值來預測一個實數,並且它還可以學習從數據預測這些數。
這些簡單的學習算法大大影響了機器學習的現代景象。用於調節ADALINE權重的訓練算法是被稱為隨機梯度下降(stochastic gradient descent)的一種特例。稍加改進後的隨機梯度下降算法仍然是當今深度學習的主要訓練算法。
基於感知機和 ADALINE中使用的函數 f(x,w)的模型稱為線性模型(linear model)。儘管在許多情況下,這些模型以不同於原始模型的方式進行訓練,但仍是目前最廣泛使用的機器學習模型。
線性模型有很多局限性。最著名的是,它們無法學習異或(XOR)函數,即f([0,1],w)=1和f([1,0],w)=1,但f([1,1],w)=0和f([0,0],w)=0。觀察到線性模型這個缺陷的批評者對受生物學啟發的學習普遍地產生了牴觸(Minsky and Papert,1969)。這導致了神經網絡熱潮的第一次大衰退。
現在,神經科學被視為深度學習研究的一個重要靈感來源,但它已不再是該領域的主要指導。
如今神經科學在深度學習研究中的作用被削弱,主要原因是我們根本沒有足夠的關於大腦的信息來作為指導去使用它。要獲得對被大腦實際使用算法的深刻理解,我們需要有能力同時監測(至少是)數千相連神經元的活動。我們不能夠做到這一點,所以我們甚至連大腦最簡單、最深入研究的部分都還遠遠沒有理解(Olshausen and Field,2005)。
神經科學已經給了我們依靠單一深度學習算法解決許多不同任務的理由。神經學家們發現,如果將雪貂的大腦重新連接,使視覺信號傳送到聽覺區域,它們可以學會用大腦的聽覺處理區域去「看」(Von Melchner et al.,2000)。這暗示著大多數哺乳動物的大腦使用單一的算法就可以解決其大腦可以解決的大部分不同任務。在這個假設之前,機器學習研究是比較分散的,研究人員在不同的社群研究自然語言處理、計算機視覺、運動規劃和語音識別。如今,這些應用社群仍然是獨立的,但是對於深度學習研究團體來說,同時研究許多甚至所有這些應用領域是很常見的。
我們能夠從神經科學得到一些粗略的指南。僅通過計算單元之間的相互作用而變得智能的基本思想是受大腦啟發的。新認知機(Fukushima,1980)受哺乳動物視覺系統的結構啟發,引入了一個處理圖片的強大模型架構,它後來成為了現代卷積網絡的基礎(LeCun et al.,1998c)(參見第 9.10 節)。目前大多數神經網絡是基於一個稱為整流線性單元(rectified linear unit)的神經單元模型。原始認知機(Fukushima,1975)受我們關於大腦功能知識的啟發,引入了一個更複雜的版本。簡化的現代版通過吸收來自不同觀點的思想而形成,Nair and Hinton(2010b)和 Glorot et al.(2011a)援引神經科學作為影響,Jarrett et al.(2009a)援引更多面向工程的影響。雖然神經科學是靈感的重要來源,但它不需要被視為剛性指導。我們知道,真實的神經元計算著與現代整流線性單元非常不同的函數,但更接近真實神經網絡的系統並沒有導致機器學習性能的提升。此外,雖然神經科學已經成功地啟發了一些神經網絡架構,但我們對用於神經科學的生物學習還沒有足夠多的了解,因此也就不能為訓練這些架構用的學習算法提供太多的借鑑。
媒體報導經常強調深度學習與大腦的相似性。的確,深度學習研究者比其他機器學習領域(如核方法或貝葉斯統計)的研究者更可能地引用大腦作為影響,但是大家不應該認為深度學習在嘗試模擬大腦。現代深度學習從許多領域獲取靈感,特別是應用數學的基本內容,如線性代數、概率論、資訊理論和數值優化。儘管一些深度學習的研究人員引用神經科學作為靈感的重要來源,然而其他學者完全不關心神經科學。
值得注意的是,了解大腦是如何在算法層面上工作的嘗試確實存在且發展良好。這項嘗試主要被稱為「計算神經科學」,並且是獨立於深度學習的領域。研究人員在兩個領域之間來回研究是很常見的。深度學習領域主要關注如何構建計算機系統,從而成功解決需要智能才能解決的任務,而計算神經科學領域主要關注構建大腦如何真實工作的、比較精確的模型。
20 世紀 80 年代,神經網絡研究的第二次浪潮在很大程度上是伴隨一個被稱為聯結主義(connectionism)或並行分布處理(parallel distributed processing)潮流而出現的(Rumelhart et al.,1986d;McClelland et al.,1995)。聯結主義是在認知科學的背景下出現的。認知科學是理解思維的跨學科途徑,即它融合多個不同的分析層次。20世紀80年代初期,大多數認知科學家研究符號推理模型。儘管這很流行,但符號模型很難解釋大腦如何真正使用神經元實現推理功能。聯結主義者開始研究真正基於神經系統實現的認知模型(Touretzky and Minton,1985),其中很多復甦的想法可以追溯到心理學家Donald Hebb在20世紀40年代的工作(Hebb,1949)。
聯結主義的中心思想是,當網絡將大量簡單的計算單元連接在一起時可以實現智能行為。這種見解同樣適用於生物神經系統中的神經元,因為它和計算模型中隱藏單元起著類似的作用。
在20世紀80年代的聯結主義期間形成的幾個關鍵概念在今天的深度學習中仍然是非常重要的。
其中一個概念是分布式表示(distributed representation)(Hinton et al.,1986)。其思想是:系統的每一個輸入都應該由多個特徵表示,並且每一個特徵都應該參與到多個可能輸入的表示。例如,假設我們有一個能夠識別紅色、綠色或藍色的汽車、卡車和鳥類的視覺系統,表示這些輸入的其中一個方法是將 9個可能的組合:紅卡車、紅汽車、紅鳥、綠卡車等使用單獨的神經元或隱藏單元激活。這需要9個不同的神經元,並且每個神經必須獨立地學習顏色和對象身份的概念。改善這種情況的方法之一是使用分布式表示,即用3個神經元描述顏色,3個神經元描述對象身份。這僅僅需要6個神經元而不是9個,並且描述紅色的神經元能夠從汽車、卡車和鳥類的圖像中學習紅色,而不僅僅是從一個特定類別的圖像中學習。分布式表示的概念是本書的核心,我們將在第15章中更加詳細地描述。
聯結主義潮流的另一個重要成就是反向傳播在訓練具有內部表示的深度神經網絡中的成功使用以及反向傳播算法的普及(Rumelhart et al.,1986c;Le Cun,1987)。這個算法雖然曾黯然失色且不再流行,但截至寫書之時,它仍是訓練深度模型的主導方法。
20 世紀 90 年代,研究人員在使用神經網絡進行序列建模的方面取得了重要進展。Hochreiter(1991b)和 Bengio et al.(1994b)指出了對長序列進行建模的一些根本性數學難題,這將在第 10.7 節中描述。Hochreiter 和 Schmidhuber(1997)引入長短期記憶(long shortterm memory,LSTM)網絡來解決這些難題。如今,LSTM在許多序列建模任務中廣泛應用,包括Google的許多自然語言處理任務。
神經網絡研究的第二次浪潮一直持續到20世紀90年代中期。基於神經網絡和其他AI技術的創業公司開始尋求投資,其做法野心勃勃但不切實際。當AI研究不能實現這些不合理的期望時,投資者感到失望。同時,機器學習的其他領域取得了進步。比如,核方法(Boseret al.,1992;Cortes and Vapnik,1995;Schölkopf et al.,1999)和圖模型(Jordan,1998)都在很多重要任務上實現了很好的效果。這兩個因素導致了神經網絡熱潮的第二次衰退,並一直持續到2007年。
在此期間,神經網絡繼續在某些任務上獲得令人印象深刻的表現(Le Cun et al.,1998c;Bengio et al.,2001a)。加拿大高級研究所(CIFAR)通過其神經計算和自適應感知(NCAP)研究計劃幫助維持神經網絡研究。該計劃聯合了分別由Geoffrey Hinton、Yoshua Bengio和Yann Le Cun領導的多倫多大學、蒙特婁大學和紐約大學的機器學習研究小組。這個多學科的CIFARNCAP研究計劃還包括了神經科學家、人類和計算機視覺專家。
在那個時候,人們普遍認為深度網絡是難以訓練的。現在我們知道,20世紀80年代就存在的算法能工作得非常好,但是直到2006年前後都沒有體現出來。這可能僅僅由於其計算代價太高,而以當時可用的硬體難以進行足夠的實驗。
神經網絡研究的第三次浪潮始於2006年的突破。Geoffrey Hinton表明名為「深度信念網絡」的神經網絡可以使用一種稱為「貪婪逐層預訓練」的策略來有效地訓練(Hinton et al.,2006a),我們將在第15.1節中更詳細地描述。其他CIFAR附屬研究小組很快表明,同樣的策略可以被用來訓練許多其他類型的深度網絡(Bengio and Le Cun,2007a;Ranzato et al.,2007b),並能系統地幫助提高在測試樣例上的泛化能力。神經網絡研究的這一次浪潮普及了「深度學習」這一術語,強調研究者現在有能力訓練以前不可能訓練的比較深的神經網絡,並著力於深度的理論重要性上(Bengioand Le Cun,2007b;Delalleau and Bengio,2011;Pascanu et al., 2014a; Montufar et al., 2014)。此時,深度神經網絡已經優於與之競爭的基於其他機器學習技術以及手工設計功能的AI系統。在寫這本書的時候,神經網絡的第三次發展浪潮仍在繼續,儘管深度學習的研究重點在這一段時間內發生了巨大變化。第三次浪潮已開始著眼於新的無監督學習技術和深度模型在小數據集的泛化能力,但目前更多的興趣點仍是比較傳統的監督學習算法和深度模型充分利用大型標註數據集的能力。
人們可能想問,既然人工神經網絡的第一個實驗在20世紀50年代就完成了,但為什麼深度學習直到最近才被認為是關鍵技術?自20世紀90年代以來,深度學習就已經成功用於商業應用,但通常被視為一種只有專家才可以使用的藝術而不是一種技術,這種觀點一直持續到最近。確實,要從一個深度學習算法獲得良好的性能需要一些技巧。幸運的是,隨著訓練數據的增加,所需的技巧正在減少。目前在複雜的任務中達到人類水平的學習算法,與20世紀80年代努力解決玩具問題(toy problem)的學習算法幾乎是一樣的,儘管我們使用這些算法訓練的模型經歷了變革,即簡化了極深架構的訓練。最重要的新進展是,現在我們有了這些算法得以成功訓練所需的資源。圖1.8展示了基準數據集的大小如何隨著時間的推移而顯著增加。這種趨勢是由社會日益數位化驅動的。由於我們的活動越來越多地發生在計算機上,我們做什麼也越來越多地被記錄。由於計算機越來越多地聯網在一起,這些記錄變得更容易集中管理,並更容易將它們整理成適於機器學習應用的數據集。因為統計估計的主要負擔(觀察少量數據以在新數據上泛化)已經減輕,「大數據」時代使機器學習更加容易。截至2016年,一個粗略的經驗法則是,監督深度學習算法在每類給定約5000個標註樣本情況下一般將達到可以接受的性能,當至少有1000萬個標註樣本的數據集用於訓練時,它將達到或超過人類表現。此外,在更小的數據集上獲得成功是一個重要的研究領域,為此我們應特別側重於如何通過無監督或半監督學習充分利用大量的未標註樣本。
圖3 與日俱增的數據量。20世紀初,統計學家使用數百或數千的手動製作的度量來研究數據集(Garson,1900;Gosset,1908;Anderson,1935;Fisher,1936)。20世紀50年代到80年代,受生物啟發的機器學習開拓者通常使用小的合成數據集,如低解析度的字母位圖,設計為在低計算成本下表明神經網絡能夠學習特定功能(Widrow and Hoff,1960;Rumelhart et al.,1986b)。20世紀80年代和90年代,機器學習變得更偏統計,並開始利用包含成千上萬個樣本的更大數據集,如手寫掃描數字的MNIST數據集(如圖1.9所示)(Le Cun et al.,1998c)。在21世紀的第一個10年裡,相同大小更複雜的數據集持續出現,如CIFAR-10數據集(Krizhevsky and Hinton,2009)。在這10年結束和接下來的5年,明顯更大的數據集(包含數萬到數千萬的樣例)完全改變了深度學習可能實現的事。這些數據集包括公共Street View House Numbers數據集(Netzer et al.,2011)、各種版本的Image Net數據集(Deng et al.,2009,2010a;Russakovsky et al.,2014a)以及Sports-1M數據集(Karpathy et al.,2014)。在圖頂部,我們看到翻譯句子的數據集通常遠大於其他數據集,如根據Canadian Hansard製作的IBM數據集(Brown et al.,1990)和WMT2014英法數據集(Schwenk,2014)
圖4 MNIST數據集的輸入樣例。「NIST」代表國家標準和技術研究所(National Institute of Standards and Technology),是最初收集這些數據的機構。「M」代表「修改的(Modified)」,為更容易地與機器學習算法一起使用,數據已經過預處理。MNIST數據集包括手寫數字的掃描和相關標籤(描述每個圖像中包含0~9中哪個數字)。這個簡單的分類問題是深度學習研究中最簡單和最廣泛使用的測試之一。儘管現代技術很容易解決這個問題,它仍然很受歡迎。Geoffrey Hinton將其描述為「機器學習的果蠅」,這意味著機器學習研究人員可以在受控的實驗室條件下研究他們的算法,就像生物學家經常研究果蠅一樣
20世紀80年代,神經網絡只能取得相對較小的成功,而現在神經網絡非常成功的另一個重要原因是我們現在擁有的計算資源可以運行更大的模型。聯結主義的主要見解之一是,當動物的許多神經元一起工作時會變得聰明。單獨神經元或小集合的神經元不是特別有用。
生物神經元不是特別稠密地連接在一起。如圖1.10所示,幾十年來,我們的機器學習模型中每個神經元的連接數量已經與哺乳動物的大腦在同一數量級上。
圖5 與日俱增的每個神經元的連接數。最初,人工神經網絡中神經元之間的連接數受限於硬體能力。而現在,神經元之間的連接數大多是出於設計考慮。一些人工神經網絡中每個神經元的連接數與貓一樣多,並且對於其他神經網絡來說,每個神經元的連接數與較小哺乳動物(如小鼠)一樣多,這種情況是非常普遍的。甚至人類大腦每個神經元的連接數也沒有過高的數量。生物神經網絡規模來自Wikipedia(2015)
1.自適應線性單元(Widrow and Hoff,1960);2.神經認知機(Fukushima,1980);3.GPU-加速卷積網絡(Chellapilla et al.,2006);4.深度玻爾茲曼機(Salakhutdinov and Hinton,2009a);5.無監督卷積網絡(Jarrett et al.,2009b);6.GPU- 加速多層感知機(Ciresan et al.,2010);7.分布式自編碼器(Le et al.,2012);8.Multi-GPU 卷積網絡(Krizhevsky et al.,2012a);9.COTSHPC無監督卷積網絡(Coates et al.,2013);10.Goog Le Net(Szegedy et al.,2014a)
如圖1.11所示,就神經元的總數目而言,直到最近神經網絡都是驚人的小。自從隱藏單元引入以來,人工神經網絡的規模大約每2.4年擴大一倍。這種增長是由更大內存、更快的計算機和更大的可用數據集驅動的。更大的網絡能夠在更複雜的任務中實現更高的精度。這種趨勢看起來將持續數十年。除非有能力迅速擴展新技術,否則至少要到21世紀50年代,人工神經網絡才能具備與人腦相同數量級的神經元。生物神經元表示的功能可能比目前的人工神經元所表示的更複雜,因此生物神經網絡可能比圖中描繪的甚至要更大。
圖6 與日俱增的神經網絡規模。自從引入隱藏單元,人工神經網絡的規模大約每2.4年翻一倍。生物神經網絡規模來自Wikipedia(2015)
1.感知機(Rosenblatt,1958,1962);2.自適應線性單元(Widrow and Hoff,1960);3.神經認知機(Fukushima,1980);4.早期後向傳播網絡(Rumelhart et al.,1986b);5.用於語音識別的循環神經網絡(Robinson and Fallside,1991);6.用於語音識別的多層感知機(Bengio et al.,1991);7.均勻場sigmoid信念網絡(Saul et al.,1996);8.Le Net-5(Le Cun et al.,1998c);9.回聲狀態網絡(Jaeger and Haas,2004);10.深度信念網絡(Hinton et al.,2006a);11.GPU-加速卷積網絡(Chellapilla et al.,2006);12.深度玻爾茲曼機(Salakhutdinov and Hinton,2009a);13.GPU-加速深度信念網絡(Raina et al.,2009a);14.無監督卷積網絡(Jarrett et al.,2009b);15.GPU-加速多層感知機(Ciresan et al.,2010);16.OMP-1網絡(Coates and Ng,2011);17.分布式自編碼器(Le et al.,2012);18.Multi-GPU卷積網絡(Krizhevsky et al.,2012a);19.COTSHPC無監督卷積網絡(Coates et al.,2013);20.Goog Le Net(Szegedy et al.,2014a)
現在看來,神經元數量比一個水蛭還少的神經網絡不能解決複雜的人工智慧問題,這是不足為奇的。即使現在的網絡,從計算系統角度來看它可能相當大,但實際上它比相對原始的脊椎動物(如青蛙)的神經系統還要小。
由於更快的CPU、通用GPU的出現(在第12.1.2節中討論)、更快的網絡連接和更好的分布式計算的軟體基礎設施,模型規模隨著時間的推移不斷增加是深度學習歷史中最重要的趨勢之一。人們普遍預計這種趨勢將很好地持續到未來。
20世紀80年代以來,深度學習提供精確識別和預測的能力一直在提高。而且,深度學習持續成功地應用于越來越廣泛的實際問題中。
最早的深度模型被用來識別裁剪緊湊且非常小的圖像中的單個對象(Rumelhart et al.,1986d)。此後,神經網絡可以處理的圖像尺寸逐漸增加。現代對象識別網絡能處理豐富的高解析度照片,並且不需要在被識別的對象附近進行裁剪(Krizhevsky et al.,2012b)。類似地,最早的網絡只能識別兩種對象(或在某些情況下,單類對象的存在與否),而這些現代網絡通常能夠識別至少1000個不同類別的對象。對象識別中最大的比賽是每年舉行的Image Net大型視覺識別挑戰(ILSVRC)。深度學習迅速崛起的激動人心的一幕是卷積網絡第一次大幅贏得這一挑戰,它將最高水準的前5錯誤率從26.1%降到15.3%(Krizhevsky et al.,2012b),這意味著該卷積網絡針對每個圖像的可能類別生成一個順序列表,除了15.3%的測試樣本,其他測試樣本的正確類標都出現在此列表中的前5項裡。此後,深度卷積網絡連續地贏得這些比賽,截至寫作本書時,深度學習的最新結果將這個比賽中的前5錯誤率降到了3.6%,如圖1.12所示。
圖7 日益降低的錯誤率。由於深度網絡達到了在ImageNet大規模視覺識別挑戰中競爭所必需的規模,它們每年都能贏得勝利,並且產生越來越低的錯誤率。數據來源於Russakovsky et al.(2014b)和He et al.(2015)
深度學習也對語音識別產生了巨大影響。語音識別在20世紀90年代得到提高後,直到約2000年都停滯不前。深度學習的引入(Dahl et al.,2010;Deng et al.,2010b;Seide et al.,2011;Hinton et al.,2012a)使得語音識別錯誤率陡然下降,有些錯誤率甚至降低了一半。我們將在第12.3節更詳細地探討這個歷史。
深度網絡在行人檢測和圖像分割中也取得了引人注目的成功(Sermanet et al.,2013;Farabet et al.,2013;Couprie et al.,2013),並且在交通標誌分類上取得了超越人類的表現(Ciresan et al.,2012)。
在深度網絡的規模和精度有所提高的同時,它們可以解決的任務也日益複雜。Goodfellow et al.(2014d)表明,神經網絡可以學習輸出描述圖像的整個字符序列,而不是僅僅識別單個對象。此前,人們普遍認為,這種學習需要對序列中的單個元素進行標註(Gulcehre and Bengio,2013)。循環神經網絡,如之前提到的LSTM序列模型,現在用於對序列和其他序列之間的關係進行建模,而不是僅僅固定輸入之間的關係。這種序列到序列的學習似乎引領著另一個應用的顛覆性發展,即機器翻譯(Sutskever et al.,2014;Bahdanau et al.,2015)。
這種複雜性日益增加的趨勢已將其推向邏輯結論,即神經圖靈機(Graves et al.,2014)的引入,它能學習讀取存儲單元和向存儲單元寫入任意內容。這樣的神經網絡可以從期望行為的樣本中學習簡單的程序。例如,從雜亂和排好序的樣本中學習對一系列數進行排序。這種自我編程技術正處於起步階段,但原則上未來可以適用於幾乎所有的任務。
深度學習的另一個最大的成就是其在強化學習(reinforcement learning)領域的擴展。在強化學習中,一個自主的智能體必須在沒有人類操作者指導的情況下,通過試錯來學習執行任務。DeepMind表明,基於深度學習的強化學習系統能夠學會玩Atari視頻遊戲,並在多種任務中可與人類匹敵(Mnih et al.,2015)。深度學習也顯著改善了機器人強化學習的性能(Finn et al.,2015)。
許多深度學習應用都是高利潤的。現在深度學習被許多頂級的技術公司使用,包括Google、Microsoft、Facebook、IBM、Baidu、Apple、Adobe、Netflix、NVIDIA和NEC等。
深度學習的進步也嚴重依賴於軟體基礎架構的進展。軟體庫如Theano(Bergstra et al.,2010a;Bastien et al.,2012a)、PyLearn2(Goodfellow et al.,2013e)、Torch(Collobert et al.,2011b)、Dist Belief(Dean et al.,2012)、Caffe(Jia,2013)、MXNet(Chen et al.,2015)和Tensor-Flow(Abadi et al.,2015)都能支持重要的研究項目或商業產品。
深度學習也為其他科學做出了貢獻。用於對象識別的現代卷積網絡為神經科學家們提供了可以研究的視覺處理模型(DiCarlo,2013)。深度學習也為處理海量數據以及在科學領域做出有效的預測提供了非常有用的工具。它已成功地用於預測分子如何相互作用、從而幫助製藥公司設計新的藥物(Dahl et al.,2014),搜索亞原子粒子(Baldi et al.,2014),以及自動解析用於構建人腦三維圖的顯微鏡圖像(Knowles-Barley et al.,2014)等多個場合。我們期待深度學習未來能夠出現在越來越多的科學領域中。
總之,深度學習是機器學習的一種方法。在過去幾十年的發展中,它大量借鑑了我們關於人腦、統計學和應用數學的知識。近年來,得益於更強大的計算機、更大的數據集和能夠訓練更深網絡的技術,深度學習的普及性和實用性都有了極大的發展。未來幾年,深度學習更是充滿了進一步提高並應用到新領域的挑戰和機遇。