首頁 > 科技

「三巨頭」聯合釋出萬字長文,深度學習將通往何方?

2021-07-04 03:03:09

大資料文摘授權轉載自資料實戰派

作者:Yoshua Bengio, Yann Lecun, Geoffrey Hinton

譯者:LZM

人工神經網路的研究源於以下觀察:人類智慧來自於高度並行的、相對簡單的非線性神經元網路,這些神經元通過調整其連線的強度來學習知識。

這一觀察引發出一個核心計算問題:這種一般類型的網路如何學習識別物體或理解語言等困難任務所需的複雜內部表示呢?深度學習試圖通過深度表徵向量和最優化損失函數得到的權重連結來回答這個問題。

非常令人驚訝的是,這種概念上簡單的方法在使用大量計算資源和大型訓練集時被實驗證明是如此有效,而且似乎一個關鍵因素是深度,即淺層網路無法正常工作。

本文,我們將回顧近年來深度學習的基本概念和一些突破性成就,描述深度學習的起源,以及討論一些未來的挑戰。

這些挑戰包括在很少或沒有外部監督的情況下進行學習,處理來自與訓練樣本不同分佈的測試樣本,以及使用深度學習方法,用於那些人類通過一系列步驟有意識地解決的任務 —— 即 Kahneman 稱之為 system 2 而非 system 1 的任務,例如物件識別或即時自然語言理解。system 1 的任務往往更輕鬆。

從手工設計的編碼到分散式向量表示

人工智慧有兩種截然不同的正規化。簡而言之,邏輯啟發正規化將順序推理視為智慧的本質,旨在使用手工設計的推理規則在計算機中實現推理,這些規則對手工設計的將知識形式化的符號表達式進行操作。

受大腦啟發的正規化將從資料中學習表徵視為智慧的本質,旨在通過手動設計或演化規則來實現學習,以修改人工神經網路中的連線強度。

在邏輯啟發正規化中,符號沒有有意義的內部結構:它的意義在於它與其他符號的關係,這些關係可以用一組符號表達式或關係圖來表示。

相比之下,在類腦正規化中,用於交流的外部符號被轉換為神經活動的內部向量,這些向量具有豐富的相似結構。活動向量可用於通過為每個符號學習適當的活動向量並學習允許填充與符號串缺失元素對應的活動向量的非線性變換來對一組符號串中固有的結構進行建模。

Rumelhart 等人首先證明了這一點。最近一個非常令人印象深刻的系統是 BERT,它利用自注意力來動態連線單元組。

使用神經活動向量來表示概念和權重矩陣來捕捉概念之間的關係的主要優點是,這會產生自動的泛化能力。如果星期二和星期四由非常相似的向量表示,它們將對神經活動的其他向量產生非常相似的因果影響。

這有助於類比推理,並表明直接、直觀的類比推理是我們的主要推理模式,而邏輯順序推理 (logical sequential reasoning) 則是較晚的發展,我們將對此進行討論。

深度學習的興起


2000 年代初期,深度學習領域通過引入一些新技術使訓練更深的網路變得容易,從而重新激發了神經網路的研究。

GPU 和大型資料集是深度學習的關鍵推動因素,並且通過開發具有自動區分功能的開源、靈活的軟體平臺(例如 Theano、Torch、Caffe、TensorFlow、和 PyTorch)大大增強了深度學習的發展,這使得訓練複雜的深度網路和重用最新模型及其構建塊變得容易。而且,更多層的組合允許更復雜的非線性,並在感知任務中取得了令人驚訝的好結果。

1)為什麼是深度?:儘管更深層次的神經網路可能是更強大的直覺早於現代深度學習技術,這是架構和訓練程式方面的一系列進步,但是,為什麼更深的網路可以更好地概括我們對建模感興趣的輸入輸出關係類型?

重要的是,要認識到這不僅僅是具有更多參數的問題,因為深度網路通常比具有相同參數數量的淺層網路具有更好的泛化能力。

