토큰화 후 모든 토큰은 vocab 테이블에서 가져온 unique 정수 ID를 가져. vocab은 학습 시점에 고정, 절대 안 바뀌어 — ID는 모델 평생 안정적.
모든 트랜스포머의 첫 연산은 embedding lookup이야 — 각 토큰 ID에 대해 embedding 행렬의 해당 행을 가져와. 행렬 shape은 (vocab_size × d_model). d_model=4096이면 index 47458이 4096차원 벡터를 반환. 그 벡터가 토큰 의미에 대한 모델의 첫 추측이고, 이후 layer들이 정제해.
기억할 두 가지. 첫째, embedding 행렬은 학습되는 거 — 다른 가중치들이랑 같이 업데이트. 둘째, 많은 모던 모델에서 input embedding 행렬과 output projection(logit → vocab)이 가중치를 공유해 — 이걸 weight tying이라 부르고, vocab × d_model 파라미터 절약 + "이 토큰을 어떻게 읽냐"와 "이 토큰을 어떻게 예측하냐"를 묶어.