Foundations · ICLR 2013

Efficient Estimation of Word Representations in Vector Space

단어를 조밀 벡터로 배워 의미 유추(왕−남자+여자≈여왕)를 가능하게 한 임베딩.

Tomas Mikolov, Kai Chen, Greg Corrado, Jeffrey Dean · Google Inc.

word2vecembeddingnlpskip-gram

1. 핵심 요약

2. 왜 중요한가 — 쉬운 설명

30초 비유

단어를 좌표(벡터)로 바꾸되, 비슷한 맥락에서 쓰이는 단어끼리 가깝게 놓습니다. 그러면 좌표 뺄셈·덧셈이 의미로 통합니다 — “왕 − 남자 + 여자 ≈ 여왕”.

무엇을 제안했나

  • CBOW / Skip-Gram — 주변 단어로 가운데 단어를 맞추거나(그 반대), 그 과정에서 좋은 벡터가 학습됨.
  • Negative Sampling — 전체 어휘 대신 “틀린 단어 몇 개”만 대비해 학습을 수십 배 빠르게.

그래서 무엇이 달라졌나

  • 단어를 조밀한 의미 벡터로 표현하는 방식이 표준이 됨 — 이후 모든 NLP 모델의 입력 표현.
  • “임베딩(embedding)”이라는 개념을 대중화.

더 공부할 가치가 있을까?

  • 기초용 — NLP 입문이나 임베딩 개념을 잡는 데 좋습니다.
  • 다음 단계 — 요즘 주류는 문맥에 따라 벡터가 바뀌는 BERT식 문맥 임베딩입니다.

3. 배경: 단어의 수치 표현

원-핫은 |V|차원·희소이고, 단어끼리 직교라 의미 관계가 없습니다. 분포 가설(Firth): 같은 문맥의 단어는 의미가 비슷하다.

One-Hot vs 임베딩

원-핫은 직교·희소. 임베딩은 조밀하고 비슷한 단어가 가깝습니다 (설명용 2D).

cat
10000
dog
01000
king
00100
queen
00010
run
00001
A·B (dot)0
dim|V|=5
원-핫: cat⊥dog (내적 0) — 의미 관계가 없음

원-핫은 |V|차원·희소. Word2Vec은 보통 100~300차원 조밀 벡터.

One-Hot 내적 vs 임베딩 코사인 — cat/dog가 가까워지는지 비교하세요.

분포 가설 · 문맥 윈도우

“You shall know a word by the company it keeps” — 같은 문맥의 단어는 의미가 비슷합니다.

중심rice
문맥I, ate, with, kimchi
P(문맥 | rice) 또는 P(rice | 문맥)을 학습합니다

논문 설정 예: 윈도우 5, 구글 뉴스 ~1000억 단어.

중심 단어와 윈도우 c를 바꿔 문맥이 어떻게 잡히는지 보세요.

4. CBOW와 Skip-Gram

CBOW vs Skip-Gram

같은 윈도우라도 학습 쌍 개수가 다릅니다. Skip은 문맥마다 1쌍 → 더 느림.

Iatericewithkimchi
입력 (중심)
rice
→hidden→
출력 (문맥)
I
ate
with
kimchi
이 중심 1회당 학습 쌍 · 4개
(rice → I)(rice → ate)(rice → with)(rice → kimchi)
쌍 / 중심~2c (=4)
속도17K w/s
유추 정확도72.6%
Skip-Gram: 문맥마다 (중심→문맥) 쌍 → 약 2c배 업데이트, 느리지만 품질↑.

논문 표: NNLM 33.4% / 1.8K w/s 대비 큰 폭 개선.

윈도우 c와 학습 쌍 개수를 비교 — Skip은 ~2c쌍, CBOW는 1쌍.
L=∑t=1T∑−c≤j≤c,j≠0log⁡P(wt+j∣wt)\mathcal{L} = \sum_{t=1}^{T} \sum_{-c \leq j \leq c, j \neq 0} \log P(w_{t+j} | w_t)
Skip-Gram — 중심으로 문맥 로그우도 최대화
Skip-Gram 목적 함수수식 상세 →
기호를 클릭하면 의미를 볼 수 있습니다
단계별 설명
P(wO∣wI)=exp⁡(vwO⊤vwI)∑w=1Wexp⁡(vw⊤vwI)P(w_O | w_I) = \frac{\exp(v_{w_O}^\top v_{w_I})}{\sum_{w=1}^{W} \exp(v_w^\top v_{w_I})}
소프트맥스 — 분모가 전체 어휘라 O(W)
Skip-Gram 소프트맥스수식 상세 →
기호를 클릭하면 의미를 볼 수 있습니다
단계별 설명

