태스크 인식형 적응 압축기로 장기 컨텍스트 효율화
초록
ATACompressor는 질문‑응답과 같은 LLM 작업에서 “중간 손실” 문제를 완화하기 위해, 질의와 연관된 부분만을 선택적으로 압축하고, 해당 부분의 길이에 따라 압축 토큰 수를 동적으로 조절한다. 하드‑프롬프트와 기존 소프트‑프롬프트 방식의 한계를 극복하고, HotpotQA·MSMARCO·SQuAD에서 압축 효율과 성능 모두에서 기존 최첨단 방법을 앞선다.
상세 분석
본 논문은 장기 컨텍스트를 처리할 때 발생하는 “lost in the middle” 현상을 해결하기 위해 두 가지 핵심 아이디어를 제시한다. 첫째, **선택적 인코더(Selective Encoder)**는 사전 학습된 대형 언어 모델(LLM)에 LoRA 파라미터를 추가해 질의(Q)와 컨텍스트(C)를 동시에 입력받는다. 이 인코더는 전체 텍스트를 무조건 압축하는 것이 아니라, 사전 정의된 청크 단위로 나눈 후 질의와의 연관성을 평가해 관련 청크만을 추출한다. 이렇게 함으로써 불필요한 정보는 그대로 버려지고, 핵심 정보는 손실 없이 압축 토큰에 매핑된다.
둘째, **적응형 할당 컨트롤러(Adaptive Allocation Controller, AAC)**는 선택적 인코더의 내부 히든 상태를 프로빙(Probe)하여 추정된 관련 텍스트 길이(ˆC_rel)를 기반으로 압축 토큰 수 k를 결정한다. 정책 함수 η는 “텍스트 길이 대비 토큰 비율”이 일정 수준을 유지하도록 설계돼, 짧은 관련 텍스트는 적은 토큰, 긴 텍스트는 더 많은 토큰을 할당한다. 이는 기존 소프트 프롬프트 압축기(예: AutoCompressor, 500Compressor)가 고정된 토큰 수로 인해 정보 손실이 발생하던 문제를 근본적으로 해결한다.
기술적인 구현 측면에서, 논문은 청크화 전략을 다중 granularity에 맞게 설계한다. 데이터셋마다 문장, 패시지, 문서 수준의 정답 범위가 다를 수 있기에, 훈련 시에는 해당 정답의 granularity에 맞춰 청크를 동일하게 맞춘다. 이렇게 하면 선택적 인코더가 다양한 수준의 관련성을 학습할 수 있어, 실제 추론 단계에서 사용자가 원하는 청크 단위를 자유롭게 지정할 수 있다.
학습 과정은 두 단계로 나뉜다. 프리트레인 단계에서는 대규모 텍스트와 질의를 이용해 선택적 인코더가 질의와 연관된 청크를 올바르게 식별하도록 지도한다. 여기서는 KL divergence 기반의 손실 함수를 사용해 압축 토큰이 원본 관련 청크와 동일한 의미 분포를 갖도록 한다. 파인튜닝 단계에서는 실제 QA 데이터셋에 맞춰 AAC의 정책을 미세조정한다. 프로브 ζ는 선택적 인코더의 마지막 레이어 히든 상태를 입력받아, 간단한 선형 회귀 혹은 작은 MLP를 통해 ˆC_rel 길이를 예측한다.
실험 결과는 세 가지 QA 벤치마크(HotpotQA, MSMARCO, SQuAD)에서 압축 비율 4~8배를 유지하면서도, 기존 하드 프롬프트(Selective‑Context, LongLLMLingua)와 소프트 프롬프트(500Compressor, AutoCompressor) 대비 정확도 1.2~3.5%p 상승을 보여준다. 특히, 긴 문서가 포함된 HotpotQA에서 “중간 손실”이 크게 감소했으며, 추론 지연 시간도 평균 30% 이상 단축되었다.
추가적인 ablation study에서는 (1) 선택적 인코더 없이 전체 압축을 수행했을 때 성능 급락, (2) AAC 없이 고정 토큰 수를 사용했을 때 압축 효율은 유지되지만 정확도가 크게 떨어짐을 확인했다. 또한, 프로브의 종류(선형 vs. 비선형)와 청크 크기(256, 512, 1024 토큰) 변화에 따른 민감도 분석도 제공해, 시스템 설계 시 실용적인 가이드라인을 제시한다.
전반적으로 ATACompressor는 태스크 인식형 압축과 동적 토큰 할당이라는 두 축을 결합해, 장기 컨텍스트 처리에서 정보 손실을 최소화하면서도 연산 효율성을 크게 향상시킨다. 이는 RAG 파이프라인, 멀티턴 대화, 문서 요약 등 다양한 LLM 기반 응용 분야에 바로 적용 가능할 것으로 기대된다.
댓글 및 학술 토론
Loading comments...
의견 남기기