0. AE & AR
: 자연어 처리 모델 Pretraining의 대표적인 두 Objective
Auto Encoding
Auto Regressive
1. XLNET
- AE 방식과 AR 방식에는 문제점이 있다고 판단하여 각각의 문제점을 보완하고 둘을 함께 사용하고자 시도한 모델
- BERT 이후 처음으로 의미 있는 성능 향상을 이루어낸 모델
AE의 문제점:
- [MASK] token이 독립적으로 예측되기 때문에 token 사이의 dependency는 학습할
- 수 없음
- Fine-tuning 과정에서 [MASK] token이 등장하지 않기 때문에 pre-training과
- fine-tuning 사이에 discrepancy 발생
AR의 문제점:
단일 방향 정보만 이용하여 학습 가능함
각각의 문제점을 해결하고자 아래의 세 기법을 모델에 적용
- Permutation Language Modeling Objective
- Target-Aware Representation for Transformer
- Two-Stream Self-Attention
Permutation Language Modeling Objective
Target-Aware Representation for Transformer
Permutation Lanugage Modeling Objective를 통해 정의한 새로운 Objectvie function은 기존의 transformer에서는 작동하지 않음
-> 따라서 XLNet의 objective function을 적용하기 위해 target-aware representation 제안
Two-Stream Self-Attention
- t 시점에서 target을 예측하기 위해 t 시점 이전의 context와 target position을 이용하는 Query Representation
- t 시점 이후의 토큰들을 예측하기 위해 t 시점의 context까지 고려하는 Context Representation
위의 두 hidden representation을 사용하는 transformer 구조
2. ROBERTA
- Model 학습시간 증가, Batch 사이즈 늘리고 train data 증가
- Pretrain에서 데이터 양을 늘릴 수록 Downstream task의 성능이 증가
- NextSentencePrediction제거
- Longersequence추가
- Masking pattern을 dynamic 하게
- BERT는 pretrain 전에 미리 masking 진행하는데, 학습이 진행될 때 똑같은 token이 masking 된다는 문제가 있음 (Bias)
-
- 똑같은 데이터에 대해 masking을 10번 다르게 적용하여 학습
-
- Input이 들어갈 때 마다 Masking 진행
모델은 BERT와 동일하기 때문에 구조적 변화가 전혀 없으나 타 모델 대비 성능이 높음
3. MASS
Seq2Seq 구조를 그대로 가져오되 마스킹 방법을 약간 수정:
Encoder와 Decoder에서 마스킹된 것들이 서로 반대가 되도록!
Encoder와 Decoder의 input 다르게 함으로써 Encoder와 Decoder의 상호 의존성이 강해지는 효과
4. BART
Seq2Seq model을 pretrain 시키는 Denoising Autoencoder
BART의 사전학습 방식
1⃣ 입력텍스트일부에노이즈를추가 2⃣ 이를 다시 원문으로 복구하는 AutoEncoder의 형태로 학습
다섯가지 방법으로 기존의 입력 sentence를 corrupt
5. MT-DNN
BERT에 Multi-task Learning 적용시킨 모델
기존에는 태스크 하나에 모델 하나를 사용하는 것이 일반적이었지만 MT-DNN에서는 모델 하나로 여러 태스크를 사전학습 시킨다
→ 효과:
- Related Task로부터 모인 비교적 많은 양의 supervised data 활용 가능
- 하나의 모델로 여러 태스크를 학습하기 때문에 regularization 달성 가능
MT-DNN의 multi-task learning task들
훈련과정:
- 특정 태스크의 데이터를 미니배치로 구성
- 랜덤하게 선택된 데이터의 태스크로 학습
- 선택된 태스크에 맞는 손실함수를 구성하여 오차 전파
MT-DNN은 데이터 양이 적을 때 높은 성능을 보인다!!
6. T5
What is text to text? → Text 형태로 주어진 문제에서 Text 정답 찾기
text to text 방식으로 훈련하기 때문에 모든 NLP task에서 동일한 모델, 손실함수, 초모수 사용이 가능하다!
T5에 적용된 방법론들
- Model Architecture Encoder, Decoder only 모델보다 Basic Transformer 구조가 높은 성능을 보임
- Pretraining Objectives Corrupted input을 Denoising하며 단어를 예측하는 방식이 가장 효율적
- Unlabeled datasets Domain specific data는 task에 도움이 되지만 데이터의 크기가 작은 경우 overfitting 야기
- Training Strategies multitask learning이 unsupervised pre-training과 비슷한 성능 보임 학습시 태스크별 적절한 proprotion이 필요함
- Scaling 모델 크기를 늘리거나, 앙상블을 시도하며 실험 진행 작은 모델을 큰 데이터로 학습하는게 효과적이라는 것 발견
- Pushing the limits 110억개 파라미터를 갖는 모델을 훈련하여 SOTA달성 1 trillion개가 넘는 token에 대해 훈련 진행
T5의 Training Objective: Modified MLM
- Bidirectional한 모델 구조
- 연속된 토큰들을 하나의 마스크 토큰으로 대체 (BART와 유사)
- Encoder-Decoder 트랜스포머 구조로 인풋과 타깃을 갖고 있음
- 입력에서 마스킹되지 않은 부분을 타깃에서 맞춰야 함 (MASS와 유사)
댓글 영역