Part 3 · Word Representation - Representing Meaning with Numbers

숫자만으로는 단어의 의미를 이해할 수 없다

컴퓨터는 모든 정보를 숫자로 저장하고 계산합니다. 하지만 숫자는 크기를 비교할 수 있을 뿐, 그 안에 담긴 의미까지 이해하지는 못합니다. 사람은 '고양이'와 '강아지'가 서로 비슷하다는 것을 알지만, Token ID만으로는 이러한 관계를 표현할 수 없습니다. 언어 모델이 사람의 언어를 이해하려면 숫자를 단순한 식별자가 아니라 의미를 담는 표현으로 바꾸어야 합니다. 임베딩은 바로 이러한 문제를 해결하기 위해 등장한 핵심 기술입니다.

Where We Are

지금까지 문장은 어디까지 변했을까?

앞 장에서는 문장을 토큰으로 나누고, 각 토큰을 Vocabulary에서 찾아 Token ID로 바꾸는 과정을 살펴보았습니다.

문장 A cute bear
토큰화 A · cute · bear
Token ID 17 · 842 · 391
? 의미 표현 필요
언어 모델 RNN · Transformer
Token ID까지 만들었다고 해서 모델이 토큰의 의미를 이해한 것은 아닙니다. Token ID는 토큰을 구분하기 위한 고유 번호일 뿐입니다.
The Core Problem

Token ID는 숫자인데, 왜 그대로 사용하지 않을까?

모델은 숫자를 계산할 수 있습니다. 그렇다면 Token ID도 숫자이므로 그대로 계산하면 될 것처럼 보입니다. 하지만 Token ID는 의미를 표현하기 위해 만든 숫자가 아닙니다.

Token ID를 값처럼 계산하면 생기는 문제
cat → 100
dog → 101
airplane → 900

번호만 보면 cat과 dog가 가깝고 airplane이 멀어 보입니다. 하지만 이는 단지 번호를 부여한 결과일 뿐입니다.

필요한 것은 의미와 관계를 표현하는 숫자

모델이 실제로 필요한 정보는 어떤 단어가 비슷하고, 어떤 단어가 다른 상황에서 사용되는지입니다.

따라서 단순한 번호가 아니라 토큰의 특징과 관계를 표현할 수 있는 숫자 묶음이 필요합니다.

Token ID의 숫자 크기와 토큰의 의미·중요도·유사성 사이에는 아무런 직접적인 관계가 없습니다.
Analogy

Token ID는 학번과 비슷하다

학생과 학번

학생에게 학번을 부여하면 학교 시스템은 학생을 빠르게 구분할 수 있습니다.

홍길동
20260015

그러나 학번만 보고 학생의 성격, 관심 분야, 실력이나 친구 관계를 알 수는 없습니다.

토큰과 Token ID

토큰에도 Token ID를 부여하면 모델 시스템은 토큰을 빠르게 구분할 수 있습니다.

apple
1523

하지만 1523만 보고 사과가 과일인지, 바나나와 비슷한지 알 수는 없습니다.

학번이 학생의 특징을 설명하지 않는 것처럼, Token ID도 토큰의 의미를 설명하지 않습니다.
Identification vs Meaning

번호를 붙이는 것과 의미를 표현하는 것은 다르다

구분 역할 예시
Token 텍스트를 나눈 입력 단위 apple
Token ID Vocabulary에서 토큰을 찾기 위한 번호 1523
의미 표현 토큰의 특징과 다른 토큰과의 관계를 계산할 수 있는 숫자 표현 다음 장에서 학습할 임베딩 벡터
모델이 궁금한 것은 번호가 아닙니다.

모델은 apple이 과일과 관련 있고, banana와 비슷한 문맥에서 사용되며, airplane과는 다른 성격을 가진다는 관계를 계산해야 합니다.

Interactive Check

Token ID만으로 의미를 판단할 수 있을까?

아래 토큰을 선택해 보세요. Token ID는 서로 다르지만, 번호만으로 의미 관계를 판단할 수 있는지 확인해 보겠습니다.

선택한 토큰 apple
Token ID 1523

1523이라는 번호만으로는 apple이 과일이라는 사실이나 banana와 비슷하다는 관계를 알 수 없습니다.

What Is Missing?

그렇다면 무엇이 더 필요할까?

언어 모델은 토큰을 서로 비교하고, 문맥 안에서 어떤 관계를 갖는지 계산해야 합니다. 이를 위해 각 토큰을 하나의 번호가 아니라 여러 숫자로 이루어진 표현으로 바꿉니다.

Token apple
→
Token ID 1523 토큰을 찾는 번호
→
의미를 표현하는 숫자 묶음 [0.12, -0.55, 0.81, ...] 다음 장: 임베딩
임베딩이 필요한 이유는 Token ID를 계산 가능한 의미 표현으로 바꾸기 위해서입니다.
Token ID가 이미 숫자인데 왜 다른 숫자로 바꾸는가?
Token ID는 토큰을 구분하기 위한 주소나 번호입니다. 임베딩은 토큰의 특징과 관계를 모델이 계산할 수 있도록 만든 숫자 표현입니다. 두 숫자는 목적이 완전히 다릅니다.
Next Page

다음 장에서 배울 내용

현재까지 이해한 내용
  • 문장은 토큰으로 나뉩니다.
  • 토큰에는 Token ID가 부여됩니다.
  • Token ID는 의미가 아니라 구분 번호입니다.
다음 장에서 이어질 내용
  • Token ID로 임베딩 테이블의 행을 찾습니다.
  • 해당 행에서 임베딩 벡터를 가져옵니다.
  • 언어 모델은 이 벡터를 입력으로 사용합니다.
다음 장에서는 임베딩이 무엇이고, Embedding Table에서 벡터를 어떻게 꺼내는지 단계별로 살펴봅니다.
Summary

학습 내용 정리

  • Token ID는 Vocabulary에서 토큰을 구분하기 위한 고유 번호입니다.
  • Token ID의 숫자 크기에는 의미가 없으며, 토큰 사이의 유사성도 나타내지 않습니다.
  • 언어 모델은 토큰의 특징과 관계를 계산할 수 있는 숫자 표현이 필요합니다.
  • 임베딩은 Token ID를 의미를 표현하는 숫자 벡터로 연결하는 역할을 합니다.
  • 전체 흐름은 Token → Token ID → Embedding → 언어 모델입니다.