最流行的計算機視覺卷積網路架構是 ResNet 系列,其中最常見的代表 ResNet-50 有 50 層。本文未提及但結果證明非常有用的其他成分包括影象變形、dropout 和批量歸一化。

我們相信深度網路之所以出色,是因為它們利用了一種特定形式的組合性,其中一層中的特徵以多種不同的方式組合,以在下一層創建更多抽象特徵。對於像感知這樣的任務,這種組合性非常有效,並且有強有力的證據表明這種組合性質被生物感知系統所利用。

2)無監督預訓練:當標記訓練示例的數量與執行任務所需的神經網路的複雜性相比較小時,開始使用一些其他資訊源來創建特徵檢測器層然後微調這些特徵檢測器是有意義的。在遷移學習中,資訊來源是另一個具有大量標籤的監督學習任務。但也可以通過堆疊自動編碼器來創建多層特徵檢測器,而無需使用任何標籤。

首先,我們學習了一層特徵檢測器,其輸出啟用向量允許重建輸入。然後學習第二層特徵檢測器,其啟用向量允許重建第一層特徵檢測器的啟用。

在以這種方式學習了幾個隱藏層之後,嘗試從最後一個隱藏層中的活動預測標籤,並通過所有層反向傳播錯誤,以便微調最初建立的特徵檢測器,而不使用標籤中的寶貴資訊。預訓練可以很好地提取與最終分類無關的各種結構,但是,在計算便宜且標記資料昂貴的情況下,只要預訓練將輸入轉換為表示使分類更容易。

除了提高泛化能力之外,無監督預訓練還以一種很容易通過反向傳播微調深度神經網路的方式初始化權重。

預訓練對優化的影響在歷史上對於克服深度網路難以訓練的公認觀點很重要,但現在人們使用修正線性單元(見下一節)和殘差連線,它的相關性要小得多。然而, 預訓練對泛化的影響已被證明是非常重要的。它可以通過利用大量未標記的資料來訓練非常大的模型,例如在自然語言處理中,有大量的語料庫可用。預訓練和微調的一般原則已成為深度學習工具箱中的一個重要工具,例如,遷移學習和元學習。

3)ReLU 的成功之謎:深度網路的早期成功涉及使用 sigmoid 非線性函數或雙曲正切啟用函數對隱含層進行無監督預訓練。

長期以來,神經科學線性 ReLU 函數是生物神經網路中的正確啟用,並且 ReLU 已經在 RBM 的某些變體和卷積神經網路中使用,並取得了不錯的效果。ReLU 使學習變得容易,這是一個出乎意料的驚喜,通過反向傳播和隨機梯度下降來訓練深度網路,而無需逐層預訓練。這是技術進步之一,使深度學習能夠勝過先前的物件識別方法。

4)語音和物體識別方面的突破:聲學模型將聲波的表示轉換為音素片段的概率分佈。

Robinson 使用晶片機和 Morgan 等人使用 DSP 晶片的嘗試已經表明,如果有足夠的處理能力,神經網路可以與最先進的聲學建模技術相媲美。2009 年,兩名使用 Nvidia GPU 的研究生表明,預訓練的深度神經網路在 TIMIT 資料集上的表現略優於 SOTA。

這一結果重新點燃了神經網路中幾個主要語音小組的興趣。2010 年,基本上相同的深度網路被證明在不需要依賴說話者的訓練的情況下在大詞彙語音識別方面擊敗了 SOTA。

到 2012 年,谷歌設計了一個生產版本,顯著改善了 Android 上的語音搜尋。這是深度學習顛覆性力量的早期證明。

大約在同一時間,深度學習在 2012 年 ImageNet 競賽中取得了戲劇性的勝利,在識別自然影象中一千種不同類別的物體時,錯誤率幾乎減半。這場勝利的關鍵是李飛飛的主要努力和她的合作者為訓練集收集了超過一百萬張帶標籤的影象,並且 Alex Krizhevsky 非常有效地使用了多個 GPU。

