超越 Chinchilla:如何在訓練與推論成本之間取得平衡?

🌏 Read this article in English


PM 轉發了一篇論文。附註:「這是不是我們的下一步?」

你打開成本報表。推論費用佔比 45%。

你盯著 Chinchilla 的公式,發現它沒告訴你這筆帳怎麼算。

在推論需求極高(例如 ~10^11 tokens)的情境下,訓練一個「更小、但讀過更多資料」的模型,反而比嚴格遵循 Chinchilla 最佳化規則更省錢。

這聽起來違反直覺。過去兩年,業界奉行的法則是「按固定比例放大模型與資料」。但當你把推論成本算進總帳時,這個黃金比例就失效了。

這篇來自 MosaicML 與 Databricks 的研究(2024),補上了 scaling law 裡最關鍵的一塊拼圖:推論(Inference)不是訓練的附屬品,而是決定模型體型的變數。

Chinchilla 的適用範圍:訓練算力最佳化

要理解這篇論文,我們得先回歸「前傳」。

2020 年,Kaplan 等人發表了第一篇 Scaling Law,發現模型表現與參數數量、資料量呈對數線性關係。但當時的公式還很粗糙,沒有給出具體的最佳化建議。

2022 年,Hoffmann 等人發表了著名的 Chinchilla 論文。他們系統性訓練了多組不同規模的模型,得出一個讓全業界振奮的結論:

Chinchilla 法則:對於給定的運算預算(Compute Budget),存在一個「黃金比例」,即每個參數對應的訓練 token 數(約 20 tokens/parameter)。

簡單說,Chinchilla 告訴工程師:「如果你只有 100 萬美元的訓練預算,不要只靠堆參數,要同時增加資料量,並嚴格控制兩者比例。」

這套法則在「訓練階段」極其精準。但它的假設有一個盲點:它假設推論成本可以忽略不計。

Chinchilla 的優化目標是「在固定訓練算力下,達到最高模型品質」。它沒有考慮模型訓練好之後,會被部署多少次、被多少用戶調用。

這就是這篇新論文要解決的痛點。

核心機制:推論需求如何反轉最佳化方向

這篇論文(以下簡稱「新論文」)做了一個簡單的數學修飾:

總成本 = 訓練成本 + 推論成本

在 Chinchilla 的框架裡,總成本 ≈ 訓練成本。 在新論文的框架裡,總成本 = 訓練成本 + (推論次數 × 每次推論的算力成本)。

當推論次數很少時,新論文的結論與 Chinchilla 幾乎一致。 但當推論次數達到「高需求」情態(例如 ~10^11 tokens)時,數學關係發生了反轉。

邊際成本的視角

想像你在規劃雲端基礎設施。

  • Chinchilla 的邏輯(一次性投入): 你有一個固定的「總預算」(訓練算力)。為了在單一任務(訓練)中獲得最高效能,你選擇了能達成目標的模型規模。這在訓練階段是合理的。

  • 新論文的邏輯(長期服務成本): 你發現這台模型不是「跑一次」,而是「每天 24 小時處理百萬次 API 請求」。 這時,大模型每次請求的邊際算力、記憶體頻寬與服務成本會迅速累積。 最佳解變成了:選擇更小、更高效的模型,然後花更多時間訓練它(過度訓練),以彌補容量的不足。

為什麼?為了達到相同的模型品質,訓練一個比 Chinchilla 建議更小的模型,其實需要增加訓練算力(因為必須用更多資料來彌補參數的不足)。但只要推論次數夠多,小模型長期省下的推論成本,會遠大於初期多付出的訓練成本。

關鍵因果鏈: 推論需求極高 → 推論成本主導總成本 → 必須壓低單次推論的算力消耗 → 選擇更小的模型尺寸 → 為了維持目標品質,必須投入額外的訓練算力(用更多資料過度訓練) → 最終:推論省下的錢 > 訓練多花的錢。

這就是為什麼論文標題說「Training Smaller, Longer」。

真正重要的結果:具體數字與驗證

這篇論文不是空談理論。他們訓練了 47 個模型,驗證了 scaling law 在極端範圍下的行為。

以下是三個對實務決策至關重要的發現:

1. 黃金比例會隨推論需求移動

Chinchilla 說黃金比例是 20 tokens/parameter。 新論文發現,當推論需求達到 ~10^11 tokens 時,最佳比例會大幅上升。

具體數字:

