언어모델이 실제로 쓰는 문맥 토큰 수를 어텐션 선택으로 측정한다

Retrieval Capacity of Self-Attention Under Competition

HF Daily2609.37879

Timur Mudarisov, Mikhail Burtsev, Radu State2026-09-29

무엇인가

언어모델은 문맥 창이 길어져도 그 안의 모든 토큰을 똑같이 쓰지 않는다. 이 논문은 자기어텐션에서 각 헤드·레이어·쿼리마다 실제로 필요한 토큰이 몇 개인지, 그리고 그 수를 결정하는 요인이 무엇인지 측정한다. 선행 연구(Mudarisov 등, 2026)가 어텐션 가중치 상위 토큰 집합이 무작위 집합보다 기하학적으로 더 잘 분리된다는 관찰을 내놓았는데, 이 논문은 그 분리가 실제 예측 성능 보존으로 이어지는지까지 확인한다. 문맥이 길어질수록, 경쟁 토큰이 많아질수록 필요한 토큰 수가 어떻게 달라지는지는 긴 문맥 추론과 KV 캐시·프루닝 설계에 직접 연결되는 문제다.

어떻게 동작하나

방법의 핵심은 재학습 없이 어텐션 출력을 제한하는 개입이다. 각 컨텍스트 C=(시퀀스, 레이어, 헤드, 쿼리 위치)마다 모델이 실제로 필요로 하는 미지의 '유용 토큰 집합' S*(C)와 그 크기 K(C)를 가정한다. 어텐션은 이 집합을 완벽하게 정렬하지 못하며, 유용 토큰보다 바깥 토큰이 더 높은 점수를 받는 역전(inversion)이 εK(C)² 이하로 발생한다는 가설을 둔다. 관측 가능한 선택 집합은 어텐션 가중치 α_i 또는 기여도 ||α_i v_i||를 기준으로 상위 N개를 고른 Top-N이다. 선택된 토큰의 원래 가중치는 그대로 두고 나머지를 0으로 만든 뒤, 모든 인과적 쿼리·헤드·레이어에서 선택을 다시 계산한다. N을 바꿔가며 상대 NLL 증가 ΔNLL_rel(N)을 재고, 손실 허용치 τ 이내를 유지하는 최소 N을 '유효 어텐션 집합 크기' N*_τ로 정의한다. 질의응답에서는 후보 정규화 답 손실을 쓴다.

무엇과 다른가

실험은 디코더 전용 체크포인트 9개(Qwen-2.5-1.5B/7B, Gemma-7B, Gemma-2-9B, Llama-2-7B, Llama-3-8B, Llama-3.2-1B, Mistral-7B-v0.3, Mistral-Small-24B-Base-2501)에서 수행했다. 언어모델링 평가는 OpenWebText와 WikiText-103에서 모델당 50개 문서를 사용했고, 기하 측정은 Qwen-2.5-7B, Gemma-7B, Llama-3-8B, Mistral-7B-v0.3의 마지막 쿼리에서 레이어·헤드별로 했다. 어텐션·기여도 기반 선택은 같은 크기의 무작위 선택보다 유클리드 기하 분리 지표 F_N이 일관되게 높았고, 코사인 거리에서는 차이가 더 작았다. NLL 저하 곡선에서 상위 점수 토큰을 조금만 남겨도 전체 어텐션 기준선에 가까운 손실을 유지했지만, 필요한 집합 크기는 모델마다 크게 달랐다. 기여도 기준 정렬은 Llama-2-7B에서 필요 크기를 가장 뚜렷하게 줄였고, 대부분 다른 모델에서는 두 정렬이 비슷한 추정치를 냈다. 기하 분리와 NLL 저하 사이에는 양의 순위 상관이 관찰됐다.

어떻게 쓰나

