跳轉到

2018 - 深度學習三巨頭(Bengio、Hinton、LeCun 與神經網路的復興)#

案件摘要#

2018 年 3 月,ACM 宣布圖靈獎頒給三位神經網路的長年信徒: Geoffrey Hinton(1947–)、Yann LeCun(1960–)、Yoshua Bengio(1964–)—— 表揚他們讓深度學習(deep learning)從幾近死亡的概念復活:

\[ \boxed{\text{多層神經網路 + 反向傳播 + 大數據與 GPU = 深度學習革命}} \]

這是一宗跨越 60 年的懸案: - 1958 年 Rosenblatt 的感知機宣告「機器會自己學習」; - 1969 年 Minsky 的《Perceptrons》一書判了它死刑(第一次 AI 寒冬); - 1986 年反向傳播讓它死裡逃生; - 2012 年 AlexNet 在 ImageNet 大獲全勝——懸案終於告破。

\[ \text{感知機(1958)} \xrightarrow{\text{寒冬(1969)}} \text{反向傳播(1986)} \xrightarrow{\text{GPU 與大數據}} \text{AlexNet(2012)}. \]

神經網路不是被發明的,是被「平反」的——三位偵探花了三十年洗清冤屈。

前因 -- 為什麼會有這個案子#

  • Turing 測試(1950): Turing 在《計算機器與智慧》中提出「機器能思考嗎?」—— 見 1936-圖靈機.md 的結案。這個問題催生了整門人工智慧。
  • AI 的誕生(1956–1958): 1956 年 McCarthy 召開達特茅斯會議,創造「artificial intelligence」一詞; 1958 年他發明 LISP(見 1958-麥卡錫LISP.md),成為 AI 研究的母語。 同年,Frank Rosenblatt 打造感知機(perceptron)——
\[ \text{感知機:} y = \begin{cases} 1 & \text{若 } wx + b > 0 \\ 0 & \text{否則}\end{cases} \]

《紐約時報》宣稱:「機器將能走路、說話、看見、寫作、自我複製」—— 單層的感知機承載不了這個預言。 - 第一次 AI 寒冬(1969): Marvin Minsky 與 Papert 出版《Perceptrons》,數學上證明:

\[ \boxed{\text{單層感知機連 XOR(互斥或)都學不會}} \]

XOR 不是線性可分——單層神經元只能畫一條直線切割空間。 經費枯竭、研究停擺——神經網路進入十幾年的寒冬。 (諷刺的是:解法——多層——Minsky 書裡也提到了,只是沒人會訓練它。) - 反向傳播的復興(1986): Rumelhart、Hinton、Williams 在《Nature》發表 Learning representations by back-propagating errors—— 鏈鎖律讓梯度可以穿越多層,多層網路終於可訓練! - GPU 與大數據(2007–2012): 神經網路需要大量矩陣乘法——原本為電玩畫面設計的 GPU 恰好就是並行矩陣機器;ImageNet 提供 1400 萬張標記影像。 2012 年 AlexNet 用兩張 GPU 把影像分類錯誤率從 26% 砍到 15.3%——

\[ \text{演算法(1986)} + \text{數據(ImageNet)} + \text{算力(GPU)} = \text{革命(2012)}. \]

線索與推理 -- 數學式、程式、理論#

第一條線索:神經元——加權、偏移、激活#

一個人工神經元是三步運算:

\[ z = \sum_i w_i x_i + b, \qquad y = \sigma(z). \]
  • \(w_i\) :權重(這個輸入有多重要); \(b\) :偏移(偏置項);
  • \(\sigma\) :激活函數,賦予網路非線性——沒有它,多層等同單層。 sigmoid(S 形,輸出 \((0,1)\) ):
