Hacker News 의견들
  • KV 캐시 압축 연구가 정말 흥미로운 발전임
    다만 관련 연구에서 핵심 수학적 메커니즘에 대한 인용이 빠져 있음이 아쉬움
    고차원 기하를 다루기 위해 기하학적 회전을 적용한 뒤 극단적 양자화를 수행하는 기법은 우리 팀의 NeurIPS 2021 논문 “DRIVE”에서 처음 제안된 것임
    이 회전 기반 접근과 편향 보정 메커니즘을 통해 최적의 분산 평균 추정을 달성했음
    이후 Google 초청 세미나에서도 이 내용을 발표했으며, TurboQuant와 PolarQuant의 이론적 유사성을 고려해 향후 버전에서 선행 연구 인용이 반영되길 바람

    • 회전이라 하면 결국 대각화(diagonalization) 를 의미하는 것인지 궁금함
      즉, 대각 행렬과 새로운 기저를 저장해 더 압축하는 방식인지 묻고 싶음
    • 오늘 처음 Multi-Head Latent Attention (MHLA) 를 알게 되었는데, 이것도 KV 캐시를 압축하는 방식이라 들음
      이번 연구와 MHLA가 어떤 관계인지 설명을 부탁함
    • 이건 사실 오래된 Johnson–Lindenstrauss류의 고전적 기법임
      이런 아이디어는 몇 년마다 재발견되곤 하는데, 예를 들어 2017년 논문에서도 유사한 접근이 있었음
    • 인용이 빠졌다면 아쉬운 일임
      하지만 연구자가 이미 충분히 진행된 상태에서 비슷한 아이디어를 독립적으로 떠올렸을 가능성도 있음
      좋은 아이디어는 문제를 깊이 이해한 사람이라면 자연히 도달하게 되는 법임
    • Schmidhuber’d”라며, 선행 연구 인용 누락을 풍자적으로 표현함
  • “TurboQuant가 데이터를 무작위로 회전시켜 기하를 단순화한다”는 설명이 이해되지 않음
    회전이 항상 더 단순한 형태를 만든다는 보장이 없지 않음?
    또 “Johnson–Lindenstrauss 변환으로 고차원 데이터를 축소하고 각 벡터를 부호 비트로 표현한다”는 부분도, 불리언 값 하나로 관계 정보를 유지한다는 게 납득되지 않음

    • 실제로는 딥러닝 모델의 활성값 분포가 등방적(isotropic) 이지 않음
      일부 차원에서 outlier 활성값이 생기며, Adam 옵티마이저의 특성상 이런 현상이 강화됨
      관련 논문으로 SmoothQuantPrivileged Basis를 참고할 만함
    • 모델이 데이터의 방향이 아니라 벡터 간 거리에만 민감해야 한다는 뜻임
      이렇게 하면 불필요한 규칙 학습을 줄이고 최적화가 안정화됨
      즉, 모델이 “특정 차원의 특정 자리수가 5면 고양이” 같은 사소한 규칙을 배우지 않게 하는 것임
    • 양자화의 목적은 데이터를 ‘빈(bin)’에 넣어 압축하는 것임
      회전 행렬을 곱하면 데이터가 더 균등하게 분포되어 효율적 양자화가 가능해짐
      이후 Lloyd–Max 알고리즘으로 경계와 재구성 값을 최적화하고, 남은 편향(bias) 은 1비트로 보정함
      이렇게 하면 적은 비트로도 높은 정밀도를 유지할 수 있음
    • 회전은 단순히 데이터를 다른 기준 좌표계로 옮겨 압축 효율을 높이는 것임
      예를 들어, 부동소수점 값을 다른 단위(벨→데시벨)로 바꾸면 더 유사한 값으로 표현되어 압축이 쉬워짐
    • 무작위 회전이 아니라 outlier 정렬을 의미함
      즉, 멀리 떨어진 데이터를 다시 중심 근처로 모으는 과정임
      또 각 차원을 개별적으로 부호화하므로 전체 벡터가 단일 불리언으로 줄어드는 것은 아님
  • 이 블로그 글은 품질이 낮음
    그래프의 축이 잘못 표시되어 있고, 영상 시각화Polar Quantization 개념을 전혀 전달하지 못함
    또 다른 그래프는 축이 48에서 시작해 실제 차이를 과장함
    전반적으로 시각 자료의 신뢰성과 커뮤니케이션 품질이 떨어짐

  • 이미 누군가 llama.cpp에 구현 중임
    관련 커밋 참고

    • 논문보다 효율적인 방법으로, 회전 연산 O(d²)을 Subsampled Randomized Hadamard Transform으로 대체해 O(d log d)로 개선 시도 중임
      Johnson–Lindenstrauss 정리가 여전히 성립해 각 좌표의 독립적 양자화가 이론적으로 타당하길 기대함
    • 생각보다 구현이 단순해 놀라움
      도메인 지식이 부족하지만 구조는 명확해 보임
    • llama.cpp의 개발 속도가 매우 빠름
      4~6주 내에 메인 브랜치에 병합될 가능성이 높음
  • TurboQuant를 직관적으로 설명한 애니메이션이 있음

  • 학부 수준에서 정리해본 요약임
    핵심은 KV 캐시를 정보 손실 최소화하며 양자화하는 것임
    대부분의 벡터가 고차원 구의 적도 부근에 몰려 있어, 회전을 통해 분포를 균등하게 만들어 엔트로피 보존을 높임
    PolarQuant는 극좌표 변환으로 이를 시도했지만 TurboQuant는 이를 단순화하고 QJL 편향 보정을 추가함
    결국 PolarQuant + QJL + 실용적 보정으로 고효율 압축을 달성함
    블로그 글은 오류가 많고 혼란스러움

    • 실제로는 미래 쿼리 벡터를 위해 역회전(un-rotation) 을 수행함
      PolarQuant의 하이퍼폴라 좌표 코드북은 TurboQuant에도 일부 남아 있음
  • 이 글은 AI 구성요소 설명 중 최악의 수준
    기술적 맥락이 거의 없음

    • 실제로 AI가 작성했거나, 기술 이해가 부족한 사람이 쓴 듯함
      Johnson–Lindenstrauss 정리를 언급하면서도 구체적 연결 설명이 빠져 있음
    • 일부 문장은 너무 단순화되어 있음
      예를 들어 “3블록 동쪽, 4블록 북쪽”을 “5블록 37도 각도로 이동”이라 설명하는 식인데, 중학생 수준 비유로 느껴짐
    • “TurboQuant, QJL, PolarQuant는 이론적으로 효율적이며 하한선에 근접한 알고리즘적 혁신이다”라는 문장은 과장된 홍보 문구처럼 보임
  • 독립적인 PyTorch 구현체가 이미 공개됨
    turboquant-pytorch

    • Google의 블로그보다 훨씬 명확한 설명을 제공함
  • 블로그는 최근 공개됐지만, 논문은 거의 1년 전 arXiv에 제출된 것임
    이미 Gemini 같은 모델에 적용됐는지 궁금하며, 만약 그렇다면 개인용 RAM 비용도 줄어들 수 있을지 기대함

  • 최근 압축 연구가 실제 응용으로 이어지는 속도가 놀라움
    이미지 포맷에서도 AVIF와 JPEG XL이 비디오 코덱 연구에서 파생된 것처럼, AI 양자화 기술도 곧 실제 추론 환경에 적용될 가능성이 큼

    • JPEG XL은 이미지 전용 연구 기반이지만, AVIF처럼 비디오 기술을 이미지에 맞게 조정한 사례임
      XYB 색공간 등 일부 개념은 공통적이며, LLM에서도 비슷한 맞춤형 엔지니어링이 필요할 것이라 예상함