728x90

이전 포스팅 : https://giliit.tistory.com/53

 

[논문리뷰] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (1)

- reference https://arxiv.org/abs/1810.04805 0. Abstract 저자는 새로운 언어 모델 BERT(Bidrectional Encoder Representations for Transformers)를 소개합니다. BERT는 길게 설명한 것처럼 트랜스포머 모델을 이용한 양방향 인

giliit.tistory.com

 

- reference 
https://arxiv.org/abs/1810.04805

4. Experiments

이 섹션에서는 11개의 NLP에 대해 BERT 의 fine-tuning 결과를 제시합니다.

 

4.1 GLUE

Dataset task input
MNLI (Multi-Genre Natural Language Inference) 두번째 문장이 첫번재 문장에 대해 (모순, 유추, 중립)인지 분류 sentence pair
QQP (Quora Question Pairs) 두 질문에 대해 의미가 동일한지 분류 sentence pair
QNLI (Question Natural Language Inference) 두 문장이 QA 관계인지 분류 sentence pair
SST-2 (Stanford Sentiment Treebank) 영화 리뷰가 positive or negetive  분류 single sentence
CoLA (The Corpus of Linguistic Acceptability) 영어 문장이 문법적으로 "적용 될 수 있는지" 분류 single sentence
STS-B (The Semantic Textual Similarity Benchmark) 두 문장이 2개가 의미가 얼마나 유사한지 점수로 분류(1~5) sentence pair
MRPC (Microsoft Research Paraphrase Corpus) 두 문장이 2개가 의미론적으로 동일한지 분류 sentence pair
RTE (Recognizing Textual Entailment) MNLI와 유사하며 더 적은 데이터 sentence pair
WNLI (Winograd NLI) 대명사가 있는 문장에서 대명사과 가장 비슷한 것을 분류
(BERT에서는 훈련에서 제외)
single sentence

GLUE( General Language Understanding Evaluation )이며 다양한 자연어 이해 작업의 모음입니다. 위의 표에 Dataset에 대해 자세히 적어놓았습니다. 

 