\[ \sigma(z) = \frac{1}{1+e^{-z}}, \qquad \sigma'(z) = \sigma(z)(1-\sigma(z)). \]

ReLU(LeCun 團隊推廣,深層網路的當代首選):

\[ \text{ReLU}(z) = \max(0, z). \]
\[ \boxed{\text{非線性激活是深度的前提:否則多層 } \equiv \text{ 單層}} \]

第二條線索:反向傳播——鏈鎖律的勝利#

問題:損失函數 \(L\) (預測與答案的差距)對深層權重 \(w\) 的偏導數怎麼算? 答案:微積分的鏈鎖律,逐層回推:

\[ \frac{\partial L}{\partial w} = \frac{\partial L}{\partial y}\,\frac{\partial y}{\partial w}, \qquad \frac{\partial L}{\partial h_{\text{前層}}} = \frac{\partial L}{\partial h_{\text{後層}}}\,\frac{\partial h_{\text{後層}}}{\partial h_{\text{前層}}}. \]

誤差訊號從輸出層往輸入層倒流——故名「反向傳播」:

\[ \text{前向:} x \to h_1 \to h_2 \to y \to L, \qquad \text{反向:} \frac{\partial L}{\partial y} \to \frac{\partial L}{\partial h_2} \to \frac{\partial L}{\partial h_1} \to \frac{\partial L}{\partial w}. \]

有了梯度,就能梯度下降——沿著下坡方向小步修正參數 \(\theta\) :

\[ \boxed{\theta \leftarrow \theta - \eta\, \nabla L \qquad (\eta\text{:學習率})} \]

每一次修正都讓預測更接近答案——這就是「學習」的數學定義。

第三條線索:三巨頭的獨門武器#

  • LeCun 的 CNN(1989/1998): 卷積神經網路(convolutional neural network)用滑動的小濾波器掃過影像:
\[ \text{卷積:} (I * K)(x, y) = \sum_{i,j} I(x+i, y+j)\, K(i, j). \]
  • 權重共享:同一個濾波器掃全圖——參數量大減、平移不變;
  • LeNet(1998):手寫數字辨識,讀取全美 10–20% 的支票;
\[ \text{影像} \xrightarrow{\text{卷積層}} \text{特徵圖} \xrightarrow{\text{池化}} \text{壓縮} \xrightarrow{\text{全連接}} \text{分類}. \]
  • Bengio 的序列建模: 語言是有順序的——遞迴網路(RNN)讓輸出迴饋成下一刻的輸入:
\[ h_t = \tanh(W_h h_{t-1} + W_x x_t + b). \]

seq2seq(Bengio 團隊,2014)用兩個網路把序列翻成序列—— 機器翻譯的原型;詞向量(word embeddings)讓「國王 − 男人 + 女人 ≈ 女王」。 - Hinton 的深度信念網路(2006): Boltzmann 機(1985):以能量函數定義機率的隨機網路:

\[ P(v) \propto e^{-E(v)}. \]

2006 年深度信念網路:用逐層預訓練(貪心、一次一層)解開深層訓練的死結——

\[ \boxed{\text{2006 是「深度學習」這個名字的誕生年}} \]

他還發明 Dropout(2012):訓練時隨機丟棄一半神經元,逼網路不依賴任何單一神經元—— 對抗過擬合的絕招。

Python:純 Python 實作兩層網路學習 XOR#

這是 Minsky 判死刑的題目——單層學不會,兩層輕鬆破解:

import math, random
random.seed(42)

X = [[0, 0], [0, 1], [1, 0], [1, 1]]
Y = [0, 1, 1, 0]

W1 = [[random.uniform(-1, 1) for _ in range(4)] for _ in range(2)]
b1 = [0.0] * 4
W2 = [random.uniform(-1, 1) for _ in range(4)]
b2 = 0.0

def sigmoid(z):
    return 1.0 / (1.0 + math.exp(-z))

eta = 0.5
for epoch in range(10000):
    for x, t in zip(X, Y):
        h = [sigmoid(W1[0][j] * x[0] + W1[1][j] * x[1] + b1[j]) for j in range(4)]
        o = sigmoid(sum(W2[j] * h[j] for j in range(4)) + b2)
        dO = (o - t) * o * (1.0 - o)
        dW2 = [dO * h[j] for j in range(4)]
        db2 = dO
        dH = [dO * W2[j] * h[j] * (1.0 - h[j]) for j in range(4)]
        dW1 = [[dH[j] * x[0], dH[j] * x[1]] for j in range(4)]
        db1 = dH[:]
        for i in range(2):
            for j in range(4):
                W1[i][j] -= eta * dW1[j][i]
        for j in range(4):
            W2[j] -= eta * dW2[j]
        b2 -= eta * db2
        for j in range(4):
            b1[j] -= eta * db1[j]

print("訓練 10,000 輪後的 XOR 預測:")
for x, t in zip(X, Y):
    h = [sigmoid(W1[0][j] * x[0] + W1[1][j] * x[1] + b1[j]) for j in range(4)]
    o = sigmoid(sum(W2[j] * h[j] for j in range(4)) + b2)
    print(f"  輸入 {x} → 預測 {o:.4f} → 取整 {round(o)}(目標 {t})")
輸出:
訓練 10,000 輪後的 XOR 預測:
  輸入 [0, 0] → 預測 0.0157 → 取整 0(目標 0)
  輸入 [0, 1] → 預測 0.9828 → 取整 1(目標 1)
  輸入 [1, 0] → 預測 0.9837 → 取整 1(目標 1)
  輸入 [1, 1] → 預測 0.0208 → 取整 0(目標 0)
四組預測全部命中:dO 是輸出層誤差 \(\times\) sigmoid 的導數, dH 是誤差回傳到隱藏層(鏈鎖律),梯度下降逐輪修正—— 1969 年的死刑判決,被 30 行 Python 徹底推翻。

結案 -- 後果與影響#

  • 深度學習改寫一切(2012–):
\[ \boxed{\text{語音辨識、影像、翻譯、圍棋、對話——全被神經網路重寫}} \]
  • 語音:Siri、Google 語音辨識(2012 起)錯誤率逐年腰斬;
  • 影像:AlexNet(2012)之後,電腦視覺錯誤率低於人類;
  • 翻譯:Google 於 2016 改用神經機器翻譯(NMT),品質跳躍;
  • AlphaGo(2016):DeepMind 的神經網路 + 搜尋擊敗李世石—— 圍棋,人類最後的智力堡壘陷落;
  • Transformer(2017):Vaswani 等人《Attention Is All You Need》 用注意力取代遞迴——大型語言模型(GPT、BERT)的火種。
  • 三巨頭的定位:
\[ \text{Hinton:反向傳播與深度信念網路} \quad\Big|\quad \text{LeCun:CNN 與電腦視覺} \quad\Big|\quad \text{Bengio:序列建模與深度學習理論} \]
  • Hinton:1986 反向傳播、2006 深度信念網路、2012 Dropout 與 AlexNet—— 革命的地基(他也在 Google 與多倫多大學任教);
  • LeCun:1989 卷積網路、1998 LeNet——今日 Facebook/Meta 的 AI 首席;
  • Bengio:seq2seq、詞向量、注意力機制的理論鋪路——蒙特婁學派的掌門。
  • 2018 圖靈獎的意義:
\[ \text{圖靈測試(1950)} \xrightarrow{\text{圖靈獎(2018)}} \text{「機器能思考嗎」的一個答案} \]

圖靈在 1950 年問「機器能思考嗎」—— 68 年後,這個問題的一種回答獲得了以他命名的最高榮譽。 不是符號邏輯派(1958 的 LISP 路線)先回答,而是被寒冬埋葬的神經網路。 - 寒來暑往的教訓:

\[ \text{狂熱(1958)} \to \text{寒冬(1969)} \to \text{復興(1986)} \to \text{第二次寒冬(1990s)} \to \text{革命(2012)} \]

1990 年代,CNN 打不過 SVM 等淺層方法,經費再度枯竭——第二次寒冬; LeCun 在貝爾實驗室被解散後一度無處可去,Bengio 在蒙特婁苦撐。 科學史的弔詭:正確的想法 + 錯誤的時機 = 被遺忘二十年; 算力與數據到位的那一刻,沉睡的思想甦醒。 - 歷史定位:三巨頭把「學習」變成工程——

\[ \text{圖靈機(1936)} \to \text{AI 誕生(1956/1958)} \to \text{感知機(1958)} \to \text{深度學習(2012/2018)} \to \text{LLM(2017–)}. \]

機器不是被告訴如何思考,而是自己學會了——這正是圖靈之問的迴響。

關鍵人物與文獻#

  • D. Rumelhart、G. Hinton、R. Williams:Learning representations by back-propagating errors, Nature(1986)——反向傳播的復興宣言。
  • Y. LeCun:Gradient-based learning applied to document recognition(1998,LeNet)——CNN 的工程聖經。
  • A. Krizhevsky、I. Sutskever、G. Hinton:ImageNet Classification with Deep CNNs(2012,AlexNet)——革命的引爆點。
  • A. Vaswani 等:Attention Is All You Need(2017)——Transformer 與大型語言模型的起點。
  • Y. Bengio:seq2seq、詞向量、深度學習理論(2014 起)。
  • F. Rosenblatt:感知機(1958);M. Minsky & S. Papert:《Perceptrons》(1969)——死刑判決。
  • 相關案件:1936-圖靈機.md、1958-麥卡錫LISP.md、1948-香農資訊理論.md。