AI

[텍스트 생성 요약] BART 알아보기

Bingli 2023. 4. 27. 00:30

BART

  • Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension (2019, ACL, Facebook)
  • Transformer의 bidirectional Encoder와 autoregressive Decoder 둘다 활용한 seq2seq 형태의 모델
  • 자연어이해(NLU)와 자연어생성(NLG)에서 모두 좋은 성능
  • 각각 Transformer의 Encoder와 Decoder만 활용한 BERT 및 GPT의 단점을 해결

사전학습단계

  1. 텍스트를 임의적인 noising 적용을 통해 오염
  2. 원본 텍스트를 복원하기 위해 seq2seq모델 학습

  • 사전 학습 단계 중 텍스트 noising의 유연성이 핵심
    • 여러 noising 방법론을 실험 결과 기존 문장의 순서를 랜덤하게 섞고 임의의 길이의 텍스트를 하나의 단일 [MASK] token으로 교체하는 것이 성능이 가장 좋았음
    • 제한적인 nosing scheme을 사용하였던 denoising autoEncoder와는 다르게 BART는 autoregressive하게 생성되기 때문에 output개수가 무한
    • 이에 따라 Noising 방법을 다양하게 적용할 수 있음
  • Token Masking : Random token 샘플링 후 [MASK] token으로 치환 (BERT)
  • Token Deletion : Masking과는 다르게 사라진 token의 위치도 파악해야 함
  • Text infilling : 텍스트 span을 샘플링한 다음 [MASK] token으로 치환 (SpanBERT). 심지어 길이가 0인 span도 maskin되기 때문에 얼마나 많은 token이 치환되었는지를 파악해야 함
  • Sentence Permutation : 문장 순서를 섞음 (XLNet)
  • Document Rotation : Random token을 문서의 시작점으로 설정하여 찾는 학습

  • CNN/Daily Mail : 추출 요약의 경우 성능 측면에서 기존 모델들이 경쟁력이 있음에도 BART는 BART 이전 (2019년)의 모델들보다 성능이 높음
  • XSum : BERT를 활용한 SOTA 모델(BERTSumExtABS)보다 성능이 높고 결과로 나온 요약문의 질도 좋았음