NL-339, Do Llamas Work in English? On the Latent Language of Multilingual Transformers, ACL 2024
◼ Comment
- 다국어 모델 (여기선 llama)에서 멀티링구얼간의 관계를 분석한 논문이다
- 결론은 어떤 언어로 질문하든, 중간 공간에서는 영어로 생각을 하고 출력은 질문에 해당하는 언어로 나온다라는 개념이다
- 분석한 툴로는 logit lens로, unembedding weight을 중간 hidden state에 대해서도 적용해서 어떤 토큰이 나오는지를 본것이다.
- mBERT에서 encoder-only 모델에서도 초기 레이어는 언어별 특성을 가지지만, 후반 레이어에서는 언어에 독립적인 표현 공간이 형성된다는 결론이 있다고 한다. (ref로 쓰면 좋을 듯)
- 여기서 테스트한 테스크는 다음과 같다
- 번역 테스크
- few-shot줘서 번역하는 테스크라 보면됨.
- 따라서 어떤 언어가 나와야하는지 알 수 있음
- 반복 테스크
- 이건 굳이 왜한거지?
- 그냥 입력과 똑같은 단어가 나오도록 함
- 즉 번역에서 동일언어->동일언어 개념임
- 클로즈 테스크
- 빈칸 맞추기라 보면됨.
- 목표 단어가 주어지면 GPT4로 문장을 만들고, 목표단어 마스킹함
- 즉 맨 앞에 있는 단어를 맞추는 테스크
- logit lens
- 그림보면, 타겟 토큰이 중국어가 나와야하는데, layer가 증가할수록 점점 증가함
- 중간 layer에서는 영어가 나올확률이 max
- 여기서 중국어+영어이외에 다른 언어 토큰이 있기 때문에 확률이 1이 아닐수 있어서, 꼭 정반대의 경향이 아님
- 토큰 에너지
- 현재 hidden state가 “얼마나 바로 토큰으로 해석 가능한 상태인가”를 보는 것이다
- logit lens만으로 판단하기에는 hidden에는 “토큰 예측에 쓰이지 않는 정보”도 많다
- hidden이 token embedding 방향에 얼마나 align되어 있는지보는 것인데
- 높음 → 거의 output 직전 (token으로 바로 해석 가능)
- 낮음 → 아직 내부 계산 상태 (concept / feature 상태)
- 그림 4결과보면, 토큰 에너지가 마지막에 급격히 증가한다는 것이고, 이는 중간 hidden state는 conceptual 정보를 담고 있다가, 점점 임베딩에 가까워지고 마지막에는 완벽히 출력할 토큰임베딩에 가까워진다는 것
- Conceptual model
- 즉 logit lens와 토큰에너지 결과를 합쳐보면, 중간에 hidden state는 conceptual 정보를 담고 있는데, 이것이 영어 임베딩과 가까운 것일 뿐
- 정확히는 모델의 내부 언어는 영어가 아니라 “개념”이고, 단지 그 개념이 영어 embedding에 더 가깝다
Abstract
이 논문에서는 영어 중심의 불균형한 데이터로 학습된 다국어 언어 모델이 내부적으로 영어를 중간 피벗 언어(pivot language)로 사용하는지를 탐구한다. 이는 언어 모델의 작동 방식과 언어적 편향의 기원을 이해하는 데 중요한 질문이다.
본 연구는 Llama-2 계열 transformer 모델을 대상으로, 정답이 하나의 토큰으로 결정되는 비영어 프롬프트를 설계하여 분석한다. Transformer는 각 레이어를 거치며 입력 토큰의 임베딩을 점진적으로 변환하여, 다음 토큰 확률을 계산하는 출력 임베딩으로 매핑한다.
중간 레이어의 임베딩을 추적한 결과, 다음과 같은 세 단계 과정이 나타난다:
초기에는 출력 토큰 임베딩과 멀리 떨어져 있음
중간 레이어에서는 의미적으로 올바른 토큰을 복원할 수 있지만, 입력 언어보다 영어 토큰에 더 높은 확률을 부여함
마지막에는 입력 언어에 특화된 임베딩 공간으로 이동함
이 결과를 바탕으로, 모델의 내부 표현은 각각 “입력 공간(input space) → 개념 공간(concept space) → 출력 공간(output space)”에서 작동한다고 해석한다. 특히 중요한 점은, 이 추상적인 개념 공간이 다른 언어보다 영어에 더 가깝다는 것이다.
이는 다국어 언어 모델이 가지는 편향에 중요한 영향을 미칠 수 있다. 또한, 코드와 데이터는 공개되어 있다.
1 Introduction
대부분의 현대 대규모 언어 모델(LLM)은 주로 영어 텍스트로 구성된 방대한 코퍼스로 학습된다. 그럼에도 불구하고 이들은 영어가 아닌 언어에서도 다양한 다운스트림 태스크에서 높은 성능을 보인다. 이는 다음과 같은 중요한 질문을 제기한다. LLM은 어떻게 주로 영어로 학습되었음에도 다른 언어로 잘 일반화할 수 있는가?
직관적으로, 데이터 효율적으로 비영어 데이터에서 높은 성능을 달성하는 한 가지 방법은 영어를 중간 피벗 언어로 사용하는 것이다. 즉, 입력을 먼저 영어로 번역하고, 영어로 처리한 뒤, 결과를 다시 입력 언어로 번역하는 방식이다. 이러한 방법은 명시적으로 구현했을 때 높은 성능을 보이는 것으로 알려져 있다. 이 연구의 핵심 질문은, 비영어 프롬프트를 입력했을 때 LLM 내부에서도 이러한 영어 피벗 과정이 암묵적으로 발생하는지 여부이다.
연구 커뮤니티와 대중 매체에서는 이 질문에 대해 긍정적으로 가정하는 경우가 많다. 예를 들어 “이 기계는 영어로 생각한 뒤 마지막 순간에 에스토니아어로 번역한다”와 같은 주장으로 나타난다. 본 연구는 이러한 추측을 넘어, 해당 질문을 실증적으로 분석하고자 한다.
이 질문은 매우 중요하다. 한편으로, 영어를 내부 피벗으로 사용하는 경우 모델이 영어 중심의 패턴에 편향될 수 있으며, 이는 어휘, 문법, 은유뿐 아니라 감정 표현이나 시간 개념과 같은 더 깊은 수준의 행동에도 영향을 줄 수 있다. 다른 한편으로, 만약 영어를 피벗으로 사용하지 않는다면, LLM이 어떻게 저자원 언어에서도 그렇게 잘 동작하는지를 설명해야 하는 새로운 문제가 생긴다. 결국 내부 피벗 언어의 존재 여부를 밝히는 것은 LLM의 작동 원리를 이해하는 데 중요한 단서가 된다.
LLM 내부에 특정 언어가 존재하는지를 분석하는 것은 쉽지 않다. 이는 모델이 매우 크고 해석하기 어려우며, 입력 레이어 이후에는 이산 토큰이 아니라 고차원 실수 벡터로 계산이 이루어지기 때문이다. 이러한 벡터가 영어, 에스토니아어, 중국어와 같은 특정 언어에 대응하는지, 아니면 어떤 언어에도 해당하지 않는지는 여전히 열린 문제이며, 따라서 내부 피벗 언어에 대한 질문은 지금까지 실증적으로 거의 다뤄지지 않았다.
기여 요약.
이러한 문제를 해결하기 위해, 본 연구는 메커니즘 해석 가능성(mechanistic interpretability) 분야의 방법을 활용하고 확장한다. Transformer에서는 각 입력 토큰의 임베딩 벡터가 레이어를 거치면서 형태를 유지한 채 점진적으로 변환된다. 최종 레이어 이후에는 “unembedding” 연산을 통해 다음 토큰 분포로 변환된다.
본 연구는 Llama-2 모델을 대상으로, 중간 레이어에서 unembedding을 미리 적용하는 logit lens 기법을 사용한다. 이 방법을 통해 중간 레이어에서도 이미 문맥에 맞는 토큰이 복원되는 것을 확인할 수 있으며, 이를 통해 내부 상태를 부분적으로 관찰할 수 있다.
이 특성을 활용하여, logit lens로 복원된 토큰이 의미적으로 올바른지, 그리고 어떤 언어에 속하는지를 판별할 수 있도록 정교한 프롬프트를 설계한다. 예를 들어 프랑스어 단어 “fleur”를 중국어 “花”로 번역하는 작업을 사용한다. 레이어별 언어 확률을 추적한 결과, 초반 레이어에서는 적절한 토큰이 거의 나타나지 않다가, 중간 레이어에서 영어 단어 “flower”의 확률이 급격히 증가하고, 이후 마지막 레이어에서 목표 언어인 중국어 “花”로 확률이 이동하는 현상이 관찰된다.
이러한 결과를 바탕으로, 단순히 영어로 번역한 뒤 다시 처리하는 것이 아니라, Transformer가 중간 레이어에서 추상적인 개념 공간에서 연산을 수행한다고 해석한다. 이 공간은 특정 언어에 직접 대응되지 않지만, 영어 토큰과 더 가까운 경향을 보인다. 이는 logit lens에서 영어 토큰이 먼저 나타나는 현상이 실제 번역 과정이 아니라, 개념 공간의 영어 편향 때문임을 시사한다.
마지막으로, 이러한 잠재적 편향이 미치는 영향과 향후 연구 방향에 대해 논의한다. 이는 신뢰할 수 있는 AI를 구축하기 위한 중요한 단계이다.
2 Related work
다국어 언어 모델. 다국어 언어 모델은 여러 입력 언어를 동시에 처리하도록 학습된 모델이다. 대표적인 예로 mBERT, mBART, XLM-R, mT5, XGLM, mGPT, BLOOM, PolyLM 등이 있다. 최근의 GPT-4, PaLM, Llama-2와 같은 최신 모델들은 영어 중심 데이터로 학습되어 영어에서 더 높은 성능을 보이지만, 여전히 다양한 언어에서도 좋은 성능을 달성한다.
연구자들은 언어 간 능력을 효율적으로 전이하기 위해 다양한 방법을 제안해왔다. 예를 들어, 문맥 임베딩을 정렬하는 방법, 새로운 언어에 대해 파인튜닝 시 임베딩 행렬을 재학습하는 방법, 또는 프리트레이닝 중 이를 반복적으로 수행하는 방법 등이 있다.
일부 접근법은 영어를 피벗 언어로 활용한다. 예를 들어, Llama 모델에 다국어 지시 수행 능력을 부여할 때 영어 표현을 활용할 수 있으며, 번역 데이터와 영어 기반 지시 데이터를 이용한 파인튜닝을 통해 다국어 추론 능력을 향상시킬 수 있음이 보고되었다. 또한 로마자 표기와 영어 데이터를 함께 활용하면 저자원 언어 성능을 효율적으로 개선할 수 있다는 연구도 있다.
프롬프트 설계 측면에서도 영어를 피벗으로 활용하는 방법이 존재한다. 예를 들어, 입력을 먼저 영어로 번역하거나, 영어로 chain-of-thought 추론을 수행하도록 유도하는 방식이 다국어 성능을 향상시킬 수 있다.
그러나 고자원 언어를 활용하는 이러한 방식은 저자원 언어에서의 출력 생성에 편향을 유발할 수 있으며, 문법 등에서 영어의 영향을 받을 수 있다는 문제도 지적된다.
또한 다국어 모델 내부에서 언어별 표현이 어떻게 다른지에 대한 연구도 이루어져 왔다. mBERT와 같은 encoder-only 모델에서는 초기 레이어는 언어별 특성을 가지지만, 후반 레이어에서는 언어에 독립적인 표현 공간이 형성된다는 결과가 보고되었다.
메커니즘 해석 가능성. 메커니즘 해석 가능성은 신경망의 내부 동작을 역공학적으로 분석하여 이해하는 것을 목표로 하는 연구 분야이다. 이를 위해 회로 발견, 제어된 태스크 기반 학습, 인과 추적 등의 방법이 사용된다.
작은 모델(GPT-2, Pythia 등)에서는 sparse probing과 같은 방법을 통해 특정 언어에 대응하는 뉴런이나 n-gram을 강화하는 서브네트워크가 존재한다는 결과가 보고되었다.
본 연구와 가장 관련 있는 도구는 logit lens, tuned lens, direct logit attribution이다. 이들은 transformer의 중간 레이어에서 토큰 예측을 복원하여 내부 표현을 해석하는 방법이다.
logit lens는 원래 마지막 레이어에서만 적용되는 language modeling head를 중간 레이어에 그대로 적용하여 토큰 분포를 얻는 방법이다. tuned lens는 중간 표현을 최종 표현과 유사하게 만들기 위한 추가적인 affine mapping을 학습한다. direct logit attribution은 각 attention head가 로짓에 기여하는 정도를 분석하는 방법이다.
본 연구에서는 tuned lens 대신 logit lens를 사용한다. tuned lens는 중간 표현을 최종 출력에 맞추도록 학습되기 때문에, 만약 내부적으로 영어 표현이 존재하더라도 이를 제거해버릴 수 있다. 따라서 본 연구의 목적에는 logit lens가 더 적합하다.
3 Materials and methods
3.1 Language models: Llama-2
본 연구는 Llama-2 계열 언어 모델을 대상으로 한다. 이는 현재 가장 크고 널리 사용되는 오픈소스 모델 중 하나이다. Llama-2는 다국어 코퍼스로 학습되었지만, 그 구성은 대부분 영어에 크게 치우쳐 있으며 전체 데이터의 89.70%가 영어로 이루어져 있다. 그러나 전체 데이터 규모가 매우 크기 때문에, 비영어 데이터의 비율이 작더라도 절대적인 토큰 수는 여전히 상당하다. 예를 들어 독일어는 약 34억 토큰, 중국어는 약 26억 토큰 수준이다. 이러한 이유로 Llama-2는 영어 편향이 있음에도 불구하고 다국어 모델로 간주된다.
모델 버전. Llama-2는 세 가지 크기로 제공되며, 각각 7B, 13B, 70B 파라미터를 가진다. 각 모델은 각각 32, 40, 80개의 레이어를 가지며, 임베딩 차원은 4096, 5120, 8192이다. 모든 모델은 동일하게 32,000개의 토큰으로 구성된 어휘 집합을 사용한다. 본 연구에서는 모든 모델 크기를 대상으로 실험을 수행하며, 8-bit 양자화를 적용한다.
모델 구조. Llama-2는 autoregressive 방식의 decoder-only transformer이며 residual 구조를 가진다. 이러한 모델은 입력 시퀀스 x1,...,xn의 각 토큰에 대해 하나의 임베딩 벡터를 유지하며, 전체 계산 과정에서 벡터의 형태는 변하지 않는다.
초기 임베딩 h₁⁽⁰⁾,...,hₙ⁽⁰⁾은 학습된 임베딩 사전으로부터 생성되며, 각 토큰에 대해 고정된 벡터가 할당된다. 이후 각 레이어에서 이전 레이어의 임베딩에 residual을 더하는 방식으로 업데이트가 이루어진다. 구체적으로, i번째 위치의 j번째 레이어 임베딩은 다음과 같이 계산된다:
여기서 fⱼ는 transformer block을 의미하며, masked self-attention과 feed-forward layer로 구성된다. 이 과정에서도 임베딩의 차원 d는 유지된다.
프리트레이닝 과정에서는 모든 레이어 f₁,...,fₘ이 조정되어, 최종 레이어의 임베딩 hᵢ⁽ᵐ⁾이 다음 토큰 xᵢ₊₁을 예측하기에 적합하도록 학습된다.
예측 단계에서는 최종 임베딩에 unembedding 행렬 U를 곱하여 로짓 벡터 zᵢ를 얻는다. 이 벡터는 어휘의 각 토큰에 대한 점수를 포함하며, softmax를 통해 다음 토큰의 확률 분포로 변환된다.
3.2 Interpreting latent embeddings: Logit lens
Transformer를 실제로 사용할 때는 일반적으로 마지막 레이어 이후의 latent 벡터만을 토큰 분포로 변환한다. 이는 unembedding 행렬 U를 곱한 뒤 softmax를 적용하는 방식이다.
그러나 모든 레이어에서 latent 벡터의 형태는 동일하기 때문에, 원칙적으로는 어느 레이어의 latent라도 마지막 레이어의 latent처럼 간주하여 토큰 분포로 변환할 수 있다. 이러한 방식으로 중간 레이어의 latent에서 토큰을 미리 복원하는 방법을 logit lens라고 한다.
logit lens를 사용하면 각 레이어 j와 위치 i에 대해 다음 토큰 분포 P(xᵢ₊₁ | hᵢ⁽ʲ⁾)를 얻을 수 있다.
이 방법은 Transformer 내부 상태를 관찰하고 해석하는 데 도움을 준다. 예를 들어, 논문의 Figure 1에서는 각 위치와 레이어에서 logit lens를 적용했을 때 가장 높은 확률을 가지는 다음 토큰을 시각화한다.
그 결과, 중간 레이어에서도 이미 문맥에 맞는 토큰이 복원되는 것을 확인할 수 있다. 이는 Transformer의 내부 상태를 직접적으로 해석하기 어려운 상황에서, logit lens가 유용한 관찰 도구가 될 수 있음을 보여준다.
3.3 Data: Tasks for eliciting latent language
우리의 목표는 Llama-2의 내부, 잠재 상태가 특정 자연어에 대응하는지를 탐구하는 것이다. logit lens는 latent 벡터를 토큰 분포로 매핑할 수 있게 해주지만, 우리는 여전히 토큰 분포를 언어로 매핑하는 방법이 필요하다. 일반적으로 이는 어렵다. 많은 토큰이 언어에 대해 모호하기 때문이다. 예를 들어 “an”이라는 토큰은 영어, 프랑스어, 독일어 등 여러 언어에서 사용된다.
이 문제를 해결하기 위해, 우리는 올바른 다음 토큰 xₙ₊₁이 (1) 명확하고 (2) 하나의 언어에 명확히 귀속될 수 있도록 프롬프트 x₁ … xₙ을 구성한다.
프롬프트 설계. 다음 토큰이 명확하도록 하기 위해, 우리는 다음 토큰 xₙ₊₁이 프롬프트 x₁ … xₙ으로부터 쉽게 추론될 수 있는 세 가지 텍스트 완성 태스크를 설계한다. 태스크를 설명하기 위해 중국어를 예시 언어로 사용한다.
번역 태스크. 이 태스크에서는 앞에 주어진 비영어(예: 프랑스어) 단어를 중국어로 번역해야 한다. 우리는 네 개의 단어와 그에 대한 올바른 번역을 보여주고, 다섯 번째 단어에 대해서는 번역 없이 모델이 다음 토큰을 예측하도록 한다 (“中文”은 “중국어”를 의미한다):
Français: "vertu" - 中文: "德"
Français: "siège" - 中文: "座"
Français: "neige" - 中文: "雪"
Français: "montagne" - 中文: "山"
Français: "fleur" - 中文: "
이와 같은 프롬프트를 통해 Llama-2는 다섯 번째 프랑스어 단어를 번역해야 한다는 것을 쉽게 추론할 수 있다. 우리는 아래에서 설명하듯 단어를 신중히 선택하고, 나머지 단어들에서 무작위로 예시를 샘플링하여 각 단어마다 하나의 프롬프트를 구성한다.
반복 태스크. 유사하게, 우리는 모델이 마지막 단어를 번역하는 대신 단순히 반복하도록 다음과 같이 프롬프트를 구성한다:
中文: "德" - 中文: "德"
中文: "座" - 中文: "座"
中文: "雪" - 中文: "雪"
中文: "山" - 中文: "山"
中文: "花" - 中文: "
클로즈 태스크. 조금 더 어려운 태스크로, 문장에서 가려진 단어를 예측해야 하는 클로즈 테스트를 고려한다. 목표 단어가 주어지면, 우리는 GPT-4를 사용하여 해당 단어로 시작하는 영어 문장을 생성하고, 그 단어를 마스킹한 뒤 문장을 다른 언어로 번역한다. 프롬프트를 구성하기 위해, 나머지 단어들에서 두 개의 예시를 샘플링한다. 번역 이전의 영어 예시는 다음과 같다:
A "" is used to play sports like soccer and basketball. Answer: "ball".
A "" is a solid mineral material forming part of the surface of the earth. Answer: "rock".
A "___" is often given as a gift and can be found in gardens. Answer: "
단어 선택. 언어를 명확히 구분하기 위해, 우리는 각 언어별로 폐쇄된 단어 집합을 구성한다. 특히 명확한 경우로 중국어에 집중하는데, 중국어는 단일 토큰 단어가 많고 공백을 사용하지 않기 때문이다. 우리는 Llama-2의 어휘에서 단일 토큰으로 표현되는 중국어 단어(주로 명사)를 찾고, 이들이 단일 토큰으로 표현되는 영어 번역을 갖도록 한다.
이렇게 하면 Llama-2의 다음 토큰 확률에서 올바른 중국어 단어와 그 영어 대응 단어의 확률을 직접 확인할 수 있다.
강건성을 위해, 우리는 독일어, 프랑스어, 러시아어에서도 동일한 실험을 수행한다. 이를 위해 선택된 중국어/영어 단어를 번역하고, 각 언어에 대해 영어 버전과 토큰 접두사를 공유하는 단어는 제거하여 언어 판별이 모호해지는 것을 방지한다.
우리는 중국어 139개, 독일어 104개, 프랑스어 56개, 러시아어 115개의 단어를 사용한다.
3.4 Measuring latent language probabilities
Llama-2 내부의 가상의 피벗 언어를 조사하기 위해, 우리는 각 레이어 j에 대해 마지막 입력 토큰 xₙ에 대응하는 latent hₙ⁽ʲ⁾에 logit lens를 적용하여, 레이어마다 하나의 다음 토큰 분포 P(xₙ₊₁ | hₙ⁽ʲ⁾)를 얻는다.
우리가 설계한 프롬프트는 중간 레이어의 다음 토큰 분포로부터 입력 언어에서의 올바른 다음 단어와 영어에서의 대응 단어의 확률을 추정할 수 있도록 구성되어 있다. 중국어(ZH)와 영어(EN) 모두에서 단일 토큰 단어를 선택했기 때문에, 언어 ℓ ∈ {ZH, EN}의 확률은 다음과 같이 정의할 수 있다:
P(lang = ℓ | hₙ⁽ʲ⁾) := P(xₙ₊₁ = tℓ | hₙ⁽ʲ⁾).
(가독성을 위해 이후에는 P(lang = ℓ)로 표기한다.)
이 정의는 언어에 대한 확률 분포를 이루지 않는다는 점에 유의해야 한다. 일반적으로 Σℓ P(lang = ℓ) < 1이기 때문이다.
다른 언어들(그리고 중국어 및 영어의 일부 경우)에서는 다양한 토큰화 방식과 공백을 고려해야 한다. 이에 대한 자세한 내용은 부록 A.2에 제시되어 있다.
4 Results
결과를 제시할 때, 먼저 (Sec. 4.1) logit lens를 이용한 확률적 관점에서 모든 태스크와 모든 모델 크기에 대해 분석한다. (결과가 언어 전반에 걸쳐 일관되기 때문에 여기서는 중국어에 집중하고, 프랑스어, 독일어, 러시아어 결과는 Appendix B를 참조한다.) 이후 (Sec. 4.2)에는 토큰 임베딩이 transformer 연산 과정에서 어떻게 이동하는지를 기하학적 관점에서 분석한다.
4.1 Probabilistic view: Logit lens
logit lens는 각 입력 프롬프트와 레이어에 대해 하나의 언어 확률 집합을 제공한다 (Sec. 3.4 참조).
Figure 2는 레이어별로 언어 확률이 어떻게 변화하는지를 보여주며, 각 열은 모델 크기, 각 행은 태스크를 나타낸다. x축은 레이어 인덱스, y축은 입력 프롬프트에 대해 평균된 언어 확률 P(lang = ZH)와 P(lang = EN)을 나타낸다.
번역 및 클로즈 태스크에서는 모델 크기와 관계없이 일관된 패턴이 나타난다. 초기 절반의 레이어에서는 올바른 중국어 토큰이나 영어 대응 토큰 모두 거의 확률 질량을 갖지 않는다. 이후 중간 레이어에서 영어 확률이 급격히 증가한 뒤 감소하고, 중국어 확률은 점진적으로 증가하여 영어를 넘어서고 마지막 몇 개 레이어에서 급격히 상승한다. 반복 태스크에서는 중국어 확률이 영어와 함께 상승한다 (Sec. 6에서 논의). 이는 다른 언어에서는 영어가 먼저 상승하는 것과 대조적이다 (Appendix B 참조).
언어 확률 외에도 전체 다음 토큰 분포의 엔트로피를 히트맵으로 함께 표시한다. 모든 태스크와 모델 크기에서 일관된 패턴이 나타난다. 초기 레이어에서는 높은 엔트로피와 함께 P(lang = ZH), P(lang = EN)이 거의 0에 가깝다. 이후 영어 확률이 상승하는 시점에서 엔트로피가 급격히 감소한다. 이후에는 엔트로피가 낮은 상태를 유지하며, 영어에서 중국어로 확률 질량이 이동하면서 약간의 증가가 나타난다.
어휘 크기가 약 32,000개(≈ 2¹⁵)이므로, 초기 엔트로피 약 14비트는 거의 균등 분포(약 15비트)에 해당한다.
경로 시각화.
Figure 2의 그래프는 올바른 중국어 토큰과 영어 대응 토큰의 확률만을 고려하며, 나머지 토큰들에 대해서는 설명하지 않는다.
전체 분포에 대한 직관을 얻기 위해 차원 축소를 사용하여 데이터를 시각화한다. 먼저 latent hₙ과 토큰 t 사이의 거리를 logit lens로 계산된 음의 로그 가능도로 정의한다:
d(hₙ, t) = −log P(xₙ₊₁ = t | hₙ).
이후 고전적 다차원 척도법을 사용하여 토큰과 latent를 거리 보존이 가능한 2차원 공간에 임베딩한다.
Transformer의 forward 연산은 최종 입력 토큰 xₙ에 대해 각 레이어의 latent hₙ⁽ʲ⁾를 연결하여 시각화할 수 있으며, 이는 Figure 3에 제시되어 있다 (독일어→중국어 번역, 70B 모델).
두 가지 관찰이 가능하다. 첫째, 영어와 중국어 토큰 클러스터가 형성되며, 하나의 latent가 특정 언어 전체에 높은 확률을 부여하는 경향이 있다. 둘째, latent의 경로가 먼저 영어 클러스터를 지나고 이후 중국어 클러스터로 이동한다.
결과적으로, 독일어 단어를 중국어로 번역하는 과정에서 Llama-2는 영어 공간을 거치는 “우회 경로(detour)”를 따른다는 그림이 나타난다.
4.2 Geometric view: An 8192D space Odyssey
단순화해서 말하면, autoregressive transformer가 수행하는 작업은 현재 토큰의 입력 임베딩을 다음 토큰의 출력 임베딩으로 매핑하는 것이다. 이 작업은 점진적으로 이루어지며, 각 레이어는 이전 레이어에서 생성된 latent 벡터에 residual을 더해 수정한다. 기하학적으로 이는 d차원 유클리드 공간에서의 경로를 형성한다. 이제 우리는 이 경로를 특성화하고자 한다. 확률적 관점(Fig. 2)에서 태스크와 모델 크기에 관계없이 일관된 결과가 나타났기 때문에, 하나의 태스크(번역)와 하나의 모델 크기(70B, 즉 d = 8192)에 집중한다.
임베딩 구면. 출력 토큰 임베딩(언임베딩 행렬 U의 행)과 latent h는 동일한 d차원 유클리드 공간에 존재한다. RMS 정규화(Sec. 3.1)로 인해 latent는 반지름 √d ≈ 90.1인 초구(hypersphere) 위에 위치한다. 또한 출력 토큰 임베딩의 2-노름을 분석한 결과(평균 1.52, 표준편차 0.23), 이들 역시 대략 반지름 1.52의 구면 위에 분포한다.
토큰 에너지.
중요한 점은 토큰 임베딩이 구면 위에 균등하게 분포하지 않는다는 것이다. 예를 들어, 첫 25%의 주성분이 전체 분산의 50%를 설명하고, 첫 54%가 80%를 설명한다. 직관을 위해, 토큰들이 전체 공간이 아니라 특정 부분공간(“token subspace”)에 존재하는 극단적인 경우를 생각해보자(실제로는 U의 랭크가 d이므로 전체 공간을 span한다). 만약 latent h가 이 부분공간에 직교하는 성분을 가진다면, 그 성분은 다음 토큰 예측에는 영향을 주지 않는다(로짓은 latent와 토큰 벡터의 내적이기 때문).
이 직교 성분은 이후 레이어에서의 계산에는 중요할 수 있지만, logit lens로는 관찰되지 않는다.
따라서 latent h와 token subspace 사이의 각도는 h가 다음 토큰 예측에 얼마나 유효한지를 나타낸다. 이를 정량화하기 위해, 우리는 h와 토큰 임베딩 간 평균 제곱 코사인을 고려하고, 이를 토큰 간 평균 제곱 코사인으로 정규화하여 “토큰 에너지”를 정의한다:
(여기서 Û는 각 행이 정규화된 U를 의미한다.)
이 값은 latent가 token subspace에 얼마나 가까운지를 나타내며, 랜덤 토큰과 비교한 상대적 척도이다.
Figure 4는 토큰 에너지와 다른 주요 변수 간의 관계를 보여준다. 레이어에 따른 변화(Fig. 4(b))를 보면, 토큰 에너지는 약 20% 수준으로 낮고 거의 일정하다가, 약 70번째 레이어에서 급격히 증가한다. 이는 다음 토큰 예측이 영어에서 중국어로 전환되는 시점(Fig. 4(c))과 일치한다.
이를 종합하면 다음과 같은 세 단계가 나타난다:
1단계 (레이어 1–40): 높은 엔트로피(약 14비트, 거의 균등 분포), 낮은 토큰 에너지, 특정 언어가 우세하지 않음
2단계 (레이어 41–70): 낮은 엔트로피(1–2비트), 낮은 토큰 에너지, 영어 우세
3단계 (레이어 71–80): 낮은 엔트로피, 높은 토큰 에너지(약 20% → 30%로 증가), 중국어 우세
5 Conceptual model
이제 위의 관찰 결과와 일관되는 개념적 모델을 제시한다.
다음 토큰을 예측하기 위해, transformer가 수행해야 하는 작업은 본질적으로 현재 토큰의 입력 임베딩을 다음 토큰의 출력 임베딩으로 매핑하는 것이다. 1단계는 입력 임베딩으로부터 더 나은 특징 표현을 구축하는 데 집중한다. 예를 들어 토큰화 문제를 해결하거나(같은 단어를 구성하는 토큰들을 통합), 단어를 더 큰 의미 단위로 통합하는 등의 작업이 이루어진다. 이 단계에서는 아직 다음 토큰 예측이 주요 목적이 아니며, latent는 출력 토큰 공간과 거의 직교한 상태를 유지한다(낮은 토큰 에너지). 그 결과 latent와 토큰 임베딩 간 내적이 작아지고, 엔트로피는 높게 유지된다.
2단계에서는 latent가 추상적인 “개념 공간(concept space)”에 위치하게 된다. 이 공간은 1단계와 달리 출력 토큰 공간에 완전히 직교하지 않는다. 대신, latent는 해당 개념을 표현할 수 있는 토큰들(다양한 언어와 동의어 포함)에 더 가까워진다. 이로 인해 엔트로피가 낮아진다. 그러나 개념과 관련된 토큰들 중에서 영어 표현이 비영어 표현보다 더 가깝게 위치한다. 이는 학습 데이터에서 영어 비중이 압도적으로 높기 때문이다. 그 결과 영어 토큰이 더 높은 확률을 갖게 된다.
그럼에도 불구하고 개념 임베딩은 출력 토큰과 직접적으로 관련되지 않은 정보(입력 문맥, 목표 언어 등)를 포함하고 있기 때문에, 토큰 에너지는 여전히 낮은 상태로 유지된다.
3단계에서는 모델이 추상적인 개념을 목표 언어의 구체적인 단어/토큰으로 매핑한다. 다음 토큰 예측과 관련 없는 정보는 제거되며, 이로 인해 토큰 에너지가 급격히 증가한다.
개념적 스케치. 이 모델은 Fig. 4(d)에 단순화된 형태로 나타나 있다. 실제 8192차원 공간 대신 3차원 공간으로 표현한다. 모든 임베딩(토큰 및 latent)은 원점을 중심으로 한 구면 위에 위치한다. 토큰 임베딩은 적도에 위치하며, 주로 x축 방향으로 퍼져 있는데, 이는 언어를 나타낸다(왼쪽은 영어, 오른쪽은 중국어). y축은 개념을 나타내며, 예시에서는 “달콤함”과 같은 1차원 개념 축으로 표현된다. z축은 문맥, 언어 정보 등 추가적인 정보를 저장하는 데 사용된다.
Transformer의 forward 연산은 이 구면 위를 따라 이동하는 과정으로 볼 수 있다. 1단계에서는 latent가 북극에서 시작하여 토큰 및 개념 임베딩 모두에 직교한 상태에 있다. 2단계에서는 latent가 개념 공간으로 회전하며, 이때 영어 토큰이 더 높은 확률을 갖는다. 이는 영어 토큰 임베딩이 개념 축 성분을 더 강하게 가지기 때문이다. 마지막으로 3단계에서는 latent가 적도를 따라 목표 언어 영역으로 이동하여 해당 언어에서 개념을 가장 잘 표현하는 토큰으로 수렴한다.
6 Discussion
Llama-2 모델이 내부적으로 영어를 피벗 언어로 사용하는지에 대한 질문에 답하기 위해, 우리는 latent 임베딩이 입력 언어의 올바른 다음 토큰보다 그 영어 대응 토큰에 더 가깝게 위치한다는 것을 발견했다. 그 결과 logit lens를 통해 관찰했을 때 내부 표현이 압도적으로 영어에 가까운 것으로 나타난다.
이로부터 Llama-2가 영어를 암묵적인 피벗으로 사용한다고 결론 내리고 싶을 수 있다. 이는 이전 연구에서 영어를 명시적인 피벗으로 사용했던 방식과 유사하다. 그러나 우리의 결론은 더 신중해야 한다. latent의 많은 에너지는 출력 토큰 임베딩과 거의 직교하는 방향에 존재하며, 이는 다음 토큰 예측에는 직접적으로 기여하지 않는다.
모델은 이러한 직교 방향을 활용하여 입력으로부터 풍부한 특징 표현을 구축할 수 있으며, 이를 추상적인 “개념 공간(concept space)”으로 볼 수 있다. 이러한 해석에서는 모델의 내부 공통 언어는 영어가 아니라 개념이며, 다만 그 개념이 영어에 편향되어 있다. 따라서 영어는 단순한 어휘 수준이 아니라 의미 수준에서의 피벗으로 볼 수 있다.
본 연구는 세 가지 텍스트 완성 태스크를 사용한다. 번역과 클로즈 태스크는 의미적 수준에서 작동하며, 반복 태스크는 구문적 수준에 가깝다. 그럼에도 대부분의 언어에서 반복 태스크 역시 다른 두 태스크와 유사한 패턴을 보이며, 토큰이 먼저 “영어 단계”를 거치는 경향이 나타난다. 이는 단순 복사라는 작업조차도 의미 이해를 필요로 하며, 그 과정이 개념 공간에서 이루어지기 때문일 수 있다.
다만 반복 태스크에서는 영어 우선 패턴이 덜 두드러진다. 특히 중국어에서는 입력 언어 확률이 영어와 동시에 상승하거나 더 빠르게 상승하기도 한다. 이는 토큰화와 관련이 있을 수 있다. 중국어의 경우 단어가 항상 단일 토큰으로 표현되도록 선택한 반면, 러시아어, 독일어, 프랑스어에서는 단일 토큰 비율이 낮다. 언어별 토큰이 명확히 존재하는 경우 영어를 거치는 경향이 줄어든다. 이는 토큰화가 중요한 영향을 미친다는 기존 연구를 뒷받침한다.
향후 연구에서는 개념 공간에서의 영어 편향이 실제 모델 동작에 어떤 영향을 미치는지 분석할 필요가 있다. 예를 들어 심리언어학 연구에서는 언어에 따라 감정 표현이나 시간 개념이 다르게 형성된다는 결과가 있으며, 이러한 차이가 모델에도 영향을 줄 수 있다.
또한 영어 데이터 비중을 줄였을 때 이러한 편향이 어떻게 변화하는지 연구할 필요가 있다. 예를 들어 다른 언어 비율을 가진 Llama-2 변형 모델이나 덜 영어 중심적인 토크나이저를 사용할 수 있다. 이러한 연구는 영어 편향을 줄이고 더 공정한 AI를 만드는 데 중요한 단서를 제공할 것이다.
Reference






댓글
댓글 쓰기