人工智慧:一個演算法如何讓機器學會思考
於是,另一條路線悄悄浮現:與其教機器規則,不如讓機器自己學規則。這就是「連接主義」,也是今天我們所說的「機器學習」與「神經網路」的思想源頭。
二、演算法的骨架:機器「學會」的機制究竟是什麼
在談具體演算法之前,我們需要先建立一個共同的語言。今天我們所說的「機器學習」,幾乎都繞不開三個要素:模型、損失函數、優化方法。
模型:一個帶有大量可調參數的函數。你把輸入丟進去,它吐出一個預測。
損失函數:一把尺,用來衡量預測和答案之間差了多少。
優化方法:一套規則,告訴模型該怎麼調整參數,才能讓損失變小。
「學習」這個詞在這裡被賦予了一個非常具體的含義:調整參數,讓損失下降。機器並不是在「理解」世界,而是在搜尋一組能讓錯誤最小化的數字組合。這聽起來很降格,但正是這種降格,讓思考變成了可計算的問題。
感知器:第一個會調整自己的權重
1958年,弗蘭克·羅森布拉特提出了「感知器」(Perceptron)。它的構造簡單得令人失望:接收多個輸入,每個輸入乘以一個權重,加總之後,如果超過某個閾值就輸出1,否則輸出0。就是這麼一個線性分類器,卻包含了一個革命性的機制——它可以根據錯誤自動調整權重。
想像你要教一個從未見過蘋果的系統分辨蘋果。你給它看一張圖片,它猜錯了。感知器的學習規則會告訴它:把剛才那些導致錯誤的權重調小一點,把方向正確的權重調大一點。下一次再看到類似的圖片時,它的判斷就會往正確的方向靠近一步。這個過程不需要人類告訴它「蘋果是紅的、圓的」,它自己從錯誤中慢慢逼近一個可用的邊界。
這就是「學習」的雛形。不是被灌輸知識,而是透過回饋修正自己。羅森布拉特當時的樂觀程度,幾乎可以用狂熱來形容。他認為感知器終將學會一切,包括語言和意識。但很快,明斯基與派珀特在1969年出版的《感知器》一書中,用數學證明了單層感知器的致命限制:它連最簡單的「異或」(XOR)問題都無法解決。
異或問題的意思是:當兩個輸入相同時輸出0,不同時輸出1。你無法用一條直線把這兩類點分開。單層感知器只能畫直線,所以它永遠學不會異或。這個證明,加上當時對AI的過度承諾開始反噬,直接引發了第一次「AI寒冬」。
反向傳播:錯誤如何變成老師
如果單層不行,那就多層。多層神經網路的概念其實很早就有了,但問題是:當你有多層時,你要怎麼知道中間那些「隱藏層」的參數該怎麼調?輸出層錯了,你可以直接改輸出層;但隱藏層的錯誤是什麼?你根本看不到。
反向傳播演算法(Backpropagation)解決了這個問題。它的核心思想是微積分裡的鏈式法則:把輸出層的誤差,一層一層往回傳,算出每一個參數對最終誤差的「責任大小」,也就是梯度。有了梯度,就可以用梯度下降法更新參數。
這個過程可以用一個比喻來理解。想像一支足球隊輸了比賽。教練不會只罵前鋒,他會回頭分析每一次傳球、每一次跑位,看看是哪個環節導致了失球。反向傳播做的就是這件事:把最終的「輸球」這個結果,一層層拆解成每個球員的責任,然後讓每個人下次調整自己的跑位。
反向傳播在1980年代被多位研究者獨立提出並推廣,其中魯梅爾哈特、辛頓與威廉斯的1986年論文影響最深。它讓多層神經網路終於有了可訓練的方法。一時之間,研究者相信類神經網路的時代要來了。但現實是殘酷的:當時的資料量太小、算力太弱,深層網路訓練不起來,梯度會消失,模型會過擬合。於是,第二次AI寒冬在1990年代降臨。
從符號到統計:兩條路線的百年拉扯
在神經網路沉寂的那些年裡,另一條路線悄悄壯大:統計機器學習。支持向量機、隨機森林、隱馬可夫模型等技術,在語音辨識、垃圾郵件過濾、手寫辨識等任務上取得了實用成果。這些方法不需要模擬大腦,它們只需要數學上的良好性質。
於是,AI研究分裂成兩個陣營:一邊相信「智慧來自符號與邏輯」,另一邊相信「智慧來自資料與統計」。前者追求可解釋性,後者追求預測準確率。這場爭論持續了數十年,直到深度學習的崛起,才以一種粗暴的方式暫時分出勝負——不是因為統計派在哲學上輸了,而是因為神經網路在足夠的資料與算力下,表現得更好。
這段歷史告訴我們一件很重要的事:演算法的成敗,往往不是演算法本身的問題,而是它所處的時代有沒有足夠的燃料。同樣的引擎,裝在馬車上跑不起來,裝在賽車上就能破紀錄。
三、歷史腦洞:如果這些演算法早生一百年
歷史沒有如果,但「腦洞」有。想像一下,如果反向傳播的數學早在十九世紀就被寫出來,如果巴貝奇的分析機真的被造出來,如果二戰的密碼學家手上有GPU,AI的歷史會變成什麼樣子?
巴貝奇分析機遇上梯度下降
查爾斯·巴貝奇在1830年代設計了「分析機」,這是一台具有儲存、運算、控制流程的機械式計算機,概念上已經非常接近現代電腦。問題是,它始終沒有被完整建造出來。如果它被造出來了,而且有人把梯度下降的規則寫成齒輪與凸輪的運作邏輯,我們會不會在維多利亞時代就擁有一台「會學習」的機器?
答案是:也許會,但它學得很慢。機械計算的速度,大概比人類手算快不了多少。真正的瓶頸不在演算法,而在於你無法用蒸汽驅動的齒輪,去跑一個需要數百萬次迭代的優化過程。這也說明了一件容易被忽略的事:演算法的可行性,從來都是跟硬體綁在一起的。數學可以領先時代一百年,但工程不會。
戰時密碼學與類神經網路的平行宇宙
二戰期間,圖靈在布萊切利園破解恩尼格瑪密碼,靠的是統計分析與機電計算機的結合。如果當時的團隊裡,有人同時掌握了感知器的學習規則,會發生什麼事?
想像一台專門用來破解密碼的「學習機」:它不需要事先知道密碼的規則,而是透過大量已知的明文與密文配對,自動調整內部權重,找出隱藏的模式。這在概念上已經非常接近今天的深度學習。當然,以當時的算力,它大概只能處理最簡單的替換密碼。但這個平行宇宙裡的AI,會提早二十年進入「資料驅動」的範式,而不是等到1980年代才重新發現。
被錯過的兩次寒冬
歷史上的兩次AI寒冬,本質上都是「期望膨脹—成果不足—資金撤出」的循環。第一次是因為感知器的承諾落空,第二次是因為專家系統的成本太高、維護太難。如果我們能提早理解「規模」這件事——也就是資料量與算力對模型表現的非線性影響——也許寒冬不會那麼冷。
但換個角度想,寒冬也未必是壞事。它篩掉了那些只會喊口號的人,留下了真正相信數學的人。辛頓在神經網路最不被看好的年代,仍然堅持研究,最終在2012年的ImageNet競賽中,用AlexNet證明了深度學習的威力。那一年,他已經在冷板凳上坐了幾十年。
四、規模的魔法:為什麼同一個演算法等了七十年才「醒」
2012年,AlexNet在ImageNet影像辨識競賽中,把錯誤率從26%一口氣降到15%左右。這不是一個新演算法,它用的卷積神經網路、反向傳播、ReLU激活函數,大多在1980年代到1990年代就已經存在。真正改變的,是另外三件事:資料、算力、以及一個小小的工程技巧。
資料、算力與摩爾定律
ImageNet提供了上百萬張標註圖片,這是過去的研究者無法想像的資源。同時,GPU的平行運算能力,讓訓練深層網路的時間從數週縮短到數天。再加上Dropout等正則化技巧,解決了過擬合的問題。三件事湊在一起,讓一個「老」演算法突然活了過來。
這說明了一個很容易被忽略的規律:在AI的歷史裡,演算法的突破往往是漸進的,而系統層面的突破往往是跳躍的。當資料和算力跨過某個門檻,原本不work的方法就會突然work。這不是魔法,而是規模效應。
注意力機制:一種更聰明的「看」
2017年,Google的研究團隊發表了《Attention Is All You Need》,提出了Transformer架構。這個架構拋棄了循環神經網路的序列處理方式,改用「注意力機制」:讓模型在處理每一個詞時,能同時關注句子中所有其他詞的關聯程度。
注意力機制的直覺其實很人類。當你讀到「小明把球丟給小華,因為他力氣大」這句話時,你會自動判斷「他」指的是小明,而不是小華。這個判斷來自你對上下文關係的權衡,而不是嚴格的文法規則。注意力機制就是把這種「權衡」數學化:計算每個詞對其他詞的注意力權重,再根據權重加權求和。
Transformer的出現,直接催生了後來的GPT系列、BERT、以及今天我們熟悉的各種大型語言模型。它證明了架構設計的重要性:有時候,換一種方式讓模型「看」資料,比增加更多的層數更有效。
五、它真的在思考嗎:哲學與實務的交界
講到這裡,我們已經回答了「機器如何學會」的技術問題。但那個最原始的問題仍然懸在半空中:它真的在思考嗎?
中文房間與統計鸚鵡
哲學家約翰·瑟爾在1980年提出了「中文房間」思想實驗。想像一個不懂中文的人被關在房間裡,他收到寫著中文的字條,按照一本規則手冊查表,寫出對應的中文回覆遞出去。房間外的人以為他懂中文,但實際上他只是在操作符號,完全不知道意思。
瑟爾用這個實驗主張:符號操作不等於理解。一台通過圖靈測試的機器,可能只是那個房間裡的人。它沒有「意識」到自己在說什麼。
今天的語言模型,經常被批評為「統計鸚鵡」:它們善於預測下一個詞,但並不真的理解語意。你問它一個問題,它給出流暢的答案,但那個答案的來源是訓練資料中的統計規律,而不是對世界的內在模型。當你換一種問法,它可能就露出破綻。
這個批評有其道理,但也不完全公平。人類的思考,難道不也大量依賴統計與模式?你辨認一張臉、理解一句話,背後同樣是神經元對模式的權重調整。差別可能在於,人類有身體、有感官、有與世界互動的經驗,而模型沒有。
湧現能力與不可解釋性
大型模型最令人不安的地方,是「湧現能力」。某些能力(例如多步推理、翻譯、寫程式)在模型規模跨過某個門檻之後,突然出現,而且無法從較小模型的表現中預測。研究者發現,當參數數量增加到一定程度,模型會展現出訓練目標沒有明確要求的能力。
這某種程度上呼應了複雜系統的特性:整體大於部分之和。但這也帶來了嚴重的問題——我們無法解釋模型為什麼做出某個決定。它是一個黑箱。在醫療、法律、金融等領域,不可解釋性會成為部署的巨大障礙。
有人說,這就像人類的大腦:你也不知道自己為什麼突然想到一個點子。但人類至少能給出理由,即使那個理由是事後編造的。模型連事後編造的能力,都要靠另一個模型來生成。
六、給下一個七十年的備忘錄
回顧這段歷史,我們會發現,AI的發展從來不是一條直線。它更像是一連串的「準備—等待—爆發」。圖靈埋下種子,感知器點燃希望,寒冬澆熄熱情,算力重新點火,Transformer加速前進。每一次看似突然的突破,背後都有幾十年的數學累積與工程鋪墊。
如果我們要給下一個七十年寫一份備忘錄,也許可以記下這幾件事:
最後,回到那個最樸素的問題:一個演算法如何讓機器學會思考?答案也許是:它並沒有讓機器「思考」,它只是讓機器學會了「調整自己以減少錯誤」。但正是這個看似卑微的能力,在足夠的資料與算力加持下,湧現出了讓我們驚訝的行為。
這不是終點,而是另一個起點。下一個七十年,我們大概會繼續爭論同樣的問題,只是爭論的對象會換成更聰明的機器。而在那之前,理解這個演算法如何運作,理解它的能力與限制,或許是人類最該做的事。
畢竟,會思考的機器,最終還是人類寫出來的。我們怎麼寫它,它就怎麼思考。
```