Word2Vec

Word2Vec(Word to Vector)은 2013년 토마스 미콜로프(Tomas Mikolov)가 이끄는 구글(Google) 연구팀이 발표한 자연어 처리(NLP) 용도의 핵심 단어 임베딩(Word Embedding) 기술이다.

대규모 텍스트 데이터(Corpus)를 인공 신경망으로 학습시켜, 개별 단어들을 다차원 연속 공간의 밀집 벡터(Dense Vector)로 변환한다. “단어의 의미는 그 주변 단어들에 의해 결정된다”는 언어학적 가정(분포 가설, Distributional Hypothesis)을 기반으로 수학적 연산을 수행한다.

학습이 완료되면 의미가 유사한 단어들은 벡터 공간에서 서로 가까운 곳에 위치하게 되며, “King - Man + Woman = Queen”과 같은 단어 간의 대수적 관계(Algebraic relationships)를 계산할 수 있는 점이 가장 큰 특징이다.

핵심 알고리즘 구조 (Core Architectures)

Word2Vec은 텍스트를 벡터로 매핑하기 위해 주로 비용 효율성이 높은 얕은 신경망(Shallow Neural Network)을 사용하며, 목적에 따라 두 가지 모델 중 하나를 적용한다.

  1. CBOW (Continuous Bag-of-Words): 주변에 있는 문맥 단어(Context words)들을 입력값으로 사용하여 가운데 위치한 중심 단어(Target word)를 예측하는 방식이다. 모델 구조가 단순해 학습 속도가 매우 빠르며, 말뭉치의 크기가 작거나 빈번하게 등장하는 단어를 학습할 때 유리하다.
  2. Skip-gram: 하나의 중심 단어를 입력값으로 받아, 그 주변에 나타날 문맥 단어들을 예측하는 방식이다. 계산량이 CBOW보다 많아 학습 시간은 더 소요되지만, 드물게 등장하는 희귀 단어(Rare words)의 표현을 학습하는 데 우수하며 전반적인 임베딩 품질이 상대적으로 더 높다.

주요 단어 임베딩 모델 비교 (Comparison of Word Embedding Models)

Word2Vec의 등장 이후 이를 보완하기 위해 여러 발전된 임베딩 방법론이 제시되었다. 대표적인 모델 간의 차이점은 다음과 같다.

비교 항목Word2Vec (Google)GloVe (Stanford Univ.)FastText (Facebook AI)
핵심 방법론 (Core Mechanism)예측 기반 (문맥 단어들을 통한 예측, 국소적 문맥 활용)카운트 및 비율 기반 (전체 말뭉치의 동시 등장 행렬 분해)예측 기반 (Word2Vec의 Skip-gram 구조 계승)
학습 기준 단위 (Training Unit)단어(Word) 전체단어(Word) 전체부분 단어(Subword, N-gram)의 집합
미등록 단어 (OOV) 처리 능력불가능 (학습 데이터에 없는 단어는 벡터화 불가)불가능 (미등록 단어 처리 취약)가능 (부분 단어의 벡터 합으로 유추 연산 가능)
통계 정보 반영 (Global Statistics)단어의 동시 등장 빈도 등 전체 통계량을 직접 반영하지 않음말뭉치 전체 통계 정보를 직접적으로 활용하여 최적화함Word2Vec과 동일 (국소 통계 의존)
주요 강점 요소 (Strengths)대수적 연산(Analogy) 성능이 우수하고 직관적인 의미 모델링코퍼스의 전역적 통계 정보를 보존하여 벡터의 일관성이 높음오탈자, 형태소 변화가 심한 언어(교착어 등) 처리에 탁월

출처 (Sources):

  • Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013). “Efficient Estimation of Word Representations in Vector Space.” arXiv preprint arXiv:1301.3781. (https://arxiv.org/abs/1301.3781)
  • Mikolov, T., Sutskever, I., Chen, K., Corrado, G. S., & Dean, J. (2013). “Distributed Representations of Words and Phrases and their Compositionality.” Advances in Neural Information Processing Systems (NeurIPS).
  • TensorFlow Core Documentation: “Word2Vec” (https://www.tensorflow.org/tutorials/text/word2vec)
  • Jurafsky, D., & Martin, J. H. (2023). Speech and Language Processing (3rd ed. draft): Vector Semantics and Embeddings. (https://web.stanford.edu/~jurafsky/slp3/)

Entities