對於一個 7B 參數規模(Chinchilla 品質)的模型,若預期推論需求為 10^11 tokens,最佳策略是訓練一個 6B 參數的模型,並使用 1.18 倍的 Chinchilla 建議資料量。

注意這個細節:模型變小了(7B → 6B),但資料變多了(1.18x)。 這聽起來很矛盾,但數據顯示,這樣做在總成本(訓練+推論)上是最優的。

2. 模型品質在極端比例下仍持續提升

Chinchilla 的數據集中在標準比例(≤ 100 tokens/parameter)。 新論文將比例拉到極端(up to 10,000 tokens/parameter),發現:

模型品質沒有出現飽和點(Saturation Point),而是持續改善。

這意味著,如果你願意承擔更多的訓練時間,你可以用更小的模型達到同樣的品質。這為「小模型、大資料」的策略提供了數據支撐。

3. 外推法的適用邊界

論文指出,如果只用 Chinchilla 的標準數據(低比例)來擬合 scaling law 係數,會高估額外資料在極端比例下的影響力。

簡單說:Chinchilla 的公式在「高比例」區間的外推誤差會增加。如果你直接套用 Chinchilla 的公式來規劃高推論需求的專案,你會訓練出「太大、資料太少」的模型,導致推論成本快速上升。

你的判斷:適用邊界與取捨

這篇論文給出了一個清晰的決策矩陣。但「更小、更長」的策略不適合所有工作流。

適合的情境

  • 高頻服務模型:你的模型會被 API 調用數百萬次,或用於即時推薦系統。
  • 成本敏感型產品:推論成本已成為主要 OpEx 項目。
  • 邊緣部署:需要在資源受限的設備(如手機、IoT)上運行。

不適合的情境

  • 低頻、高複雜度任務:例如科學研究、長文本生成。這些任務需要更強 zero-shot 泛化、長上下文整合或複雜推理能力。若任務品質主要受這些因素限制,需另做評估。
  • 訓練算力極度匱乏:如果你連訓練小模型所需的算力都沒有,那就只能依賴預訓練模型(Pre-trained Models)的微調,而非從頭訓練。

取捨:時間 vs. 空間

「訓練更小、更長」的本質,是用訓練時間換取推論效率

  • 代價:你需要更長的訓練週期,更龐大的資料集,以及更複雜的資料處理流程。
  • 收益:長期來看,推論成本大幅下降,模型響應速度更快。

這不是對錯的問題,是選擇的問題。 如果你的產品是「一次性」的(例如一次性的報告生成),Chinchilla 依然有效。 如果你的產品是「持續服務」的(例如聊天機器人、翻譯 API),新論文的建議是值得我們重新審視模型規模與資料量關係的契機。

為什麼許多團隊還是選大模型?

這裡有一個財務流程上的現實。

「訓練成本」是一次性帳目,容易審批;「推論成本」是持續性的 OpEx,容易在月度報表中被忽略。許多團隊在決策時會受一次性訓練成本與月度 OpEx 可見度影響,傾向選擇大模型以降低初期審批難度。

理解審批節奏,才能看懂誰在承擔真正的風險。

Follow the risk。 供應商與採用方承擔的風險類型不同,採用方需要管理長期推論 OpEx。 當推論次數足夠多時,風險從「訓練不如預期」轉移到了「維運成本」。

可查證來源與限制

這篇論文的核心主張基於對 47 個模型的實測,以及對計算優化公式的推導。

關鍵引用:

作者標註的限制(Caveats):

  1. MFU 的差異:推論時的硬體利用率(MFU)通常低於訓練時,差距依硬體與 workload 而變。論文已將此差異納入成本計算,但實際環境的硬體配置(如 GPU 型號、網路頻寬)會進一步影響結果。
  2. 資料品質:論文的結論依賴資料品質可維持;若資料品質下降,收益會受影響。但在實務中,獲取高品質、無偏誤的額外資料極其困難。資料汙染(Data Contamination)的風險隨資料量增加而上升。
  3. 市場訊號尚未明朗:隨著硬體技術進步(如專推論晶片),推論成本可能會下降。未來的最佳化比例可能會再次移動。

結論

值得把推論次數納入 scaling law 的早期假設。

Chinchilla 給了你一把尺。但尺量的是訓練成本,不是總成本。 當你把推論算進去,那把尺還準嗎?

推論量越早進入規劃,模型尺寸的選擇越可控。

你的產品是「一次性報告」還是「持續服務」?這決定了模型尺寸與訓練資料比例該往哪裡移動。 這筆帳,值得在模型選型前先算一次嗎?