본문 바로가기
Drawing (AI)/Paper review

[논문 리뷰] Word2Vec original paper: Efficient Estimation of Word Representations in Vector Space

by 생각하는 이상훈 2024. 10. 31.
728x90

Intro

LLM을 활용한 robotics 분야에 대해서 연구를 진행하기 위해 NLP 기본 개념을 공부하는 중이니 빼놓을 수 없는 Word2Vec과 같은 초창기 기초 논문부터 공부를 하려한다.

이 논문은 대규모 데이터에서 단어를 연속적인 벡터로 표현할 수 있는 두 가지 새로운 모델 구조를 제안한다. 해당 두 모델들은 논문이 나온 시점에서 단어 유사성 측정 작업에서 기존 신경망 기반 기법들보다 정확도가 높고 계산 비용이 적다. 예를 들어 16억 개 단어로 이루어진 데이터셋에서 하루 내에 고품질 단어 벡터를 학습할 수 있으며 벡터들은 문법적, 의미적 유사성을 측정하는 테스트에서도 최첨단 성능을 보였다. 결론적으로 Word2Vec이 효율성과 성능을 동시에 갖춘 단어 표현 기법임을 입증하였다.


Previous works

이 논문에서는 기존 언어 모델들이 가진 연속적인 단어 벡터 표현의 계산 복잡도와 성능 문제를 개선하기 위해 CBOW와 Skip-gram이라는 두 가지 새로운 모델을 제안한다. 이를 설명하기 위해 먼저 기존 언어 모델 구조인 피드포워드 신경망 언어 모델(NNLM)과 순환 신경망 언어 모델(RNNLM)의 특징과 한계를 간략히 살펴보고 논문이 제안하는 병렬 학습 방법에 대해 소개한다.

피드포워드 신경망 언어 모델 (NNLM)

  • 구조: 입력층, 투사층, 은닉층, 출력층으로 구성된다. 입력층은 특정 단어를 one-hot encoding하여 투사층으로 전달하고, 이 투사층에서 각 단어의 벡터 표현이 학습된다.
  • 단점: NNLM은 투사층과 은닉층을 거쳐 복잡한 계산이 필요해 대규모 데이터셋에서 학습 속도가 느리다. 출력층에서 전체 어휘에 대한 확률을 계산하는데 시간이 많이 소모된다.
  • 개선 방법: 논문에서는 이를 해결하기 위해 계층적 소프트맥스(hierarchical softmax)를 사용한다. 어휘를 허프만(Huffman) 트리로 구성하여 빈도가 높은 단어에는 짧은 이진 코드가 할당되고 이를 통해 학습 속도를 높인다.

순환 신경망 언어 모델 (RNNLM)

  • 구조: 입력층, 은닉층, 출력층으로 구성되며, 은닉층은 이전 상태를 기억하는 재귀적(recurrent) 구조로 되어 있어 시퀀스 간의 의존성을 학습할 수 있다.
  • 장점: RNNLM은 NNLM과 달리 문맥의 길이(N)를 지정할 필요가 없고, 더 복잡한 패턴을 학습할 수 있다.
  • 단점: 계산 복잡도가 높아 대규모 데이터셋에서 학습 속도가 느립니다. 은닉층 간의 연결이 많아지며 학습이 어려워진다.

병렬적인 training이 필요한 이유

  • 대규모 데이터셋에서 신경망 언어 모델을 효과적으로 학습하기 위해 논문은 DistBelief라는 대규모 분산 프레임워크를 사용한다. 이를 통해 모델을 여러 대의 CPU에서 동시에 학습시켜 학습 속도를 크게 개선할 수 있다.
  • 미니 배치 비동기적 경사 하강법과 Adagrad를 적용하여 각 복제 모델(replica)의 경사 업데이트를 중앙 서버에서 관리한다.

New Log-linear Models

이 논문은 신경망 기반 모델의 계산 효율성을 높이기 위해 새로운 로그-선형 모델을 제안한다. 기존 NNLM과 RNNLM에서는 은닉층(hidden layer)이 복잡도를 크게 증가시키는데 이 은닉층을 생략한 단순 모델을 통해 효율적인 학습을 가능하게 하도록 했다. 새로운 구조는 이전 연구에서 확인된 두 가지 단계로 학습된다.

1. 단순 모델로 연속적인 단어 벡터를 학습한다. 이 과정에서 신경망의 비선형 은닉층 없이도 단어 벡터를 효과적으로 학습할 수 있다.

2. 학습한 단어 벡터 위에 N-그램 기반 NNLM을 학습한다. 즉, 간단한 모델로 학습된 단어 벡터를 신경망 모델의 입력으로 사용하여 더욱 정교한 언어 모델을 생성한다.

