本文由 「AI前線」原創,原文連結:送AI專欄|深度學習必備的5大知識模組(內附知識卡片)
作者|極客時間《人工智慧基礎課》專欄
編輯|Emily
近年來,隨著 AlphaGo 在技術上的步步突破,深度學習成為當之無愧的熱門技術。可以說,AlphaGo 的勝利也就是深度學習的勝利。
深度學習是利用包含多個隱藏層的人工神經網路實現的學習。想要深入瞭解深度學習,我們至少需要從以下幾個方面入手:深度前饋網路、深度學習中的正則化、深度學習中的優化、自編碼器和深度強化學習。
深度前饋網路
深度前饋網路(deep feedforward network)是具有深度結構的前饋神經網路,可以看成是進化版的多層感知器。與只有一個或兩個隱藏層的淺層網路相比,深度前饋網路具有更多的隱藏層數目,從而具備了更強的特徵提取能力。
在深度前饋網路的設計中,確定架構是首要考慮的關鍵問題。架構決定著網路中包含多少基本單元,以及這些基本單元之間如何相互連線。幾乎所有前饋網路採用的都是鏈式架構,即前一層的輸出是後一層的輸入。在這樣的鏈式架構中,層的數目和每一層中神經元的數目就是網路的主要變數。
關於深度前饋網路存在一些共性問題,要點如下:
深度學習中的正則化
正則化(regularization)作為抑制過擬合的手段,是機器學習和深度學習之中必不可少的環節,具有舉足輕重的地位。好的機器學習演算法不僅要在訓練集上表現出色,當推廣到未知的測試資料時,其優良的效能依然能夠得以保持。正則化就是一類通過顯式設計降低泛化誤差,以提升演算法通用性的策略的統稱。由於深度學習中涉及的引數眾多,正則化就變得尤為重要。
正則化被定義為對學習演算法的修改,這些修改的目的在於減少泛化誤差。通常說來,泛化誤差的下降是以訓練誤差的上升為代價的,但有些演算法也能兼顧泛化誤差和訓練誤差的良好效能。
正則化處理可以看成是奧卡姆剃刀原則(occam`s razor)在學習演算法上的應用。奧卡姆剃刀原則的表述是:“當兩個假說具有完全相同的解釋力和預測力時,以那個較為簡單的假說作為討論依據。”在機器學習中,正則化處理得到的正是更加簡單的模型。
從概率論角度看,許多正則化技術對應的是在模型引數上施加一定的先驗分佈,其作用是改變泛化誤差的結構。正則化是對欠擬合和過擬合的折中,在不過度增加偏差的情況下顯著減少方差。正則化能夠改變資料分佈,讓通過模型得到的資料分佈儘可能和真實的資料生成過程相匹配。
雖然目前在深度學習中應用的正則化方式稱得上“八仙過海,各顯神通”,卻並不存在能夠系統描述這些方法、並進一步指導設計的通用主線。因此,要從通觀全域性的角度看待正則化處理,還是要“不忘初心”,從根本目的著眼。
常用的正則化策略有以下幾類:
- 基於訓練資料(data)的正則化
- 基於網路架構(network architecture)的正則化
- 基於誤差函式(error function)的正則化
- 基於正則化項(the regularization term)的正則化
- 基於最優化過程(optimization)的正則化
深度學習中的優化
除了正則化之外,優化也是深度學習需要解決的一個核心問題。由於深度神經網路中的隱藏層數目較多,因而將整個網路作為一個整體進行優化是非常困難的事情,需要花費大量的時間和計算力。出於效率和精確性的考慮,在深度學習的優化上需要使用專門的技術。
出於可解性的考慮,傳統機器學習演算法往往會小心翼翼地選擇代價函式和優化條件,將待優化問題轉化為容易求解的凸優化問題。但在神經網路,尤其是在深度神經網路中,更一般的非凸情況是不可避免的,這就給深度學習中的優化帶來很多額外的挑戰。
深度學習中實現優化的一般思路:
自編碼器
自編碼器(auto-encoder)是一類執行無監督學習任務的神經網路結構,它的目的是學習一組資料的重新表達,也就是編碼。在結構上,自編碼器是包含若干隱藏層的深度前饋神經網路,其獨特之處是輸入層和輸出層的單元數目相等;在功能上,自編碼器的目的不是根據輸入來預測輸出,而是重建網路的輸入,正是這樣的功能將自編碼器和其他神經網路區分開來。由於自編碼器的圖形表示像極了雜技中使用的道具空竹,因而也得了個“空竹網路”的雅號。
關於深度學習中自編碼器的原理與特點,其要點如下:
深度強化學習
在 2017 年新鮮出爐的《麻省理工科技評論》十大突破性技術中,“強化學習”榜上有名。如果把時鐘調回到一年多之前的圍棋人機大戰,彼時的深度強化學習在 AlphaGo 對李世乭的橫掃中就已經初露崢嶸。而在進化版 AlphaGo Zero 中,“深度強化學習”更是大放異彩,AlphaGo Zero 之所以能夠擺脫對人類棋譜的依賴,其原因就在於使用純粹的深度強化學習進行端到端的自我對弈,從而超越了人類的圍棋水平。
強化學習(reinforcement learning)實質上是智慧系統從環境到行為的學習過程,智慧體通過與環境的互動來改善自身的行為,改善準則是使某個累積獎勵函式最大化。具體來說,強化學習是基於環境反饋實現決策制定的通用框架,根據不斷試錯得到來自環境的獎勵或者懲罰,從而實現對趨利決策信念的不斷增強。它強調在與環境的互動過程中實現學習,產生能獲得最大利益的習慣性行為。
深度強化學習(deep reinforcement learning)是深度學習和強化學習的結合,它將深度學習的感知能力和強化學習的決策能力熔於一爐,用深度學習的執行機制達到強化學習的優化目標,從而向通用人工智慧邁進。根據實施方式的不同,深度強化學習方法可以分成三類,分別是基於價值、基於策略和基於模型的深度強化學習。
關於深度強化學習的簡單原理與方法分類,總結以下要點:
這麼幹的內容,出自極客時間《人工智慧基礎課》專欄。
今天,就把這個專欄當作年貨送給大家,共 5 個免費名額。
參與活動方法:在留言中聊聊你對人工智慧的看法,我們會選取 3 個精選留言和 2 個點贊數最高留言,贈送專欄閱讀碼,用於免費購買專欄。
留言截止時間: 2 月 12 日 20:00 點。
《人工智慧基礎課》專欄目錄
專欄已經上線「極客時間」App,各位讀者可以掃描下方二維碼圖片進行免費試讀專欄。
t.cn/R8MVmTL (二維碼自動識別)
掃碼免費試讀專欄。
更多幹貨內容,可關注AI前線,ID:ai-front,後臺回覆「AI」、「TF」、「大資料」可獲得《AI前線》系列PDF迷你書和技能圖譜。