パラメータ効率的ファインチューニング

1. 概要

1.1 なぜPEFTか

  • Full fine-tuning: 全パラメータ更新 → コスト大
  • PEFT: 少数のパラメータのみ更新 → 効率的
  • 性能は同等かそれに近い

1.2 手法の分類

カテゴリ手法
AdapterAdapter, LoRA
Prompt-basedPrefix-tuning, P-tuning
SelectiveBitFit, Diff Pruning

2. LoRA

2.1 アイデア

重み更新を低ランク行列で近似:
W' = W + ΔW = W + BA

W: 元の重み (d × k)
B: (d × r), A: (r × k)
r << min(d, k): ランク

訓練パラメータ: A, B のみ
元のW は凍結

2.2 利点

  • メモリ効率: 1%未満のパラメータで同等性能
  • 推論コストなし: W' = W + BAをマージ可能
  • タスク切り替え: アダプターの差し替えのみ

2.3 QLoRA

LoRA + 量子化:
- 基本モデルを4bit量子化
- LoRA部分は高精度で学習
- 大幅なメモリ削減

3. Adapter

3.1 構造

Transformerの各層に小さなモジュールを挿入:

x → LayerNorm → Attention → + → LayerNorm → FFN → + → 出力
                            ↑                      ↑
                         Adapter                Adapter

Adapter: Down-project → 非線形 → Up-project

3.2 特徴

  • ボトルネック構造で次元削減
  • 元のモデルは完全に凍結
  • わずかな推論オーバーヘッド

4. Prompt-based手法

4.1 Prefix-tuning

入力の先頭に学習可能な「仮想トークン」を追加:

[P₁, P₂, ..., Pₖ, x₁, x₂, ...]

Pᵢ: 学習可能なプレフィックスベクトル
xᵢ: 実際の入力トークン

4.2 P-tuning v2

  • 各層にプロンプトを挿入
  • より表現力が高い
  • 中小規模モデルでも有効

5. 比較

手法パラメータ推論コスト性能
Full FT100%-
LoRA0.1-1%なし(マージ後)
Adapter1-5%わずか
Prefix<0.1%長いプロンプト

6. 参考文献

  • Hu et al. (2022). "LoRA: Low-Rank Adaptation of Large Language Models" ICLR
  • Houlsby et al. (2019). "Parameter-Efficient Transfer Learning for NLP" ICML
  • Li & Liang (2021). "Prefix-Tuning" ACL
  • Dettmers et al. (2023). "QLoRA" NeurIPS