模型與訓練

LoRA 低秩適應微調是什麼?用更少資源讓模型學會新技能

LoRA(Low Rank Adaptation)是一種參數高效微調技術。它不去更動大模型原本幾千億個參數,而是在旁邊外掛一小層輕量級的可訓練參數,只訓練這一小層,就能讓模型學會特定領域的專業能力。好處是訓練成本低、顯存佔用少、訓練速度快,效果卻能接近全量微調,是目前最主流的模型客製化做法之一。
LoRA 低秩適應微調是什麼?用更少資源讓模型學會新技能:文章重點卡

LoRA 低秩適應微調是什麼?用更少資源讓模型學會新技能

想讓大模型學會一種特定寫作風格或專業領域,重新訓練整個模型太貴也太慢。LoRA 就是為了解決這個問題而生的技術。

你將學到什麼

定義

凍結原本的大模型參數,只額外訓練一小層輕量參數的微調方法。

白話比喻

像在一台已經很會開的車上加裝一個專屬導航模組,不用重新造整台車。

跟誰容易搞混

常跟全參數微調搞混,兩者差在要不要動到模型原本的全部參數。

定義

LoRA(Low Rank Adaptation)是一種參數高效微調方法,透過在原有權重矩陣旁加入低秩矩陣來學習任務相關的更新,只訓練少量新增參數,凍結原本大模型的參數。

核心概念是低秩分解:把原本要更新的權重矩陣,拆成兩個小矩陣的乘積來訓練,維度遠小於原本的矩陣,訓練起來自然輕巧許多。

白話比喻

把大模型想像成一位已經博學多聞的老師,重新培訓他的全部知識既昂貴又沒必要。LoRA 的做法是給他外掛一本專業筆記,讓他在原有基礎上快速學會新領域的說法與慣例。

這本筆記很輕,寫起來快,換一本也不影響原本的知識庫,這就是為什麼 LoRA 能做到成本低、部署靈活。

LoRA 跟全量微調差在哪?

比較項目全量微調 Full Fine-tuningLoRA 低秩適應微調
可訓練參數量與模型相同,全部參數都動僅為模型的百分之零點零一到零點一
顯存需求高,需儲存梯度與優化器狀態低,只需儲存少量附加參數
訓練時間短,通常快兩到十倍
部署靈活性需維護多個完整模型一個基礎模型加多個可插拔模組
效果表現基準線,通常最佳接近全量微調,多數任務差距很小

實際用例

LoRA 常見的應用場景包括領域專業化(醫療、法律、金融、程式碼)、風格轉移、多語言能力增強、指令遵循強化,以及一次為不同任務訓練多個模組的多任務學習。

關鍵超參數只有幾個:低秩矩陣的秩 r、縮放因子 alpha、dropout,以及要套用 LoRA 的模組。一般來說 r 越大能力越強,但成本也跟著提高,實務上多從小的 r 值開始測試。

常見誤解很多人以為 LoRA 跟量化是同一件事,其實不是。LoRA 是訓練方式的優化,決定怎麼便宜地教會模型新技能;Quantization 量化 是推論階段的壓縮,決定怎麼便宜地跑模型,兩者可以同時使用,互不衝突。
本文源起本文內容出自酒Ann 的「AI 實戰陪跑班」課程教材,由酒Ann 編寫成彙編條目。想系統性搞懂 AI 名詞,歡迎追蹤 酒Ann 的 Facebook

延伸學習

把這篇文章分享給需要的人FacebookLINEThreadsX

常見問答

LoRA 為什麼能省下這麼多成本?
因為它只訓練原模型的一小層附加參數,可訓練參數量通常只有原模型的百分之零點零一到零點一。顯存需求跟著大幅下降,訓練時間也能快上好幾倍,卻能在多數任務上逼近全量微調的效果。
LoRA 訓練完的模組可以拆下來嗎?
可以,這正是 LoRA 的一大優勢。訓練好的低秩適應層是獨立的小模組,可以自由切換、合併,也能替不同任務準備多個模組,載入同一個基礎模型時按需替換。
什麼情況該用 LoRA,什麼情況不用?
需要特定領域知識、特定寫作風格、多語言能力或客製化指令理解時,LoRA 通常是首選,成本低又夠用。真正需要模型整體能力大幅提升,或資源完全不是問題時,才考慮全參數微調。