多媒體系統・MS-115 日間部・Week 08
六張圖,同一個角色?
同一句 Prompt 換一個 Seed,角色就可能變樣。按下面兩個按鈕比較看看:只靠文字描述,和把規格、參考、Adapter 一起固定下來,差在哪裡。這一頁的八個實驗都在瀏覽器裡跑,改一個變因,看結果怎麼動。
實驗 1・8.4–8.5
LoRA 到底省了多少參數?
LoRA 不改原本的權重 W,只學一個更新量 ΔW=B×A。B 是 d×r、A 是 r×k,r 越小,要學的數字越少。
動手:先預測 r 加倍時參數量會變幾倍,再拖動滑桿驗證。講義的例子是 4096×4096、r=16。
完整微調要學的參數 d×k
LoRA 要學的參數 r(d+k)
占完整微調的比例
簡化例子:只算單一矩陣。真實模型有很多層,LoRA 也不一定加在每一層,總參數量依設定而定。
實驗 2・低秩直覺
只留前 k 個成分,圖還認得出來嗎?
一張 64×64 的圖就是一個矩陣。用奇異值分解(SVD)只保留前 k 個成分,等於用「rank k」去近似它。LoRA 押的就是:模型需要的更新量,常常用低 rank 就表示得差不多。
動手:在左邊畫布上自己畫(拖曳滑鼠或手指)。橫線、直線這類規律的圖,k 很小就能還原;雜亂的塗鴉要多少 k?
保留的能量(Σσ² 比例)
要存的數字 k(64+64+1) / 4096
實驗 3・8.6–8.7、8.19
親手訓練一個 LoRA
一個 8×8 的「預訓練權重」W 被凍結。新任務真正需要的更新量 ΔW* 是 rank 2。我們只訓練 B(初始為 0)與 A,看不同 rank 能不能學會。
動手:先用 r=1 訓練,記下最後的 loss;再改 r=2。預測:r=3、4 會比 r=2 好很多嗎?訓練完拖 Scale:0 就是 Base Model(對照組)。
0
訓練步數
驗證 loss(MSE)
可訓練參數 / 完整 64
實驗 4・8.12–8.14
模型學到的是角色,還是背景?
訓練資料裡,角色 A 永遠站在白牆前、角色 B 永遠在森林。背景比臉好認,模型就可能抄捷徑。測試時把背景對調,看它還認不認得出角色。
動手:先預測 0% 時「背景對調」測試的正確率,再慢慢加到 50%。正確率在哪裡開始明顯回升?只增加圖片數量、不加多樣性,有用嗎?
訓練資料正確率
背景對調測試正確率
實驗 5・8.10–8.11
按下 Train 之前:Dataset Card
先寫清楚模型要從這批資料學到什麼。填完五個欄位,右邊會檢查還缺什麼,可以直接複製貼進作業。
實驗 6・8.15–8.17、8.27
Visual Specification × Prompt Template
固定的部分寫一次,只讓場景變。改左邊任何一格,六個 Prompt 會一起更新:這就是 Template Thinking。
實驗 7・8.18
缺的是哪一種控制?
LoRA 是工具箱裡的一項工具,不是每個一致性問題的預設答案。讀每個情境,選最先該試的方法。
實驗 8・8.19–8.22
一致性不能只靠「看起來差不多」
固定 Model、Prompt、Seed、Steps,只改 LoRA Scale。每個條件依 Rubric 打 1–5 分,Base(Scale 0)是對照組。表格預填的是示意分數,換成你自己生成結果的評分。