JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

什麼時候該微調,什麼時候不該

微調只是塑造大型語言模型行為的三條路之一。了解它到底做了什麼,以及如何判斷它是不是正確的工具。

微調到底是什麼

微調(fine-tuning)的意思是:拿一個已經從龐大語料學會語言的模型,再用一份小得多、聚焦得多的資料繼續訓練,讓它的權重往「你」想要的行為偏移。你不是從零打造一個大型語言模型(large language model),而是輕推一個既有的模型。基礎模型早已懂得文法、事實與推理模式;微調是在這個地基之上,教它「風格」、「格式」與「任務」。

\theta \leftarrow \theta - \eta\,\nabla_{\theta}\,\mathcal{L}(\theta)

微调沿用预训练同样的梯度更新步骤,只是在小得多、更聚焦的数据集上微移权重 \theta。

三根槓桿,不只一根

在你動手微調之前,先認識其他選項。改變大型語言模型行為的方式主要有三種,由最便宜到最費工——而微調是最重的那一個。功夫就在於在提示、RAG 與微調之間做取捨

  1. 提示(prompting)——改變你在請求時送出的指令。提示不需任何前置成本、幾分鐘就能上線,幾乎永遠是你該起步的地方。
  2. 檢索(RAG)——抓取相關文件並貼進提示裡。當模型缺的是「知識」(私有文件、最新事實)而非「行為」時,RAG才是解答。
  3. 微調——改變權重。當提示與檢索都無法穩定產出你要的「風格」、「格式」或「技能」,或當你想讓一個更小、更便宜的模型表現得像大模型時,才動用它。
检索(RAG)——三个杠杆中间的那个——在查询时取回相关文档,而完全不改动权重。

检索增强生成流程:查询取回文档,作为上下文喂给模型。

微調地景的一張地圖

「微調」是一把大傘,底下罩著好幾種不同的程序,本系列後面會逐一拆解。第一個分岔是「你拿什麼來訓練」:持續預訓練餵入更多原始文字以教會一個領域;監督式微調(supervised fine-tuning)餵入輸入—輸出配對以教會一項任務;偏好微調(在對齊系列中介紹)則用人類的判斷來塑造語氣與安全性。

第二個分岔是「你改動多少」:完整微調與參數高效微調的對比。完整微調更新每一個權重、需要強悍的硬體;參數高效方法則凍結模型、只訓練一個極小的附加件。第三篇就在談這個。

你會需要什麼

每一次微調都立在三根支柱上。任何一根虛弱,最後都會變成一個令人失望的模型,所以動手前要對這三項都誠實。

  1. 資料——一組示範你想要行為的範例。品質與一致性遠比純粹的數量重要。
  2. 一個基礎模型——通常是開放權重模型。一開始就決定你要從基礎模型還是已對話微調的模型出發,因為這會改變你的資料格式。
  3. 一套評估——一種衡量微調是否真有幫助的方法,最好在上線前就有。沒有它,你就是盲飛。
第三根支柱是评估:预留出验证集和测试集,才能衡量微调是否真的有帮助。

数据被划分为独立的训练集、验证集和测试集,用于留出评估。

一份快速決策清單

下決定前先把這幾個問題走一遍。如果前兩題你的答案是「否」,那你大概還不需要微調。

  1. 我是否已經試過一個強力提示、以及(若是知識問題)檢索,卻仍然不夠好?
  2. 我能不能用一致的範例描述出想要的行為——至少幾百筆?
  3. 問題是關於「行為、風格或格式」(適合微調)而非「缺少事實」(更適合 RAG)嗎?
  4. 我有沒有一套能抓出退步、而不只是挑好看結果的評估?