當前的硬體(包括 GPU)鼓勵在多次使用該權重時分攤從記憶體中獲取權重的成本。使用每個權重一次的純線上隨機梯度下降會更快收斂,並且未來的硬體可能只是就地使用權重而不是從記憶體中獲取它們。

深度卷積神經網路包含一些新穎性,例如使用 ReLU 使學習更快,使用 dropout 防止過擬合,但它基本上只是 Yann LeCun 和他的那種前饋卷積神經網路。計算機視覺社群對這一突破的反應令人欽佩。

鑑於卷積神經網路優越性的無可爭議的證據,社群迅速放棄了以前的手工設計方法,轉而使用深度學習。

近期進展

在這裡,我們有選擇地討論深度學習的一些最新進展。不過我們在此暫且忽略了許多重要的主題,例如深度強化學習、圖神經網路和元學習。

1)軟注意力機制和 transformer 架構:深度學習的一個重大發展,尤其是在順序處理方面,是乘法互動的使用,特別是在軟注意力的形式中。這是對神經網路工具箱的變革性補充,因為它將神經網路從純粹的向量轉換機器轉變為可以動態選擇對哪些輸入進行操作的架構,並且可以將資訊儲存在可區分的關聯儲存器中。這種架構的一個關鍵特性是它們可以有效地對包括集合和圖在內的不同類型的資料結構進行操作。

隱藏層可以使用軟注意力來動態選擇它們將組合來自前一層的哪些向量來計算它們的輸出。這可以使輸出獨立於輸入的呈現順序或使用不同輸入之間的關係。

Transformer 架構已經成為許多應用中的主導架構,它堆疊了許多層 「self-attention」 模組。

層中的每個模組使用標量積來計算其查詢向量與該層中其他模組的關鍵向量之間的匹配。匹配項被歸一化為總和為 1,然後使用產生的標量係數來形成前一層中其他模組產生的值向量的凸組合。結果向量形成下一計算階段的模組的輸入。模組可以是多頭的,以便每個模組計算幾個不同的查詢、鍵和值向量,從而使每個模組有可能有幾個不同的輸入,每個輸入都以不同的方式從前一階段的模組中選擇。

在此操作中,模組的順序和數量無關緊要,因此可以對向量集進行操作,而不是像傳統神經網路中那樣對單個向量進行操作。例如,語言翻譯系統在輸出句子中生成一個單詞時,可以選擇關注輸入句子中對應的一組單詞,而與其在文字中的位置無關。雖然乘法門控是諸如座標變換和迴圈網路的強大形式之類的舊思想,但其最近的形式使其成為主流。

我們相信深度網路之所以出色,是因為它們利用了一種特定形式的組合性,其中一層中的特徵以多種不同的方式組合,以在下一層創建更多抽象特徵。

Transformer 帶來了顯著的效能改進,徹底改變了自然語言處理,現在它們在工業中得到了大量使用。這些系統都以自我監督的方式進行了預訓練,以預測一段文字中的缺失詞。

也許更令人驚訝的是,Transformer 已成功地用於符號求解積分方程和微分方程。最近一個非常有前景的趨勢是在卷積網路上使用 Transformer,以最先進的效能在影象中進行物件檢測和定位。Transformerransformer 以可微分的方式執行後處理和基於物件的推理,使系統能夠接受端到端的訓練。

2)無監督和自監督學習:監督學習雖然在各種任務中取得成功,但通常需要大量人工標記的資料。同樣,當強化學習僅基於獎勵時,它需要非常大量的互動。這些學習方法往往會產生特定於任務的專業系統,這些系統通常在他們接受過訓練的狹窄領域之外是脆弱的。減少學習任務所需的人工標記樣本數量或與世界的互動並提高域外魯棒性對於低資源語言翻譯、醫學影象分析、自動駕駛和內容過濾。

