核心採樣(Nucleus Sampling)是什麼?

根據累積機率選擇詞彙範圍,只從機率累計達到設定閾值(如 90%)的最少詞彙中採樣,比 Top-k 更能適應不同機率分布。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Nucleus Sampling
主題標籤
大型語言模型、生成式AI、Prompt工程
考點定位
非 iPAS 核心術語
最後更新
2026/06/22
核心採樣(Nucleus Sampling)是什麼? 大型語言模型生成式AI
術語快查

搜尋意圖: 如果你在找「核心採樣 是什麼」或「核心採樣 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 根據累積機率選擇詞彙範圍,只從機率累計達到設定閾值(如 90%)的最少詞彙中採樣,比 Top-k 更能適應不同機率分布。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

根據累積機率選擇詞彙範圍,只從機率累計達到設定閾值(如 90%)的最少詞彙中採樣,比 Top-k 更能適應不同機率分布。

核心概念

核心採樣的核心思想是:在不同的上下文中,最可能的詞彙集合的大小可能差異很大。有時前 5 個詞彙就包含了 90% 的機率,有時需要前 100 個詞彙才能達到 90% 的累積機率。

Top-k 採樣總是選擇固定數量的詞彙,可能導致兩個極端:當機率分布高度集中時,k 個詞彙可能包含遠超 90% 的機率,低機率詞彙仍會被包含;當機率分布平坦時,k 個詞彙可能不足以達到 90% 的機率。

核心採樣透過固定機率而非詞彙數量來解決這個問題。參數 p(通常 0.8-0.95)定義了目標的累積機率。演算法選擇最少的詞彙集合,使其累積機率達到或超過 p。

運作原理

分步演算過程

步驟 1:計算機率。應用 softmax 將 logits 轉換為機率分布。

步驟 2:排序。將詞彙按機率從高到低排列。

步驟 3:累積求和。從最高機率詞彙開始,累加機率。

步驟 4:截斷。找到第一個使累積機率達到或超過 p(如 0.9)的位置。

步驟 5:掩蔽。將該位置之後的詞彙機率設為 0。

步驟 6:歸一化。對保留的詞彙的機率進行歸一化。

步驟 7:採樣。根據歸一化後的機率分布隨機選擇詞彙。

數學表達

設詞彙按機率從高到低排列,累積機率函數為 C(i) = Σ(j=1 to i) p_j。核心採樣選擇最小的 k,使得 C(k) ≥ P(其中 P 是目標累積機率,如 0.9)。

這確保選出的詞彙集合是最小的,同時滿足累積機率要求。

實際應用

應用優勢

核心採樣在實務中非常有效,因為它自動適應不同的機率分布。在 GPT-2 和 GPT-3 的官方文件中,都推薦使用 nucleus sampling(通常設 p=0.9 或 p=0.95)。

許多商業 API(包括 OpenAI 的 ChatGPT)在其預設設定中使用核心採樣。這反映了它在實務應用中的廣泛成功。

不同 p 值的效果

p=0.5:只保留最可能的詞彙,輸出高度確定且可預測 p=0.9:平衡多樣性和品質,適合大多數應用 p=0.95:保留更多詞彙,增加多樣性 p=0.99:幾乎不排除任何詞彙,接近無限制採樣

應用場景

  • 對話系統:p=0.9 能提供自然且多樣的回應
  • 內容生成:p=0.95 允許創意同時避免古怪輸出
  • 摘要生成:p=0.85 保持重點同時避免低品質詞彙
  • 機器翻譯:p=0.85-0.9 平衡準確性和流暢性

常見誤區

誤區 1:核心採樣就是 Top-p 採樣。這在技術上是正確的(nucleus 就是 Top-p),但「核心」這個名字強調了其自適應和高效性的核心特徵。

誤區 2:p 值對應於「品質百分比」。p 不是質量指標,而是機率閾值。p=0.9 不表示輸出有 90% 的品質,而是選擇的詞彙包含 90% 的累積機率。

誤區 3:核心採樣總是優於 Top-k。在某些情況下,Top-k 可能更好。例如,如果想確保選擇的詞彙數量有界(用於效能敏感的系統),Top-k 更合適。

誤區 4:核心採樣不需要調參。雖然 p=0.9 是通用起點,但最佳值取決於應用。有些任務可能需要 p=0.85,有些需要 p=0.95。

誤區 5:p 值對所有詞彙位置都相同。這是設計所致,也是其自適應性的來源。高度集中的機率分布可能只保留 5-10 個詞彙,平坦的分布可能保留 100+ 個。

與相關技術的比較

核心採樣 vs Top-k 採樣

  • 核心採樣基於累積機率(動態詞彙數量)
  • Top-k 基於詞彙排名(固定詞彙數量)
  • 核心採樣更能適應不同的機率分布
  • Top-k 更簡單,更容易預測候選集大小
  • 核心採樣在實務中通常效果更好

核心採樣 vs 溫度採樣

  • 溫度採樣改變機率分布的形狀
  • 核心採樣限制候選詞彙的範圍
  • 兩者可結合使用,先溫度後核心採樣
  • 溫度更適合調整「決定論」程度
  • 核心採樣更適合控制「多樣性邊界」

核心採樣 vs Beam Search

  • 核心採樣是每步隨機選擇
  • Beam search 同時跟蹤多個候選序列
  • 核心採樣用於需要多樣化輸出的任務
  • Beam search 用於需要最優序列的任務
  • 實務中常結合使用

核心採樣 vs Greedy Decoding

  • 核心採樣保留多樣性
  • Greedy 總是選擇最優
  • 核心採樣適合開放式任務
  • Greedy 適合確定答案的任務

核心採樣已成為現代 LLM 推論中的標準方法,大多數商業服務都默認使用或推薦使用它。

常見問題

核心採樣中 p=0.9 是否意味著有 10% 的機率選到錯誤的詞彙?

不是。p=0.9 表示選出的詞彙累積機率達到 90%,這 90% 內的詞彙都是「合理」的候選。剩餘的 10% 機率完全被排除,不會被選中。換句話說,核心採樣完全避免了機率最低的 10% 的詞彙,這些詞彙往往是模型的「錯誤」或「古怪」輸出。

核心採樣中,如果機率分布非常平坦,會發生什麼?

在平坦的機率分布中(例如詞彙表 100k 詞,每個機率都很接近),為了達到 p=0.9 的累積機率,可能需要保留數萬個詞彙。此時核心採樣變得接近無限制採樣。這通常表示模型在該位置的信心很低,多個詞彙都「合理」。在這種情況下,結合使用溫度調整可以控制分布的集中度。

核心採樣和 Top-k 採樣可以同時使用嗎?

可以。許多實現支持同時使用 Top-k 和核心採樣。操作順序通常是先應用核心採樣選擇詞彙集合,然後進一步應用 Top-k 限制(如果該集合仍然過大)。例如,先用 p=0.9 篩選,再用 k=50 限制。這提供了雙重安全保護。