返回首頁

GitHub Repo

Transformers 提出 Top-H 採樣修補,校正熵預算與候選詞篩選

Transformers 社群於 11 月 8 日提出修補,處理 Top-H 採樣實作偏離論文規則、保留過多或過少候選 token 的問題。作者回報局部回歸測試通過,但提案尚未合併,實際生成品質與效能影響仍待驗證。

Marcus Qwertyus · Public domain · Image source
zh-Hant

Transformers 社群於 11 月 8 日提交 PR #50471,修正 TopHLogitsWarper 的熵計算方式。這是針對 11 月 1 日問題回報提出的修補:當使用者以 do_sample=True 搭配 top_h 生成文字時,現有實作選出的候選 token 集合,可能與文件描述的規則不同。截至查核時,提案仍為開啟狀態,不能視為正式套件已修復。修補提案

Top-H 是以熵限制採樣範圍的解碼方法。研究將截斷採樣表述為受熵約束的最佳化問題,再以貪婪演算法近似求解,目的是在生成多樣性與連貫性之間調整取捨。它利用機率分布資訊決定保留範圍,因此參數的實際意義取決於熵的計算方式;論文本身早於這次修補發布,並非本週的新模型或新研究。Top-H 論文

問題包含兩部分:原實作只用機率最高的 100 個候選計算熵預算,忽略完整詞彙分布的長尾;判定保留範圍時,又使用未重新正規化的部分熵。回報者在 Transformers 5.22.1 提供不需下載模型的重現:同樣設定 top_h=0.4,50 詞的 Zipf 分布保留 6 個 token,參考規則應保留 4 個;49,152 詞的案例則只保留 8 個,參考值為 25 個。偏差方向會隨分布改變。問題與重現程式

提案改由完整分布計算預算,並依候選前綴的累積機率質量,求出重新正規化後的熵,同時保留既有 100 個候選上限。作者回報相關測試檔有 62 項通過,涵蓋不同分布、遮罩及半精度等情境。對工程團隊而言,這意味著相同採樣參數在修補前後可能產生不同結果;評測應記錄套件版本,並比較候選集合、輸出品質與延遲。目前證據主要支持規則一致性,尚不足以宣稱中文生成或下游任務表現改善。測試說明

來源

  1. Fix TopHLogitsWarper: renormalized prefix entropy and full-distribution budget — PR #50471
  2. TopHLogitsWarper does not implement the documented Top-H rule — Issue #50228
  3. Top-H Decoding: Adapting the Creativity and Coherence with Bounded Entropy in Text Generation