Word2Vec은 자연어 처리(NLP)에서 단어를 벡터로 변환하는 방법을 제시한 모델이다. 이 모델은 단어의 의미적 유사성을 벡터 공간에서 반영하여 단어 간의 관계를 학습한다. Word2Vec은 구글의 연구원인 Tomas Mikolov와 그의 동료들에 의해 2013년에 제안되었다.
1. Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013). "Efficient Estimation of Word Representations in Vector Space."
이 논문에서는 Word2Vec 모델의 기본 개념과 CBOW 및 Skip-gram 모델을 설명한다. 이 논문은 단어의 벡터 표현을 효율적으로 학습하는 방법을 제시하였으며, 자연어 처리의 여러 작업에 혁신적인 영향을 미쳤다.
arXiv:1301.3781
2. Mikolov, T., Sutskever, I., Chen, K., Corrado, G., & Dean, J. (2013). "Distributed Representations of Words and Phrases and their Compositionality."
이 논문에서는 Word2Vec 모델을 확장하여 단어뿐만 아니라 문구(phrase)의 벡터 표현을 학습할 수 있는 방법을 제시한다. 이 논문은 특히 단어의 조합(compositionality) 문제를 다루며, 단어 간의 복잡한 관계를 포착하는 방법에 대해 논의한다.
Word2Vec은 크게 두 가지 모델로 나눌 수 있다:
- CBOW(Continuous Bag of Words): 이 모델은 주어진 문맥(주변 단어들)으로부터 타겟 단어를 예측하는 방식으로 학습된다. 예를 들어, "The cat sits on the"라는 문장에서 "mat"라는 단어를 예측하는 것이다. CBOW는 문맥을 통해 타겟 단어를 추론하는데 중점을 둔다.
- Skip-gram: 이 모델은 주어진 단어로부터 주변 단어들을 예측하는 방식으로 학습된다. 예를 들어, "mat"라는 단어를 사용하여 "The", "cat", "sits", "on", "the"와 같은 주변 단어들을 예측하는 것이다. Skip-gram은 하나의 단어로부터 문맥을 추론하는데 중점을 둔다.
이 두 모델 모두 신경망을 사용하여 단어를 고정된 크기의 실수 벡터로 변환한다. 이 벡터는 단어의 의미적 특성을 반영하게 되며, 유사한 의미를 가진 단어들은 벡터 공간에서 가까운 거리에 위치하게 된다.
Word2Vec의 주요 특징은 다음과 같다.
- 의미적 유사성: Word2Vec으로 학습된 단어 벡터들은 유사한 의미를 가진 단어들이 벡터 공간에서 가깝게 위치하게 된다. 예를 들어, "king"과 "queen" 또는 "Paris"와 "France"는 유사한 벡터를 가지게 된다.
- 벡터 연산: 학습된 단어 벡터는 단순한 벡터 연산을 통해 단어 간의 관계를 나타낼 수 있다. 예를 들어, "king - man + woman"이라는 벡터 연산은 "queen"에 가까운 결과를 도출한다.
Word2Vec은 NLP의 다양한 작업에서 단어 임베딩을 생성하는 데 널리 사용되었으며, 이후의 여러 임베딩 기법들(예: GloVe, FastText)과 NLP 모델들(예: BERT, GPT)의 기초를 다지는 중요한 역할을 했다.
'컴퓨터공학 > NN' 카테고리의 다른 글
경사하강법(Gradient Descent) (0) | 2024.08.28 |
---|---|
신경망에서 사용되는 활성화함수들 (0) | 2024.08.28 |
해석 가능한 인공지능(Explainable AI, XAI) (0) | 2024.08.20 |
Forward-Forward Algorithm (0) | 2024.08.16 |
역전파(Backpropagation) (0) | 2024.08.15 |