人類和動物似乎能夠以獨立於任務的方式學習大量關於世界的背景知識,主要是通過觀察。這些知識鞏固了常識,讓人類只需幾個小時的練習就可以學習複雜的任務,例如駕駛。人工智慧未來的一個關鍵問題是,人類如何僅從觀察中學到這麼多?

在監督學習中,N 個類別之一的標籤平均最多傳達 log2 (N) 位關於世界的資訊。在無模型強化學習中,獎勵同樣僅傳達少量資訊。相比之下,音訊、影象和視訊是高頻寬模式,隱含地傳達了有關世界結構的大量資訊。這激發了一種稱為自監督學習的預測或重建形式,它通過預測資料的掩蔽或損壞部分來訓練 「填補空白」。自監督學習在訓練 Transformer 提取向量方面非常成功,這些向量捕獲了單詞或單詞片段的上下文相關含義,並且這些向量非常適合下游任務。

對於文字,Transformer 被訓練從一組離散的可能性中預測丟失的單詞。但是在視訊等高維連續域中,特定視訊片段的合理延續集龐大而複雜,正確表示合理延續的分佈本質上是一個未解決的問題。

3)對比學習:解決此問題的一種方法是通過潛在變數模型,該模型為視訊示例和可能的延續分配能量。

給定輸入視訊 X 和合理的延續 Y,我們希望模型通過使用能量函數 E (X, Y) 來指示 Y 是否與 X 相容,該函數在 X 和 Y 相容時取低值,否則取高值。

E (X, Y) 可以由深度神經網路計算,對於給定的 X,以對比的方式訓練,為與 X 相容的值 Y 提供低能量(例如 (X, Y) 對),以及與 X 不相容的 Y 的其他值的高能量。對於給定的 X,推理包括找到一個使 E (X, Y) 最小化的 Y 或者可能從 Y 中取樣具有較低的 E (X, Y) 值。這種基於能量的方法來表示 Y 依賴於 X 的方式,這使得建模多樣化、多模態的合理延續整合為可能。

對比學習的關鍵難點是選擇好的 「負」 樣本:合適的點 Y,其能量會被推高。當可能的反例集合不是太大時,我們可以將它們全部考慮。這就是 softmax 的作用,因此在這種情況下,對比學習簡化為對有限離散符號集的標準監督或自監督學習。但是在實值高維空間中,Y 的預測與 Y 有很大不同,為了改進模型,我們需要關注那些本應具有高能量但當前能量較低的 Y。

早期選擇負樣本的方法基於蒙特卡羅方法,例如受限玻爾茲曼機的對比散度和噪聲對比估計。

GAN 優化起來有些棘手,但事實證明,對抗性訓練思想極其豐富,在影象合成方面產生了令人印象深刻的結果,並在內容創建和領域適應以及領域或風格轉移方面開闢了許多新應用。

4)對比學習的表示一致性:對比學習提供了一種無需重建或生成畫素即可發現好的特徵向量的方法。

這個想法是學習一個前饋神經網路,當給定相同影象的兩個不同裁剪或同一物件的兩個不同檢視時,該網路會產生非常相似的輸出向量,但來自不同影象或不同物件檢視的裁剪的輸出向量不同。兩個輸出向量之間的平方距離可以被視為一種能量,小值說明相容,大值說明不相容。

最近的一系列使用卷積網路提取一致表示的論文在視覺特徵學習中產生了有希望的結果。


正對由同一影象的不同版本組成,這些版本通過裁剪、縮放、旋轉、顏色偏移、模糊等方式扭曲。負對是不同影象的類似失真版本,它們可以通過稱為硬負挖掘的過程從資料集中巧妙地挑選出來,或者可能只是小批量中其他影象的所有失真版本。網路較高層之一的隱藏活動向量隨後用作以監督方式訓練的線性分類器的輸入。這種連體網路方法在標準影象識別基準上取得了出色的結果。


