從AlexNet到ChatGPT問世:背後神人
楊立昆開發的卷積神經網路(CNN)之後,人工智慧曾經差一點又走入隧道,還好這時候出現了一位神人--Ilya Sutskever,本文聊聊ChatGPT 背後大腦的故事。
電腦視覺(Computer Vision)主要嘗試教導電腦像人類一樣理解圖像。當你看到一個蘋果時,你立刻就明白它是一個蘋果。如何教導電腦理解圖像中的貓?
這是一張激活圖譜1(Activation Atlas),它讓我們一窺現代 AI 模型用來組織和理解世界的高維嵌入空間(embedding space)。第一個真正以這種方式「看見」世界的模型是 AlexNet,它於 2012 年發表在一篇震驚電腦視覺領域的八頁論文(如下圖,點擊可看論文)中,展示了當一個舊的 AI 概念被大規模擴展時,會產生多麼驚人的效果。該論文的第二作者 Ilya Sutskever 之後共同創辦了 OpenAI,並與團隊進一步放大這一概念,最終催生了 ChatGPT。
論文關鍵要點
AlexNet 的運作機制是深度卷積神經網絡,包含五個卷積層和三個全連接層,使用 ReLU 激活函數、局部響應正規化和 dropout 正則化。
該論文透過 GPU 計算首次展示深度學習在大型圖像分類任務上的成功,特別是在 ImageNet 競賽中表現優異。
研究顯示,雖然 GPU 在深度學習中早有應用,但 AlexNet 是第一個在高知名度競賽中展示深度學習潛力的模型。
AlexNet 的運作機制
AlexNet 是一種深度卷積神經網絡(CNN),其結構包括五個卷積層和三個全連接層。輸入是 224x224 的 RGB 圖像,經過以下處理:
第一層:使用 96 個 11x11 濾波器,步幅為 4,後接 ReLU 激活函數和最大池化。
第二層:使用 256 個 5x5 濾波器,步幅為 1,後接 ReLU 和最大池化。
第三至五層:分別使用 384 、384和 256 個 3x3 濾波器,步幅為 1,後接 ReLU,最後一層還有最大池化。
第六、七層:全連接層,各有 4096 個神經元,後接 ReLU 和 dropout(概率 0.5)。
第八層:全連接層有 1000 個神經元,後接 softmax 用於分類。
該網絡還使用數據增強技術(如圖像平移、水平翻轉)和局部響應正規化來提升泛化能力。
該網絡的訓練使用了多種技術來提升性能和泛化能力:
非線性激活:使用 ReLU 激活函數,相比傳統的 tanh 函數,訓練速度快數倍,論文中提到在 CIFAR-10 數據集上,ReLU 網絡達到 25% 訓練錯誤率的速度是 tanh 的六倍。
局部響應正規化:在某些層後應用,參數為 k = 2, n = 5, α =10-4, β = 0.75,減少 top-1 錯誤率 1.4% 和 top-5 錯誤率 1.2%。
重疊池化:使用步幅 2、池化大小 3 的重疊池化,相比非重疊池化(步幅 2、池化大小 2),減少 top-1 錯誤率 0.4% 和 top-5 錯誤率 0.3%。
dropout 正則化:在第一個和第二個全連接層使用,概率為 0.5,訓練迭代需要加倍,但有效防止過擬合。
數據增強:包括圖像平移、水平翻轉(將訓練集擴展 2048 倍),以及透過主成分分析(PCA)改變 RGB 通道強度,減少 top-1 錯誤率超過 1%。
這些技術的組合使得 AlexNet 能夠在 ImageNet 數據集上表現優異,該數據集包含 120 萬張圖像,1000 個類別。
GPU 計算在 AlexNet 中的角色
該論文的成功很大程度上依賴於 GPU 計算的應用。論文提到,網路在兩個 NVIDIA GTX 580 3GB GPU 上訓練,總共花費 5-6 天完成 90 輪對 120 萬張圖像的訓練。這些 GPU 每塊成本約 500 美元,每個提供 1.5 TFLOPs 的計算能力,遠超當時的 CPU。
為了適應 GPU 的記憶體限制(每塊 GPU 3GB),網路被分佈在兩個 GPU 上運行:
前幾層的卷積核分佈在兩個 GPU 上,只有某些層(如第三層)需要跨 GPU 通信,例如第三層的卷積核需要從第二層的所有映射中獲取輸入,而第四層則只從同一個 GPU 的映射中獲取。
這種分佈式設計減少了 top-1 錯誤率 1.7% 和 top-5 錯誤率 1.2%,訓練時間略少於單 GPU。
論文還提到,他們的實現高度優化了 GPU 上的 2D 卷積和其他操作,成為當時業界標準,推動了後續幾年的深度學習熱潮。
AlexNet 的特別之處在於它贏得了 2012 年 ImageNet Large Scale Visual Recognition Challenge(ILSVRC),top-5 錯誤率為 15.3%,比第二名低 10.8 個百分點,這一成績在當時震驚業界。相比之下,2011 年的優勝者使用傳統方法,錯誤率為 28.2%,而之前的深度學習模型如 Cireșan 等人在 2011 年的工作雖然在其他圖像數據庫上達到狀態藝術(state-of-the-art),但未在 ImageNet 上表現突出。
因此,該論文首次透過 GPU 計算達成深度學習的成功,意味著它展示了深度學習結合 GPU 加速能夠在最大、最具挑戰性的圖像分類任務上超越傳統方法,標誌著深度學習從理論走向實踐,開啟了 AI 的第三次浪潮。
這篇關於AlexNet的論文,這篇論文成為電腦科學領域被引用次數最多的論文之一,截至目前總共被其他研究人員引用了17萬多次。
Ilya Sutskever:ChatGPT 背後的大腦
DNNresearch 是一家由多倫多大學計算機科學系教授 Geoffrey Hinton 及其兩名研究生 Alex Krizhevsky 和 Ilya Sutskever 於 2012 年創立的初創公司,專注於深度神經網絡(Deep Neural Networks, DNNs)的研究,特別是在語音識別、圖像識別和自然語言處理等領域。該公司在 2013 年 3 月被 Google 收購,這一過程並非公開的拍賣形式,而是 Google 與 DNNresearch 團隊直接協商完成的交易。
交易的具體金額未公開,但根據《The Economic Times》等媒體的估計,收購成本約為 500 萬美元。據《紐約時報》和其他報導,Hinton 團隊的技術確實吸引了多家科技巨頭的興趣,包括微軟、IBM 和百度。雖然最終選擇了 Google,但這並不意味著存在公開拍賣,而是可能有多方私下接觸和競爭的情況。
DNNresearch 的技術被整合到 Google 的 AI 項目中,特別是 Google Brain 團隊。Hinton 在加入 Google 後,成為 Google Brain 的重要成員,推動了深度學習在圖像識別(如 Google Photos)和語音識別(如 Google Assistant)中的應用。
這一收購不僅增強了 Google 的 AI 能力,也標誌著深度學習時代的開啟,對後續的 AI 發展產生了深遠影響。
Krizhevsky 和 Sutskever 在 Google 的工作進一步推動了 AI 研究。值得注意的是,Sutskever 後來於 2015 年離開 Google,與 Elon Musk 和其他人共同創辦了 OpenAI,並成為其首席科學家。
GPT 模型的開發
Sutskever 在 OpenAI 的早期工作中,推動了「預測下一個詞」的理念,認為這是解決無監督學習問題的關鍵。他相信,通過讓神經網絡預測序列中的下一個元素,可以讓模型學習到數據背後的深層結構。
理解注意力機制
在 NLP 領域,注意力機制使模型能夠在產生輸出的同時集中註意力於輸入的特定部分。這與我們人類在理解句子時更加重視某些字詞的情況類似。此機制有助於模型掌握上下文並產生更精確的響應。
注意力在 GPT 模型中的作用
GPT 模型採用了一種獨特的注意力機制,稱為Transformer 注意力機制,其特徵是自注意力(Self-Attention)層。這些層使模型能夠評估輸入中各個單字相對於彼此的重要性,從而提供對文字更細緻入微的理解。
例如,考慮這個句子The cat, which is black, sat on the mat。在處理單字時sat,配備注意力機制的 GPT 模型會辨識出cat與動作的相關性,無論中間是否存在短語。
透過注意力提高 GPT 性能
注意力機制透過多種方式增強 GPT 模型的表現:
上下文理解:透過評估輸入中不同單字的重要性,注意力機制使 GPT 模型更能理解上下文,從而提高生成文字的準確性。
處理長距離依賴關係:注意力機制幫助 GPT 模型管理文本中的長距離依賴關係,其中一個單字的內涵可能會受到文本中遠處另一個單字的影響。
效率:注意力機制可以將運算資源集中在輸入中最相關的部分,從而提高模型的效率。
2016 年,OpenAI 發布了第一代 GPT 模型(GPT-1),這是一個基於 Transformer 架構的生成式預訓練模型。該模型引入了無監督預訓練的概念,即通過大量文本數據學習語言結構,隨後進行微調以適應特定任務。
如果深入 ChatGPT 的內部,你不會找到明顯的「智慧」痕跡,而是會看到層層疊疊的計算單元,稱為 Transformer,這也是 GPT(Generative Pre-trained Transformer)名稱中的「T」的由來。每個 Transformer 只是在輸入矩陣上執行一組固定的矩陣運算,然後輸出一個大小相同的矩陣。
ChatGPT 的運作方式如下
輸入處理:標記化和嵌入
首先,ChatGPT 將用戶輸入的文本拆解成標記(tokens),使用子詞分詞方法(如字節對編碼,BPE),這意味著標記不一定是完整的單詞,而是單詞的片段或字符組合。例如,「unhappiness」可能被拆解為「un」、「happy」、「ness」。每個標記通過嵌入層(embedding layer)映射為一個高維向量,通常維度為 768 到 12288,具體取決於模型大小。
這些向量按順序排列,組成一個矩陣,形狀為(序列長度 N,嵌入維度 d_model)。例如,如果輸入是 10 個標記,且 d_model 是 768,則矩陣形狀為 10x768。這個過程與用戶描述一致:「將你的輸入拆解成單詞和詞片段,並將每個詞映射到向量,然後將所有這些向量組成一個矩陣。」
Transformer 處理:層的迭代
接下來,這個矩陣被送入第一個 Transformer 模塊,該模塊包括自注意力(self-attention)機制和前饋神經網絡(feed-forward network),後接層正規化(layer normalization)和殘差連接(residual connections)。每個 Transformer 層處理輸入矩陣,產生一個形狀相同的輸出矩陣。
以下是每個組件的詳細說明:
自注意力機制(Self-Attention):
自注意力允許模型考慮輸入序列中所有標記之間的關係。對於每個標記,計算其與其他標記的注意力分數,公式為:
\(\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V\)其中 Q, K, V 是查詢(query)、鍵(key)和值(value)矩陣,dk是鍵的維度。
這一機制捕捉長距離依賴,特別適合處理語言序列。
前饋神經網絡(Feed-Forward Network, FFN):
每個 Transformer 層後接一個兩層的前饋網絡,通常是線性變換後接 ReLU 激活,公式為:
\(\text{FFN}(x) = \max(0, xW_1 + b_1)W_2 + b_2\)這一層為每個標記的表示添加非線性轉換,提升模型表達能力。
層正規化(Layer Normalization):
在自注意力與 FFN 後應用層正規化,穩定訓練過程,公式為:
\(\text{LayerNorm}(x) = \frac{x - \mu}{\sqrt{\sigma^2 + \epsilon}} \cdot \gamma + \beta\)其中 μ和 σ2 是均值和方差,γ 和 β是可學習參數。
殘差連接(Residual Connections):
每個子層(自注意力或 FFN)後添加殘差連接,公式為:
\(\text{Output} = \text{Layer}(x) + x\)這允許梯度直接流過層,緩解深層網絡的梯度消失問題。
這些組件的組合確保每個 Transformer 層都能處理輸入矩陣,產生一個形狀相同的輸出矩陣。例如,如果輸入矩陣形狀為(序列長度 N,嵌入維度 d_model),輸出矩陣也為(N, d_model)。
簡單地說,GPT模型將你的輸入拆解成單詞和詞片段,並將每個詞映射到向量,然後將所有這些向量組成一個矩陣。該矩陣被送入第一個 Transformer 模塊,產生一個新的矩陣。這個過程反覆進行——ChatGPT 3.5 進行 96 次,而 ChatGPT 4 甚至據說進行了 120 次。
最終的輸出矩陣的最後一列,經過向量轉換回文字後,就成為 ChatGPT 回應你的下一個單詞或詞片段。這個新的輸出會被附加到原本的輸入,然後再次輸入模型,如此循環,直到生成特殊的停止詞。
這就是真相! 一次又一次的矩陣運算,GPT 逐步將你的輸入轉化為它的輸出。
這些「計算方塊」是如何寫出文章、翻譯語言、總結書籍、解數學題、解釋複雜概念,甚至補上這段文字的下一行呢?答案就在於 大規模的數據訓練。
Sutskever領導了OpenAI對GPT-1的發明,後來發展成了GPT-2、GPT-3和ChatGPT。GPT模型是一系列基於神經網路的語言模型。每個GPT模型的反覆運算都是自然語言處理領域的重大進步。
GPT-1(2018年):這是該系列中的第一個模型,它在大量的互聯網文本資料集上進行了訓練。其中一個關鍵的創新是使用無監督的預訓練,在這種情況下,模型根據前面的單詞的上下文來預測句子中的單詞。這使得模型能夠學習語言的結構並生成類似於人類的文本。
GPT-2(2019年):在GPT-1的成功基礎上構建,它在更大的資料集上進行了訓練,結果產生了更強大的模型。GPT-2的一個主要進展是它能夠生成連貫流暢的文本段落,涵蓋廣泛的主題,使其成為無監督語言理解和生成任務中的關鍵參與者。
GPT-3(2020年):在規模和性能方面都取得了重大進展。它在大規模資料集上進行了訓練,使用了1750億個參數,比之前的模型要大得多。GPT-3在廣泛的語言任務上實現了最先進的性能,如問答、機器翻譯和摘要,具有接近人類的能力。它還展示了執行簡單編碼任務、撰寫連貫的新聞文章甚至生成詩歌的能力。
GPT-4於2023年發佈。
Sutskever幫助在2022年11月30日推出了ChatGPT,該系統迅速吸引了大眾的注意,並在短短5天內增長到了100萬用戶。
ChatGPT的工作原理是在大量的文本資料集上對深度神經網路進行預訓練,然後在特定任務上進行微調,例如回答問題或生成文本。它是基於GPT 3語言模型的對話式人工智慧系統。
ChatGPT的一個關鍵特點是理解對話的上下文並生成適當的響應。該機器人會記住您的對話執行緒,並基於之前的問題和答案進行後續的回應。
與其他聊天機器人不同,它通常僅限於預先程式設計的回應不同,ChatGPT可以即時生成回應,使其能夠進行更動態和多樣化的對話。
「ChatGPT非常出色。我們離危險的強人工智慧並不遙遠。」 — OpenAI共同創辦人Elon Musk
如同運動員的巔峰時期一般,從2012年到2022年,是Ilya Sutskever在深度學習與人工智慧領域最為關鍵的十年。這段期間,他對從AlexNet到ChatGPT的技術進步做出了不可磨滅的貢獻。除了AlexNet與GPT模型之外,許多重要技術的積累,也為他日後在ChatGPT的突破性發展奠定了堅實基礎。以下是他在這十年間的重要里程碑:
Sequence to Sequence Learning (2014)
Sutskever 是序列到序列(Seq2Seq)學習框架的主要開發者之一。他提出使用兩個循環神經網路(RNN)進行編碼與解碼,這一創新架構在機器翻譯等領域得到了廣泛應用,成為自然語言處理領域的基石之一。
TensorFlow (2015)
作為 Google Brain 的核心成員,Sutskever 參與了 TensorFlow 的開發。TensorFlow 迅速成為全球最廣泛使用的深度學習框架之一,極大地推動了人工智慧研究與應用的普及與發展。
OpenAI 與 GPT 系列
Sutskever 是 OpenAI 的聯合創始人兼首席科學家。他在 GPT 系列模型的開發中扮演了關鍵角色,尤其是 GPT-2 和 GPT-3 的突破性進展,讓自然語言處理技術邁向了新的高度,並為後續的 ChatGPT 奠定了技術基礎。
ChatGPT (2020)
Sutskever 推動了基於 GPT 的對話系統研究,使 ChatGPT 能夠生成高品質、流暢且符合語境的對話內容。這一成果不僅讓人工智慧與人類的互動更加自然,也開啟了生成式 AI 應用的新時代。
總結
Ilya Sutskever 從 AlexNet 到 ChatGPT 的貢獻,涵蓋了深度學習的基礎研究、框架開發與模型創新,對人工智慧技術的進步產生了深遠影響。可以說,若少了 Ilya Sutskever,人工智慧的發展時鐘在這十年間,或許會走得慢上許多。他的工作不僅塑造了當代 AI 的樣貌,更為未來的技術突破鋪平了道路。










