Self-Supervised Pre-training Models

2021. 2. 19. 22:19·AI/이론
Self-Supervised Pre-training Models

Self-supervised Pre-training Models¶


✅ GPT-1¶

  • 효과적인 전이 학습을 달성하기 위해 <S>, <E>, $와 같은 특수 토큰을 도입
  • 초창기 모델

image.png

  • 12-layer decoder-only transformer
  • 12 head / 768 dimensional states
  • GELU activation unit

image.png



✅ BERT¶

Language models은 오직 왼쪽 문맥을 보고 다음을 예측하거나 오른쪽 문맥을 보고 그 전을 예측하였다. 하지만 언어의 이해는 양방향으로 이루어진다.


1️⃣ Masked Language Model(MLM)¶

  • 입력 토큰의 일부 비율을 무작위로 마스킹 한 다음 마스킹 된 토큰을 예측합니다.
  • 예측 단어의 15% 중
    • 80 %의 경우 [MASK]로 교체
    • 10 %의 경우 임의의 단어로 대체
    • 10 %의 경우 문장을 동일하게 유지

🎓 방법¶

입력 단어의 k%를 마스킹 한 다음 마스킹 된 단어 예측

image.png

  • 마스킹이 너무 적은 경우 : train 비용이 너무 많이 든다.
  • 마스킹이 너무 많은 경우 : 문맥을 파악하기 충분하지 않다.


❗ 문제점¶

fine-tuning동안에 볼 수 없는 마스크 토큰


📖 해결책¶

단어의 15%를 예측하지만 100% [MASK]로 바꾸지 않는다.

  • 80%의 경우 [MASK]로 교체
    – went to the store → went to the [MASK]

  • 10%의 경우 임의의 단어로 대체
    – went to the store → went to the running

  • 10%의 경우 동일한 문장 유지
    – went to the store → wnet to the store


2️⃣ Next Sentence Prediction(NSP)¶

  • 문장 간의 관계를 배우려면 문장 B가 문장 A에 이어지는 실제 문장인지 또는 무작위인지 예측.

image.png

[CLS] 토큰의 embedding vector를 가지고 output layer하나를 두어 이진 분류를 하게 된다. 이 두 문장이 실제 이어지는 문장인지 아닌지 분류하는 작업을 한다.


📌 요약¶

1. Model Architecture¶

L: layer, H: Hidden state Dimention A: Attention Head

  • BERT BASE: L=12, H=768, A=12
  • BERT LARGE: L=24, H=1024, A=16

image.png

2. Input Representation¶

  • WordPiece(SubWord) embeddings(30,000WordPiece)
  • Learned positional embedding (학습된 sequence의 위치 정보)
  • [CLS] - Classification embedding
  • Packed sentence embedding [SEP] (문장 끝에 들어오는 토큰)
  • Segment Embedding (문장이 A인지 B인지를 반영하는 Vector)

3. Pre-training Tasks¶

  • Masked LM
  • Next Sentence Prediction



적용 사례

  • https://rajpurkar.github.io/SQuAD-explorer/
  • https://leaderboard.allenai.org/swag/submissions/public

'AI > 이론' 카테고리의 다른 글

검색 엔진에서는 그래프를 어떻게 활용할까?  (0) 2021.02.23
실제 그래프는 어떻게 생겼을까?  (0) 2021.02.22
그래프란 무엇이고 왜 중요할까?  (0) 2021.02.22
Advanced Self-Supervised Pre-training Models  (0) 2021.02.19
Transformer 이론  (0) 2021.02.18
Beam search and BLEU  (0) 2021.02.17
Seq2Seq  (0) 2021.02.17
LSTM and GRU  (0) 2021.02.16
'AI/이론' 카테고리의 다른 글
  • 그래프란 무엇이고 왜 중요할까?
  • Advanced Self-Supervised Pre-training Models
  • Transformer 이론
  • Beam search and BLEU
N-analyst
N-analyst
  • N-analyst
    개발자CuCu
    N-analyst
  • 전체
    오늘
    어제
  • 공지사항

    • 티스토리에서 원하는 글 찾는 방법
    • 분류 전체보기 (140)
      • 티스토리 (4)
      • 알고리즘 (5)
        • 알고리즘 정리 (1)
        • 백준 (4)
      • 마크다운(Typora) (13)
        • 사용법 (13)
      • 에러 (1)
        • 파이썬 (1)
      • 데이터 분석 (5)
        • python_analysis (3)
        • Machine Learning (2)
      • AI (109)
        • 파이토치로 시작하는 딥러닝 기초 (2)
        • 부스트 캠프 AI tech (41)
        • 이론 (66)
      • 파이썬(python) (1)
        • 기타 (1)
      • 웹 프로그래밍 (1)
        • 설정 팁 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 인기 글

  • 최근 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.6
N-analyst
Self-Supervised Pre-training Models
상단으로

티스토리툴바