‹ Lecture 3 20 / 21

Context Extension Revisited

Context Extension에서 본 PI, NTK-aware, YaRN은 공통적으로 긴 입력의 position을 training에서 익숙한 범위와 연결하려는 방법이다. 여기서는 “무엇을 바꾸는가”를 기준으로 diagram을 다시 읽는다. Position mapping을 바꾸는 것과 Attention의 pair 수를 줄이는 것은 다르다.

Reading the Position Mapping

PI는 position mm을 m/sm/s로 uniform하게 바꾼다. 8K training 범위에 128K positions를 넣는 예시라면 s=16s=16이다. 눈금을 같은 비율로 압축하므로 모든 RoPE frequencies의 위상 변화가 함께 줄어든다. 긴 거리의 미관측 회전을 완화하지만, 원래 익숙했던 가까운 positions의 관계도 바꿀 수 있다.

NTK-aware는 position indices 전체를 똑같이 나누기보다 RoPE base를 바꾸어 frequency별 조정 강도를 달리한다. 이미 충분히 회전했던 high-frequency dimensions는 덜 압축하고, 느리게 도는 low-frequency dimensions는 더 크게 조정하려는 접근이다.

YaRN은 frequency-dependent interpolation에 Attention scaling을 더한다. High-frequency 쪽을 유지하고 low-frequency 쪽에 PI에 가까운 조정을 하는 관점과, Keys가 많아졌을 때 Attention 분포의 sharpness를 조절하는 관점을 함께 사용한다. 따라서 position 문제 하나만을 같은 방식으로 푸는 세 이름으로 보지 않는다.

What Still Needs Evaluation

전체 input의 positions가 nn개라면 full Attention의 logical query–key pairs는 여전히 n2n^2다. Position mapping을 조정했다고 이 비용이 줄거나 KV Cache가 자동으로 작아지는 것은 아니다.

또한 새로운 position을 계산할 수 있고 perplexity가 개선되었다는 것만으로 필요한 long-context retrieval task까지 해결되었다고 결론낼 수 없다. Supported length, training 분포, effective context를 구분하고 실제 task에서 검증해야 한다는 한계는 그대로 남는다.

Check

PI와 NTK-aware는 어떤 축을 다르게 scale하는가?

Answer

PI는 position indices를 uniform하게, NTK-aware는 base를 바꾸어 frequency별로 다르게 조정한다.

YaRN이 PI/NTK 비교에서 추가로 고려하는 항목은?

Answer

Frequency-dependent interpolation에 Attention scaling을 결합한다.

Contents