Fine-tuning 과정

  • 입력 Sequence를 single or double sequence로 표현합니다.
  • 첫 번째 입력 토큰(CLS)에 해당하는 final hidden vector(C)를 문맥에 대한 모든 정보를 포함합니다.
  • Classification을 위한 output layer 추가하여 Fine-tuning(if K-class classification, layer weight  K x H dimention)
  • loss 계산 -> log(softmax(CW^T)

BERT(BASE, LARGE) 모두 이전 모델에 비해서 정확도가 올라간 것을 볼 수 있으며, 모델의 size가 클 수록 더 정확도가 높은 것을 알 수 있다.

 

4.2~3 SQuAD v1.1, v2.0

 

이 데이터셋에 대해 아는게 없어서 생략하겠습니다...ㅠㅠ

 

4.4 SWAG

SWAG (Situations With Adversarial Generations) 

SWAG dataset중 3개

 

설명

  • 데이터셋의 크기 (113k)
  • Sentence A
    • 처음에 문장이 주어집니다.
  • Sentence B
    • 선택지에 해당하는 4개의 문장이 concat한채로 입력을 받습니다.

이 fine-tuning 과정에서 도입된 파라미터는 CLS 토큰과 final hidden vector(C)의 내적으로 나온 벡터입니다. 이 벡터는 sentence A와 sentence B(4개의 문장) 에 대해 각 선택에 대한 점수를 나타내며 softmax 를 통해 정규화합니다.

 

5. Ablation Studies

이 섹션에서는 BERT의 여러 측면중 NSP를 제거하면서 중요성에 대해 설명합니다.

BERT이전 모델, NSP를 사용하지 않은 BERT, 사용한 BERT

5.1 Effect of Pre-training Tasks

저자는 BERT(BASE)의 pre-training data, fine-tunning and hyper parameter을 사용해 BERT의 깊은 양방향의 중요성을 보여줍니다.

 

  • NO NSP: "다음 문장 예측"(NSP) 작업 없이 "마스크된 LM"(MLM)을 사용하여 훈련된 양방향 모델입니다.
  • LTR & No NSP: 표준 왼쪽에서 오른쪽(LTR) LM을 사용하여 훈련된 왼쪽 컨텍스트 전용 모델로, MLM이 아닙니다.

NSP를 제거하면 QNLI, MNLI 및 SQuAD 1.1에서 성능이 크게 저하된다는 것을 보여줍니다. "No NSP"와 "LTR & No NSP"를 비교하여 양방향 표현을 훈련시키는 영향을 평가합니다. LTR 모델은 모든 작업에서 MLM 모델보다 성능이 떨어지며, MRPC와 SQuAD에서 큰 하락이 있습니다.

 

ELMo : LTR 및 RTL 모델을 별도로 훈련시키고 각 토큰을 두 모델의 연결로 표현하지만 단점 3가지를 지적합니다.

1. 계산량이 단일 양방향 모델보다 2배로 걸립니다.

2. QA에 직관적이지 않습니다. RTL 모델은 질문에 대한 답변을 조건으로 설정할 수 없습니다.

3. 모든 계층에서 왼쪽 및 오른쪽 컨텍스틀 사용할 수 잇기에 깊은 양방향 모델보다 덜 강력합니다.

 

5.2 Effect of Model Size

이 섹션에서는 모델 크기가 정확도에 얼마나 미치는지 설명합니다.

표 6: BERT 모델 크기에 대한 제거 연구. #L = 레이어 수; #H = 히든 크기; #A = 주의 헤드 수. "LM (ppl)"은 보류된 훈련 데이터의 마스킹된 LM 난해도입니다.

모델의 사이즈가 증가할 수록 더욱 높은 정확도를 달성한다는 것을 표에서는 설명합니다. 전제조건은 모델이 충분히 사전 훈련되었다는 것입니다.

사전 훈련된 biLM은 차원의 크기를 늘리면 개선이 된다고보고 했지만 (200 -> 600) 더욱 커지는 경우 추가 개선이 이루어지지 않는 것을 확인했습니다.(600 ->1000) 

이를 통해서 모델이 downstream 작업에서 fine-tuning되고 작은 수의 추가 parameter만 사용한다면 작업 데이터가 작더라도 pre-trained representation에서 이익을 얻는다고 가설을 세웠습니다.

5.3 Feature-based Approach with BERT

지금까지 제시된 모든 BERT 결과들은 fine-tuning을 사용했습니다. 하지만 feature-based approach도 일정한 이점을 가지고 있습니다. 

1. 모든 작업이 Transformer Encoder Architecture로는 쉽게 표현될 수 없으며  특정한 작업에 대해task-specific model 이 필요합니다.

2. 교육 데이터의 표현을 한 번 미리 계산하고 그 위에 저렴한 모델로 많은 실험을 실행하는 것이 이점이 있습니다.

 

논문에서는 Named Entity Recognition,NER task를 적용하면서 비교합니다.

 

fine-tuning을 무효하기 위해 feature-based approach를 적용하며 BERT 매개변수를 조정하지 않습니다. 하나 이상의 layer에서 activation을 추출하여 BiLSTM의 입력으로 사용합니다.

다음은 사용한 결과를 표로 나타냅니다. 이 것을 통해 pre-trained Model(BERT)는 2가지 접근법에 대해 효과적임을 보여줍니다.

총 5가지에 대해 activation을 추출했으며 fine-tuning 한 BERT와 큰 차이가 없는 것을 알 수 있습니다. 

 

6. Conclusion

중요한 결과는 data가 작은 task에도 BERT를 통해 혜택을 얻을 수 있게 합니다. 이를 통해 넓은 영역의 NLP 작업들을 성공적으로 처리할 수 있다는 것입니다

 

 

첫 논문리뷰였습니다. 다음엔 더더욱 잘 써보도록 하겠습니다. 읽어주셔서 감사합니다.

근데 읽어줄 사람이 있을까요..?