Introduction
Pre-Training
Step 1: Download and preprocess the internet
Step 2: Tokenization
Step 3: Neural network training
Step 4: Inference
Base model
Post-Training: Supervised Finetuning
Conversations
Hallucinations
Knowledge of Self
Models need tokens to think
Things the model cannot do well
Post-Training: Reinforcement Learning
Reinforcement learning
DeepSeek-R1
AlphaGo
Reinforcement learning from human feedback (RLHF)
Preview of things to come
Keeping track of LLMs
Where to find LLMs
대형 언어 모델(LLM)이 텍스트를 처리하기 위해 문장을 작은 단위(토큰)로 변환하는 과정.
모델이 이해할 수 있도록 텍스트를 숫자로 변환
자주 등장하는 단어 조합을 하나의 토큰으로 만들어 시퀀스 길이를 줄임
① UTF-8 인코딩: 모든 문자를 바이트 단위로 변환
하지만, 단순히 모든 문자를 바이트 단위로 변환하면 너무 긴 시퀀스가 생성됨.
➡️ 따라서 더 효율적인 토큰화 방법이 필요함! (=BPE)
② Byte Pair Encoding (BPE): 빈번하게 등장하는 문자 쌍을 하나의 토큰으로 등록 → 시퀀스를 줄임
예시
Original: "internationalization"
UTF-8: ['i', 'n', 't', 'e', 'r', 'n', 'a', 't', 'i', 'o', 'n', 'a', 'l', 'i', 'z', 'a', 't', 'i', 'o', 'n']
BPE 적용 후: ['international', 'ization']
➡️ 같은 단어라도 더 적은 토큰 수로 변환 가능, 즉 시퀀스 길이가 최적화됨!
GPT-4의 토큰 개수: 100,277개
토큰 ID 변환 과정:
"Hello world"
→ ["Hello", " world"]
→ [15339, 1917]
✅ 중요한 특징
공백(space)도 하나의 토큰으로 처리됨 (" world"
vs. "world"
)
대소문자 차이도 토큰화 결과에 영향을 미침 ("Hello"
vs. "hello"
)
의미 있는 부분을 최소한의 토큰으로 변환하여 시퀀스를 줄임
📌 Tiktoken을 활용한 실제 토큰화 예제 사이트: Tiktokenizer
모델이 입력을 받을 때, 텍스트를 토큰 ID 시퀀스로 변환함.
예제:
"The quick brown fox"
→ [324, 9821, 4321, 294]
(토큰 ID로 변환)
모델이 예측하는 것은 다음 토큰의 ID 값.