파라미터 효율적 미세조정

IT 위키

파라미터 효율적 미세조정(Parameter-Efficient Fine-Tuning, PEFT)은 대형 언어모델(LLM) 등 초거대 신경망의 모든 파라미터를 다시 학습시키는 대신, 일부 파라미터만 선택적으로 학습하여 특정 다운스트림(downstream) 태스크에 효율적으로 적응시키는 기법이다.[1]

개요[편집 | 원본 편집]

대형 언어모델은 수십억~수천억 개의 파라미터를 포함하며, 모두를 재학습(finetune)하려면 막대한 연산 자원과 메모리가 필요하다. PEFT는 사전학습된 기반 파라미터(\(\theta_{\text{base}}\))는 고정(freeze)하고, 소량의 추가/보정 파라미터(\(\Delta \theta\))만 학습하여 비용을 크게 줄인다. \(\theta' = \theta_{\text{base}} + \Delta \theta\)

주요 기법[편집 | 원본 편집]

Adapter (2019, Houlsby et al.)[편집 | 원본 편집]

  • 각 Transformer 레이어에 작은 병목(bottleneck) 모듈을 삽입하여 그 모듈만 학습한다.
    • 구조: feed-forward up-project → 비선형 활성화 → feed-forward down-project + skip-connection.
    • 삽입 위치: Self-Attention/Feed-Forward 사이에 두 번 삽입하는 구성이 일반적이다.
    • 학습 파라미터 비율은 원 모델 대비 약 0.5%~8% 수준이며, 태스크별 adapter만 교체하여 멀티태스크 운용이 가능하다.

LoRA (Low-Rank Adaptation, ICLR 2022)[편집 | 원본 편집]

  • 선형 변환 \(W \in \mathbb{R}^{E \times E}\)를 고정하고, 저랭크 보정 \(\Delta W = B A\)를 학습한다.
    • 수식: \(h = W_0 x + \Delta W x = W_0 x + B A x\)
    • 차원: \(A \in \mathbb{R}^{E \times r}, B \in \mathbb{R}^{r \times E}, r \ll E\) (예: r=4).
    • 적용 위치: Self-Attention의 Q/K/V 및 MLP의 선형층.
    • 연산/저장 측면: 학습 시 전체 가중치 미세조정보다 큰 절감을 달성하며, \(B A\)를 \(W_0\)에 병합(merge)하여 추가 저장 공간 없이 추론 가능.
    • 추가 파라미터 비율은 약 0.1% 내외이다.

BitFit (ACL 2022)[편집 | 원본 편집]

  • 가장 단순한 PEFT 기법으로, 모든 weight를 고정하고 각 층의 bias 항만 학습한다.
    • BERT 기준 bias 파라미터는 전체의 약 0.09%를 차지한다.
    • 단순 텍스트 분류 등에서 full fine-tuning에 근접하거나 때로는 초과하는 성능을 보인다.

비교[편집 | 원본 편집]

기법 학습되는 파라미터 비율(예시) 구조 수정/삽입 주요 적용 위치 장점 단점
LoRA 약 0.1% 선형층 내부 저랭크 보정(BA) Q/K/V, MLP 고성능·저비용, 추론 시 merge 가능 rank·적용 위치 튜닝 필요
Adapter 0.5%~8% bottleneck 모듈 + skip 삽입(레이어당 1~2개) 블록 사이(ATTN/FFN) 모듈 교체로 멀티태스크 용이 약간의 추론 지연·파라미터 증가
BitFit 약 0.09% (BERT 기준) 구조 변경 없음(bias만 학습) 전 층 bias 극단적 효율성과 간편함 복잡 태스크에서 성능 한계

장점[편집 | 원본 편집]

  • 전체 미세조정 대비 GPU 메모리 및 학습 비용을 대폭 절감한다(최대 90% 이상).
  • 베이스 모델을 공유하면서 태스크별 모듈(어댑터·LoRA 등)만 추가·교체할 수 있어 유지보수가 용이하다.
  • 온디바이스·멀티태스크·개인화(personalization) 학습 환경에서 적합하다.

한계 및 고려사항[편집 | 원본 편집]

  • 베이스 파라미터가 고정되어 있어 표현력 확장이 제한될 수 있다.
  • rank(LoRA), 모듈 크기(Adapter), 적용 위치 등의 선택은 경험적으로 조정해야 한다.
  • 일부 고난도 태스크에서는 full fine-tuning 대비 1~3% 성능 손실이 발생할 수 있다.

응용[편집 | 원본 편집]

  • 대형 언어모델 (LLM)의 효율적 파인튜닝(요약, QA, 번역 등)
  • 멀티태스크 환경에서 태스크별 모듈 교체
  • 온디바이스 개인화(personalization)
  • 멀티모달 모델(CLIP 등)과의 결합

관련 개념[편집 | 원본 편집]

참고 문헌[편집 | 원본 편집]

  • Hu, Edward J., et al. "LoRA: Low-Rank Adaptation of Large Language Models." ICLR (2022). [1]
  • Houlsby, Neil, et al. "Parameter-efficient transfer learning for NLP." PMLR (2019).
  • Zaken, Elad Ben, et al. "BitFit: Simple Parameter-efficient Fine-tuning for Transformers." ACL (2022).
  • Dettmers, Tim, et al. "QLoRA: Efficient Finetuning of Quantized LLMs." NeurIPS (2023).