개요
LoRA는 효율적 파인튜닝 방법입니다. LLM의 사전학습된 가중치는 동결시키고, 학습 가능한 저차원 행렬만을 추가하여 적은 자원으로 대형 LLM을 미세 조정할 수 있도록 합니다.
내용
LLM을 특정 도메인에 맞게 파인튜닝하려면 막대한 연산 자원과 시간이 필요합니다. GPT-3와 같은 모델은 수십억 개의 파라미터를 가지고 있어, 전체를 업데이트하는 데 비용이 매우 큽니다. 이런 한계를 극복하기 위해 등장한 것이 바로 파라미터 효율적 미세조정(Parameter-Efficient Fine-Tuning, PEFT) 기법이며, LoRA는 그 대표 주자입니다.
LoRA는 사전학습된 모델의 가중치는 그대로 두고, 각 레이어의 작은 크기의 학습 가능한 행렬을 추가합니다. 그리고 이 행렬만 업데이트하여 전체 파라미터의 극히 일부(0.1% 미만)만 학습합니다. 소수의 추가 파라미터(저차원 행렬)만 학습하고, 추론 시에는 원본 가중치와 LoRA 가중치를 결합해 결과를 냅니다.
LoRA를 사용하면 메모리와 저장 공간, 연산량이 크게 줄어듭니다. GPT-3(175B 파라미터)의 경우에도 470만 개(0.0026%)의 파라미터만 학습해서 비슷한 성능을 얻을 수 있어 매우 효율적입니다.
다양한 업무 및 도메인에 대해 LoRA 가중치만 따로 관리하면 되므로, 하나의 사전학습 모델에 다양한 작업별 LoRA만 붙여 쓸 수 있습니다.
LoRA는 전체 모델의 모든 파라미터(가중치)를 업데이트하는 Full Parameter 파인튜닝 대비 빠르고 효율적입니다. 다만, 특정 경우는 Full Parameter 파인튜닝에 비해 성능이 떨어질 수 있다는 단점이 있습니다.
'AI & GPU' 카테고리의 다른 글
GPUDirect RDMA (0) | 2025.05.23 |
---|---|
멀티노드 학습에서 NAS의 역할 (0) | 2025.05.23 |
Pinned Memory (0) | 2025.05.06 |
드랍아웃 (1) | 2025.05.06 |
데이터 익명화 (0) | 2025.05.04 |