본문으로 건너뛰기
HF Daily Papers조회 1

KVpop: 미래 주의 기반 예측형 온라인 정리로 KV 캐시를 고정 예산으로 압축하는 방법

KVpop은 학습 단계에서 전치 주의로 계산한 미래 주의 질량을 타깃으로 경량 스코어러를 훈련해 고정 예산의 KV 캐시를 유지하면서 Qwen3-계열 모델에서 밀집 주의 성능을 대체하는 방법이다.

용어 해설

키-값 캐시(KV Cache)
Transformer의 autoregressive 디코딩에서 이전 토큰의 key와 value를 저장해 재계산을 피하는 구조이다. 토큰 수에 비례해 메모리가 선형 증가하므로 긴 컨텍스트에서는 메모리 병목이 된다. 이 논문에서는 해당 캐시를 고정 예산으로 압축하는 문제를 다룬다.
미래 주의 질량(Future-Attention)
어떤 과거 토큰이 보호 윈도우를 벗어난 이후 향후 쿼리들로부터 받는 누적 attention 확률의 합이다. 이 값이 크면 해당 토큰이 장기적 유용성을 가진 것으로 간주된다. KVpop은 이 값을 학습 타깃으로 사용해 어떤 토큰을 유지할지 결정한다.
전치 주의 연산(Transposed-Attention)
쿼리와 키의 역할을 바꿔 열 단위의 합산을 계산하는 추가적인 attention 호출이다. 이 방식을 통해 전체 S×S 밀집 행렬을 만들지 않고도 각 키에 대한 미래 주의 질량을 병렬로 복구한다. 학습 단계에서만 호출되어 추론 오버헤드를 남기지 않는다.
펜윅 트리(Fenwick Tree)
정적 우선순위에 따라 토큰 순위를 유지하고 쿼리별로 k번째 컷오프 순위를 온라인으로 계산하는 자료구조이다. 단일 토큰이 참여할 때마다 순위를 삽입·조회하여 쿼리마다 재정렬 비용을 피한다. KVpop은 이를 이용해 running top-k를 효율적으로 구현한다.

코드 예제

text
1:  student model f_theta, dense teacher f_theta_bar
2:  sequence x_{1:S}, budget (s,w,k)
3:  H^0 <- Embed(x_{1:S})
4:  L_score <- 0
5:  for l = 1,...,L do
6:    (Q^l,K^l,V^l) <- Proj^l(H^{l-1})
7:    rhat^l <- Scorer^l(K^l,V^l)
8:    r^l(q) <- ApplyDecay(rhat^l,q)
9:    M^l <- TopKMask(r^l,s,w,k)
10:   (H^l, LSE_tilde^l) <- SparseAttn(Q^l,K^l,V^l,M^l)
11:   r_tgt^l <- FutureTarget(Q^l,K^l,LSE_tilde^l,w)
12:   L_score <- L_score + BndLoss(r^l, r_tgt^l, s, w, k)
13: end for
14: L_score <- L_score / L
15: L <- KL(f_theta_bar(x_{1:S}) || LMHead(H^L)) + L_score
16: Update theta using grad_theta L
17: return L

이 코드는 논문의 Algorithm 1에 해당하는 훈련 스텝 의사코드로, KVpop 스코어러 학습 루프와 경계 손실 계산, 전치 주의로 타깃을 계산하는 흐름을 보여준다.

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 07. 06.수집 2026. 07. 08.출처 타입 PAPER

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.