토크나이저 성능을 가르는 것은 최적화 목표가 아니라 탐색 절차다
Objective vs. Search: Decomposing What Makes a Good Tokeniser
무엇인가
토크나이저는 언어모델이 텍스트를 처음 만나는 지점이다. 그런데 지금까지는 사실상 BPE와 UnigramLM 두 알고리즘이 기본값으로 쓰여 왔고, 어느 쪽이 더 좋은지에 대한 비교는 대부분 교란되어 있었다. 두 알고리즘은 최적화 목표(압축 대 로그우도)와 탐색 절차(상향식 병합 대 하향식 가지치기)라는 두 축에서 동시에 다르다. Schmidt 등(2024)이 BPE가 UnigramLM보다 자주 낫다고 보고한 결과는 흔히 '압축이 로그우도보다 좋은 목표'라는 증거로 읽히지만, 실제로는 두 축이 한꺼번에 달라진 비교이므로 어느 축의 효과인지 알 수 없다. 게다가 이 최적화 문제 자체는 압축 변형의 경우 NP-hard로 증명되어 있어, 실제 알고리즘은 모두 휴리스틱 탐색으로 근사할 수밖에 없다.
어떻게 동작하나
저자들은 이 두 축을 분리하기 위해 2x2 설계 공간의 빈 두 칸을 채우는 알고리즘을 새로 만든다. BottomUpLL은 BPE의 병합 절차를 그대로 따르되 압축 대신 코퍼스 로그우도를 최적화하고, TopDownComp는 UnigramLM의 가지치기 절차를 따르되 압축을 최적화한다. 상향식 절차는 알파벳 Σ에서 시작해 어휘를 한 토큰씩 키운다. 병합 m = <s', s''>은 토큰열에서 겹치지 않는 모든 bigram s', s''를 s'∘s''로 바꾸는 연산이고, 병합 목록 m_1...m_k가 인코딩 함수를 정의한다. 각 단계에서 목표 함수를 국소적으로 가장 개선하는 병합을 탐욕적으로 추가하며, 이때의 변화량을 merge gain이라 부른다. 하향식 절차는 반대로 후보 어휘 S_0의 크기가 목표 어휘 크기 K보다 훨씬 큰 상태에서 출발해, |S| = |Σ| + K가 될 때까지 토큰을 하나씩 제거한다. 제거 대상은 삭제 비용(deletion cost)이 가장 작은 토큰이며, 모든 문자열이 인코딩 가능하도록 알파벳 토큰은 절대 지우지 않는다. 하향식은 병합 목록 대신 어휘만으로 결정되는 인코딩 함수 tok_⇒[S]를 쓰는데, 압축 목표에서는 최단 분절, 로그우도 목표에서는 최대확률 분절이 선택된다.
무엇과 다른가
목표 함수는 두 가지다. 압축 목표 G_comp는 데이터셋 전체에서 토크나이저가 만들어내는 토큰 수의 합이고, 로그우도 목표 G_ll은 유니그램 언어모델이 코퍼스에 부여하는 음의 로그확률이다. 후자는 원래 언어모델을 완전히 학습시켜야 평가할 수 있어 다루기 어렵기 때문에, UnigramLM을 따라 p(s) = n_s/N 형태의 유니그램 모델로 제한한다. 논문은 두 목표 각각에 대해 병합 이득을 효율적으로 계산하는 식을 유도한다. 압축의 경우 병합 이득은 그 토큰쌍의 겹치지 않는 등장 횟수 n_{s1,s2}와 정확히 같아서, 이것이 '가장 빈번한 토큰쌍을 합친다'는 표준 BPE 규칙의 근거가 된다. 로그우도의 경우에는 두 토큰의 개별 빈도와 쌍 빈도로 이루어진 식이 나오며, s1 = s2인 경우에는 같은 토큰 두 개가 소비되므로 개수가 2n만큼 줄어드는 차이만 있다. 흥미로운 부산물로, 토큰화된 코퍼스의 유니그램 엔트로피가 정확히 G_ll / G_comp와 같다는 관계도 유도된다.
어떻게 쓰나
실험은 영어 단일 언어와 다국어 두 설정에서 진행된다. 다국어 코퍼스는 20B 토큰으로, 영어 10B(FineWeb-Edu)와 독일어·스페인어·터키어·중국어 각 2.5B(FineWeb2)로 구성된다. 토크나이저는 이 코퍼스의 10% 서브샘플로 학습하고, 다국어 설정에서는 128k 단일 어휘 크기를 쓴다. 그 위에 1B 파라미터 언어모델을 전체 코퍼스로 학습시킨다. 영어 설정에서는 모델 크기(100M, 300M, 500M, 1B)와 어휘 크기(8k, 32k, 128k)를 바꿔가며 실험하고, 별도 언급이 없으면 파라미터 수의 약 20배에 해당하는 Chinchilla식 토큰 예산을 쓴다. 평가는 외재적 지표로 검증셋의 bits-per-byte(BPB)와 BLiMP·MultiBLiMP·ZhoBLiMP의 최소대립쌍 문법성 정확도를, 내재적 지표로 G_comp, G_ll, 유니그램 엔트로피, 토큰당 바이트, 평균 토큰 길이, 어휘 활용도, Zipf α, Coverage 50%를 보고한다.
전제와 한계
내재적 평가에서 가장 눈에 띄는 것은 어휘 크기에 따라 그림이 뒤집힌다는 점이다. 8k 어휘에서는 각 토크나이저의 압축·로그우도 점수가 자기 목표와 일치한다. BPE와 TopDownComp가 압축을 잘 하고, UnigramLM과 BottomUpLL이 로그우도를 잘 한다. 그런데 더 큰 어휘에서는 이 관계가 깨진다. 상향식 토크나이저들이 목표 함수와 무관하게 압축과 로그우도 양쪽 모두에서 더 좋은 점수를 낸다. 엔트로피도 비슷하게, 작은 어휘에서는 목표 선택을 따라가지만 큰 어휘에서는 하향식 방법이 일관되게 더 낮은 엔트로피를 보인다. 다만 목표의 흔적은 토큰 빈도 분포에 남는다. 같은 탐색 절차 안에서 비교하면 로그우도 기반 방법이 압축 기반보다 더 집중된 빈도 분포를 만든다. BottomUpLL은 BPE보다 Zipf α가 높고 엔트로피와 Coverage 50%가 낮으며, UnigramLM도 TopDownComp에 대해 같은 패턴을 보인다. 어휘 구성도 탐색 절차를 따라 갈린다. 상향식 방법끼리는 서로 어휘를 훨씬 많이 공유하지만 하향식 방법과는 그렇지 않다. 어휘 활용도는 8k와 32k에서 거의 100%지만 128k에서는 로그우도 기반 토크나이저에 쓰이지 않는 토큰이 더 많고, 저자들은 이를 BottomUpLL이 병합 과정에서 만들었다가 다시 쓰지 않는 중간 토큰 탓으로 돌린다. 토큰 길이는 작은 어휘에서는 하향식이, 큰 어휘에서는 상향식이 더 길고, 두 절차 모두에서 로그우도 기반이 압축 기반보다 토큰이 길다.
외재적 평가의 핵심 결과는 BPB에서 탐색 절차가 지배적이라는 것이다. 상향식 토크나이저가 거의 모든 조건에서 하향식보다 낮은 BPB를 기록한다. 유일한 예외는 영어 300M 모델의 32k 어휘 설정으로, TopDownComp가 BPE를 0.0003 BPB 차이로 앞서는데 이는 무시할 만한 수준이다. 로그우도 기반 짝(BottomUpLL 대 UnigramLM)은 모든 설정에서 상향식이 이긴다. 저자들은 차이가 작은 경우가 많아 평가셋에 대한 문서 단위 짝지은 부트스트랩으로 통계적 유의성을 별도로 확인했다고 밝힌다. 같은 탐색 절차 안에서 목표 선택도 여전히 영향을 주지만 그 강도는 약하다. 압축 기반이 대체로 로그우도 기반보다 낫지만, BottomUpLL이 다른 모든 방법을 앞서는 예외가 여러 번 나온다. 반면 최소대립쌍 문법성 과제에서는 BPB와 같은 명확한 선호가 나타나지 않는다. 영어 설정에서는 오히려 하향식이 자주 앞서서, 1B 모델에서 UnigramLM이 BottomUpLL을, TopDownComp가 BPE를 이긴다. 다국어 설정에서도 일관된 패턴이 없고 모든 토크나이저가 최소 한 언어에서는 최고 성능을 낸다. 다만 독일어·스페인어·터키어 결과는 형태론적으로 풍부한 언어에 하향식이 도움이 될 수 있음을 시사한다.
실무 관점에서 이 논문이 주는 지침은 분명하다. 토크나이저를 고를 때 '압축이냐 로그우도냐'만 보면 절반만 보는 셈이고, 실제로는 상향식이냐 하향식이냐가 더 큰 변수다. 언어모델의 BPB를 주 지표로 삼는다면 BPE 계열의 상향식 절차가 안전한 기본값이다. 다만 문법성 판단처럼 다른 능력을 본다면 순위가 뒤집힐 수 있으므로, 자신의 과제에서 직접 확인해야 한다. 어휘 크기가 작을 때는 목표 함수의 영향이 상대적으로 커져서 로그우도 기반이 유리해진다는 점도 기억할 만하다. 128k처럼 큰 어휘를 쓸 때 로그우도 기반 토크나이저는 사용되지 않는 토큰이 늘어난다는 점도 실무에서는 낭비로 이어질 수 있으니 어휘 활용도를 함께 확인하는 편이 좋다.
저자들이 밝힌 한계도 분명하다. 우선 모델은 최대 1B 파라미터까지만 학습했고, 더 큰 모델이나 더 긴 학습에서는 결과가 달라질 수 있다. 다국어 실험은 영어·독일어·스페인어·터키어·중국어 다섯 언어에 한정되며 그중 넷이 라틴 문자를 쓰고 모두 상대적으로 고자원 언어라, 저자원 언어나 표기 관습이 크게 다른 문자 체계로 일반화되는지는 열린 문제다. 계산 비용 때문에 300M·500M 모델과 다국어 1B 모델은 설정당 시드 하나로만 학습했고, 100M과 영어 1B 모델만 세 시드 평균을 냈으므로 작은 차이는 조심해서 해석해야 한다. 또 모든 실험에서 토크나이저와 언어모델이 같은 코퍼스로 학습되어, 도메인이나 문체가 다른 데이터로 모델을 학습시킬 때의 영향은 다루지 않았다. 하향식 방법의 삭제 비용은 국소 대체 근사에 의존하는데, 정확한 삭제 점수로 학습한 토크나이저와의 어휘 중복도가 81.5%였고, 한 라운드에 어휘의 10%를 가지치기하는 근사는 1%와 0.1%로 다시 학습했을 때 각각 97%(UnigramLM), 99%(TopDownComp) 이상의 중복도를 보였다. 마지막으로 평가는 BPB와 최소대립쌍 문법성 벤치마크에 한정되어 있어, 다른 다운스트림 과제나 추론 능력, 긴 문맥 동작은 검증되지 않았다.