대규모 언어모델(LLM)을 특정 작업에 맞게 미세조정(fine-tuning)하는 과정은 막대한 컴퓨팅 자원과 저장 공간을 요구합니다. 이러한 비효율성을 해결하기 위해 LoRA(Low-Rank Adaptation)와 같은 경량 어댑터(lightweight adapter) 방식이 주목받아왔습니다. 최근 LARA(Lightweight Additive Residual Adaptation)라는 새로운 방식이 등장하여, 모델의 가중치(weights)를 직접 수정하지 않고도 LoRA와 동등한 성능을 달성하며 미세조정의 효율성을 한 단계 더 끌어올렸습니다.
LARA는 기존 LoRA가 모델의 가중치 행렬에 저랭크(low-rank) 업데이트를 추가하는 것과 달리, 동결된(frozen) 기본 모델의 잔차 스트림(residual stream) 내에서 작동합니다. 즉, 특정 계층(layer)의 은닉 상태(hidden state)를 읽어 잔차 스트림에 저랭크 보정(correction)을 추가하는 방식입니다. 이로 인해 기본 모델의 가중치는 전혀 변경되지 않으며, 코드 미세조정(code fine-tuning) 및 선호도 최적화(preference optimization, DPO) 작업에서 LoRA와 동일한 파라미터 수로 유사한 성능을 보였습니다. 특히, LARA는 추론(inference) 시 기본 모델과 미세조정된 행동 사이를 매끄럽게 보간(interpolate)할 수 있는 스케일(scale) \gamma를 노출하여, 가중치 공간에서 이루어지는 기존 어댑터 방식에서는 불가능했던 세밀한 제어를 가능하게 합니다.
이러한 LARA의 가장 큰 장점은 여러 행동(behaviors)을 하나의 동결된 기본 모델 위에 효율적으로 통합하고 관리할 수 있다는 점입니다. 각 행동이 공유된 기본 모델 위에 작은 잔차 모듈(residual module)로 존재하기 때문에, 여러 행동을 동시에 메모리에 상주시키고 토큰(token) 단위로 자동으로 라우팅(routing)할 수 있습니다. 예를 들어, 1.5B(15억) 파라미터 모델에 6개의 미세조정된 행동과 1개의 선호도 최적화 행동을 추가하는 데 약 33MB의 오버헤드만 발생하여, 각 행동마다 전체 모델을 로드하는 것보다 훨씬 효율적입니다. 이는 단일 장치에서 많은 행동을 호스팅하고 새로운 행동을 쉽게 추가할 수 있는 유연성을 제공하며, LLM 서비스의 확장성과 경제성을 크게 향상시킬 수 있습니다.