LLM pretraining은 결국 "앞 문맥을 보고 다음 토큰을 맞히는 일"을 아주 큰 규모로 반복하는 학습입니다. 하지만 이 한 문장 안에는 텍스트를 어떻게 자를지, 같은 연산 자원에서 모델과 데이터를 어떻게 키울지, 학습 상태를 어떤 숫자로 읽을지가 모두 들어 있습니다. 이 강의에서는 next-token prediction을 출발점으로 두고, tokenization, scaling law, perplexity가 왜 모두 연결되어 있는지 순서대로 설명합니다.
LLM pretraining의 기본 목표는 단순합니다. 앞쪽 토큰들이 주어졌을 때 실제 다음 토큰의 확률을 높이도록 학습하는 것입니다. 문장
에 대해 모델은 보통 전체 문장의 확률을 다음처럼 조건부 확률의 곱으로 표현합니다.
이 식의 뜻은 단순합니다. 문장을 한 번에 통째로 맞히는 것이 아니라, 각 위치에서 "이 앞 문맥 다음에는 무엇이 올까?"를 계속 묻는 것입니다.
학습에서는 실제 정답 토큰의 로그확률을 크게 만드는 방향으로 가므로, 손실은 보통 다음처럼 씁니다.
이 식은 각 위치에서 정답 토큰을 얼마나 잘 맞혔는지에 대한 벌점을 누적한 것입니다. 즉 pretraining은 "다음 토큰 맞히기"를 수십억 번 반복하는 과정이라고 볼 수 있습니다.
그런데 왜 단순한 next-token prediction이 언어 능력으로 이어질까요? 이유는 다음 토큰을 맞히려면 단순한 단어 암기가 아니라 문법, 문맥, 상식적 연결, 긴 거리 의존성까지 함께 써야 하기 때문입니다. 대명사의 지시 대상, 문장의 시제, 문단의 주제 흐름, 코드의 괄호 짝까지 모두 다음 토큰 예측 문제 안에 들어 있습니다. 그래서 이 목표 하나가 매우 많은 언어 구조를 함께 학습시키게 됩니다.
여기서 바로 tokenization 문제가 들어옵니다. 모델은 글자를 직접 읽지 않고 토큰을 읽습니다. 즉 텍스트를 어떻게 자르느냐가 모델이 보는 세계의 기본 단위를 결정합니다.
같은 문장이라도 더 잘게 토큰화하면 시퀀스 길이는 길어지고, 각 토큰은 더 작은 의미 단위를 담게 됩니다. 반대로 더 크게 토큰화하면 시퀀스는 짧아지지만 vocabulary가 커지고, 드문 토큰이 늘어날 수 있습니다. 예를 들어 희귀한 단어를 글자 수준에 가깝게 쪼개면 사전 문제는 줄지만 문맥 길이가 길어집니다. 반대로 긴 문자열을 통째로 토큰으로 잡으면 문맥 길이는 줄어들지만 모델이 익혀야 할 사전은 커집니다.
그래서 tokenization은 단순 전처리가 아닙니다. 모델이 무엇을 하나의 단위로 보고, 한 문장에서 얼마나 긴 의존성을 처리해야 하며, 어떤 통계를 더 자주 보게 되는지를 함께 결정합니다. 같은 모델이라도 tokenization이 달라지면 학습 난이도와 효율이 바뀌는 이유가 여기에 있습니다.
다음으로 scaling law를 봐야 합니다. 모델을 키우면 성능이 좋아지긴 하지만, 아무렇게나 키우면 비효율이 생깁니다. 경험적으로 모델 크기, 데이터 양, compute가 함께 균형 있게 증가할 때 성능이 비교적 예측 가능한 방향으로 좋아지는 패턴이 관찰되었습니다. 이것이 scaling law의 핵심입니다.
즉 중요한 질문은 "파라미터를 더 늘릴까?" 하나가 아닙니다. 같은 compute를 쓸 때 모델을 키우는 것이 좋은지, 데이터를 더 늘리는 것이 좋은지, 둘을 어느 비율로 맞출지가 더 중요합니다. 현대 LLM 설계가 단순히 큰 모델 경쟁이 아니라 데이터와 연산 예산의 균형 설계가 된 이유가 여기에 있습니다.
perplexity는 이런 pretraining 상태를 읽는 대표 지표입니다. 직관적으로는 "모델이 다음 토큰을 얼마나 덜 헷갈리는가"를 보여 줍니다. perplexity가 낮을수록 모델은 평균적으로 더 적은 후보 사이에서 정답에 확신을 가지는 셈입니다. 즉 다음 토큰 예측이 더 날카롭고 안정적이라는 뜻입니다.
물론 perplexity가 낮다고 모든 downstream 성능이 자동으로 좋아지는 것은 아닙니다. 하지만 pretraining의 기본 언어 모델링 능력을 읽는 데는 여전히 매우 중요합니다. loss와 perplexity는 모델이 언어의 통계를 얼마나 잘 붙잡고 있는지를 보여 주는 기본 계기판이라고 생각하면 됩니다.
결국 LLM pretraining은 하나의 손실식만 보는 문제가 아닙니다. 어떤 토큰 단위를 쓸지, 같은 compute에서 모델과 데이터를 어떻게 나눌지, loss와 perplexity를 어떻게 읽을지를 함께 설계해야 합니다. 그래서 pretraining은 단순한 대규모 반복 학습이면서도 동시에 정교한 시스템 설계 문제입니다.
다음 토큰 예측의 의미
문제: 모델이 prefix를 보고 최대화하려는 것은 무엇인가?
풀이: 실제 다음 토큰에 대한 조건부 확률이다.
해설: pretraining은 각 위치에서 "정답 다음 토큰"의 확률을 높이는 반복 학습이다.
tokenization의 영향
문제: 같은 문장을 더 잘게 토큰화하면 무엇이 달라질 수 있는가?
풀이: 시퀀스 길이는 길어지고, 각 토큰이 담는 의미 단위는 더 작아질 수 있다.
해설: 모델이 보는 입력 구조 자체가 달라지므로 학습 난이도와 패턴 학습 방식도 함께 변한다.
scaling의 균형
문제: 모델 파라미터만 크게 늘리고 데이터는 거의 늘리지 않으면 어떤 문제가 생길 수 있는가?
풀이: 충분한 데이터를 보지 못해 큰 모델의 표현 능력을 효율적으로 활용하지 못할 수 있다.
해설: scaling law는 단순히 "크게 만들기"보다 "균형 있게 키우기"를 강조한다.