자연어 처리2013

Word2Vec — 단어 임베딩

토마스 미콜로프가 단어를 벡터 공간에 매핑하는 기법을 발표

CBOW 모델: 주변 단어로 중심 단어를 예측하는 Word2Vec 구조 (Wikimedia Commons)

CBOW 모델: 주변 단어로 중심 단어를 예측하는 Word2Vec 구조 (Wikimedia Commons)

Word2Vec은 단어를 고차원 벡터로 변환하여 의미적 관계를 수학적으로 표현합니다. 'King - Man + Woman = Queen' 같은 벡터 연산이 가능합니다.

핵심 수식

벡터 유사도
cos(A,B)=ABAB\cos(\vec{A}, \vec{B}) = \frac{\vec{A} \cdot \vec{B}}{\|\vec{A}\| \|\vec{B}\|}
A⃗, B⃗=두 단어의 벡터 표현 (고차원 공간의 좌표)
cos=코사인 유사도 — 1에 가까우면 의미가 비슷, 0이면 무관
A⃗ · B⃗=내적(dot product) — 두 벡터가 같은 방향인지 측정
‖A⃗‖=벡터의 크기(길이) — 정규화용
벡터 연산
KingMan+WomanQueen\vec{King} - \vec{Man} + \vec{Woman} \approx \vec{Queen}
King⃗ - Man⃗='왕'에서 '남성' 의미를 빼면 → '왕권/권위' 개념만 남음
+ Woman⃗=여기에 '여성' 의미를 더하면 → '여왕'에 근접

핵심 개념

임베딩(Embedding)

이산적인 단어를 연속적인 벡터 공간에 매핑하는 것

CBOW

주변 단어로 중심 단어를 예측하는 학습 방식

Skip-gram

중심 단어로 주변 단어를 예측하는 학습 방식

주요 인물

토마스 미콜로프
Word2Vec 발표 (Google Research)

영향 & 의의

단어의 의미를 수학적으로 표현할 수 있게 되면서, 이후 모든 NLP 모델의 입력 표현 방식의 기준이 되었습니다. GloVe, FastText 등 후속 연구를 촉발했습니다.

용어집

Word2VecWord to Vector

단어를 고차원 벡터로 변환하는 알고리즘. CBOW와 Skip-gram 두 가지 방식

CBOWContinuous Bag of Words

주변 단어들로 중심 단어를 예측하는 학습 방식

Skip-gramSkip-gram

중심 단어로 주변 단어를 예측하는 학습 방식. 희소한 단어에 강함

임베딩Embedding

이산적인 객체(단어, ID)를 연속적인 벡터 공간의 좌표로 변환하는 것

코사인 유사도Cosine Similarity

두 벡터 사이 각도의 코사인값. 1이면 동일 방향(유사), 0이면 무관

관련 항목