10. BERT

Eunji·2025년 12월 11일

Positional Embedding

  • Transformer에서는 단어 embedding만으로는 순서를 알 수 없어서 위치 정보를 별도 벡터로 만들어 더하는 position embedding 사용
  • Transformer는 sin, cos 위치 벡터를 수식으로 만들지만, BERT는 position embedding을 학습해서 얻는다.
  • BERT의 입력마다 position embedding vector를 더해준다.
    • 첫 번째 단어의 embedding vector + 0번 position embedding vector
    • ...
  • 문장의 최대 길이 512 - 총 512개의 position embedding vector 학습
  • 총 3개의 embedding layer 사용
    • 단어 벡터를 위한 embedding - 단어 집합 크기 30,522개
    • 포지션 벡터를 위한 embedding - 문장의 최대 길이 512
    • Segment embedding

1. BERT Pre-training

ELMo

  • 정방향 LSTM과 역방향 LSTM을 각각 훈련시키는 방식으로 양방향 언어 모델 설계

GPT-1

  • Transformer의 decoder를 이전 단어들로부터 다음 단어를 예측하는 방식으로 단방향 언어 모델 설계

BERT

  • 단방향으로 설계된 Open AI GPT와 달리 BERT는 양방향으로 뻗어가는 모습
  • Masked Language Model을 통해 양방향성 이용 가능

1.1 Masked Language Model

  • 랜덤으로 선택된 15%의 단어들은 다시 다음과 같은 규칙 적용
    • 80%의 단어들은 [MASK]로 변경
      • store \rightarrow [MASK]
    • 10%의 단어들은 랜덤으로 단어 변경
      • store \rightarrow dog
    • 10%의 단어들은 변경하지 않음
      • store \rightarrow store

[MASK]만 사용할 경우

  • [MASK] 토큰이 fine-tuning 단계에서는 나타나지 않으므로 Pre-trained 단계와 Fine-tuning 단계에서 불일치 발생
profile
갓생호소인

0개의 댓글