iT邦幫忙

2025 iThome 鐵人賽

DAY 15
0
佛心分享-IT 人自學之術

LLM入門學習系列 第 15

Day 15:參數高效調整 (PEFT) — LLM 微調的革命

  • 分享至 

  • xImage
  •  

1. 為什麼 PEFT 是必需的?

在學完傳統的「完整微調」(Full Fine-tuning)後,我們知道其成本高昂。而參數高效調整 (PEFT, Parameter-Efficient Fine-Tuning) 正是為了解決這個瓶頸,讓普通用戶和企業也能高效地微調巨大的 LLM。

PEFT 的核心理念:只調整或新增極少數參數(通常不到 1%),在大幅降低計算與儲存成本的同時,仍能保持接近甚至超越完整微調的性能。

隨著 LLM 參數規模不斷擴大(數百億甚至上萬億),傳統的 Full Fine-tuning 面臨著無法持續的挑戰:

  • 高昂的訓練成本:需要更新所有模型參數,訓練時間長,需要大量的 GPU 記憶體和計算資源。
  • 巨大的儲存成本:每個下游任務都需要儲存一份完整的模型副本(數百 GB),磁碟壓力巨大。
  • 過度擬合風險:在資料量小的特定任務上,更新所有參數容易導致模型過度擬合。

PEFT 解決了這些問題,讓預訓練模型的主體知識保持凍結,只訓練額外的輕量化模組。


2. PEFT 的三種主流技術

PEFT 家族的核心區別在於:在哪個位置、以什麼方式插入或調整少量參數。

(1) LoRA (Low-Rank Adaptation) - 當前最主流

LoRA 是目前最受歡迎、應用最廣泛的 PEFT 方法之一。

  • 核心概念:基於一個數學觀察:權重的變化矩陣W'是低秩的。因此,可以不直接訓練這個巨大的W',而是用兩個非常小的低秩矩陣A和B的乘積來逼近它。
  • 公式:在原始權重 $W$ 上增加一個低秩的更新:
    W' = W + BA
    其中 r << (d, k)(r 是極小的秩)。
  • 運作:將預訓練模型的W凍結,只訓練和儲存A和B這兩個小矩陣。
  • 優勢:訓練參數量減少到原本的 0.1%–1%,且在推理時可合併回W中,不增加額外延遲。

(2) Prefix Tuning (前綴調整)

Prefix Tuning 透過調整輸入層的提示(Prompt)來控制模型行為。

  • 核心概念:在模型的每一層 Transformer 之前,添加一串可訓練的虛擬 Token 序列(Prefix)
  • 運作凍結所有 Transformer 的主體權重,只訓練這個 Prefix 序列的 Embedding 向量
  • 優勢:參數量極少,只需儲存 Prefix(可能只有幾 MB),且特別適合語言生成多任務學習

(3) Adapter (適配器)

Adapter 是 PEFT 領域較早的方法,透過插入小型網路來實現參數高效調整。

  • 核心概念:在 Transformer 的核心模組(自注意力層和前饋網路)之間,插入一個小型、可訓練的瓶頸結構(Bottleneck Structure)
    • 結構:高維->降維->非線性->升維->高維。
  • 運作凍結主體 Transformer 權重,只訓練這個 Adapter 模組的參數。
  • 優勢:模組化強,不同任務只需儲存各自的 Adapter 模組,基礎模型共用。

3. 技術比較與總結

特性 LoRA Prefix Tuning Adapter Full Fine-tuning
調整位置 Transformer 權重矩陣 Transformer 輸入層(每層之前) Transformer 層之間 全部權重
參數量 ~ 0.1%-1% ~ 0.01% ~1%-3% ~100%
儲存需求 極低
特點 最常用、簡單高效、不增加推理延遲 適合多任務切換、參數量極少 模組化強、插拔方便 效果最準確,但資源最昂貴

結論: PEFT 技術透過 LoRA、Prefix Tuning、Adapter 等方法,成功地讓 LLM 的微調變得資源友好,實現了大型模型的大規模、低成本應用。


上一篇
Day 14:微調方法 (Fine-tuning) Full fine-tune vs Feature extraction
系列文
LLM入門學習15
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言