Self-supervised Pre-trained Models
Recent Trends
- Transformer model, self-attention block
- Deeply stacked Transformer models via self-supervised learning, transfer learning, ex) GPT-1, BERT
GPT-1
- special token
- 자연어의 다양한 task를 해결할 통합적인 모델
- Text & Position Embedded
- Self-Attention x 12
- Large scale의 data로 학습된 모델로 성능이 좋다.
classification
Start-Text-Extract-Transformer-Linear
Linear 단을 제거하고 학습단에서는 learning rate를 작게 만들어서 transfer learning에 사용한다.
Entailment
Start- Premise - Delim -Hypothesis - Extract -Transformer - Linear
Delim : 특수 문자
Extract가 query처럼 사용되어서 입력 문장들로부터 필요한 정보들을 추출할 수 있어야함
Similarity
Multiple Choice
BERT
Elmo의 Bi-direction LSTM을 사용함
Masked Language Model
기존의 LM은 한쪽 방향에서의 정보만을 사용했다. 그러나 사람은 언어를 이해할 때 양쪽 방향을 모두 살펴보고 이해함
Pre-training Tasks in BERT
Masked Language Model
마스크 비율에 따라 학습 효율이 달라지는데 논문에서는 15% 비율을 마스킹했다.
→ Fine tuning 시에는 [MASK] 라는 토큰이 없다.
80%는 mask token, 10%는 random word로 replace, 10%는 원래 단어와 동일하게 둔다.
Next Sentence Prediction
두 문장을 이으면서 SEP 토큰을 문장 사이와 문장 마지막에 넣고 CLS 토큰을 문장의 시작 부분에 놓는다.
주어진 두 문장이 연속적인 순서로 나올 수 있는 문장인지 아닌지 예측하는 task이다.
전체 문장을 transformer로 encoding한다.
MASK token 자리에 있는 단어를 예측한다.
두 문장이 이어지는 문장이라면 IsNext를 반환 아닐 시 NotNext를 반환한다.
Summary
- Self-Attention block을 그대로 사용한다.
- BERT Base: Layer = 12, H = 768, A = 12
- BERT Base: Layer = 24, H = 1024, A = 16
- Subword(WordPiece) embedding
- Learned positional embedding
- Segment embedding
- BERT를 학습할 때 두 개의 문장이 이어지는 문장인지 확인하는 task에서
GPT-2
GPT 시리즈는 Transformer의 decoder에서 사용되는 Masked Multi Self Attention을 사용한다.
BERT는 Transformer의 encoder을 사용한다.
BERT Fine-tuning task
- Sentence Pair Classification
- Single sentence Classification
- Question Answering
BERT vs GPT-1
- GPT는 BookCorpus로 train
- BERT는 SEP, CLS token, setence A/B embedding을 사용해 학습
- Batch size → BERT - 128000 words , GPT - 32000 words
- Task-specific fine-tuning
- GPT는 같은 learning rate를 사용
BERT
Output layer인 linear 단을 제거하고 fine-tuning을 진행한다.
learning rate를 줄이고 학습된 모델 단만 사용한다.
MRC, Question Answering
MRC: 질의 응답의 한 형태, 지문을 잘 이해하고 질문에서 필요한 정보를 잘 추출해서 반환하는 것
SQuAD
지문에 대해서 문제와 답변 모두를 만들어 주는 task
BERT: SQuAD 1.1
BERT: SQuAD 2.0
질문에 대해 답이 있는지 없는지 확인 - 문단과 질문 간의 관계가 있는가
BERT: Ablation Study