Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics 용어집으로 돌아가기

Attention Sinks

어텐션 싱크는 대개 첫 번째에 위치하며 남는 어텐션 가중치를 흡수하는 토큰입니다. 이를 캐싱하면 LLM이 매우 긴 스트림에서도 안정적으로 작동합니다.

어텐션 싱크는 내용이 질의와 관련이 없는데도 여러 헤드와 레이어에서 어텐션 가중치를 많이 받는 토큰으로, 대부분 시퀀스의 첫 토큰입니다. MIT, Meta AI, Carnegie Mellon University의 Guangxuan Xiao와 동료들은 ICLR 2024에서 발표한 어텐션 싱크를 활용한 효율적인 스트리밍 언어 모델에서 이 현상을 명명했습니다. 연구진은 Llama 2, MPT, Falcon, Pythia와 같은 대규모 언어 모델(LLM)이 슬라이딩 KV 캐시에서 첫 토큰을 제거하면 성능이 무너지고, 해당 토큰 네 개를 유지하면 생성 안정성이 회복된다는 사실을 보였습니다.

싱크가 형성되는 이유#

셀프 어텐션은 각 질의의 점수를 소프트맥스를 사용해 가중치로 변환하며, 가중치의 합은 항상 1입니다. 문맥에 헤드와 관련된 토큰이 없더라도 가중치는 어딘가에 배분되어야 합니다. 인과적 언어 모델에서는 첫 토큰이 이후 모든 토큰에 보이므로, 학습 과정에서 헤드가 필요로 하지 않는 가중치를 첫 토큰이 기본적으로 받게 됩니다. Llama 2에 관한 StreamingLLM 분석에서는 하위 두 레이어를 제외한 모든 레이어에서 모든 헤드의 어텐션이 초기 토큰에 집중되었습니다. 소프트맥스에 싱크 로짓을 추가하면 이러한 효과를 확인할 수 있습니다.

import torch

torch.manual_seed(0)
values = torch.randn(6, 4)
# A query that matches none of the 6 tokens: every score is close to zero
scores = torch.tensor([0.1, -0.2, 0.0, 0.2, -0.1, 0.0])

# Softmax must hand out a total weight of 1, so the output mixes all six values
weights = scores.softmax(dim=-1)
print(f"No sink: weight on tokens {weights.sum():.2f}, output norm {(weights @ values).norm():.2f}")

# A sink logit joins the softmax but carries no value, so it absorbs the spare weight
sink = torch.tensor([3.0])
weights = torch.cat([sink, scores]).softmax(dim=-1)[1:]
print(f"With sink: weight on tokens {weights.sum():.2f}, output norm {(weights @ values).norm():.2f}")

싱크가 없으면 헤드는 관련 없는 값 여섯 개에 전체 가중치를 분산하고 출력 노름은 0.83이 됩니다. 싱크 로짓이 3이면 싱크가 가중치의 77%를 차지하고 출력은 0.19로 감소하므로, 이 질의에 대해 헤드는 거의 아무 역할도 하지 않습니다. OpenAI의 오픈 웨이트 gpt-oss 모델은 모든 어텐션 헤드에 학습 가능한 싱크 로짓을 넣어 이를 구현합니다. 따라서 각 헤드는 출력에 영향을 주지 않는 남는 가중치를 배분할 위치를 갖습니다.

StreamingLLM을 사용한 스트리밍 생성#

무한히 생성하는 모델은 어떤 컨텍스트 윈도우도 초과하게 되므로 모든 토큰을 KV 캐시에 유지할 수 없습니다. 가장 최근 토큰만 유지하는 일반 윈도우 어텐션은 첫 토큰이 빠지는 순간 실패합니다. StreamingLLM은 초기 토큰 네 개의 키와 값을 최근 토큰의 롤링 윈도우 옆에 영구적으로 유지하고, 원래 텍스트 내 위치가 아닌 캐시 내 위치를 기준으로 위치를 지정합니다. 이때 매 단계마다 회전 위치 임베딩(RoPE)을 다시 적용합니다.

이 방식은 400만 토큰 이상에서도 언어 모델링을 안정적으로 유지했으며, 새 토큰이 추가될 때마다 캐시를 다시 계산하는 슬라이딩 윈도우보다 최대 22.2배 빠르게 실행되었습니다. 하지만 윈도우는 모델이 기억할 수 있는 범위를 여전히 제한합니다. 중간에서 제거된 토큰은 영구적으로 사라지므로 스트리밍 챗봇이나 AI 에이전트는 가장 최근 대화만 기억합니다. 저자들은 모든 샘플의 시작 부분에 학습 가능한 전용 플레이스홀더 토큰 하나를 넣어 모델을 사전 학습하기도 했으며, 이 토큰은 자체적으로 싱크 역할을 맡았습니다.

  • 슬라이딩 윈도우 어텐션: 각 토큰을 최근 이웃으로 제한합니다. 전체 어텐션으로 학습된 모델에 추론 시 적용하면 싱크가 윈도우 밖으로 빠지는 순간 실패합니다.
  • 컨텍스트 로트: 프롬프트가 컨텍스트 윈도우 안에 들어가는 상태로 길어질수록 정확도가 저하되는 현상입니다.

비전 모델의 싱크#

비전 트랜스포머(ViT)에서도 관련 현상이 나타납니다. 비전 트랜스포머에는 레지스터가 필요합니다에서 Meta와 Inria의 연구진은 지도 학습 및 자기지도 학습 ViT의 정보량이 적은 배경 패치에 비정상적으로 큰 노름을 가진 토큰이 나타나 내부 계산에 활용된다는 사실을 발견했습니다. 입력에 레지스터 토큰을 몇 개 추가하면 해당 역할을 대신하게 되어 특징 맵과 어텐션 맵의 아티팩트가 제거되고 조밀 예측 성능이 향상됩니다.

Ultralytics 패키지에서 실행되는 Meta의 SAM 2는 비슷한 방식으로 기준 프레임과 윈도우를 유지해 비디오 메모리를 관리합니다. 새 프레임마다 메모리 어텐션은 전체 비디오 동안 유지되는 사용자 프롬프트 프레임의 메모리 뱅크 항목과 가장 최근 프레임 6개의 항목을 읽으므로, 비디오 길이와 관계없이 프레임당 어텐션 비용이 일정하게 유지됩니다.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요