Alapfogalmak
Addax는 0차 그래디언트와 1차 그래디언트를 선택적으로 결합하여 메모리 효율성을 높이면서도 빠른 수렴 속도와 높은 성능을 달성하는 새로운 언어 모델 미세 조정 최적화 알고리즘입니다.
본 연구 논문에서는 대규모 언어 모델(LLM)을 미세 조정할 때 발생하는 메모리 병목 현상을 해결하기 위해 Addax라는 새로운 최적화 알고리즘을 제안합니다. Addax는 1차 그래디언트 기반의 IP-SGD와 0차 그래디언트 기반의 MeZO의 장점을 결합하여 메모리 효율성과 성능을 동시에 향상시킵니다.
연구 배경
최근 사전 학습된 LLM을 다양한 다운스트림 작업에 맞게 미세 조정하는 방식이 널리 사용되고 있습니다. 그러나 기존의 미세 조정 방식은 Adam과 같은 옵티마이저를 사용하기 때문에 많은 양의 메모리를 필요로 합니다. 특히, 모델의 크기가 커짐에 따라 그래디언트 및 옵티마이저 상태 저장에 필요한 메모리 용량이 기하급수적으로 증가하여 실제 애플리케이션에 제약이 발생합니다.
기존 연구의 한계
메모리 효율성을 개선하기 위해 IP-SGD와 MeZO와 같은 방법들이 제안되었습니다. IP-SGD는 그래디언트를 계산하는 즉시 가중치를 업데이트하고 폐기하여 메모리 사용량을 줄입니다. MeZO는 모델 파라미터를 직접 변경하지 않고 섭동을 통해 그래디언트를 추정하여 메모리 오버헤드를 최소화합니다. 그러나 IP-SGD는 여전히 상당한 양의 메모리를 필요로 하며, MeZO는 0차 그래디언트의 특성상 느린 수렴 속도와 성능 저하를 보입니다.
Addax의 핵심 아이디어
Addax는 입력 시퀀스 길이를 기준으로 데이터를 분할하고, 짧은 시퀀스에는 IP-SGD를, 긴 시퀀스에는 MeZO를 적용하여 메모리 사용량을 효율적으로 관리합니다. 즉, 메모리 소비량이 적은 데이터 포인트에는 계산 비용이 높은 1차 그래디언트를 사용하고, 메모리 소비량이 큰 데이터 포인트에는 계산 비용이 낮은 0차 그래디언트를 사용하는 것입니다. 또한, Addax는 0차 그래디언트를 1차 그래디언트에 대한 정규화 항으로 활용하여 모델의 일반화 성능을 향상시킵니다.
실험 결과
다양한 모델 아키텍처, 모델 크기, 작업에 대한 광범위한 실험을 통해 Addax가 MeZO보다 정확도/F1 점수가 평균 14% 높고 수렴 속도가 15배 빠르다는 것을 확인했습니다. 또한, Addax는 대부분의 작업에서 IP-SGD 및 Adam보다 우수한 성능을 보이면서도 메모리 사용량은 크게 줄였습니다.
결론
Addax는 LLM 미세 조정을 위한 메모리 효율적인 최적화 알고리즘으로, 0차 그래디언트와 1차 그래디언트를 효과적으로 결합하여 빠른 수렴 속도와 높은 성능을 달성합니다. Addax는 제한된 리소스 환경에서 LLM의 접근성을 높이고 대규모 모델의 미세 조정을 용이하게 하는 데 기여할 것으로 기대됩니다.
Statisztikák
OPT-13B 모델을 하나의 A100 GPU에서 Addax를 사용하여 미세 조정한 결과, Addax는 MeZO보다 평균적으로 정확도/F1 점수가 14% 높고 15배 빠르게 수렴했습니다.
Addax는 OPT-13B 모델을 사용한 9개 작업 모두에서 성공적으로 실행되었지만, SGD는 9개 작업 모두에서, IP-SGD는 9개 작업 중 3개 작업에서 메모리 부족 오류가 발생했습니다.
Addax는 OPT-13B 모델을 사용한 9개 작업 중 7개 작업에서 Adam보다 우수한 성능을 보였으며, 메모리 사용량은 최대 89%까지 줄였습니다.
Addax는 OPT-30B 모델을 사용한 모든 실험에서 MeZO, SGD, IP-SGD보다 높은 최종 정확도를 달성했습니다.
Addax는 OPT-30B 모델을 사용한 실험에서 MeZO보다 평균적으로 최종 정확도가 16% 이상 높았고 30배 빠르게 수렴했습니다.
Addax는 OPT-66B 모델을 사용한 7개 작업 중 6개 작업에서, Llama-2-70B 모델을 사용한 6개 작업 모두에서 다른 방법보다 우수한 성능을 보였습니다.