在Deep Dive into LLMs like ChatGPT 這部影片中,OpenAI 創始成員、前 Tesla AI 團隊負責人 Andrej Karpathy 分享超過 3.5 小時的影片,深入解析 ChatGPT 與 AI 模型的運作原理。
此篇文章是此影片透過AI的重點整理。文章將深入探討大型語言模型(LLMs),特別是ChatGPT背後的技術和心理學原理。透過這篇文章,您將獲得對於如何訓練和使用這些強大工具的全面了解,並學會如何有效地利用它們來增強您的工作表現。
內容目錄
目錄
- 🌐 介紹
- 📊 後訓練數據(對話)
- 🔍 幻覺、工具使用、知識/工作記憶
- ⚙️ 模型的代幣化回顧:模型在拼寫上掙扎
- 🧩 鋸齒狀智能
- 🔄 監督微調到強化學習
- 🚀 DeepSeek-R1
- ♟️ AlphaGo
- 🔄 強化學習與人類反饋(RLHF)
- 🔮 期待未來的發展
- 📈 追蹤大型語言模型的動態
- 🔍 在哪裡找到大型語言模型
- 📝 總結
🌐 介紹
在這篇文章中,我們將探索大型語言模型(LLMs)如何運作,特別是ChatGPT背後的技術。這些模型能夠理解和生成自然語言,讓我們能夠與之進行對話。這一過程涉及多個階段,包括預訓練、標記化、神經網絡的輸入輸出等。每個階段都至關重要,因為它們共同構建了強大的人工智慧系統。
隨著人工智能和人工智慧技術的進步,這些模型的應用範圍也不斷擴大。從文字生成到對話系統,這些工具在各個領域都發揮著重要作用。接下來,將深入探討預訓練數據的來源,並了解如何將這些數據轉化為模型可以理解的格式。

🌍 預訓練數據(網際網路)
預訓練階段的首要任務是從互聯網上下載和處理數據。這一過程的核心在於獲取大量高質量和多樣化的文本數據,以便讓模型能夠學習到豐富的知識。許多大型語言模型的數據集,如OpenAI的Find Web數據集,都是通過這種方式構建的。
以Common Crawl為例,這是一個自2007年以來持續抓取網頁的組織。到2024年,Common Crawl已經索引了27億個網頁,這些數據為後續的模型訓練提供了基礎。這些數據經過一系列的過濾和處理,以確保最終用於訓練的文本是高品質的。

🔠 標記化
在將文本數據輸入神經網絡之前,我們需要將其轉換為模型可以理解的格式。這個過程稱為標記化,目的是將文本轉換為一維的符號序列。這些符號可以是單個字符、單詞或其他文本片段的組合。
在實際操作中,我們使用一種稱為字節對編碼(Byte Pair Encoding, BPE)的算法來進行標記化。這種方法會將常見的字節對合併為新的符號,從而減少序列的長度並增加符號的多樣性。最終的結果是,一個模型如GPT-4的詞彙表大小大約在100,000個符號左右。

🔗 神經網絡的輸入輸出
一旦文本被標記化,我們就可以將這些符號序列輸入到神經網絡中。這些神經網絡的設計目的是模擬文本中符號之間的統計關係。每次模型接收到一個序列,便會預測下一個最可能出現的符號。
這一過程中,模型會根據其內部參數和之前的輸入序列計算出每個可能符號的概率,並隨機選擇一個符號作為輸出。這種隨機性使得模型在生成文本時能夠產生多樣化的結果,而不僅僅是重複已知的文本。

🧠 神經網絡內部結構
神經網絡的內部結構是由大量的參數組成的,這些參數會在訓練過程中不斷調整。每個參數都可以看作是模型對特定輸入模式的反應。這些參數的初始設置是隨機的,隨著訓練的進行,模型會逐漸學習到如何更好地預測輸出。
現代神經網絡通常擁有數十億的參數,這使得它們能夠捕捉到複雜的語言模式。這一過程的核心在於優化,通過不斷調整參數以最小化預測誤差,從而提高模型的準確性。

🔍 推理過程
推理是指模型根據已經訓練好的參數生成新數據的過程。在這一階段,我們將輸入一些初始符號,然後模型將生成後續的符號序列。這一過程是隨機的,模型會根據概率分佈選擇最可能的下一個符號。
這種隨機性意味著每次生成的文本可能會有所不同,這使得模型在處理相似的輸入時能夠產生多樣化的輸出,而不僅僅是重複已見的文本。