문맥 길이를 256, 512, 1024, 2048로 늘리면서 같은 마지막 128개 타깃 토큰을 평가하면, 더 긴 문맥일수록 성능을 유지하는 데 필요한 선택 집합 크기가 커졌고, 그 크기가 전체 문맥에서 차지하는 비율은 오히려 줄었다. 전체 모델의 NLL은 문맥이 늘수록 좋아졌으므로 유용한 정보 자체도 늘었을 가능성이 있다. 이를 통제하기 위해 BABILong qa1에서 하나의 주석된 지원 사실(supporting fact)을 고정하고 배경 텍스트를 0K, 1K, 2K, 4K로 늘리는 실험을 했다. 각 조건은 100개 QA 예제로 구성됐고, 그중 86개가 지원 측정용 토크나이저 스팬 검증을 통과했다. 배경이 늘수록 평균 후보 답 손실이 네 모델 모두에서 증가했고, 전체 모델 대비 0.10 nats 이내로 유지하는 데 필요한 집합 크기도 여러 모델에서 커졌다. 같은 지원 사실의 토큰은 어텐션 순위에서 밀려나고, 받는 어텐션 질량이 줄고, 상위 64개 토큰 안에 남을 확률도 낮아졌다. 개별 비지원 토큰이 지원 토큰을 앞지를 확률은 배경이 늘수록 오히려 낮아졌지만, 경쟁자 수가 늘어나 지원 토큰보다 위에 랭크되는 토큰의 총수는 늘었다. 저자들은 고정된 유용 집합 K개와 L개 토큰에서 기대 선택 크기를 E[N_rec(L)] = K + (L-K)p_L로 유도해, 유용 정보가 늘지 않아도 경쟁만으로 필요한 집합이 커질 수 있음을 보인다.

전제와 한계

남긴 어텐션 가중치를 재정규화하면 필요한 집합 크기가 상당히 줄고, 배경 조건 간 증가폭도 완화된다. 원래 가중치를 그대로 두고 삭제만 하면 유지된 어텐션 질량 M_S가 1보다 작아지면서 출력 오차가 (1-M_S)μ_T가 되지만, 재정규화하면 (1-M_S)(μ_T-μ_S)가 된다. 유지된 값들의 평균 μ_S와 버려진 값들의 평균 μ_T가 가까우면, 많은 질량을 버리고도 재정규화가 출력 교란을 줄일 수 있다. 즉 유효 집합 크기는 어떤 토큰을 고르는가뿐 아니라, 고른 표현을 어떻게 합치는가에도 달려 있다. 부록의 조건부 이론 모델은 서로 다른 정보가 더 늘지 않아도 가중합 보존 조건만으로 문맥이 길어질수록 집합이 커질 수 있음을 보인다.

개발자 관점에서 이 논문은 '어텐션 가중치 상위 토큰만 남기면 된다'는 식의 단순 프루닝 가정을 실측으로 반박한다. 작은 Top-N으로도 평균 손실을 유지할 수 있지만 그 크기는 모델, 문맥 길이, 경쟁 토큰 수에 따라 달라지고, 레이어·헤드별 민감도 편차도 크다. 프루닝이나 스파스 어텐션을 구현할 때는 삭제 후 재정규화 여부를 반드시 함께 실험해야 하며, 재정규화가 필요 크기를 줄이는 대신 국소 오차를 키울 수도 있다는 점을 확인해야 한다. 다만 이 실험은 선택 전에 조밀한 어텐션을 먼저 계산하므로 추론 속도 향상을 입증한 것은 아니다. 측정 방법론으로서, 특정 손실 허용치에서 모델이 실제로 의존하는 문맥 토큰 수를 추정하는 진단 도구로 쓰는 것이 맞다.

저자들이 밝힌 한계는 분명하다. 모든 어텐션 연산에 동일한 집합 크기를 적용하고 선택 위치는 쿼리·헤드·레이어마다 달라지므로, 이 추정치는 모델이 쓰는 원본 문맥 토큰의 단일 부분집합을 식별하거나 국소 유용 집합 크기를 복원하지 못한다. BABILong의 주석 지원은 관련성의 부분적 참조일 뿐이고, 평균 손실은 개별 예제의 변화를 가릴 수 있으며, 약한 전체 모델 기준선을 보존하는 것이 과제 성공을 뜻하지도 않는다. 임계값 추정은 평가한 집합 크기들에 조건부이고, 레이어·헤드별 개입 효과는 서로 독립적인 구성요소로 취급할 수 없다. 저자들은 실험이 보편적 스케일링 법칙을 확립하지도 않는다고 못 박는다.