대규모 순차 추천을 위한 메모리 인식 장기 시퀀스 압축 벤치마크 MALLOC

대규모 순차 추천을 위한 메모리 인식 장기 시퀀스 압축 벤치마크 MALLOC
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

MALLOC는 대규모 순차 추천 시스템에서 긴 사용자 행동 시퀀스를 효율적으로 처리하기 위해 메모리 사용량과 연산 비용을 동시에 최적화하는 압축 기법들을 체계적으로 평가하는 벤치마크이다. 시퀀스‑레벨, 토큰‑레벨, 헤드‑레벨, 정밀도‑레벨 등 네 가지 메모리 할당 granularity에 기반한 기존 압축 방법들을 통합하고, 정확도·연산량·메모리 점유율을 다차원으로 측정한다. 실험 결과는 정확도와 자원 효율 사이의 Pareto frontier를 제시하며, 실제 서비스 환경에서 적용 가능한 설계 가이드를 제공한다.

상세 분석

본 논문은 최근 확장 법칙(scaling law)으로 인해 파라미터와 데이터 규모를 늘리는 것이 성능 향상의 핵심이라는 인식 아래, 순차 추천 모델이 직면한 두 가지 근본적인 병목—연산량의 제곱적 증가와 메모리 점유량의 폭발—을 동시에 해결하고자 한다. 기존 연구들은 주로 KV 캐시를 전체 사용자에 대해 그대로 저장하거나, 재계산을 통해 메모리를 절감하는 방식을 제시했지만, 전자는 GPU 메모리 한계를 초과하고 후자는 MAC 연산을 수백 배 늘려 실시간 서비스에 부적합했다. MALLOC는 이러한 ‘Memory–Latency Dilemma’를 해소하기 위해 메모리 관리 기법을 네 단계의 granularity로 재분류한다.

  1. 시퀀스‑레벨 압축은 전체 시퀀스를 짧은 요약 벡터(N→M)로 변환해 KV 저장량을 근본적으로 감소시킨다. Linformer와 Reformer 같은 구조가 대표적이며, 토큰 간 상관관계를 저차원 투영으로 근사한다.
  2. 토큰‑레벨 압축은 중요도가 낮은 토큰을 prune하거나 인접 토큰을 merge하여 토큰 수를 감소시킨다. 이는 긴 사용자 히스토리 중 핵심 행동만을 보존하면서도 연산 복잡도를 낮춘다.
  3. 헤드‑레벨 압축은 다중 어텐션 헤드(H)를 그룹화하거나 공유하여 KV 메모리 중복을 제거한다. MQA, GQA, MLA 등이 해당하며, 헤드 수를 줄이면서도 표현력 손실을 최소화한다.
  4. 정밀도‑레벨 압축은 KV 상태를 고정밀에서 저정밀(예: FP32→FP16, INT8)으로 양자화해 저장 용량을 크게 줄인다. 이는 메모리 대역폭을 절감하고 캐시 적중률을 높이는 효과가 있다.

MALLOC는 위 네 가지 압축 전략을 최신 대규모 순차 추천 모델(예: MARM, MTGR, HSTU 등)에 일관된 인터페이스로 삽입하고, 동일한 데이터 전처리·모델 아키텍처·학습 파이프라인 하에서 성능을 비교한다. 평가 지표는 전통적인 HR@K, NDCG@K와 같은 정확도 외에 **연산량(MACs)**와 **메모리 점유량(GB)**을 포함한다. 실험 결과, 시퀀스‑레벨 압축은 메모리 사용을 80 % 이상 감소시키지만 정확도 손실이 2 % 이하에 머무르는 반면, 토큰‑레벨과 헤드‑레벨 압축은 연산량을 30 %~50 % 절감하면서도 정확도 저하가 미미함을 보여준다. 특히 정밀도‑레벨 양자화는 메모리 대역폭을 크게 개선해 실시간 추론 지연을 40 % 이상 감소시켰다.

또한 논문은 구현 복잡도를 정성적으로 평가해, 기존 방법 대비 코드베이스 변경량, 하드웨어 의존성, 디버깅 난이도 등을 정리한다. 이를 통해 연구자와 엔지니어가 실제 서비스에 적용할 때 필요한 투자 대비 효율을 판단할 수 있다. 최종적으로 MALLOC는 정확도·연산·메모리 삼각형을 시각화한 Pareto frontier를 제공함으로써, 제한된 인프라 환경에서 어느 압축 기법이 최적 선택인지 명확히 제시한다.


댓글 및 학술 토론

Loading comments...

의견 남기기