← all posts
AI 2026.05.03 · 12 min read Advanced

사전학습 모델을 어떻게 내 task에 맞게 바꾸는가

Linear probe와 full fine-tuning의 수학적 차이부터 EWC, LoRA까지 — pretrained representation을 downstream task에 적응시키는 전략의 통합 원리를 추적한다.


사전학습 모델은 거대한 지식 저장소다. 그 지식을 특정 task에 쓰려면 “어디까지 건드릴 것인가”를 결정해야 한다. 전부 다 바꾸면 기존 지식이 날아가고, 아무것도 안 바꾸면 새 task에 적응하지 못한다. 이 긴장 관계를 어떻게 해소하는가?

두 극단: Linear Probe와 Full Fine-Tuning

가장 단순한 두 선택지부터 출발하자.

Linear probe는 encoder를 완전히 고정하고 분류 헤드만 학습한다.

y^=softmax(Wfθ(x)+b),θ frozen\hat{y} = \text{softmax}(W f_\theta(x) + b), \quad \theta \text{ frozen}

학습 파라미터는 d×C+Cd \times C + C개뿐이다. Encoder fθf_\theta가 상수이므로, 이 최적화 문제는 strictly convex — unique global optimum이 보장된다.

Full fine-tuningθ\theta까지 모두 학습한다.

minθ,W,bL(softmax(Wfθ(x)+b),y)\min_{\theta, W, b} \mathcal{L}(\text{softmax}(W f_\theta(x) + b), y)

fθ(x)f_\theta(x)θ\theta의 비선형 함수이므로 non-convex. 수백만 개의 파라미터가 downstream task loss만 따라 움직인다.

명제 1 · Data size와 최적 전략

데이터셋 크기 nn에 대해

n0linear probe 우월(overfitting risk)n \to 0 \Rightarrow \text{linear probe 우월} \quad (\text{overfitting risk} \uparrow)nfull FT 우월(task-specific feature 학습 가능)n \to \infty \Rightarrow \text{full FT 우월} \quad (\text{task-specific feature 학습 가능})

경험적 전환점은 n1000n \sim 1000 근처다.

▷ 증명

Small nn에서 full FT의 학습 대상 파라미터 수(\sim수억)는 데이터 수를 압도한다. Rademacher complexity 관점에서 가설 공간이 너무 넓으면 generalization bound가 무의미해진다. Linear probe는 d×Cd \times C개의 파라미터만 사용하므로 complexity가 낮고, pretrained representation의 품질에 의존한다. nn이 충분히 크면 full FT가 task-specific feature를 학습할 수 있어 superior. \square

Kumar 2022의 발견: ID vs OOD의 긴장

그런데 full fine-tuning이 항상 더 나은 것도 아니다. Kumar 2022는 놀라운 패턴을 발견했다.

Full FT: ID 정확도 높음, OOD 성능 낮음\text{Full FT: ID 정확도 높음, OOD 성능 낮음} Linear Probe: ID 정확도 낮음, OOD 성능 높음\text{Linear Probe: ID 정확도 낮음, OOD 성능 높음}

이유는 spurious correlation에 있다. Full FT는 training domain의 표면적 패턴을 encoder에 새겨넣는다. Linear probe는 encoder를 건드리지 않으므로, pretrained representation의 domain-invariant feature가 보존된다.

정보이론적으로 표현하면: full FT 이후 I(zFT;yOOD)I(z'_{\text{FT}}; y_{\text{OOD}})가 감소하고, I(zFT;ytrain)I(z'_{\text{FT}}; y_{\text{train}})이 증가한다. Encoder freeze는 구조적으로 이 trade-off를 막는다.

Discriminative LR과 LR Schedule: 층별로 다르게

그렇다면 full FT를 하되, “얼마나 바꿀 것인가”를 층별로 조절할 수 없을까? Howard 2018(ULMFiT)의 답이 discriminative fine-tuning이다.

η(l)=ηbasekLl,k=2.6\eta^{(l)} = \frac{\eta_{\text{base}}}{k^{L-l}}, \quad k = 2.6

하위 층일수록 작은 learning rate를 쓴다. Transformer의 하위 층은 general linguistic feature(형태론, 구문)를 담고 있어 대부분의 task에 유용하다. 상위 층은 언어모델링 목표와 downstream task의 목표가 달라 더 큰 변화가 필요하다.

┌─────────────┐
│  Head / L   │  ← η_base (큰 LR)
├─────────────┤
│  Layer L-1  │  ← η_base / 2.6
├─────────────┤
│  Layer 1    │  ← η_base / 2.6^(L-1) (매우 작은 LR)
├─────────────┤
│  Embedding  │  ← frozen
└─────────────┘

학습 초기의 불안정성은 slanted triangular LR(STLR)로 완화한다.

