LoRA / QLoRA (Low-Rank Adaptation)
LoRA / QLoRA (Low-Rank Adaptation)
사전학습된 대규모 언어모델(LLM)의 가중치 행렬을 고정하고 저랭크 분해(Low-Rank Decomposition)를 통해 작은 어댑터 행렬(ΔW = BA)만 학습하여 파라미터 효율적 파인튜닝(PEFT)을 수행하며, QLoRA는 양자화(Quantization)를 결합하여 메모리를 추가 절감
목적: 파인튜닝 비용 절감, 메모리 효율성, 빠른 적응(Adaptation), 다중 태스크 지원
특징: 저랭크 분해(r< 구성요소 LoRA QLoRA 동작: 입력 → W₀x(고정) + BAx(학습) → 출력 / 추론: W₀+BA 병합 장점: 메모리 절감(10~100배), 빠른 학습, 다중 어댑터(태스크별), 배포 용이 단점: 성능 손실(Full Fine-Tuning 대비 1~3%↓), 랭크 선택 어려움, 복잡한 태스크엔 부족 하이퍼파라미터: r(랭크, 1~64), α(스케일링), dropout, 타겟 레이어(Q,K,V,O) 적용사례: LLaMA-2 파인튜닝, Alpaca(7B→52k 지시), ChatGPT 개인화, 도메인 적응 도구: Hugging Face PEFT, LoRA(GitHub), bitsandbytes(양자화), Axolotl 비교: Full Fine-Tuning(모든 파라미터) vs LoRA(0.1%) vs QLoRA(4비트+LoRA) 연관: PEFT, Adapter, Quantization, Fine-Tuning, LLM, Parameter-Efficient