跳轉到

1969 - Minsky–Papert 批判(XOR:謀殺神經網路的十七年寒冬)#

案件摘要#

1969 年,MIT 的 Marvin Minsky 與 Seymour Papert 出版《Perceptrons》, 以嚴格的數學分析證明:單層感知器無法解決 XOR(互斥或)問題,也無法解決連通性、奇偶性等一堆看似簡單的問題。 這本書數學上無懈可擊,卻被外界解讀為「神經網路此路不通」——資金與研究全面撤離,神經網路寒冬降臨長達 17 年。 兇手不是 XOR,而是單層與多層之間那道無人能跨越的牆。

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

  • 感知器的過度承諾:《紐約時報》與 Rosenblatt 的誇大宣傳(見「1957-Perceptron感知器.md」)使 AI 界對神經網路期待過高。
  • 學界的懷疑:Minsky 早在 1951 年就建造過 SNARC 神經網路機,深知其細節;他認為感知器的收斂定理「只適用於線性可分」,實用性被嚴重誇大。
  • Minsky–Papert 的偵探手法:與其爭論,不如用群論與幾何逐案分析感知器的能力邊界——把「感知器能做什麼」變成精確的數學判決書。
  • 資助的轉向:1969 年正值符號 AI 黃金年代,國防資助轉向搜尋與知識表示——《Perceptrons》成為撤資的正當理由。

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

第一案:XOR 的死刑判決#

XOR 真值表: \((0,0)\to 0,\ (0,1)\to 1,\ (1,0)\to 1,\ (1,1)\to 0\) 。 單層感知器的決策邊界是直線 \(w_1 x_1 + w_2 x_2 + b = 0\) 。要求: - \((0,0)\) 在負側: \(b < 0\) - \((1,1)\) 在負側: \(w_1 + w_2 + b < 0\) - \((0,1)\) 在正側: \(w_2 + b > 0\) - \((1,0)\) 在正側: \(w_1 + b > 0\)

由後兩式相加: \(w_1 + w_2 + 2b > 0\) ;與前兩式相加: \(w_1 + w_2 + 2b < 0\) ——矛盾。 結案:任何直線都殺不死 XOR。感知器在幾何上無解。

第二案:連通性與奇偶性#

Minsky–Papert 用更強的武器——群論的對稱論證: - 奇偶性 (parity): \(d\) 維輸入的 parity 函數,對任何單層感知器,所需權重階數(order)隨 \(d\) 發散——局部感知器永遠學不會。 - 連通性 (connectedness):判斷圖形是否連通需要「全域」資訊,單層感知器只有「局部」感受野——原理上不可能。

第三案:翻案的線索——多層可以!#

Minsky–Papert 在書中其實承認:多層網路(多層感知器,MLP)可能解決這些問題。XOR 用兩層即可:

\[ y = H\big(v_1 H(w_1x_1+w_2x_2+b_1) + v_2 H(w_3x_1+w_4x_2+b_2) + c\big). \]

取第一層為 OR ( \(w=(1,1), b_1=-0.5\) ) 與 NAND ( \(w=(-1,-1), b_2=1.5\) ):

\[ (x_1 \vee x_2) \wedge \neg(x_1 \wedge x_2) = x_1 \oplus x_2. \]

但多層網路無人會訓練——第一層的隱藏單元沒有「正確答案」,誤差無法直接指導權重更新。 Minsky 在書末寫道:「多層感知器的學習問題是重要的研究方向……我們認為它將是艱難的。」 這個缺口,等 1986 年反向傳播(見「1986-反向傳播演算法.md」)才能補上。

Python:XOR 的幾何死刑與兩層翻案#

import numpy as np

def H(x): return 1 if x >= 0 else 0
# 單層判決:窮舉權重,找無解證據
X = [(0,0),(0,1),(1,0),(1,1)]; t = [0,1,1,0]
found = False
for w1 in range(-5,6):
  for w2 in range(-5,6):
    for b in range(-5,6):
      if all(H(w1*x1+w2*x2+b) == tt for (x1,x2),tt in zip(X,t)):
        found = True
print("單層存在解?", found)   # False

# 兩層翻案:OR ∧ NAND = XOR
for (x1,x2), tt in zip(X, t):
    y = H(H(x1+x2-0.5) + H(-x1-x2+1.5) - 1.5)
    print(f"XOR({x1},{x2}) = {y} (目標 {tt})")
輸出:
單層存在解? False
XOR(0,0) = 0 (目標 0)
XOR(0,1) = 1 (目標 1)
XOR(1,0) = 1 (目標 1)
XOR(1,1) = 0 (目標 0)

結案 -- 後果與影響#

  • 神經網路寒冬(1969–1986):資助與論文斷崖式下跌;Rosenblatt 的 Cornell 實驗室解散;聯結主義僅剩少數「地下偵探」持續辦案(Werbos、Hopfield、Fukushima、Rumelhart)。
  • 數學影響:《Perceptrons》的能力邊界分析成為計算學習理論的先驅;奇偶性與連通性成為經典「難題案例」。
  • 歷史的諷刺:
  • 判決書說的是「單層」不行,外界聽成「神經網路」不行——過度解讀謀殺了學科。
  • 批判者 Minsky 的 MIT 實驗室日後正是反向傳播的誕生地(Hinton、Rumelhart 都與 MIT 有淵源)。
  • 1986 年的翻案:反向傳播使多層網路可訓練,XOR 一夜之間成為教科書的入門練習(見「1986-反向傳播演算法.md」)——17 年寒冬結束。
  • 歷史教訓:正確的數學批判 + 錯誤的大眾解讀 = 一場本可避免的謀殺。

關鍵人物與文獻#

  • M. Minsky & S. Papert:《Perceptrons》, MIT Press (1969)。
  • F. Rosenblatt:被批判方(見 1957-Perceptron感知器.md)。
  • P. Werbos:1974 年博士論文首創反向傳播——寒冬中的地下破案。
  • 相關案件:1957-Perceptron感知器.md、1986-反向傳播演算法.md。