[논문 리뷰] SkipDecode: Autoregressive Skip Decoding with Batching and Caching for Efficient LLM Inference
SkipDecode는 순차적 위치에 따라 단순 감소하는 종료 지점(Exit Point)을 사용함으로써 효율적인 배치 처리와 KV 캐싱을 가능하게 하는 새로운 토큰 수준의 조기 종료 방법이다. 이는 하위 레이어를 건너뛰고 상위 레이어에 계산 자원을 집중시음으로써 성능 저하가 거의 없는 2배에서 5배의 속도 향상을 달성한다. 이는 실용적인 구현 파이프라인과의 호환성을 보장한다.
Autoregressive large language models (LLMs) have made remarkable progress in various natural language generation tasks. However, they incur high computation cost and latency resulting from the autoregressive token-by-token generation. To address this issue, several approaches have been proposed to reduce computational cost using early-exit strategies. These strategies enable faster text generation using reduced computation without applying the full computation graph to each token. While existing token-level early exit methods show promising results for online inference, they cannot be readily applied for batch inferencing and Key-Value caching. This is because they have to wait until the last token in a batch exits before they can stop computing. This severely limits the practical application of such techniques. In this paper, we propose a simple and effective token-level early exit method, SkipDecode, designed to work seamlessly with batch inferencing and KV caching. It overcomes prior constraints by setting up a singular exit point for every token in a batch at each sequence position. It also guarantees a monotonic decrease in exit points, thereby eliminating the need to recompute KV Caches for preceding tokens. Rather than terminating computation prematurely as in prior works, our approach bypasses lower to middle layers, devoting most of the computational resources to upper layers, allowing later tokens to benefit from the compute expenditure by earlier tokens. Our experimental results show that SkipDecode can obtain 2x to 5x inference speedups with negligible regression across a variety of tasks. This is achieved using OPT models of 1.3 billion and 6.7 billion parameters, all the while being directly compatible with batching and KV caching optimization techniques.
연구 동기 및 목표
- 순차적 언어 모델 추론에서 기존 토큰 수준의 조기 종료 전략이 배치 처리와 KV 캐싱과 호환되지 않는 문제를 해결한다.
- 배치 내 마지막 토큰이 종료될 때까지 대기해야 하는 추론의 성능 저하 문제를 해결한다.
- 모든 배치 내 토큰이 동일한 순차적 위치에 대해 통일된 종료 지점을 설정함으로써 예측 가능하고 제어 가능한 계산 예산을 확보한다.
- 후행 토큰일수록 더 예측 가능하므로, 하위 레이어의 계산을 줄일 수 있음을 활용한다.
- 전체 추론 지연 시간을 크게 줄이기 위해 상위 트랜스포저 레이어에 전략적으로 계산 자원을 할당하면서도 높은 생성 품질을 유지한다.
제안 방법
- 순차적 위치에 따라 단순 감소하는 종료 정책을 도입하여, 초기 토큰은 더 많은 레이어를 사용하고 후행 토큰은 점점 적은 레이어를 사용하도록 한다. 이는 감소하는 불확실성(손실 측정)에 기반한다.
- 배치 내 모든 토큰이 동일한 순차적 위치에 대해 하나의 공통 종료 지점을 정의함으로써, 후행 토큰이 먼저 종료되어도 KV 캐시를 다시 계산할 필요가 없도록 한다.
- 후행 토큰에 대해 하위 및 중간 트랜스포저 레이어를 건너뛰고, 계산 자원을 상위 레이어로 이관함으로써 초기 토큰의 계산 결과를 유용하게 활용한다.
- 순차적 위치에 따라 선형 감소 함수를 사용하여 종료 지점을 정의함으로써 단순성과 재계산 방지를 보장한다.
- 표준적인 배치 처리 및 KV 캐싱 최적화와 원활하게 통합되어 실제 시스템에 실용적으로 구현 가능하다.
- 모든 순차적 위치에 대해 최대 종료 레이어를 설정함으로써 계산 예산을 제어하고, 전체 네트워크 계산이 예측 불가능하게 발생하는 것을 방지한다.

실험 결과
연구 질문
- RQ1순차적 언어 모델 추론에서 기존의 토큰 수준 조기 종료 전략이 배치 처리와 KV 캐싱과 호환될 수 있는가?
- RQ2순차적 위치에 따라 단순 감소하는 종료 정책이 계산 비용을 줄이면서도 생성 품질을 유지할 수 있는가?
- RQ3후행 토큰이 먼저 종료되더라도, KV 캐시를 다시 계산할 필요 없이 조기 종료를 적용할 수 있는가?
- RQ4통제된 계산 예산 하에서 SkipDecode의 속도-성능 트레이드오���은 기존 방법과 비교해 어떻게 되는가?
- RQ5이 방법은 배치 처리와 KV 캐싱에 의존하는 실용적인 구현 파이프라인을 지원하면서도 추론 효율성을 손상시키지 않는가?
주요 결과
- SkipDecode는 OPT-1.3B 및 OPT-6.7B 모델에서 여러 생성 벤치마크에서 전체 추론 대비 2배에서 5배의 속도 향상을 달성한다.
- 이 방법은 전체 모델과 거의 동일한 생성 품질을 유지하며, 고속도 요인에서도 성능 저하가 거의 발생하지 않는다.
- 단순 감소하는 종료 지점 정책을 통해 초기 토큰의 KV 캐시 재계산이 필요 없어지며, 이로 인해 효율적인 배치 처리가 가능해진다.
- 이 접근법은 배치 처리 및 KV 캐싱과 완전히 호환되며, 이전의 조기 종료 방법에서 발생하던 주요 제약을 극복한다.
- 종료 지점에 대한 선형 감소 정책은 효과적이고 강건하며, 초보적 실험에서 거듭 제곱 법칙과 같은 대안 함수보다 우수한 성능을 보였다.
- 오라클 실험을 통해 관측된 손실 추세(토큰 순서에 따라 감소)는 초기에 깊은 계산을 수행하는 설계 선택의 타당성을 뒷받침한다.

더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.