인공 지능과 기계 학습의 끊임없이 변화하는 풍경 속에서, 더 효율적이고 효과적인 모델 튜닝 방법을 찾는 탐구는 계속되고 있습니다. 주목받고 있는 한 가지 흥미로운 접근 방식은 LoRA, 즉 Low-Rank Adaptation입니다. LoRA는 특히 자원이 제한된 환경이나 대규모 데이터셋을 다룰 때 모델의 성능을 향상시키는 유망한 해결책을 제공합니다.
LoRA 방법론의 핵심은 Low-Rank Decomposition입니다. 실제로, 이는 대규모 차원의 행렬 연산을 낮은 차원으로 분해하는 것을 포함합니다. Self-attention 연산을 고려해 보겠습니다. Self Attention에서는 행렬 연산을 사용하여 Q, K, V를 구성해야 합니다. Q, K, V를 생성하는 데 사용되는 행렬 W는 매우 고차원입니다. 이는 입력의 큰 차원성 때문에 피할 수 없습니다. 여기서의 아이디어는 이러한 고차원 행렬을 낮은 차원으로 분해하는 것입니다.
위의 그림에는 원래의 고차원 행렬을 나타내는 왼쪽 파란색과 Low-Rank Decomposed 행렬을 나타내는 오른쪽 주황색이 있습니다. 원래의 행렬은 입력 특성의 차원성인 d의 dd 차원을 가집니다. 반면에, Low-Rank Decomposed 행렬은 각각 dr과 r*d의 차원을 가진 두 행렬 A와 B로 구성됩니다. 여기서 r이 d보다 훨씬 작은 경우(예를 들어, 1이나 2), 주황색 행렬에서의 연산은 매우 적을 것입니다. LoRA에서는 파란색 파라미터가 사전 훈련된 가중치이므로 고정되어 있으며, 오직 주황색 파라미터만이 하류 작업을 위해 추가되어 훈련됩니다.
위의 그림은 RoBERTa, DeBERTa의 GLUE 벤치마크 성능을 Fine-Tuning(FT) 및 기타 PEFT 방법(BitFit, Adpt)과 LoRA와 비교합니다. LoRA가 다른 PEFT 방법에 비해 더 적은 파라미터를 사용하면서 더 나은 성능을 달성한다는 점이 흥미롭습니다. 더욱 매혹적인 것은 LoRA가 일부 경우에 전통적인 Fine-Tuning 방법보다 우수한 성능을 보인다는 것입니다.
Fine-Tuning은 사전 훈련된 모델을 특정 하류 작업에 적응시키기 위해 기계 학습 커뮤니티에서 오랫동안 사용되어 왔습니다. 그러나 이는 종종 방대한 계산 자원을 필요로 하며, 특히 큰 모델과 제한된 데이터셋을 다룰 때 과적합을 초래할 수 있습니다.
반면, LoRA는 Low-Rank Decomposition을 활용하여 튜닝 과정을 최적화하는 다른 접근 방식을 취합니다. 고차원 행렬을 낮은 차원으로 분해함으로써, LoRA는 계산 부담을 효과적으로 줄이면서도 모델 성능을 유지하거나 심지어 향상시킵니다.
LoRA 장단점
LoRA 논문에서 다음의 장단점을 언급하고 있습니다.
첫 번째 장점은 메모리 및 저장소 사용 감소입니다. 이는 LoRA 방법을 이해하면 즉시 분명해지는 측면입니다. LoRA는 기존의 사전 훈련된 파라미터에 대해 훈련하지 않으므로, 이러한 파라미터를 최적화기에 저장할 필요가 없습니다. 결과적으로, Low-Rank Decomposition을 통해 달성된 차원성에 따라 VRAM 사용량을 약 2/3 줄일 수 있습니다. 또한, 체크포인트 크기도 상당히 줄일 수 있습니다.
두 번째 장점은 낮은 추론 비용입니다. 이는 LoRA가 각 작업에 대해 별도의 파라미터를 가지고 있으며 작업에 따라 계산을 전환하기 때문입니다.
세 번째 장점은 훈련 시간 감소입니다. GPT3 175B 모델을 기준으로 25% 더 빠르다고 보고됩니다. 이는 대부분의 사전 훈련된 파라미터에 대해 기울기를 계산할 필요가 없기 때문입니다.
반면, LoRA 논문은 또한 한계를 지적합니다. 주목할 만한 한계는 다양한 작업을 혼합하고 배치를 구성할 수 없다는 것입니다. 이는 각 작업에 대해 다른 LoRA 파라미터를 사용하는 방법 때문입니다. 즉, 각 작업에 대해 별도의 데이터셋을 구성해야 하며, 별도의 파인 튜닝 과정이 필요합니다.
결론
더 효율적이고 효과적인 모델 튜닝 기술을 추구하는 과정에서, LoRA는 유망한 접근 방식으로 돋보입니다. 지역화된 표현과 타깃 파라미터 업데이트를 활용함으로써, LoRA는 모델 적응에서 새로운 효율성과 성능 수준을 해제합니다. 연구 실험실, 산업 설정 또는 일상적인 응용에서, LoRA의 원칙은 기계 학습 최적화의 미래에 대한 귀중한 통찰을 제공합니다. 본질적으로, LoRA는 효율성, 적응성 및 성능을 강조하며 모델 튜닝에 접근하는 방식에서의 패러다임 변화를 대표합니다. 기계 학습 분야가 계속해서 진화함에 따라, LoRA와 같은 혁신은 더 지능적이고, 자원 효율적이며, 영향력 있는 AI 시스템으로의 길을 열어줍니다.
참조:
LORA: LARGE LANGUAGE MODELS의 LOW-RANK ADAPTATION(https://arxiv.org/pdf/2106.09685.pdf )
** 궁금한 내용은 댓글 주세요
** 제 글이 유용하게 느껴지셨다면 로그인이 필요 없는 공감♡을 눌러주세요
** 제 글이 유용하게 느껴지셨다면 관심있는 광고도 클릭하실 수 있습니다;)해치지 않는 Google Adsense예요