← 최신 논문
💬 NLP

Position Encoding in Transformers: From Absolute and Relative Methods to Rotary Position Embeddings and Long-Context Scaling

이 기술적 조사(technical survey)는 절대적 및 상대적 접근 방식부터 회전 위치 임베딩(RoPE)에 이르기까지 트랜스포머의 위치 인코딩 방법론을 이해하기 위한 통합된 프레임워크를 제공하며, 이들의 계산적 특성, 긴 문맥 확장 기술, 그리고 길이 외삽 능력과 신뢰할 수 있는 긴 문맥 일반화 사이의 결정적인 차이점을 분석한다.

원저자: Jiguo Li

게시일 2026-08-12
📖 5 분 읽기🧠 심층 분석

원저자: Jiguo Li

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

당신이 로봇에게 이야기를 이해하는 법을 가르치려 한다고 상상해 보세요. 당신은 인간처럼 단어를 하나씩 읽는 것이 아니라, 문장 속의 모든 단어를 동시에 볼 수 있는 초고속 두뇌를 가지고 있습니다. 이것이 바로 현대 AI의 엔진인 **트랜스포머(Transformer)**의 마법입니다. 하지만 한 가지 문제가 있습니다. 이 두뇌는 모든 것을 한꺼번에 보기 때문에, 어떤 단어가 첫 번째인지, 두 번째인지, 혹은 마지막인지 알지 못합니다. 만약 문장의 단어들을 뒤섞어 놓는다면, 이 두뇌는 뒤섞인 버전도 원래의 문장만큼이나 훌륭하다고 생각할 것입니다. 이를 해결하기 위해, 우리는 AI에게 각 단어가 줄의 어디에 위치하는지 알 수 있는 방법을 주어야 합니다. 우리는 이것을 **위치 인코딩(Position Encoding)**이라고 부릅니다. 이것은 마치 모든 단어에게 고유한 이름표나 좌석 번호를 부여하는 것과 같습니다. 위치 인코딩이 없다면, AI는 파티에 온 손님들이 얼굴은 다 보이지만, 누가 누구 옆에 서 있는지, 혹은 누가 먼저 도착했는지는 전혀 모르는 상태와 같습니다.

이 논문은 우리가 지난 몇 년간 AI를 위해 발명한 다양한 "이름표" 시스템들을 깊이 있게 파고듭니다. 이 논문은 단순한 좌석 번호에서부터 복잡하게 회전하는 시계, 그리고 마침내 AI가 수십만 단어 길이의 책을 읽어도 혼란스러워하지 않게 해주는 새로운 세대의 기술까지 그 역사를 추적합니다. 저자는 단순히 이러한 방법들을 나열하는 것에 그치지 않고, 거대한 이야기를 처리하려고 할 때 어떤 방식이 실제로 작동하는지를 밝혀내며, 어떤 시스템이 긴 입력을 받아들일 수 있다고 해서 그것이 반드시 내용을 '이해'한다는 뜻은 아니라고 경고합니다.

AI의 "좌석 번호"의 진화

처음에 단어에 좌석 번호를 부여하는 가장 간단한 방법은 단순히 사전에서 찾아보는 것이었습니다. 이를 **학습된 절대 위치(Learned Absolute Position)**라고 합니다. 선생님이 "단어 1"에는 특정 색상을, "단어 2"에는 다른 색상을 부여한 목록을 나누어 주는 것을 상상해 보세요. 이는 짧은 이야기에는 효과적이지만, 만약 소설을 읽으려고 하는데 선생님이 처음 500단어에 대해서만 목록을 만들었다면, AI는 501번째 단어에 도달했을 때 길을 잃게 됩니다.