🚀 GPT-2:訓練與推理
GPT-2是OpenAI發展的一個重要里程碑。它的發布標誌著大型語言模型技術的成熟。GPT-2擁有1.6億個參數,並且使用了大量的文本數據進行訓練。這使得它能夠生成相對連貫的文本,並在多個應用中表現出色。
在訓練過程中,GPT-2的模型會持續優化,逐步提高對文本生成的準確性。訓練過程中的損失函數是評估模型性能的關鍵指標,研究者會根據這一指標調整模型參數,以便達到最佳效果。

🐑 Llama 3.1 基礎模型推理
Llama 3是一個更大型的模型,擁有4050億個參數,並在更大規模的數據集上進行訓練。這使得它在生成文本時擁有更高的靈活性和準確性。Llama 3的基礎模型能夠生成自然流暢的文本,並在多種上下文中提供有意義的回應。
雖然Llama 3的基礎模型本身並不是一個完整的助手,但它能夠在適當的提示下生成有用的文本。這使得它在各種應用中都具有潛在的價值,並為未來的智慧助手奠定了基礎。
📊 後訓練數據(對話)
當我們談論後訓練階段時,最重要的就是如何構建和使用對話數據集。這些對話數據集是由人類標記者創建的,這些標記者根據特定的標記說明,為模型提供理想的助手回應。這意味著我們不只是隨意地收集數據,而是需要精心設計和策劃這些對話,以便讓模型學習如何在多回合的對話中進行有效的交流。
例如,當一個人問「二加二等於多少?」時,助手應回答「二加二等於四」。如果後續問題是「如果是乘法呢?」助手需要能夠靈活地回應。這種能力的養成依賴於大量的對話數據,這些數據中包含了各種主題和場景的例子。

💬 對話數據集的來源
這些對話數據集的來源主要是由人類標記者提供的。這些標記者會根據給定的上下文,撰寫出理想的助手回應。這樣的過程不僅需要人類的創造力,還需要他們對話題的深入理解。這些標記者通常會受到詳細的指導,確保他們的回應既有幫助又真實。

🔄 模型的再訓練
後訓練的過程中,我們將用這些對話數據集來進一步訓練模型。這意味著我們將用人類標記者創建的對話數據來替換掉原本的網頁數據。這樣,模型就能學習如何在真正的對話中進行互動,並模仿人類的反應。這個過程比起初始的預訓練要快得多,通常只需要幾小時。
🧠 認知能力的提升
透過這樣的再訓練,模型不僅學會了如何回答問題,還能夠在對話中展現出一定的「個性」。這意味著助手能夠根據上下文來調整其語氣和風格,讓對話更具人性化。例如,助手可以在某些情況下表現得更友好,而在其他情況下則保持正式的語氣。

🔍 幻覺、工具使用、知識/工作記憶
隨著模型在對話的訓練中變得越來越智慧,我們也開始面對一些挑戰,其中之一就是「幻覺」現象。這種現象指的是模型在回答問題時,有時會生成不準確或完全虛構的信息。這通常是因為模型在訓練時,根據訓練數據的統計特徵來生成回答,而不是基於實際的知識。
為了解決幻覺問題,模型的設計者們開始探索如何讓模型能夠更好地使用工具,例如網絡搜索。這不僅可以幫助模型獲取最新的信息,還能提高其回答的準確性。例如,當模型對某個問題不確定時,它可以選擇進行網絡搜索來獲取更多的信息。

💡 知識的自我認知
此外,我們還需要考慮到模型的自我知識。模型並不具備持久的自我意識,每次對話都是一個新的開始。這意味著當用戶詢問模型「你是什麼模型?」或「誰創造了你?」這類問題時,模型的回答往往是基於訓練數據中的統計模式,而不是基於真實的自我認知。

🧩 模型需要標記來思考
理解模型如何思考的另一個重要方面是標記化過程。模型在工作時,所有的輸入數據都需要轉換為標記。這意味著,模型的思考過程是基於一維的標記序列,而不是我們所熟悉的文字或句子。這種標記化的方式使得模型能夠更有效地處理和生成文本,但同時也限制了它在某些情境下的靈活性。

