Hugging Face PEFT:評估 LoRA 的替代方案
Hugging Face PEFT:評估 LoRA 的替代方案
Hugging Face 針對其 PEFT 套件進行了廣泛的基準測試,以判斷低秩適應(Low Rank Adaptation,LoRA)是否為參數效率微調的最佳選擇。測試結果顯示,雖然 LoRA 表現相當優秀,但並非在所有情況下都是最佳方案;根據特定的模態與任務,其他 PEFT 技術可以在記憶體使用量與模型準確度之間提供更佳的權衡。
LoRA 的主導地位與限制
LoRA 目前是最普及的 PEFT 技術,這得益於其較早出現以及強大的生態系支援。Hugging Face 透過分析 Hub 上的模型卡與 GitHub 程式碼片段,發現 LoRA 佔據了絕大多數的 PEFT 使用率;在一組僅提及單一 PEFT 技術的模型卡樣本中,LoRA 的使用率高達 98.4%。
然而,作者指出,這種流行度可能是因為大量教學資源與下游套件的支援而形成的自我強化循環,而非絕對的技術優勢。他們也提醒,僅依賴研究論文來選擇技術是有問題的,因為結果常受到超參數調校或缺乏可重現程式碼的影響。
基準測試方法論
為了提供客觀的比較,Hugging Face 使用統一的 API 實作基準測試,讓所有技術在相同條件下(相同基礎模型、資料集、硬體與評估程式碼)進行評估。他們追蹤多項指標,除了測試表現外,還包括 VRAM 使用量、執行時間、檢查點大小以及遺忘/漂移情形。
建立了兩個主要基準測試:
- LLM 數學資料集:在 MetaMathQA 資料集上對未經指令微調的 LLM 進行 chain‑of‑thought 推理的微調。
- 影像生成:測試模型學習新概念(貓咪玩偶)並在不遺忘既有概念的情況下進行概念泛化的能力。
主要發現:Pareto 前緣
績效以「Pareto 前緣」進行分析——即同時在記憶體效率與測試準確度上無法被其他技術同時超越的集合。
LLM 數學推理
在使用 meta-llama/Llama-3.2-3B 於 MetaMathQA 基準測試時,LoRA 以 53.2% 的測試準確度與 22.6 GB 的峰值 VRAM(使用 rank‑stabilized 初始化)位於 Pareto 前緣。其他技術亦佔據前緣:
- Lily:取得更高的準確度(54.9%),但需要較多記憶體(25.6 GB)。
- BEFT:提供更佳的記憶體效率(20.2 GB),但準確度較低(32.9%)。
- LoRA-FA:以專門的 optimizer 實現記憶體效率(20.2 GB)的替代方案。
影像生成
在使用 FLUX.2-klein-base-4B 的影像生成基準測試中,LoRA 被其他方法超越。具體而言,OFT(Orthogonal Fine‑Tuning) 在關鍵指標上嚴格支配 LoRA:
- OFT:相似度分數 0.708,VRAM 9.01 GB。
- LoRA:相似度分數 0.697,VRAM 9.97 GB。
實作考量與限制
雖然替代的 PEFT 技術可以提供更佳的績效,但相較於 LoRA,仍面臨多項實務限制:
- 下游支援:許多服務框架(如 vLLM)僅支援 LoRA 檢查點。為解決此問題,
PEFT套件現在支援將其他適配器類型轉換為 LoRA 檢查點,Hugging Face 以 GraLoRA 為例測試,發現其測試分數幾乎相同。 - 層相容性:部分技術僅會修改特定層類型。
- 量化:並非所有 PEFT 方法都支援量化的基礎模型。
- 合併:並非所有技術都允許將適配器合併回基礎模型,以消除執行時開銷。
結論
LoRA 不應成為微調的自動預設選項。由於 PEFT 套件提供統一的 API,切換技術(例如從 LoraConfig 轉為 OFTConfig)只需極少的程式碼變更。建議使用者探索 DoRA、rs‑LoRA、LoRA‑FA 等變體,以最佳化其特定使用情境。
摘要: Hugging Face 對 PEFT 套件的基準測試顯示,雖然 LoRA 受到廣泛使用,但其他參數效率微調技術(如 OFT 與 Lily)在記憶體效率與測試準確度上,視任務而定,能夠超越 LoRA。
標題: Hugging Face PEFT:評估 LoRA 的替代方案