그다음에는 **사인 함수 인코딩(Sinusoidal Encoding)**이 등장했습니다. 정적인 목록 대신, AI는 수학적인 파동 패턴(사인파와 같은)을 사용하여 좌석 번호를 생성합니다. 이것은 서로 다른 속도로 돌아가는 시계 세트와 같습니다. 어떤 시계는 단어 1과 단어 2를 구별하기 위해 빠르게 움직이고, 다른 시계는 단어 1과 단어 1,000을 구별하기 위해 느리게 움직입니다. 이것은 매우 영리한데, 왜냐하면 AI가 이전에 본 적 없는 위치라도 좌석 번호를 계산할 수 있기 때문입니다. 하지만 논문은 단지 숫자를 계산할 수 있다고 해서, AI가 아주 먼 거리에서도 그 숫자를 사용하는 법을 안다는 뜻은 아니라고 지적합니다.

그 후 연구자들은 언어에서 중요한 것은 종종 절대적인 좌석 번호가 아니라 단어 사이의 거리라는 점을 깨달았습니다. "그것(it)"이라는 단어가 가리키는 명사와 가까이 있는가? 이로 인해 **상대적 위치 인코딩(Relative Position Encoding)**이 탄생했습니다. "나는 5번 좌석에 있다"라고 말하는 대신, AI는 "나는 너로부터 3칸 떨어져 있다"라고 학습합니다. 이것은 정확한 의자 번호보다는 내 옆에 누가 앉아 있는지가 중요한 의자 뺏기 게임과 같습니다. T5Transformer-XL 같은 방식은 긴 텍스트를 처리하기 위해 단어 사이의 간격에 집중하는 이 방식을 사용합니다.

주인공: RoPE

이 논문은 현재 많은 대규모 AI 모델의 챔피언인 **RoPE(Rotary Position Embedding, 회전 위치 임베딩)**라는 제3세대 방법을 강조합니다. 단어에 숫자를 더하거나 거리를 계산하는 대신, RoPE는 단어의 데이터를 회전하는 화살표처럼 취급합니다. 단어가 줄을 따라 이동함에 따라, 그 화살표는 회전합니다. AI가 두 단어를 비교할 때, 두 화살표 사이의 각도를 확인합니다. 화살표가 서로 가까우면 두 단어는 이야기 속에서 가까이 있는 것이고, 화살표가 멀리 있으면 두 단어도 멀리 있는 것입니다.

RoPE의 묘미는 별도의 조회 테이블 없이도 자연스럽게 단어 사이의 "거리"를 처리한다는 점입니다. 이것은 마치 파티의 모든 사람이 도착한 시간에 따라 각기 다른 속도로 돌아가는 시계를 차고 있는 것과 같습니다. 두 사람이 대화할 때, 그들은 시계 바늘의 차이를 보고 얼마나 떨어져 있었는지 알 수 있습니다.

긴 문맥의 도전: 이야기를 늘리기

가장 큰 문제는 이러한 시스템들이 보통 짧은 이야기(예: 4,000단어)를 기준으로 훈련된다는 점입니다. 우리가 이를 거대한 문서(예: 128,000단어 이상)에 사용하려고 하면, "시계"나 "회전하는 화살표"가 AI가 본 적 없는 패턴으로 돌아가기 시작합니다. 이것은 마치 도시 도로용으로 설계된 자동차를 고속도로에서 운전하려는 것과 같습니다. 엔진은 돌아갈지 몰라도, 핸들링이 어색하게 느껴질 것입니다.

