본문 바로가기
데이터 분석

Word2Vec과 FastText

by hidden-state 2026. 4. 6.

텍스트 데이터를 숫자로 변환하는 방법 중 하나는 단어를 벡터 형태로 표현하는 것이다.

이 과정에서 대표적으로 사용되는 모델이 Word2Vec과 FastText이다.

두 모델은 모두 단어의 의미를 벡터로 표현하지만, 처리 방식과 특징에서 중요한 차이를 가진다.


1. Word2Vec이란 

Word2Vec은 단어를 하나의 벡터로 변환하는 모델이다.

문장에서 함께 등장하는 단어들을 기반으로 학습하여 의미가 비슷한 단어들이 가까운 위치에 있도록 만든다.

이렇게 생성된 벡터는 단어 간의 의미 관계를 반영하게 된다.

 

word2vec 이미지 예시


2. Word2Vec의 특징

Word2Vec은 단순한 구조를 가지면서도 단어의 의미를 잘 표현할 수 있는 모델이다.

  • 의미적으로 비슷한 단어를 가까운 벡터로 표현
  • 학습 속도가 빠르고 구조가 단순함
  • 단어 간 관계를 벡터 연산으로 표현 가능
  • 문맥(context)을 기반으로 단어의 의미를 학습
  • 하나의 단어를 하나의 고정된 벡터로 표현

하지만 다음과 같은 한계도 존재한다.

  • 단어 내부 구조를 고려하지 않음
  • 학습에 없는 단어(OOV)를 처리할 수 없음
  • 형태 변화가 많은 언어에 약함

3. FastText란 

FastText는 Word2Vec을 확장한 모델로 단어를 더 작은 단위로 나누어 학습하는 방식이다.

단어를 문자 기반의 부분 문자열(subword)로 분해하여 벡터를 생성한다.

예를 들어 하나의 단어는 여러 개의 n-gram으로 나누어 표현된다.

 

fasttext 이미지 예시


4. FastText의 특징

FastText는 단어 내부 정보를 활용할 수 있다는 점에서 Word2Vec보다 확장된 모델이다.

  • 단어를 subword 단위로 분해하여 학습
  • 형태 정보까지 반영 가능
  • 처음 보는 단어(OOV)도 처리 가능
  • 희귀 단어에도 비교적 강한 성능
  • 비슷한 형태의 단어를 유사하게 표현

하지만 다음과 같은 단점도 존재한다.

  • Word2Vec보다 연산량이 증가할 수 있음
  • 모델이 다소 복잡해질 수 있음

5. Word2Vec과 FastText의 차이

구분 Word2Vec FastText
단위 단어 단위 subword 단위
형태 정보 반영하지 않음 반영함
OOV 처리 불가능 가능
복잡도 단순함 조금 더 복잡함

 


6. 정리

Word2Vec은 단어를 하나의 벡터로 표현하는 모델이며, FastText는 단어를 subword 단위로 분해하여 표현하는 모델이다.

FastText는 단어 내부 정보를 활용할 수 있어 새로운 단어에도 대응할 수 있다는 장점이 있다.

반면 Word2Vec은 구조가 단순하고 빠르지만 단어 내부 정보를 반영하지 못한다는 한계가 있다.