본문 바로가기

nlp

BERT: Pre-Training of Deep Bidirectional Transformers for Language Understanding

[1810.04805] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (arxiv.org)

 

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding

We introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers. Unlike recent language representation models, BERT is designed to pre-train deep bidirectional representations from unla

arxiv.org

1. Introduction

기존 기술들이 fine-tuning approach를 제한

⇒ 새로운 fine-tuning approach transformer 제시

BERT(Bidirectional Encoder Representation from Transformers)

MLM(Masked Language Model)을 이용해 단방향의 제약 해결

⇒ input 에서 일부 masking 해두고 context 맥락만을 이용해 이를 예측하는 모델

⇒ pretrain deep bidirectional transformer 가능케 함

추가로 “next sentence prediction” ⇒ text pair representation pretrain

2. BERT

framework의 두가지 단계

  • pre-training
  • unlabeled data에 의해 학습
  • fine-tuning
  • pre-trained parameter들로 초기화 ⇒ downstream task의 labeled data로 파라미터 미세조정

BERT는 다른 task에 대해서도 architecture가 동일하다는 것이 특징

  • Model architecturebase 모델 layer L = 12, H(hidden size) = 768, A(attention head) = 12, total parameter = 110M
  • attention is all you need(2017) 논문기반 multi layer bidirectional Transformer encoder

  • input / output representation모든 sequence의 첫 token은 항상 CLS 토큰 (classification token) SEP token(seperation token)을 이용해 첫번째와 두번째 문장 구분
    • 각 문장에 학습된 embedding을 더해 구분 쉽도록
  • 입력은 한 token sequence 에서 하나의 문장이 들어가거나 <Question, Answer>의 쌍이 들어감

2.1 pre-training BERT

기존 left-to-right or right-to-left transformer와 달리 bidirectional transformer

⇒ 두개의 unsupervised task를 이용해 BERT 학습

  • Task 1: Masked LM⇒ 그 후 masked token 예측 ⇒ 이를 masked LM 이라함(MLM)
  • 더 다양한 token 학습을 위해 80%는 masked, 10%는 random word, 10%는 원본 그대로 사용
  • bidirectional representation을 위해 input token에서 random하게 일부 masking
  • Task 2: Next Sentence Prediction(NSP)문장 A 와 B를 이어 붙이는데 이때 B는 반반의 확률로 A와 관련 있거나(IsNext) 관련 없거나(NotNext)
  • 문장간의 관계를 이해하는 모델을 훈련시키기 위해 binarized next sentence prediction task pre-train

2.2 Fine-tuning BERT

BERT 에서는 self-attention을 이용해 두 문장간에 bidirectional cross attention

간단하게 말해 task specific input과 output을 BERT에 넣고 end-to-end로 파라미터 fine-tuning

fine-tuning마다 입력 형태가 다를 수 있음(구문 분석 쌍, 가설-전제 쌍, 질문-답변…등등)

task에 따라 달라지는 fine-tuning 형태