Meta trained small AI models to read raw bytes instead of tokens. They start out worse, but the paper predicts they end up better
Meta, 토큰 대신 바이트를 읽는 소형 AI 모델 훈련…초반엔 뒤처지지만 장기적으로 앞선다는 예측
Meta와 워싱턴대 연구진은 토큰 모델의 출력을 바이트 단위로 옮기는 방법을 제시하고 약 10억 파라미터 모델의 학습 추세를 비교했습니다. 바이트 모델은 낮은 연산량에서 뒤처지지만 더 학습하면 앞설 것으로 예측됐습니다. 다만 우위와 데이터 절감 수치는 실측 결과가 아니라 학습 곡선 외삽에 기반합니다.
- 주제
에디터 노트
이번 결과에서 가장 실용적인 이득은 바이트 모델의 예측 정확도보다 증류 로짓 저장량을 약 5분의 1로 줄이고, 토큰 모델 성능에 도달하는 데 필요한 텍스트를 약 6분의 1로 낮춘다는 계산입니다. 하지만 두 수치와 토큰 모델을 넘어서는 성능은 모두 학습 곡선을 외삽해 얻었습니다. 실제 학습 구간에서는 토큰 모델이 앞서며, 바이트 모델은 같은 텍스트에 더 많은 추론 단계를 씁니다. 따라서 이 연구는 토큰화를 대체할 근거라기보다 제한된 모델 크기에서 더 오래 학습할 때 바이트 표현이 어떤 추세를 보이는지에 대한 비교입니다. Reddit에서도 바이트 표현의 잠재력을 강조하는 의견과 추론 속도 및 정보 밀도를 걱정하는 반응이 맞섭니다. 논문 자체도 더 큰 모델에서의 확장성과 추론 비용을 미해결 과제로 남깁니다.
AI 요약
토큰 대신 바이트를 입력 단위로 쓰는 모델은 작은 어휘 집합을 쓰지만, 같은 텍스트를 처리할 때 더 많은 입력 단계를 거칩니다. Meta FAIR와 워싱턴대 연구진은 토큰 모델의 지식을 바이트 모델에 증류하는 방법 두 가지를 제안하고, 학습량에 따라 두 방식의 성능이 어떻게 달라지는지 비교했습니다.
토큰 확률을 바이트 확률로 변환
교사 모델인 Llama 3-8B는 BPE 토큰으로 다음 토큰의 확률을 출력합니다. 이를 바이트 모델의 학습에 쓰려면 토큰별 확률을 해당 토큰의 바이트 문자열에 맞춰 분배해야 합니다. 연구진의 첫 방법인 Marginalize-It은 첫 바이트에서는 토큰 확률을 정확히 합산하지만, 뒤이은 바이트에서는 실제 접두사와 일치하는 토큰만 남기고 나머지 확률을 재분배합니다. 추가 추론 없이 한 번의 교사 모델 실행으로 변환하지만, 뒤쪽 바이트 확률은 근사치입니다.
End-Of-Token 방식은 바이트 어휘에 <eot>을 추가하고 각 BPE 토큰의 끝에 이 기호를 붙입니다. 접두사에 이어질 수 있는 토큰의 확률을 버리지 않고, 해당 토큰이 끝나는 경우의 확률을 <eot>에 배정합니다. 논문은 이 방법이 교사 모델의 확률 분포를 정확히 보존한다고 설명합니다. <eot>은 평균 약 4.5바이트마다 하나씩 들어가므로, 같은 텍스트 양을 처리할 때 Marginalize-It보다 약 30.94% 더 많은 연산을 씁니다.
모델과 평가 범위
연구진은 약 1.28억이 아니라 12억 8천만 개의 층 파라미터를 맞춘 decoder-only Transformer를 학습했습니다. Token-1B의 전체 파라미터 수는 큰 어휘 임베딩 때문에 18억 1천만 개이며, 바이트 모델은 약 12억 8천만 개입니다. 실험은 토큰화 방식 세 가지와 학습 목표 두 가지를 조합한 여섯 조건으로 구성했습니다. 학습 목표는 정답 텍스트를 쓰는 Cross-Entropy와 Llama 3-8B의 출력을 모방하는 Distillation입니다. Llama 2 학습 데이터 혼합물을 사용했고, 최대 1조 바이트까지 학습량을 늘렸습니다.
평가는 객관식 질의응답 ARC-Easy, ARC-Challenge, HellaSwag, PIQA와 코드 생성 MBPP, Natural Questions, 영어-독일어 및 독일어-영어 기계 번역 Flores를 대상으로 했습니다. 낮은 연산량에서는 토큰 모델이 앞섰지만, 학습 연산을 늘릴수록 바이트 모델의 점수가 더 빠르게 개선됐습니다. 연구진은 여러 연산량 구간의 결과를 BPB(Bits Per Byte) 및 과제 오류율과 연결해 스케일링 법칙을 맞췄습니다. 이 분석에서는 바이트 모델이 토큰 모델보다 낮은 BPB를 기록해도 과제 성능이 낮을 수 있었습니다. 따라서 서로 다른 토큰화 방식의 모델을 BPB만으로 비교하기 어렵다고 지적합니다.
성능 예측과 비용
맞춘 스케일링 법칙을 학습 범위 바깥까지 외삽하면, End-Of-Token 증류 모델의 평균 과제 정확도는 52.4%로 예측됩니다. Token-1B 증류 모델은 48.4%, Marginalize-It 증류 모델은 50.5%입니다. End-Of-Token의 52.4%는 Token-1B보다 4%포인트, Marginalize-It보다 1.9%포인트 높은 값입니다. 논문은 End-Of-Token 모델이 Token-1B 증류 모델과 같은 성능에 도달하는 데 텍스트 데이터는 약 6분의 1만 필요할 것으로도 계산합니다. 작은 어휘 집합 덕분에 증류용 로짓 저장 비용은 토큰 모델의 약 5분의 1로 줄어든다고 추산합니다.
다만 이 우위는 학습을 무한히 늘렸을 때를 포함한 곡선 외삽에 따른 예측입니다. 실제로 수행한 낮은 연산량 구간에서는 토큰 모델이 앞섰고, 논문은 byte 모델의 추론 비용도 더 높다고 밝힙니다. 비교는 약 10억 파라미터급 모델과 여덟 개 벤치마크에 한정됩니다. 저자들은 더 큰 모델, 더 많은 데이터, 더 넓은 평가를 후속 과제로 제시합니다.
Reddit 반응
- @DotaMate — 이 논문은 토큰 대신 바이트를 읽는 소형 모델을 제안합니다. Llama 3 8B를 교사로 삼아 약 10억 파라미터 모델을 증류했습니다. 적은 학습량에서는 토큰 모델이 크게 앞서지만, 학습을 늘리면 토큰 모델은 정체되고 바이트 모델은 계속 개선됩니다. 다만 Llama와 Gemma를 앞선다는 내용은 학습 곡선을 실제 범위 밖으로 연장한 예측입니다. 같은 텍스트에 토큰보다 약 5배 많은 단계를 써야 합니다. 바이트 모델을 토큰 모델만큼 빠르게 만드는 연구가 있는지 궁금합니다.
- @Eyelbee — 이건 5년 전부터 있던 연구입니다. 바이트 단위 토큰화는 중복입니다.
- @teleprint-me — 이 아이디어는 오래됐습니다. 1951년 Shannon, 1994년 Gage, 2015년 Sennrich 등의 연구로 거슬러 올라갑니다. 하지만 초록 너머까지 읽으면 이번 연구가 다르다는 점을 알 수 있습니다.
- @IntelArtiGen — 텍스트를 6분의 1만 쓰는 대신 토큰 하나가 대략 4~5글자라면 같은 텍스트에 단계가 약 5배 늘어납니다. 어느 한쪽만 보면 좋아 보이지만 전체로 보면 압도적인 결과 같지는 않습니다.
- @DulsKerty — 실제 벤치마크 결과가 아니라 외삽한 곡선인데도 '필연적'이라고 말하는 건 과합니다.
- @inevitabledeath3 — 바이트 모델도 사전학습을 거칩니다. 토큰 모델이 잘 확장된다는 사실은 이미 알고 있습니다. 토큰 임베딩도 학습 과정에서 조정됩니다.
- @xNaXDy — 사람도 바이트 단위로 세상을 보지 않습니다. 디지털 데이터는 어떤 방식으로든 인코딩해야 합니다. UTF-8과 UTF-16처럼 인코딩 방식도 다른데 무엇을 기준으로 더 낫다고 할 수 있나요?
- @Presstabstart — 같은 길이의 출력을 만들 때 더 오래 '생각'한 결과일 수 있습니다. 반복형 Transformer에서도 결과가 유지되는지 보고 싶습니다.
- @Smallpaul — 궁극적으로 모델은 원시 신호에서 효율적으로 나눌 단위를 스스로 학습할 것입니다. 다만 Transformer에서 가능한지는 모르겠습니다.
- @inevitabledeath3 — 그 주장은 이 논문과 다른 논의입니다. 이 논문은 사전학습한 바이트 Transformer를 다루며, 사전학습이 없는 모델이나 다른 구조를 다루지 않습니다.
- @OscarCookeAbbott — 바이트 인코딩은 어휘에서 아낀 만큼 기본 언어 특성과 연관성을 가중치가 학습해야 합니다. 입력 단위가 작아지는 대신 표현의 정보 밀도를 잃을 수 있어 바이트 인코딩은 막다른 길이라고 봅니다.
원문: arXiv / 번역·요약: Trawling