最近,兩種 Siamese 網路方法設法避免了對對比樣本的需求。第一個稱為 SwAV,量化一個網路的輸出以訓練另一個網路,第二個稱為 BYOL,平滑兩個網路之一的權重軌跡,這顯然足以防止崩潰。

5)變分自動編碼器:最近流行的一種自監督學習方法是變分自動編碼器 (VAE)。它由將影象對映到潛在程式碼空間的編碼器網路和從潛在程式碼生成影象的解碼器網路組成。VAE 通過在將高斯噪聲傳遞到解碼器之前將高斯噪聲新增到編碼器的輸出來限制潛在程式碼的資訊容量。這類似於將小的嘈雜球體打包成具有最小半徑的較大球體。


資訊容量受限於包含球體內部有多少噪聲球體。嘈雜的球體相互排斥,因為良好的重構誤差需要對應於不同樣本的程式碼之間有小的重疊。

在數學上,該系統最小化了通過在噪聲分佈上對潛在程式碼進行邊緣化而獲得的自由能。然而,相對於參數最小化該自由能是棘手的,並且必須依賴來自統計物理學的變分近似方法來最小化自由能的上限。

深度學習的未來

深度學習系統的效能通常可以通過簡單的擴展來而得到顯著提高。有了更多的資料和更多的計算,它們通常會更好地工作。具有 1750 億個參數的語言模型 GPT-3(與人腦中的突觸數量相比仍然很小)生成的文字,明顯優於只有 15 億個參數的 GPT-2。


隨著聊天機器人 Meena 和 BlenderBot 變得越來越大,它們也在不斷改進。

現在正在為擴大規模付出巨大的努力,可以大大改進現有系統,但當前深度學習存在一些根本性的缺陷,無法僅僅通過擴大規模來克服。

我們將人類學習能力與當前的人工智慧進行比較,提出了幾個改進方向:

  • 監督學習需要太多標記資料,而無模型強化學習需要太多試驗。人類似乎能夠以少得多的經驗很好地概括。

  • 當前的系統對分佈變化的魯棒性不如人類,人類可以通過很少的例子快速適應這種變化。

  • 當前的深度學習在感知任務和通常所謂的 system 1 任務方面最為成功。將深度學習用於需要經過深思熟慮步驟序列的 system 2 任務,是一個仍處於起步階段的令人興奮的領域。

1)需要改進的點:從早期開始,機器學習的理論家就關注 IID 假設,即測試用例應該來自與訓練示例相同的分佈。

不幸的是,這在現實世界中並不是一個現實的假設:只需考慮由於各種代理改變世界的行為引起的非平穩性,或者學習代理的逐漸擴大的思維視野,總是有更多的東西需要學習和發現。實際上,當今最好的 AI 系統在從實驗室到現場時的效能往往會受到影響。

我們希望在面對分佈變化(稱為分佈外泛化)時實現更大的魯棒性,這是在面對新任務時降低樣本複雜性(良好泛化所需的示例數量)的更普遍目標的一個特例 —— 如在遷移學習和終身學習中 —— 或者只是改變分佈或世界狀態與獎勵之間的關係。當前的監督學習系統需要比人類更多的例子(當必須學習一項新任務時),而無模型強化學習的情況更糟,因為每個獎勵試驗提供的關於任務的資訊比每個標記的例子少。

人類可以以一種不同於普通 IID 泛化的方式進行泛化:我們可以正確解釋現有概念的新組合,即使這些組合在我們的訓練分佈下極不可能,只要它們尊重我們已經學到的高階句法和語義模式。最近的研究幫助我們闡明瞭不同的神經網路架構在這種系統化泛化能力方面的表現。如何設計具有這些能力的未來機器學習系統,以更好地泛化或更快地適應樣本外分佈?

