影片介紹了當今 LLMs (Large language models) 的訓練與使用,其中包括了資料收集與標注,以及訓練的三大階段。 Andrej 不過度深究單一模塊,同時把各個階段的核心概念講解得十分清楚。
倒數第二部分作者推薦了一些吸收新知的平台,以及他認為好用的開發、部署工具。
我認為本片適合本來就在 AI 領域的工作者、學者,可以拿來複習基礎概念,也可以順便檢驗自己是否有遺漏掉的知識。這部影片也適合剛踏入 AI 領域的新手,作者用淺顯易懂的圖片及語言把整個 LLMs 的流程走過一次。
前一個小時左右作者詳細介紹了訓練 LLMs 時常見的數據收集、處理方式。對於 tokenization 的部分著墨較多。
同時,作者介紹了 pre-training 與 post-training 的概念與對比,也介紹 training 與 inference 。對於 Transformer 基本原理不熟悉的話這邊可以學到很多。
此篇章作者用 LLaMA3 論文來說明 Meta 是如何處理 LLMs 亂講話的問題。他用以下比喻來說明 LLMs 的記憶功能
作者認為若知道 LLMs 背後運行的知識,問模型:「你是誰?」這個問題有點愚蠢。但太多人喜歡問這類問題,就像 DeepSeek 剛推出時因為沒處理好這題,被很多人拿出來嘲諷了一番。要妥善解決此問題,有以下兩個方法:
為何模型需要時間、需要 intermediate result 以達到更好的結果呢?作者從 Transformer 的架構本身來回答這個問題。
對於標註者來說,需要特別注意一些細節。舉例來說,若
Question = Human: "Emily buys 3 apples and 2 oranges. Each orange costs $2. The total cost of all the fruit is $13. What is the cost of apples?"
選項 A:"The answer is $3. This is because 2 oranges at $2 are $4 total. So the 3 apples cost $9, and therefore each apple is 9/3 = $3."
選項 B:"The total cost of the oranges is $4. 13 - 4 = 9, the cost of the 3 apples is $9. 9/3 = 3, so each apple costs $3. The answer is $3."
後者顯然比前者好上一大截。
我們在使用 o1, o3 這類型的模型時,可以明顯看到有很多 intermediate result (註: OpenAI 只有列出部分中間結果, DeepSeek 目前會列出所有中間思考過程)。要特別注意,這些 intermediate result 是給模型看的,不是給你看的😁
目前的模型可以解決數奧的難題,對於 9.9 與 9.11 誰比較大這樣的問題卻不一定可以答對。
作者建議我們不要全然相信目前的 LLMs ,我們要做的是把它當成工具使用,而非直接把結果複製貼上。
一般來說, LLMs 的訓練有三階段,作者用教科書的例子來讓大家這三個階段分別在做什麼:
在此階段,我們只重視 LLMs 是否回答正確(可接受),我們不在乎他的思考、推理過程。因此,我們也不會在此階段的訓練數據中提供詳解, LLMs 需要自己學出(想出)解答。
作者認為,目前 Pre-training 以及 SFT 的方式都已經相當公式化了,各家公司相差最大的是 RL 階段,這部分的概念雖然簡單,但實際上有很多數學上的細節可以探討,而這些微小差異會對模型最終行為產生巨大影響。
作者此處詳細探討了 DeepSeek 論文中的某章節中的結果。RL 階段中,隨著愈來愈多的 iterations ,模型產出愈來愈長的結果,最終表現也愈來愈好。而愈來愈長的結果是因為中間結果愈來愈多,但這些中間結果很多都是這種 "Wait, wait. Wait. That's an aha moment I can flag here. Let's reevaluate this step-by-step to identify if the correct sum can be..." 。如果是單純使用 SFT 訓練, human annotator 不可能這麼標注數據的。 RL 非常重要。
Andrej 說 Google AI Studio 介面很醜,因為 Google 就是沒有能力把它做漂亮😅
他用了 AlphaGO move 37 來舉例。當初這步棋讓全世界驚嘆了一下,事後來看是絕世好棋,但當下全世界沒有人這麼認為(有興趣可以去搜尋一下 move 37)。 如果不用 RL 只用人類標注數據, AI 永遠無法超越人類水平,最多只能逼近人類最佳水平。
只靠人類來做 RL 是不切實際的,因為人力有限。另外,有些任務很難衡量好壞(e.g. 這則笑話是否好笑?這首詩寫得好不好?)因此學者們使用了一個額外的 reward model 來做這件事。這個做法可以在統計上逼近人類裁判。
好處:我們可以讓 LLMs 運行在所有任務上,對於人類而言,選擇題比問答題簡單太多了(就像我們當學生時寫考卷一樣)。我們可以輕易判斷五則笑話中哪一則最好笑,卻很難幫單一則笑話打出分數。
壞處:RL 這個算法很容易鑽漏洞,尤其當它的裁判是另一個神經網路時(reward model)。目前的做法是 early stopping 。
本段落作者給出五條使用當前 AI tools 的建議與提醒:
我們高機率會看到: