[생각]Adapter(PEFT)는 과연 효율적인가?

민서·2025년 4월 23일
1

잡생각

목록 보기
1/1

전제

LoRA(Low-Rank Adaptation)는 전체 모델 파라미터의 극히 일부(보통 1% 미만)만 추가 학습하여 비용을 크게 절감할 수 있어 매력적인 방법이다. 핵심은 "학습비용절감"이다.

의문


샘 알트먼이 “사람들이 ChatGPT에 'please'나 'thank you' 같은 예의를 갖춘 표현을 사용할 때마다 전기 요금이 수천만 달러씩 더 든다”고 언급한 것을 보았다 . 이러한 표현은 단어 수가 많지 않지만, 전 세계 수억 명의 사용자가 매일 수십억 건의 요청을 보내는 상황에서는 누적된 연산량이 상당한 전력 소비로 이어진다는 의미이다.

간단한 토큰의 추가가 누적되면서 큰 연산비용을 초래한다는 관점에서, lora로 인해 추가되는 1%남짓의 파라미터 역시 추론비용증가로 이루어져 학습비용을 감소시킨 것 이상으로 추론비용이 증가할 수 있지 않나? 하는 생각이 들었다.

LoRA를 통해 학습할 때 비용이 저렴해지더라도, 수천, 수억만번의 추론 과정에서 추가로 발생하는 작은 연산량이 반복적으로 누적된다면 결국 추론 비용이 장기적으로 학습 비용을 초과할 수도 있지 않을까하는 의문이다.

학습 절감 vs 추론 누적 손익분기?

엄밀히, 울트먼이 말한 문제는 토큰 추가의 문제이다. 이는 추론 횟수×추가 토큰 수가 거대하기 때문인데, LoRA 오버헤드는 토큰스케일이 아니라 파라미터스케일이라 스케일링 방식 자체가 달라, 추가에 따른 비용증가 폭이 훨씬훨씬 적은 편이다.

LoRA로 인해 각 층에서 추가되는 연산량(FLOPs)은 다음과 같이 근사할 수 있다.

추가 FLOPs2dr\text{추가 FLOPs} \approx 2 \cdot d \cdot r

기존의 연산량은 ( d^2 )이므로, 전체 연산량 대비 비율은

2rd\frac{2 \cdot r}{d}
  • LLaMA-7B d=4096d = 4096, r=8r = 8일때 ,

    2840960.39%\frac{2 \cdot 8}{4096} \approx 0.39\%
  • LLaMA-70B d=8192d = 8192, r=8r = 8일때 ,

    2881920.20%\frac{2 \cdot 8}{8192} \approx 0.20\%

초 거대규모 모델일 경우 LoRA의 파라미터 비율이 높아지지만, 파라미터가 많아질수록 학습 난이도 역시 높은 수준으로 증가하기 때문에 추론손실이 학습절감 손익분기를 넘기기 위해서는 서비스 이용량이 극단적으로 많은 초거대 모델이 몇년동안 사용되어야 하는 수준일 듯하다. 매주 새로운 모델이 나오는 현재의 서비스 시나리오에서는 비현실적이다.
시험공부나 다시 하러가야지..

profile
실패보다 사람을 더 미치게 하는게 후회더라구요 // 공부는 티스토리에, 생각은 벨로그에, 일상은 네이버에 기록합니다

0개의 댓글