What is Learning Rate(學習率)?

    控制模型權重在每批訓練資料後調整幅度的超參數。

    Definition

    學習率是一個純量值——通常是像 1e-4 或 2e-5 這樣的小數——決定了梯度下降期間權重更新的幅度。在每批訓練資料之後,模型計算梯度,指示每個權重應該移動的方向以減少損失。學習率在梯度被應用之前對其進行縮放:較大的學習率意味著更大的步幅(更快但更冒險),而較小的學習率意味著更小的步幅(更慢但更穩定)。

    在 LLM 微調的背景下,學習率可以說是最敏感的超參數。微調使用比預訓練低得多的學習率——通常低 10 到 100 倍——因為目標是溫和地調整模型的現有知識,而非覆寫它。學習率過高可能導致災難性遺忘,模型失去其預訓練的能力。學習率過低則浪費計算資源,因為每輪的進展微乎其微。

    現代微調管線通常使用學習率排程,在訓練過程中改變學習率。常見的排程包括餘弦退火(學習率沿餘弦曲線逐漸降低)、線性預熱後衰減,以及帶預熱的恆定值。這些排程幫助模型在初期取得較大進展,然後在訓練接近收斂時更仔細地微調其權重。

    Why It Matters

    學習率通常是實踐者首先調整的超參數,因為它對訓練結果有最顯著的影響。任一方向上一個數量級的失誤可能決定高效能模型和完全崩壞模型之間的差異。對於沒有深度 ML 專業知識的團隊,理解學習率基礎——並擁有合理的預設值——對於避免浪費計算資源和令人沮喪的除錯工作至關重要。

    How It Works

    在每個訓練步驟中,優化器將計算出的梯度乘以學習率來產生實際的權重更新:新權重 = 舊權重 - 學習率 × 梯度。對於 LoRA 等參數高效方法,學習率僅應用於適配器權重(因為基礎模型是凍結的)。AdamW 等進階優化器根據歷史梯度統計維護每個參數的自適應學習率,但基礎學習率仍作為全域縮放因子。學習率排程器然後隨時間修改這個基礎率——例如,在前 10% 的訓練步驟中從零線性預熱,以防止早期不穩定。

    Example Use Case

    一個資料科學團隊微調 Llama 3 8B 模型,最初將學習率設為 1e-3(過高)。一輪訓練後,模型產生不連貫的輸出——災難性遺忘已經摧毀了預訓練的知識。他們以 2e-5 重新開始,3 輪後模型產生流暢、準確的領域特定回應。然後他們使用餘弦退火嘗試 1e-4,發現它在 2 輪內收斂,驗證分數略有提升,節省了 33% 的訓練時間。

    Key Takeaways

    • 學習率控制訓練期間模型權重更新的激進程度。
    • 微調學習率通常比預訓練率低 10-100 倍(通常為 1e-5 到 1e-4)。
    • 學習率過高會導致災難性遺忘;過低則浪費計算資源。
    • 學習率排程(餘弦、線性預熱)有助於優化訓練軌跡。
    • 學習率通常是首先調整且影響最大的超參數。

    How Ertas Helps

    Ertas Studio 為每個基礎模型和訓練方法(LoRA 與 QLoRA)提供量身定制的合理預設學習率,讓使用者無需研究最佳值即可開始訓練。對於進階使用者,視覺化配置面板將學習率、排程器類型和預熱步數開放為可調整的參數。Studio 中的即時訓練損失圖表使學習率問題的診斷變得容易——損失曲線飆升表示學習率過高,而平坦的曲線則暗示過低。

    Related Resources

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.