Upstage AI Lab 2기
2024년 5월 9일 (목) Day_102
CH6. BERT 계열의 파생 모델들
1. RoBERTa :
RoBERTa: A Robustly Optimized BERT Pretraining Approach
pre-training 방식 변화 : Dynamic masking, NSP 제거, data ↑, pre-training step ↑, batch size ↑
(1) Dynamic masking - randomly different mask for each epoch
(2) NSP 제거 - 단일 문서에서 문장을 샘플링할 경우 성능 향상
(3) batch size ↑ - 복잡도 ↓
(복잡도가 낮아진다는게 어떤 포인트인지 나중에 논문에서 확인해 보기)
2. SpanBERT
SpanBERT: Improving Pre-training by Representing and Predicting Spans
(1) Span Masking : 연속된 토큰을 masking, span boundary token([MASK]의 앞 뒤 토큰)을 이용하고 SBO loss 추가.
(2) Single-Sequence Training : NSP 제거, 단일 시퀀스 입력
(길이가 긴 단일 시퀀스 입력 is better than 서로 다른 문서에서 추출한 두 시퀀스를 연결해 입력)
연속된 토큰이 답이 되는 Question Answering에서 성능 좋음
3. ELECTRA
ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators
판별모델을 통해 인코더 사전 학습
MLM 대신 RTD(Replaced Token Detection) 사용하여 학습 효율성 개선
|- generator (작은 MLM) → 단어 생성
|- discriminator → True/False 판별
(GAN 학습과 유사)
BERT가 일부 토큰에 대해서만 loss를 계산할 수 있었던 반면, ELECTRA는 모든 입력 토큰에 대해 loss 계산
참고자료 :
4. ALBERT
ALBERT: A Lite BERT For Self-Supervised Learning of Language Representations
모델 경량화 (num of parameters ↓) + SOP
∵ limited memory & memory degradation (단순히 hidden size ↑ → 오히려 성능 ↓)
(1) Factorized Embedding Parameterization
H = hidden size
E = input token embedding
H=E일 필요 없음. matrix factorization을 이용해 E의 크기를 줄임 → 파라미터 수 감소
(2) Cross-layer parameter sharing
한 개의 Encoder Block
Transformer의 각 layer (i.e. multi-head attention & FFNN)의 학습파라미터를 모든 레이어에 동일하게 적용해도 성능 감소 크지 않음
(3) SOP(Sentence Order Prediction)
NSP 대신 SOP(Sentence Order Prediction)
- NSP 는 topic prediction에 가까움
실제 연속된 문장 (문장1+문장2)를 "문장1+문장2" 와 "문장2+문장1" 의 조합으로 입력
5. DistilBERT
Knowledge Distillation(KD)
Teacher Model + Student(distilled) Model
|- Teacher Model : BERT-Base, softmax-temperature 함수 ( temperature → smoothing 효과)
|- Student(distilled) Model : BERT-Base의 절반 정도의 레이어
| |- soft predictions → Distillation Loss
| |- hard predictions → Student Loss (≒ MLM 학습)
참고자료 :
https://towardsdatascience.com/roberta-1ef07226c8d8
'Upstage AI Lab 2기' 카테고리의 다른 글
Upstage AI Lab 2기 [Day116] LM to LLM (1) | 2024.05.30 |
---|---|
Upstage AI Lab 2기 [Day109] NLP 경진대회 - LoRA 공부 (0) | 2024.05.21 |
Upstage AI Lab 2기 [Day102] NLP - Encoder - Decoder Model(BART) (이론) (0) | 2024.05.09 |
Upstage AI Lab 2기 [Day101] NLP - Decoder Model (GPT) (이론) (0) | 2024.05.07 |
Upstage AI Lab 2기 [Day100] NLP (실습) (0) | 2024.05.07 |