이 방식은 특히 대규모 데이터에서 학습 시간을 단축할 수 있다는 점에서 효율적이며 비슷한 접근 방식은 과거 연구에서도 제안된 바 있다.


Continuous Bag-of-Words Model

Continuous Bag-of-Words (CBOW) 모델은 Feedforward NNLM에서 비선형 은닉층을 제거하고 모든 단어에 동일한 투사층을 공유하는 구조를 갖는다. 즉, 각 단어가 개별 위치에 투영되지 않고 동일한 위치로 투영되어 벡터가 평균화되므로, 단어 순서가 투사에 영향을 미치지 않는다. 이러한 이유로 이 모델을 bag-of-words 모델이라 부르며, 단어 순서와 무관하게 단어들을 하나의 묶음으로 처리한다.

이 모델은 문맥의 미래와 과거 단어를 모두 사용하여 예측 성능을 향상시킨다. 논문에서는 네 개의 과거 단어와 네 개의 미래 단어를 입력으로 하여, 현재 단어를 올바르게 분류하는 것을 학습 목표로 한다. CBOW 모델의 계산 복잡도는 다음과 같다.

CBOW는 기존의 bag-of-words 모델과 달리 연속적인 분산 표현을 활용하여 문맥을 반영한다. 이때, 입력층과 투사층 사이의 가중치 행렬은 모든 단어 위치에서 공유되므로 계산 비용이 줄어든다.


Continuous Skip-gram Model

두 번째 모델은 Skip-gram이라 불리며, CBOW와 유사하지만 문맥을 기반으로 현재 단어를 예측하는 대신 현재 단어를 사용해 주변 단어를 예측하는 방식이다. Skip-gram은 각 현재 단어를 입력으로 받아 연속 투사층을 통해 주변의 일정 범위 내 단어들을 예측하도록 한다.

이 모델에서는 예측 범위를 증가시키면 단어 벡터 품질이 향상되지만, 동시에 계산 복잡도도 증가한다. 따라서 멀리 떨어진 단어는 현재 단어와의 관련성이 낮을 가능성이 커, 멀리 떨어진 단어일수록 샘플링 빈도를 낮추어 가중치를 줄인다. 이 모델의 학습 복잡도는 다음과 같이 계산된다.

여기서 CC는 최대 거리로, 예를 들어 C=5를 선택하면 현재 단어 기준으로 앞과 뒤에서 최대 다섯 개의 단어를 무작위로 선택해 예측에 사용한다. 이를 통해 현재 단어를 입력으로 하여 선택된 단어들이 올바른 출력이 되도록 학습한다. 실험에서는 C=10을 사용하여 단어 벡터의 품질을 최적화한다.


Result

1. 단어 벡터 평가 방법

기존 연구에서는 단순히 단어와 유사 단어 목록을 나열해 평가했으나, 논문에서는 더 복잡한 유사성 관계도 포함하여 평가한다. 예를 들어, "big"과 "bigger"의 관계는 "small"과 "smaller"의 관계와 유사하다. 이를 통해 모델이 단어 간의 문법적 및 의미적 관계를 파악할 수 있는지 평가한다. Word2Vec 벡터는 벡터 산술을 통해 "biggest - big + small" 연산으로 "smallest"와 같은 유사한 단어를 찾을 수 있다.

 

2. 평가 세트와 질문 유형

평가를 위해 5가지 의미적 유사성과 9가지 문법적 유사성 질문을 포함하는 테스트 세트를 사용한다. 각 질문은 두 쌍의 단어를 연결해 구성하며, 단어 형태에 대한 정보는 포함하지 않기 때문에 100% 정확도는 도달하기 어렵다.

3. 정확도 극대화

6억 개 단어로 구성된 Google News 데이터셋에서 학습을 수행하며, 단어 벡터의 차원 수와 데이터 양을 조정해 성능을 최적화한다. 학습 효율성을 위해 3회의 학습 에포크와 선형적으로 감소하는 학습률을 사용한다.

4. 모델 아키텍처 비교

  • CBOW는 문법적 관계에서 뛰어난 성능을 보이며, Skip-gram은 의미적 관계에서 더 높은 성능을 보인다.
  • 실험에서는 단일 CPU로 학습한 결과를 비교하며, CBOW가 하루, Skip-gram이 약 3일이 소요된다.

5. 대규모 병렬 학습

DistBelief 프레임워크를 활용하여 Google News 데이터셋에서 병렬 학습을 수행한다. 미니 배치 비동기 경사 하강법과 Adagrad를 적용해 학습 속도를 높이고, 모델 복제본 50~100개로 분산 학습을 수행하여 CPU 사용률을 최대화한다.

 

6. Microsoft Research Sentence Completion Challenge

Skip-gram 모델은 이 챌린지에서 RNNLM과 결합했을 때 높은 성과를 보이며, 새로운 최첨단 정확도(58.9%)를 달성했다.


728x90