AI & GPU

Word2Vec

Tech Crunchy 2025. 4. 26. 12:38
728x90

개요

Word2Vec은 2013년 구글의 토마스 미콜로프(Thomas Mikolov) 연구팀이 발표한 자연어 처리(NLP) 분야의 대표적인 워드 임베딩(Word Embedding) 기법입니다. 각 단어를 고차원 공간의 벡터로 변환해, 단어 간의 의미적 유사성을 벡터 간의 거리나 방향으로 표현할 수 있게 합니다. 즉, 비슷한 의미를 가진 단어들은 벡터 공간상에서 서로 가까운 위치에 놓이게 됩니다.

 

내용

Word2Vec은 대규모 텍스트 데이터(말뭉치 또는 코퍼스)에서 단어와 주변 단어들의 관계를 학습해, 각 단어를 고정된 크기의 실수 벡터로 변환합니다. 이 벡터는 단어의 의미와 문맥 정보를 내포하고 있어, 벡터 간 연산(예: 코사인 유사도)으로 단어 유사도를 측정할 수 있습니다.

 

Word2Vec은 얕은 신경망을 사용하는데, 대표적으로 CBOW와 Skip-Gram 이 있습니다. 여기서 학습 데이터는 슬라이딩 윈도우(Sliding Window) 방식으로 생성됩니다. 예를 들어, 윈도우 크기를 2로 설정하면, 한 단어의 좌우 2개 단어씩을 주변 단어로 보고 데이터셋을 구성한다

 

 

CBOW Skip-Gram
주변 단어 → 중심 단어 예측 중심 단어 → 주변 단어 예측
주변 단어 벡터의 평균값을 사용하여 계산 단일 중심 단어 벡터 직접 활용하여 계산
효율적 계산량 고차원 연산 필요
빠른 학습 속도 느린 학습 속도
희소 단어 처리에 약점 발생 정교한 의미 표현 가능
그러나 높은 계산 비용이 발생

 

1. CBOW(Continuous Bag of Words)

주변 단어를 입력으로 받아 중심 단어 예측합니다. "The fat cat ___ on the mat"를 입력하면 빈칸에 들어갈 "sat"을 예측합니다. 학습 시 하나의 중심 단어에 대해 주변 단어 전체를 한 번에 학습하기 때문에, 단어당 1회 업데이트가 발생합니다.

 

2. Skip-Gram

중심 단어를 입력으로 받아 주변 단어들을 예측합니다. "sat"이라는 단어를 입력하면 주변 단어인 "The fat cat ___ on the mat"을 각각 예측합니다. 학습 시 하나의 중심 단어로 여러 주변 단어를 개별 학습하기 때문에, 단어당 m회 업데이트가 발생합니다. (윈도우 크기 m 기준)

728x90

'AI & GPU' 카테고리의 다른 글

SMOTE  (0) 2025.05.04
슬라이딩 윈도우 메커니즘  (1) 2025.05.04
Tensor Parallelism과 Pipeline Parallelism  (0) 2025.04.20
MCP  (0) 2025.04.20
AI 학습에서의 분산 학습  (0) 2025.04.13