5. 효율적 학습 기법

Negative Sampling

비용 O(W) vs 1+k. 아래는 토이 내적으로 σ(v·v) — 긍정↑·부정↓를 한 스텝 흉내냅니다.

center
rice
↔
긍정
ate
부정 샘플
table
blue
run
paris
the
softmax cost~100,000
neg cost~6
≈ speedup16667×
pos σ(v_O·v_I) · dot=0.87
0.705
neg table · σ(v·v)=0.46
0.463
neg blue · σ(v·v)=0.46
0.463
neg run · σ(v·v)=0.35
0.354
neg paris · σ(v·v)=0.57
0.574
neg the · σ(v·v)=0.52
0.522
토이 loss1.005
긍정 점수는 올리고, 부정 공동출현 점수는 내립니다 (1스텝 버튼).

Hierarchical Softmax는 O(log W). 서브샘플링은 고빈도 단어를 확률적으로 드롭.

O(W) vs 1+k 비용 + σ(v·v) 점수. ‘1스텝 학습’으로 긍정↑·부정↓.
L=log⁡σ(vwO⊤vwI)+∑i=1kEwi∼Pn[log⁡σ(−vwi⊤vwI)]\mathcal{L} = \log \sigma(v_{w_O}^\top v_{w_I}) + \sum_{i=1}^{k} \mathbb{E}_{w_i \sim P_n}[\log \sigma(-v_{w_i}^\top v_{w_I})]
Negative Sampling — 긍정↑ 부정↓
Negative Sampling수식 상세 →
기호를 클릭하면 의미를 볼 수 있습니다
단계별 설명
P(drop)=1−tf(w)P(\mathrm{drop}) = 1 - \sqrt{\frac{t}{f(w)}}
서브샘플링 — 초고빈도 단어를 확률적으로 제거
서브샘플링 (고빈도 단어)수식 상세 →
기호를 클릭하면 의미를 볼 수 있습니다
단계별 설명

Hierarchical Softmax: 어휘를 허프만 트리로 두어 소프트맥스를 O(W)→O(log W)로 줄입니다.

6. 학습된 임베딩의 특성

king⃗−man⃗+woman⃗≈queen⃗\vec{king} - \vec{man} + \vec{woman} \approx \vec{queen}
벡터 산술로 의미 관계를 근사
벡터 산술 (유추)수식 상세 →
기호를 클릭하면 의미를 볼 수 있습니다
단계별 설명

벡터 산술 유추

A−B+C ≈ D. 주황=관계 B→A, 초록=같은 관계를 C에 적용 → 별(결과).

A−B+ (A−B)A:kingB:manC:womanD:queenA−B+C
B→A (A−B)C→result
formulaking−man+woman
최근접queen ✓
|result−D|0.014
평행사변형이 queen 근처로 닫힘 — Skip-Gram 유추 72.6%

점선은 계산 결과와 목표 D의 거리입니다.

B→A(주황)와 같은 오프셋을 C에 더함(초록). 별=A−B+C.
ModelAnalogy accuracy
CBOW61.0%
Skip-Gram72.6%
Neural Net LM55.9%
유추 태스크 (~9000문항) — Skip-Gram이 최고.

7. 실험 결과

구글 뉴스 ~1000억 단어, 어휘 100만, 차원 300, 윈도우 5.

ModelAccuracySpeed
NNLM33.4%1.8K w/s
RNN LM32.9%2.4K w/s
CBOW61.0%163K w/s
Skip-Gram72.6%17K w/s
정확도와 처리 속도 (논문 표).

8. 영향 및 발전

임베딩 계보

Word2Vec → GloVe → FastText → ELMo → LLM 토큰 임베딩.

Word2Vec (2013)

조밀 벡터 + 문맥 예측. CBOW / Skip-Gram.

GloVe · FastText · ELMo · LLM 임베딩으로 이어지는 계보.
ConceptIdea
Distributional hyp.Same context ⇒ similar meaning
Skip-GramCenter → context
CBOWContext → center
Negative Sampling1 positive + k negatives
Embedding dimOften 100–300 (LLM origin)
핵심 개념 한눈에.

이해도 점검

보기를 골라 정답과 해설을 확인하세요. 채점은 이 페이지 안에서만 이뤄집니다.

0 / 5 정답
  1. 1. 분포 가설(distributional hypothesis)이란?

  2. 2. CBOW와 Skip-gram의 차이는?

  3. 3. Negative sampling이 해결하는 문제는?

  4. 4. 서브샘플링(subsampling of frequent words)이 하는 일은?

  5. 5. king−man+woman≈queenking - man + woman \approx queen 이 보여주는 것은?