AI VIDEO BRIEFING

TurboQuant KV 캐시 3비트 양자화: 어텐션 점수를 지키는 LLM 메모리 압축 기법 정리

긴 문맥 LLM의 메모리를 잡아먹는 KV 캐시를 3비트로 압축하는 TurboQuant를 정리했다. 좌표가 아니라 어텐션 점수를 보존하는 아다마르 전처리, 유니버설 코드북, 1비트 잔차 보정의 원리를 살펴본다.

KV 캐시를 3비트로 줄이는 TurboQuant: 어텐션 '점수'만 지키면 된다 영상 대표 이미지

핵심 메시지

  • KV 캐시 양자화의 목표는 벡터 좌표를 정확히 복원하는 것이 아니라, 어텐션 점수(Q·K 내적)의 순서를 흔들지 않는 것이다.
  • TurboQuant는 무작위 부호와 아다마르 변환으로 벡터 에너지를 고르게 펴서, 좌표 분포를 예측 가능한 가우시안에 가깝게 만든 뒤 양자화한다.
  • 한 번만 설계한 Lloyd-Max 유니버설 코드북을 모든 모델·레이어에 재사용하므로, 레이어마다 스케일·영점 태그를 저장하는 비용이 사라진다.
  • 1비트짜리 잔차 스케치로 어텐션 점수의 체계적 편향을 보정해, 4.4배 압축에서도 편향 없는 점수 추정을 얻는다.
  • 긴 문맥 검색(Needle in a Haystack)에서는 거의 완벽하지만, 미세한 수치 차이가 중요한 수학 추론에서는 여전히 완전정밀도가 유리하다.

쉽게 이해하기

대규모 언어 모델이 긴 문맥을 처리할 때 가장 큰 메모리 부담은 지금까지 계산한 키·값(KV) 캐시다. TurboQuant는 이 KV 캐시를 3비트 수준으로 압축하면서도 모델 품질을 지키려는 기법이다. 핵심 통찰은, 양자화가 지켜야 할 것은 각 벡터의 좌표값 자체가 아니라 쿼리와 키의 내적(Q·K)이 만드는 어텐션 점수의 순서라는 점이다.

단순 양자화는 좌표를 조금만 바꿔도 벡터의 '각도'가 틀어져 소프트맥스 순위가 뒤바뀐다. 게다가 부호만 남기는 1비트 양자화는 쿼리 축으로의 투영이 평균적으로 2/π(약 0.637)배로 줄어드는 체계적 편향까지 만든다. 즉 오차가 무작위 잡음이 아니라 방향성을 가진다.

TurboQuant는 두 단계로 이 문제를 공략한다. 먼저 무작위 ±부호를 곱하고 아다마르 버터플라이 변환을 적용한 뒤 차원의 제곱근으로 정규화한다. 이 변환은 직교라서 내적을 보존하면서도, 몇 개 좌표에 몰려 있던 에너지를 전 좌표에 고르게 흩뿌린다. 그 결과 헤드 차원 128 정도에서 좌표 분포가 가우시안에 가까워져 예측 가능해진다.

분포가 예측 가능해지면 Lloyd-Max 알고리즘으로 만든 하나의 코드북(3비트면 8개 레벨)을 오프라인에서 한 번만 설계해 모든 레이어·모델에 재사용할 수 있다. 실행 시에는 가장 가까운 중심값의 정수 인덱스만 저장하고, 복원은 표를 찾아보는 것으로 끝난다.

2단계는 잔차 보정이다. 거친 복원 K̂를 뺀 잔차 R을 좌표 공간에서 복원하는 대신, 무작위 가우시안 행렬로 투영해 부호만 남긴 1비트 스케치를 저장한다. 쿼리도 같은 행렬로 투영하면 Q·R을 추정할 수 있어, 거친 점수에 이 보정을 더하면 편향 없는 최종 점수가 된다. 차원 128 예시에서 저장량은 FP16의 2048비트 대비 464비트로 약 4.4배 압축된다.

주요 인사이트

  • 압축의 기준을 '벡터를 얼마나 정확히 복원했나'에서 '어텐션 점수를 얼마나 지켰나'로 옮긴 것이 이 기법의 관점 전환이다.
  • 아다마르 전처리로 분포를 안정화하면 레이어별 재보정이 필요 없어져, 유니버설 코드북 하나로 여러 모델을 커버할 수 있다.
  • TurboQuant는 경험적 요령에 그치지 않고, 왜곡 하한 대비 2.72배 이내라는 이론적 보장을 제시하며 비트 하나당 왜곡을 약 4배씩 줄인다.
  • 헤드 차원이 클수록 내적 왜곡 한계가 1/D로 좋아진다는 점은, 큰 모델일수록 이 방식이 오히려 유리할 수 있음을 시사한다.
  • 추론 스택에서 AWQ는 가중치를, FP8은 활성값을, TurboQuant는 KV 캐시를 맡는 식으로 역할이 자연스럽게 분담된다.

자주 묻는 질문

TurboQuant는 무엇을 압축하나요?

가중치나 활성값이 아니라, 어텐션이 참조하는 키·값(KV) 캐시를 3비트 수준으로 압축합니다. 긴 문맥일수록 KV 캐시가 메모리를 많이 차지하기 때문입니다.

왜 좌표 정확도가 아니라 어텐션 점수를 목표로 하나요?

어텐션은 쿼리와 키의 내적으로 순위를 매기므로, 좌표가 약간 달라도 내적과 그 순서만 유지되면 결과가 안정적입니다. 반대로 좌표를 조금만 틀어도 각도가 바뀌면 소프트맥스 순위가 뒤집힙니다.

압축률과 한계는 어느 정도인가요?

차원 128 예시에서 FP16 대비 약 4.4배 압축을 달성합니다. 긴 문맥 검색과 LongBench에서는 완전정밀도에 근접하지만, 미세한 수치가 중요한 수학 추론에서는 완전정밀도가 여전히 조금 더 낫습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식