ηt=ηmax{t/Twt<Tw(Tt)/(TTw)tTw,Tw=0.1T\eta_t = \eta_{\max} \cdot \begin{cases} t/T_w & t < T_w \\ (T-t)/(T-T_w) & t \geq T_w \end{cases}, \quad T_w = 0.1T

처음 10%의 step에서 warmup, 이후 90%에서 선형 감소. Adam optimizer의 second moment $v_t$가 초기에 작아 effective LR이 폭증하는 문제를 warmup이 막는다.

트레이드오프: k 값 선택

k=2.6k = 2.6은 Howard 2018이 ULMFiT의 validation perplexity를 최소화하는 grid search로 찾은 값이다. BERT-Large(L=24L=24)에서 이 값을 그대로 쓰면 하위 층의 LR이 $\eta_{\text{base}} / 2.6^{23} \approx 10^{-13}$ 수준으로 떨어져 사실상 동결된다. 깊은 모델에서는 kk를 재조정하거나 minimum LR bound를 설정해야 한다.

Catastrophic Forgetting과 EWC

Discriminative LR이 forgetting을 완화하지만 근본적으로 막지는 못한다. Kirkpatrick 2017의 EWC(Elastic Weight Consolidation)는 이 문제를 Bayesian 관점에서 직접 다룬다.

핵심 아이디어: Task A에서 “중요한 파라미터”는 고정하고, “덜 중요한 파라미터”만 Task B에 맞게 변경하자. 중요도는 Fisher information으로 측정한다.

Fi=ExDA[(logpθA(x)θi)2]F_i = \mathbb{E}_{x \sim D_A}\left[\left(\frac{\partial \log p_{\theta_A^*}(x)}{\partial \theta_i}\right)^2\right]

EWC loss는 Task B loss에 탄성 제약을 더한다.

LEWC(θ)=LB(θ)+λ2iFi(θiθA,i)2\mathcal{L}_{\text{EWC}}(\theta) = \mathcal{L}_B(\theta) + \frac{\lambda}{2} \sum_i F_i (\theta_i - \theta_{A,i}^*)^2

FiF_i가 크면 Task A loss에 민감한 파라미터 → θA,i\theta_{A,i}^*에 강하게 고정. FiF_i가 작으면 자유롭게 변한다.

PEFT: 파라미터의 0.1%만 건드린다

EWC가 “중요한 파라미터를 보호”한다면, PEFT(Parameter-Efficient Fine-Tuning)는 더 직접적이다 — “처음부터 적은 파라미터만 학습한다.”

**LoRA(Hu 2021)**의 핵심 관찰: fine-tuning 시 weight 변화 ΔW\Delta W는 low-rank일 가능성이 높다.

W=W0+BA,BRd×r,ARr×d,rdW = W_0 + BA, \quad B \in \mathbb{R}^{d \times r}, \quad A \in \mathbb{R}^{r \times d}, \quad r \ll d

W0W_0는 frozen. 학습 파라미터는 (dout+din)×r(d_{\text{out}} + d_{\text{in}}) \times r개 — r=8,d=4096r=8, d=4096이면 전체의 0.4%. 초기화는 AN(0,1/r)A \sim \mathcal{N}(0, 1/\sqrt{r}), B=0B = 0으로 설정해 BA=0BA = 0에서 출발한다. 학습 초반의 급격한 변화를 막는 장치다.

비교를 위한 세 가지 방법의 포지션:

방법학습 파라미터ID 성능메모리
Full FT100%최고높음
LoRA (r=8)~0.4%≈99%매우 낮음
Adapter~3-5%≈98%낮음
BitFit~0.05%85-95%최저

BitFit(Ben-Zaken 2022)은 bias term만 학습한다. 전체의 0.05%에 불과한데도 GLUE 대부분 task에서 full FT의 85-95% 성능을 낸다. Pretrained representation이 이미 충분히 좋다는 방증이다.

정리

다섯 챕터를 관통하는 원리는 하나다 — pretrained representation의 품질을 보존하면서 downstream task에 적응하는 비용을 최소화하라.

  • 데이터가 적을수록 파라미터를 덜 건드려라: linear probe → BitFit → LoRA → full FT 순으로 escalate.
  • OOD robustness가 중요하면 encoder를 가능한 한 건드리지 마라(Kumar 2022).
  • Full FT를 해야 한다면, discriminative LR과 STLR로 하위 층의 일반 지식을 보호하라.
  • 연속적 task 학습에서 catastrophic forgetting이 우려되면 EWC로 중요 파라미터를 탄성 고정하라.
  • 계산 예산이 빠듯하면 LoRA — 성능 손실 1% 미만, 메모리 10-100배 절감.

fine-tuning 전략의 선택은 “어떤 방법이 더 좋은가”가 아니라 “내 데이터 크기, OOD 요구, 계산 예산의 세 축에서 어디에 서 있는가”의 문제다.

REF