⚙️ 模型的代幣化回顧:模型在拼寫上掙扎
在探索模型的能力時,我們還發現了它在拼寫和字符層級任務上的不足。由於模型的運作是基於標記而非字符,這使得它在處理某些字符級任務時,表現得不夠理想。例如,當要求模型從一個單詞中每隔一個字符提取一個字符時,它往往會出現錯誤。
這是因為模型在處理文本時,無法像人類那樣直接訪問每個字符,而是需要通過標記來進行操作。這樣的設計雖然提升了效率,但也讓模型在某些基礎的拼寫任務上遇到挑戰。
🧩 鋸齒狀智能
隨著我們對模型的理解加深,我們發現模型的智能並不是均勻的,而是呈現出鋸齒狀的特徵。在某些情況下,模型能夠解決複雜的數學和科學問題,但在處理簡單的問題時卻可能會出現錯誤。這種不一致的表現提醒我們,模型的能力並不是一成不變的,並且在不同的上下文中可能會有不同的表現。

🔄 監督微調到強化學習
在訓練過程中,模型經歷了從監督微調到強化學習的轉變。這一過程不僅僅是為了提高模型的準確性,也是為了讓模型在面對新問題時能夠更靈活地應對。在強化學習的過程中,模型通過多次嘗試和錯誤來發現最佳的解決方案,這種自我學習的能力使得模型能夠不斷進步。

🔍 強化學習的應用
強化學習的應用不僅限於數學問題,還可以擴展到其他領域,例如自然語言處理和圖像識別。這意味著,隨著技術的進步,模型將能夠在更複雜的環境中進行決策,並執行更具挑戰性的任務。這一過程將帶來更智慧的助手,能夠在各種情境中提供幫助。

🚀 DeepSeek-R1
DeepSeek-R1是最近出現的一個強化學習模型,專注於提高大型語言模型的推理能力。這一模型的實現基於大量的數據和強化學習技術,顯示了強化學習在提升語言模型能力上的潛力。DeepSeek-R1在解決數學問題的準確率上顯著提高,為其他模型的發展提供了重要的參考。

♟️ AlphaGo
AlphaGo 是 DeepMind 開發的一個突破性系統,它在圍棋遊戲中展現了強大的強化學習能力。這個系統不僅能夠與人類頂尖選手競爭,還能自我學習,發現新的策略。AlphaGo 的成功在於它能夠進行大量的自我對弈,通過強化學習來提升其遊戲水平。
在這個過程中,AlphaGo 不是單純地模仿人類專家,而是通過不斷試驗和反饋來找到最佳的行動序列。這一點類似於大型語言模型在解決問題時的學習過程。
🔄 強化學習與人類反饋(RLHF)
強化學習從人類反饋的概念是將人類評價納入到強化學習的過程中。這種方法可以讓模型在面對不易評估的任務時,依然能夠學習和改進。具體來說,這涉及到建立一個獨立的獎勵模型,這個模型模擬人類的評價,並用來指導模型的學習過程。
這一過程中,標記者會對生成的內容進行排序,而不是給出具體的分數,這樣可以減少人類標記的負擔。最終,模型可以通過這些反饋來改進其生成的內容,從而提高性能。

🔮 期待未來的發展
隨著技術的進步,我們可以期待大型語言模型將會變得更加多樣化和智能。例如,未來的模型可能會具備多模態的能力,不僅能處理文本,還能理解和生成音頻和圖像。這意味著我們將能夠進行更自然的對話和交互。
此外,這些模型的能力將不僅限於處理單一任務,未來的模型將能夠進行更長時間的任務執行,並且在這一過程中進行自我監督和報告進度。

📈 追蹤大型語言模型的動態
要跟上大型語言模型的最新動態,您可以參考幾個主要的資源。首先,LM Arena 是一個 LLM 排行榜,通過人類比較來評價模型的性能。這使得用戶可以更直觀地了解各個模型的優劣。

🔍 在哪裡找到大型語言模型
對於尋找大型語言模型,您可以直接訪問相應的提供商網站。例如,OpenAI 的 ChatGPT 可以在 chat.openai.com 使用,而 Google 的 Gemini 則可以在 gemini.google.com 上找到。
此外,一些較小的模型也可以在個人電腦運行,這意味著您可以在自己的電腦上進行實驗和開發。這種靈活性使得開發者和研究人員能夠更好地探索和利用這些強大的工具。

📝 總結
在這部影片中,Andrej Karpathy 探討了大型語言模型的運作原理以及未來的發展潛力。從 AlphaGo 的強化學習到 RLHF 的應用,這些技術正在不斷推動人工智慧的邊界。
隨著這些模型的進步,我們可以期待它們在各個領域的應用將會越來越廣泛,並且能夠解決更複雜的問題。這是一個令人興奮的時代,讓我們一起期待人工智能的未來!(這篇文章將重點濃縮,當然想了解細節的朋友, 建議觀看 3.5小時的影片)