논문은 이를 해결하기 위한 몇 가지 "확장(stretching)" 기술을 조사합니다:

  • 위치 보간(Position Interpolation, PI): 이는 긴 이야기를 AI가 알고 있는 짧은 공간 안으로 압축합니다. 10시간짜리 영화를 2시간으로 압축하는 것과 같습니다. AI가 영화를 볼 수는 있지만, 세부 사항이 흐릿해지며 가까이 있는 단어들 사이의 미세한 차이를 놓칠 수 있습니다.
  • NTK-aware 스케일링: 이것은 더 똑똑합니다. "빠른 시계"(가까운 세부 사항을 처리하는)는 정상 속도로 돌리되, "느린 시계"는 먼 거리를 커버할 수 있도록 속도를 늦춥니다. 이는 먼 곳까지 닿으면서도 국소적인 세부 사항을 선명하게 유지하는 절충안입니다.
  • Dynamic NTK: 이 방법은 현재 이야기가 얼마나 긴지에 따라 확장 계수를 변경합니다. 이야기가 짧으면 전혀 확장하지 않고, 길면 확장합니다. 그러나 논문은 이것이 실시간으로 관리하기 까다로울 수 있다고 경고하는데, 왜냐하면 AI의 과거 단어에 대한 기억을 혼란스럽게 할 수 있기 때문입니다.
  • LongRoPE 및 LongRoPE2: 이것들은 가장 진보된 방법들입니다. 모두에게 하나의 규칙을 적용하는 대신, AI의 각 부분에 딱 맞는 확장 계수를 찾아냅니다. 심지가 짧은 이야기와 긴 이야기를 함께 훈련시켜 AI가 두 가지를 모두 다룰 수 있도록 학습시킵니다. 저자는 이것이 가장 유망한 경로라고 제안하지만, 세심한 튜닝과 특정 데이터가 필요하다고 말합니다.

중요한 경고: 담을 수 있다고 해서 이해하는 것은 아니다

이 논문의 가장 중요한 발견은 현실을 직시하게 해주는 것입니다. AI 모델이 100,000단어의 입력을 받아들일 수 있다고 해서, 그것을 이해할 수 있다는 뜻은 아닙니다. 저자는 많은 모델이 "건초더미에서 바늘 찾기(Needle in a Haystack)" 테스트(거대한 텍text 속에서 특정 사실을 찾아내는 것)에서 실패하거나, 화려한 "긴 문맥(long-context)" 설정을 켜두었음에도 불구하고 긴 거리에서의 추론에 어려움을 겪는다고 주장합니다.

저자들은 유효 문맥 길이(effective context length)(AI가 실제로 사용하는 양)가 공칭 문맥 길이(nominal context length)(기술적으로 담을 수 있는 최대 단어 수)보다 훨씬 짧은 경우가 많다는 점을 강조합니다. 또한, 단순히 긴 숫자를 처리하도록 수학을 바꾸는 것만으로는 부족하며, AI가 실제로 그 설정들을 사용하는 법을 배우기 위해서는 새로운 설정에 맞춰 재학습하거나 미세 조정(fine-tuning)을 해야 한다고 지적합니다.

결론

논문은 우리가 단순한 좌석 번호에서 복잡한 회전 화살표에 이르기까지 놀라운 발전을 이루었지만, 아직 긴 문맥 이해 문제를 완전히 해결하지 못했다고 결론짓습니다. 단 하나의 "마법의 탄환"은 없습니다. 가장 좋은 접근 방식은 스마트한 스케일링(LongRoPE와 같은), 짧은 예시와 긴 예시를 모두 사용하는 세심한 훈련, 그리고 AI가 정말로 전체 이야기에 주의를 기울이고 있는지 확인하는 엄격한 테스트를 결합하는 것으로 보입니다.

이러의 AI 모델을 구축하거나 사용하는 사람들에게 주는 교훈은 명확합니다. 마케팅 숫자만을 믿지 마세요. 만약 당신이 AI가 소설 한 권을 읽기를 원한다면, AI가 단순히 책 전체를 한 입에 삼킬 수 있는지뿐만 아니라, 중간에 있는 반전(plot twists)을 실제로 찾아낼 수 있는지 확인해야 합니다. 진정한 긴 문맥 AI를 향한 여정은 여전히 진행 중이며, 그 앞길에는 더 큰 숫자 이상의 것, 즉 AI의 주의력을 계속 집중시킬 수 있는 더 똑똑한 방법이 필요합니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →