[NLP] 단어 임베딩과 학습 원리

김성윤(Jack)·2025년 9월 24일

NLP

목록 보기
25/35

1️⃣ 임베딩 층의 본질

  • 임베딩 층: 단어를 고정 길이 벡터로 변환

  • 벡터 공간에서 단어 의미를 학습 → 비슷한 단어끼리 가까워짐

  • Word2Vec, LLM 모두 문맥 기반 의미 구조 형성

  • 차이점:

    • Word2Vec: self-supervised, 주변 단어 예측 기반
    • LLM: next-token prediction, 전체 문맥 반영

2️⃣ 학습 데이터

  • Word2Vec:

    • 대규모 코퍼스 필요 (단어가 다양한 문맥에서 등장해야 의미 학습)
    • 예: Google News Word2Vec → 1000억 단어, 300만 단어, 벡터 300차원
  • LLM:

    • 방대한 텍스트 시퀀스 → 모델이 전체 문맥 학습
    • 각 단어가 다양한 이전/다음 문맥에서 등장 → 문맥 기반 의미 군집 가능

3️⃣ Self-Supervised Learning

  • 정의: 데이터 자체에서 학습 신호를 만들어 학습하는 방법

  • 특징:

    • 사람이 레이블을 달 필요 없음
    • 데이터 자체가 학습 목표(loss) 역할
  • 예시:

    • Word2Vec: 중심 단어 ↔ 주변 단어 예측
    • BERT: [MASK] 단어 예측
    • GPT/LLM: 이전 단어 → 다음 단어 예측
  • 장점:

    • 레이블 없이 대규모 데이터 활용 가능
    • 의미 벡터 형성 가능

4️⃣ Loss 계산 및 학습 방식

🔹 Word2Vec (Skip-gram 기준)

  • 목표: 중심 단어 wtw_t → 주변 단어 wt+jw_{t+j} 예측
  • Loss (softmax 기반):
L=kjk,j0logP(wt+jwt)L = - \sum_{-k \le j \le k, j \ne 0} \log P(w_{t+j} \mid w_t)
P(wOwI)=exp(vwOvwI)w=1Vexp(vwvwI)P(w_O \mid w_I) = \frac{\exp(v'_{w_O} \cdot v_{w_I})}{\sum_{w=1}^{V} \exp(v'_w \cdot v_{w_I})}
  • Negative Sampling으로 효율화 가능

  • 학습 방식:

    1. 초기 벡터 무작위 → 큰 loss, 큰 gradient
    2. gradient descent → 벡터 이동 → 중심 단어로 주변 단어 dot product ↑
    3. 반복 → 문맥 공유 단어 벡터 가까워짐 → 의미 군집 형성

🔹 LLM (Transformer 기반)

  • 목표: 이전 단어 시퀀스 → 다음 단어 예측

  • Loss: Cross-entropy (next-token prediction)

  • 학습 방식:

    1. 임베딩 벡터 초기화 무작위
    2. 이전 단어 context → 다음 단어 예측 → loss 계산
    3. gradient descent → 임베딩 + 모델 파라미터 업데이트
    4. 반복 → 문맥 기반 의미 군집 형성
  • 특징:

    • 각 임베딩 벡터 독립적으로 학습 → 값 자체는 다르지만, 유사 단어끼리 군집 형성

5️⃣ 학습 작동 원리 (직관)

  1. 초기 상태: 벡터 무작위 → 혼돈, loss 큼

  2. 문맥 기반 gradient 이동: dot product ↑ → 주변 단어 예측 개선

  3. 우연적 군집 형성: 같은 문맥 단어끼리 벡터 가까워짐

  4. 반복 학습 → 의미 기반 벡터 공간 완성

  5. 결과:

    • "좋다""행복하다"
    • "자동차""밥"

6️⃣ Window와 문맥

  • Window = 중심 단어 기준 주변 단어 개수
  • 작은 window → 국소적 의미
  • 큰 window → 글로벌 의미
  • Word2Vec: window 내 모든 단어 쌍으로 loss 계산

7️⃣ 나만의 직관

  • Word2Vec: “문맥 퍼즐 맞추기 → 반복 → 단어 군집 형성”
  • LLM: “next-token prediction → 반복 → 문맥 기반 단어 군집 형성, 벡터는 독립적”
  • 공통점: 문맥 경험으로 의미 구조를 벡터 공간에서 자동 발견
  • 차이점: LLM 임베딩 벡터는 값 자체는 독립적, 의미 유사 단어끼리 군집만 형성

요약하면, Word2Vec과 LLM 모두 self-supervised 학습을 통해 의미 벡터를 만들고, 반복 학습으로 문맥 기반 단어 군집을 형성한다. LLM은 각 임베딩 벡터가 독립적이라는 특징이 있지만, 유사 단어끼리 가까워지는 것은 동일하다.

profile
AI 공부합니다

0개의 댓글