데이터과학 삼학년

네거티브 샘플링 본문

Statistical Learning

네거티브 샘플링

Dan-k 2024. 12. 20. 14:56
반응형

1. 네거티브 샘플링의 개념

  • 대규모 데이터 학습에서 연산량을 줄이고 효율성을 높이는 기법.
  • 모든 데이터를 사용하지 않고 일부만 선택해 학습.
  • 주요 활용 분야: 자연어 처리(NLP), 딥러닝.
  • 대표 사례: Word2Vec.

https://wikidocs.net/69141

 

2. 네거티브 샘플링의 작동 원리

  1. Skip-gram 모델
    1. 중심 단어(center word)에서 주변 단어(context word)를 예측.
    2. 예: "고양이가 책상 위에 있다" 문장에서 중심 단어 "고양이"를 기준으로 "책상", "위에" 등을 예측.

https://wikidocs.net/69141

  1. 문제점
    1. 어휘 크기가 10만 개라면, 중심 단어마다 10만 개의 확률 분포를 계산해야 함.
    2. 엄청난 연산량을 요구.
  2. 해결: 네거티브 샘플링 도입
    • 긍정 샘플(positive sample): 중심 단어와 실제 관련 있는 단어.
    • 네거티브 샘플(negative sample): 나머지 단어 중 일부를 무작위 선택.
    • 모델은 긍정 샘플과 네거티브 샘플을 구분하도록 학습.

3. 네거티브 샘플링의 수학적 접근

  • 손실 함수(Loss Function):
    • $v_c$: 중심 단어 벡터.
    • $v_o$: 긍정 샘플 벡터.
    • $v_i$: 네거티브 샘플 벡터.
    • $P_n(w)$: 네거티브 샘플링 분포.
    • $k$: 네거티브 샘플 개수.
  • 역할:
    • 중심 단어와 긍정 샘플 간 관계 강화.
    • 중심 단어와 네거티브 샘플 간 관계 약화.
 

4. 네거티브 샘플링의 장점

  • 연산 효율성 증가: 일부 데이터만 사용해 연산량 감소.
  • 대규모 데이터셋 처리 가능: 방대한 데이터도 빠르게 학습.
  • 간단한 구현: 기존 모델에 쉽게 통합 가능.

5. 네거티브 샘플링의 한계

  • 샘플 품질 의존성: 무작위 선택된 네거티브 샘플이 부적절할 가능성.
  • 균형 문제: 샘플 수가 너무 적거나 많으면 학습 성능 저하.
  • 도메인 특화 데이터: 적절한 샘플 분포 정의 어려움.
 

6. 네거티브 샘플링 활용 사례

  1. Word2Vec
    • 구글 개발.
    • Skip-gram + 네거티브 샘플링 결합.
    • 효율적 단어 임베딩 생성.
  2. GloVe
    • Stanford NLP 연구.
    • 대규모 텍스트 데이터 처리.
  3. 추천 시스템
    • 사용자-아이템 상호작용 데이터 학습.
    • 실제 상호작용하지 않은 아이템을 네거티브 샘플로 사용.
 

7. 결론

  • 핵심 장점
    • 연산량 감소.
    • 빠른 학습.
    • 대규모 데이터 효율적 처리.
  • 중요성
    • 자연어 처리, 추천 시스템 등에서 널리 활용.
    • 적절한 네거티브 샘플 선택과 균형 유지 필요.
 

참고 자료

728x90
반응형
LIST
Comments