본문 바로가기
카테고리 없음

딥러닝의 새로운 지평: 초심자를 위한 Low-Rank Adaptation (LoRA) 완벽 가이드 5편

by AI디코더 2025. 6. 16.

제5장: 확장하는 LoRA 유니버스 - 주요 변종과 발전

 

LoRA는 발표 이후 AI 커뮤니티에서 폭발적인 반응을 얻으며, 그 자체로 하나의 거대한 생태계를 형성했습니다. LoRA는 정적인 기술에 머무르지 않고, 다양한 한계를 극복하고 새로운 가능성을 열기 위한 수많은 변종(variants)과 확장 기술을 탄생시켰습니다. 이러한 발전은 AI 연구의 전형적인 패턴, 즉 하나의 병목 현상을 해결하면 그로 인해 드러나는 다음 병목을 해결하기 위한 혁신이 뒤따르는 '병목 중심의 혁신(bottleneck-driven innovation)' 과정을 잘 보여줍니다. 이 장에서는 LoRA 유니버스를 확장시킨 주요 기술들을 살펴봅니다.

 

5.1. QLoRA: 양자화로 효율성 극대화

 

문제점: LoRA는 '훈련'에 필요한 메모리(그래디언트, 옵티마이저 상태 등)를 획기적으로 줄여주었지만, 여전히 한 가지 큰 병목이 남아있었습니다. 바로 미세조정 중에도 고정된(frozen) 기본 모델의 전체 가중치를 GPU VRAM에 올려야 한다는 점입니다. 175B 모델의 경우, 이 가중치만으로도 수백 GB의 VRAM이 필요하므로 여전히 일반 사용자가 접근하기 어려운 장벽이었습니다.

해결책: QLoRA (Quantized LoRA)

QLoRA는 이 문제를 해결하기 위해 양자화(quantization) 기술을 LoRA에 접목한 혁신적인 방법입니다.35 QLoRA의 핵심 아이디어는 다음과 같습니다.

  1. 4-bit 양자화: 훈련 중에 고정되어 있는 거대한 기본 모델의 가중치를 기존의 16비트나 32비트 부동소수점에서 4비트 정수로 압축하여 저장합니다. 이 과정만으로도 모델 가중치가 차지하는 메모리가 1/4로 줄어듭니다.
  2. 계산 시에만 역양자화: 실제 계산(순방향 및 역방향 전파)이 필요할 때만 4비트 가중치를 다시 16비트(BFloat16)로 '역양자화(dequantize)'하여 계산을 수행하고, 계산이 끝나면 메모리에서 해제합니다.
  3. LoRA를 통한 미세조정: 그래디언트는 이 양자화된 기본 모델을 통과하여, 여전히 16비트로 유지되는 작은 LoRA 어댑터로 흘러가고, LoRA 가중치만 업데이트됩니다.

QLoRA는 이 과정을 효율적으로 수행하기 위해 몇 가지 독자적인 기술을 도입했습니다.

  • 4-bit NormalFloat (NF4): 정규 분포를 따르는 모델 가중치에 정보 이론적으로 최적화된 새로운 4비트 데이터 타입을 개발하여 양자화로 인한 정보 손실을 최소화했습니다.35
  • 이중 양자화 (Double Quantization): 양자화 과정 자체에 필요한 상수(quantization constants)들마저 다시 양자화하여 메모리 사용량을 더욱 절감했습니다.35
  • 페이징된 옵티마이저 (Paged Optimizers): 훈련 중 간헐적으로 발생하는 메모리 급증(memory spike)에 대처하기 위해 CPU 메모리를 GPU 메모리의 확장 공간처럼 활용하는 기술입니다.

이러한 혁신 덕분에 QLoRA는 650억 파라미터 모델을 단일 48GB VRAM을 가진 GPU에서 미세조정하는 것을 가능하게 만들었습니다.35 이는 AI 기술의 접근성을 한 단계 더 끌어올린, AI 민주화의 진정한 게임 체인저로 평가받습니다.

 

