피드로 돌아가기
GeekNewsAI/ML
원문 읽기
구글 TurboQuant: 극한 압축으로 AI 효율성을 재정의하다
Google TurboQuant가 기하학적 회전과 극한 양자화를 결합해 KV 캐시를 극단적으로 압축하는 기법 제안
AI 요약
Context
LLM 추론 시 KV 캐시는 메모리 사용량의 상당 부분을 차지하며, 이를 효율적으로 압축하면서 정보 손실을 최소화하는 것이 과제였다. 기존 접근 방식들은 고차원 데이터의 불균등한 분포(outlier 활성값 존재)와 각 차원의 독립적 양자화 간 괴리를 해결하지 못했다.
Technical Solution
- KV 캐시 벡터에 회전 행렬을 곱해 고차원 구의 적도 부근에 몰려 있는 데이터 분포를 균등하게 변환
- Johnson–Lindenstrauss 변환을 적용해 각 좌표를 독립적으로 양자화 가능한 형태로 재배치
- Lloyd–Max 알고리즘으로 양자화 경계와 재구성 값을 최적화해 양자화 손실 감소
- QJL(Quantized Johnson–Lindenstrauss) 편향 보정을 1비트로 수행해 남은 오차 보정
- 쿼리 벡터 역회전(un-rotation)으로 압축된 KV 캐시 재구성
- llama.cpp 구현에서 회전 연산 O(d²)를 Subsampled Randomized Hadamard Transform으로 O(d log d)로 개선 시도
Impact
본 아티클에는 정량적 성능 수치(압축률, 레이턴시 감소, 메모리 절감 %)가 명시되지 않았다.
Key Takeaway
KV 캐시 압축은 단순한 비트 감소를 넘어 고차원 기하학적 성질(등방성, 벡터 간 거리 보존)을 활용해 정보 엔트로피를 유지하면서 달성할 수 있으며, Johnson–Lindenstrauss 같은 고전 기하 기법이 딥러닝 양자화의 이론적 기반이 될 수 있다는 것을 보여준다.
실천 포인트
LLM 추론 환경에서 KV 캐시를 압축할 때 무작위 회전을 통해 활성값 분포를 균등화한 후 각 차원을 독립적으로 양자화하고 편향을 보정하는 접근을 도입하면, 부동소수점 전체 길이보다 훨씬 적은 비트로도 추론 정확도를 유지할 수 있다. llama.cpp 같은 프로덕션 구현에서는 Hadamard 변환으로 회전 연산을 O(d log d)로 최적화해 실시간 추론 오버헤드를 감소시킬 수 있다.