2)從同質層到代表實體的神經元組:來自神經科學的證據表明,相鄰的神經元組(形成所謂的超列)緊密相連,可能代表一種更高級別的向量值單元,不僅能夠傳送標量,而且能夠傳送一組協調值。這個想法是膠囊架構的核心,也是軟注意力機制的使用所固有的,其中集合中的每個元素都與一個向量相關聯,從中可以讀取一個鍵向量和一個值向量(有時也是查詢向量)。考慮這些向量級單元的一種方法是表示物件的檢測及其屬性(如在膠囊中的姿勢資訊)。

計算機視覺領域的最新論文正在探索卷積神經網路的擴展,其中層次結構的頂層代表在輸入影象中檢測到的一組候選物件,並且對這些候選物件的操作是使用類似轉換器的架構來執行的。為物件及其部分分配內在參考框架並通過使用部分之間的幾何關係來識別物件的神經網路應該更不易受到定向對抗性攻擊的影響,後者依賴於人們使用的資訊與神經網路使用的資訊之間的巨大差異。網路來識別物體。

3)多時間尺度:大多數神經網路只有兩個時間尺度:權重在許多示例中適應緩慢,活動適應隨著每個新輸入而迅速變化。新增快速適應和快速衰減的 「快速權重」 的疊加會引入有趣的新計算能力。特別是,它創建了一個高容量的短期記憶,允許神經網路執行真正的遞迴,其中相同的神經元可以在遞迴呼叫中重複使用,因為它們在更高級別呼叫中的活動向量可以在以後重建 使用快速權重中的資訊。在學習學習或元學習中也會出現多種適應時間尺度。

4)更高層次的認知:在考慮新的挑戰時,例如在交通規則異常的城市中駕駛,甚至想象在月球上駕駛車輛時,我們可以利用我們已經掌握的知識和通用技能,並以新的方式動態地重新組合它們。這種成體系的形式,允許人類在未知環境中進行相當好的泛化。通過練習、微調和編譯這些新技能進一步改進,也可以不再需要有意識的關注了。

我們如何通過重用已知的知識來使神經網路能夠快速適應新環境,從而避免干擾已知技能?在這個方向上的初步探索包括 Transformers 和 Recurrent Independent Mechanisms。

似乎人類的(system 1)處理能力允許我們在計劃或推理時猜測未來的潛在益處或害處。這提出了 system 1 網路如何指導更高(system 2)級別的搜尋和規劃的問題,也許和 AlphaGo 的蒙特卡洛樹搜尋的價值函數如出一轍。

機器學習研究依賴於歸納偏差或先驗,以鼓勵在與某些世界假設相容的方向上進行學習。system 2 處理的性質和認知神經科學理論表明了幾種這樣的歸納偏差和架構,它們可用於設計新穎的深度學習系統。我們如何設計包含這種歸納偏差的深度學習架構和訓練框架?

人類幼兒執行因果發現的能力表明,這可能是人類大腦的一個基本屬性,最近的工作表明,在干預變化下優化分佈外泛化可用於訓練神經網路以發現因果依賴性或因果變數 。我們應該如何構建和訓練神經網路,以便它們能夠捕捉到世界的這些潛在因果屬性?

這些開放性問題所建議的方向與 20 世紀的符號人工智慧研究有何關聯?顯然,符號 AI 方法旨在實現 system 2 的能力,例如推理,能夠將知識分解為可以在一系列計算步驟中輕鬆重新組合的部分,以及能夠操作抽象變數、類型和例項。

我們希望設計出這樣一種神經網路:它保留了深度學習的優勢,可以在處理實值向量的同時,實現使用可微計算和基於梯度的、自適應的高效大規模學習,高階 / 低階感知、處理不確定資料和使用分散式表示。

原文:

Deep Learning for AI ,Communications of the ACM, July 2021, Vol. 64 No. 7, Pages 58-6

Reference:

https://cacm.acm.org/magazines/2021/7/253464-deep-learning-for-ai/fulltext


IT145.com E-mail:sddin#qq.com