5.2. LongLoRA: 긴 컨텍스트를 위한 미세조정

 

문제점: LLM의 성능은 한 번에 처리할 수 있는 입력의 길이, 즉 **컨텍스트 길이(context length)**에 크게 좌우됩니다. 하지만 기존 모델의 컨텍스트 길이를 늘리는 것은 매우 비효율적입니다. 어텐션 메커니즘의 계산 복잡도가 컨텍스트 길이에 제곱으로 비례(O(n2))하기 때문입니다. 기본적인 LoRA 방식 역시 이러한 계산량 문제를 해결하지 못해 컨텍스트 길이 확장에 비효율적이었습니다.38

해결책: LongLoRA

LongLoRA는 계산 효율적으로 LLM의 컨텍스트 길이를 확장하기 위해 제안된 미세조정 기법입니다.39 LongLoRA의 핵심 전략은 다음과 같습니다.

  1. Shift Short Attention (S²-Attn): 훈련 시에 전체 컨텍스트에 대해 어텐션을 계산하는 대신, 컨텍스트를 여러 그룹으로 나누고 각 그룹 내에서만 어텐션을 계산합니다. 그리고 그룹 간 정보 흐름을 위해 일부 토큰을 인접 그룹으로 '이동(shift)'시키는 방식을 사용합니다. 이는 전체 어텐션을 근사하면서도 계산량을 획기적으로 줄여줍니다. 흥미로운 점은 이 S²-Attn은 '훈련 시에만' 사용되고, 추론 시에는 원래의 표준 어텐션 메커니즘을 그대로 사용할 수 있다는 것입니다.38
  2. 임베딩 및 정규화 레이어 학습: LongLoRA 연구진은 컨텍스트 확장을 위해서는 어텐션 레이어뿐만 아니라, 입력 임베딩(embedding)과 정규화(normalization) 레이어를 함께 학습하는 것이 매우 중요하다는 것을 발견했습니다. 이들은 전체 파라미터에서 차지하는 비중은 작지만, 긴 컨텍스트를 이해하는 데 결정적인 역할을 합니다.40

LongLoRA는 이러한 기법들을 통해 LLaMA2 7B 모델의 컨텍스트 길이를 4k에서 100k까지, 70B 모델을 32k까지 단 8대의 A100 GPU로 확장하는 데 성공했습니다.39 이는 긴 문서 요약, 장문 질의응답 등 새로운 응용 분야의 문을 여는 중요한 발전입니다.

 

5.3. 그 외 주목할 만한 혁신들

 

LoRA 생태계는 지금도 활발히 확장되고 있습니다. 몇 가지 주목할 만한 연구들을 간략히 소개하며 이 분야의 역동성을 보여줍니다.

  • LoRA+: 기존 LoRA에서는 두 개의 분해된 행렬 A와 B에 동일한 학습률(learning rate)을 적용했습니다. LoRA+는 A와 B에 서로 다른 학습률을 적용하는 것이 더 효율적인 특징 학습을 가능하게 함을 보이고, 이를 통해 성능과 수렴 속도를 최대 2배까지 개선했습니다.41
  • 기타 변종들: 이 외에도 LoRA 모듈을 반복적으로 학습하고 병합하는 COLA (Chain of LoRA) 42, 베이지안 접근법을 적용하여 모델의 불확실성을 예측하는
    Laplace-LoRA 43, 훈련 중 그래디언트 정보를 바탕으로 레이어별 최적의 순위(rank)를 동적으로 할당하는
    GoRA (Gradient-driven Adaptive LoRA) 44 등, LoRA의 성능과 효율을 개선하려는 다양한 연구가 활발히 진행되고 있습니다.

이러한 발전의 역사는 LoRA가 단일 기술을 넘어, AI 커뮤니티가 당면한 문제들을 해결하며 끊임없이 진화하는 살아있는 플랫폼임을 증명합니다.

 

반응형

댓글