AI: PEFT/Fine-tuning – Adapter Layers
ㅁ PEFT/Fine-tuning
1. Adapter Layers
ㅇ 정의:
사전 학습된 모델의 원본 파라미터를 고정한 채, 중간 계층에 소규모의 추가 모듈(어댑터)을 삽입하여 특정 작업에 맞게 미세 조정하는 방법.
ㅇ 특징:
– 원본 모델의 가중치는 변경하지 않고, 어댑터 모듈만 학습하여 메모리와 연산량을 절감.
– 다양한 다운스트림 태스크에 빠르게 적용 가능.
– 원본 모델 재사용성이 높으며, 태스크별 어댑터만 저장하면 됨.
ㅇ 적합한 경우:
– 대규모 언어모델(LLM)이나 비전 모델을 여러 태스크에 적용할 때.
– 리소스 제약이 있는 환경에서 효율적으로 파인튜닝해야 할 때.
– 원본 모델 파라미터를 변경할 수 없는 상황(저작권, 배포 제한 등).
ㅇ 시험 함정:
– 어댑터 레이어를 추가하면 원본 모델의 모든 파라미터가 학습된다고 착각하는 경우 → 실제로는 일부(어댑터)만 학습.
– 파라미터 수가 줄어드는 것이 아니라, 학습 대상 파라미터 수가 줄어드는 것임.
– LoRA, Prefix Tuning과 개념 혼동.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Adapter Layers는 사전 학습된 모델의 가중치를 고정하고 일부 모듈만 학습한다.”
X: “Adapter Layers는 원본 모델의 모든 파라미터를 재학습한다.”
O: “Adapter Layers는 태스크별로 모듈만 교체하여 재사용성을 높인다.”
X: “Adapter Layers는 원본 모델 구조를 완전히 변경한다.”
ㅁ 추가 학습 내용
Adapter Layers는 일반적으로 고차원 입력을 저차원으로 줄이는 다운-프로젝션을 거친 후, 비선형 활성화 함수를 적용하고 다시 저차원에서 고차원으로 확장하는 업-프로젝션으로 구성된다. 이러한 구조를 통해 파라미터 수를 최소화하면서도 특정 태스크에 대한 적응력을 확보할 수 있다.
LoRA(Low-Rank Adaptation)는 기존 가중치 행렬을 저랭크 행렬 두 개로 분해하여 학습하는 방식으로, Adapter Layers와 구조적 접근 방식에서 차이가 있다.
시험에서는 Adapter Fusion처럼 여러 어댑터를 결합하는 확장 기법, 병렬 어댑터와 직렬 어댑터 구조의 차이, 그리고 메모리 절약 효과를 수치로 비교하는 문제가 출제될 수 있다.