로터리 위치 임베딩
RoPE(로터리 포지션 임베딩)는 위치에 비례하는 각도만큼 쿼리와 키 벡터를 회전하여 각 토큰이 시퀀스에 있는 위치를 인코딩합니다.
개요
This elegant trick lets transformers understand relative distances and extend gracefully to longer contexts.
심층 분석
트랜스포머에는 기본적으로 순서 감각이 없으므로 어떻게든 위치 정보를 추가해야 합니다. 초기 모델은 고정된 정현파 벡터 또는 학습된 위치 임베딩을 입력에 추가했습니다. 2021년 Su와 동료가 제안한 RoPE는 다른 접근 방식을 취합니다. 즉, 위치 벡터를 추가하는 대신 쿼리의 차원 쌍과 키 벡터를 토큰 위치에 따라 커지는 각도만큼 회전합니다. 모델이 m 위치의 쿼리와 n 위치의 키 사이의 내적을 계산할 때 결과는 상대 거리 m에서 n을 뺀 값에만 의존하도록 계산됩니다. 이는 진정한 상대 위치 인식을 제공하고 효율적인 Attention 커널과 잘 작동하며 거리에 따라 Attention을 부드럽게 감소시킵니다. RoPE는 이제 Llama, Mistral, Qwen 및 대부분의 최신 개방형 모델에서 사용됩니다.
기술적 통찰력
RoPE는 임베딩 차원을 쌍으로 처리하고 각 쌍에 2D 회전을 적용합니다. 즉, 많은 시계의 바늘이 서로 다른 속도로 똑딱거리는 것과 마찬가지로 서로 다른 쌍이 서로 다른 주파수로 회전합니다. 위치 m으로 회전한 다음 위치 n으로 회전한 것과 내적을 취하면 각도 차이만 남으므로 주의 점수는 상대 위치의 함수가 됩니다. 고주파수 쌍은 미세한 로컬 순서를 포착합니다. 저주파 쌍은 장거리 위치를 포착합니다. 결정적으로 값이 아닌 쿼리와 키를 수정합니다.
전략적 영향
속도와 규모
일관성을 유지하면서 언어 워크플로를 더 빠르게 진행할 수 있습니다.
접근 및 도달
언어와 의사소통 스타일 전반에 걸쳐 접근성을 확장합니다.
더 명확한 결정들
자동화가 반복을 처리하는 동안 팀은 판단에 더 많은 시간을 할애할 수 있습니다.
로타리 포지션 임베딩의 미래
최근의 많은 연구는 RoPE를 모델이 훈련된 것보다 훨씬 더 오랫동안 컨텍스트로 확장하는 데 중점을 두고 있습니다. 위치 보간, NTK 인식 스케일링 및 YaRN과 같은 기술은 회전 주파수를 조정하므로 4K 토큰으로 훈련된 모델은 가벼운 미세 조정을 통해 32K 이상을 처리할 수 있습니다. RoPE는 기본 빈도에 대한 지속적인 개선과 백만 토큰 컨텍스트에 대한 확장, 주의 행동과 상호 작용하는 방식에 대한 지속적인 연구를 통해 지배적인 위치 체계로 남을 것으로 기대합니다.
실제 구현
별도의 위치 임베딩 없이 Llama, Mistral 및 Qwen 모델에 토큰 순서 감각을 제공합니다.
보간 또는 YaRN을 통해 모델의 사용 가능한 컨텍스트를 수천 개의 토큰에서 수만 개의 토큰으로 확장
코드 모델이 긴 파일 전체에서 대괄호, 함수 및 참조 간의 상대적 거리를 추적하도록 지원
질문과 증거 간의 상대적 위치가 중요한 경우 긴 문서 질문 답변 지원
위험 및 가드레일
환각 사실은 보고서, 지원 흐름 또는 연구 결과에 조용히 포함될 수 있습니다.
신속한 민감도는 유사한 요청 간에 일관되지 않은 결과를 초래할 수 있습니다.
액세스 제어가 약한 경우 민감한 텍스트 데이터가 노출될 수 있습니다.
구현 로드맵
출시 전에 출력 형식, 톤, 품질 표준을 정의하세요.
정확성이 중요할 때마다 신뢰할 수 있는 출처를 통해 대응하세요.
고위험 결과물에 대한 인적 검토 체크포인트를 유지합니다.
실패 패턴을 추적하고 프롬프트나 워크플로를 정기적으로 재교육하세요.
계속 탐색하세요
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Rotary Position Embeddings quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
다음 가이드
ALiBi 위치 편향
자주 묻는 질문
What is Rotary Position Embeddings?
RoPE(로터리 포지션 임베딩)는 위치에 비례하는 각도만큼 쿼리와 키 벡터를 회전하여 각 토큰이 시퀀스에 있는 위치를 인코딩합니다. 이 우아한 트릭을 통해 변환기는 상대적인 거리를 이해하고 더 긴 컨텍스트로 우아하게 확장할 수 있습니다.
RoPE는 어떻게 위치 정보를 변압기에 주입하나요?
RoPE는 별도의 위치 벡터를 추가하는 대신 쿼리 및 키 벡터를 위치에 비례하는 각도만큼 회전시킵니다.
RoPE는 주의 계산의 어떤 부분을 수정합니까?
RoPE는 쿼리 및 키 벡터에 회전을 적용하고 값 벡터는 그대로 둡니다.
RoPE에서 서로 다른 차원 쌍이 서로 다른 주파수로 회전하는 이유는 무엇입니까?
서로 다른 속도로 똑딱거리는 시계바늘처럼, 다양한 주파수를 통해 일부 쌍은 단거리 명령을 인코딩하고 다른 쌍은 장거리 위치를 인코딩할 수 있습니다.
위치 보간, NTK 인식 스케일링, YaRN과 같은 기술의 목표는 무엇입니까?
이러한 방법은 RoPE의 회전 빈도를 다시 조정하여 모델이 원래 훈련 길이보다 훨씬 긴 컨텍스트를 처리할 수 있도록 합니다.