[논문 리뷰] BART - BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension (2019)

‍이수빈·2025년 5월 15일

[논문 리뷰]

목록 보기
18/24

Paper: BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension

🔍1. Introduction

최근 NLP 분야에서 self-supervised 학습 방식이 큰 주목을 받고 있음.
특히 마스킹 언어 모델(Masked Language Model, MLM)이 많이 사용되고 있음.
이 방식은 입력 문장에서 일부 단어를 마스킹하고 이를 복원하도록 학습하는 구조로, BERT와 같은 모델이 대표적임.

하지만 기존 MLM 모델들은 특정 작업(span prediction, generation 등)에만 특화되어 있어 범용성에 한계가 있었음.

이 논문에서는 BART라는 새로운 사전학습 프레임워크를 제안함.
→ BART는 Bidirectional 인코더(BERT처럼)와 Autoregressive 디코더(GPT처럼)를 결합한 Transformer 기반 sequence-to-sequence 모델임.

BART의 사전학습 과정

  1. 입력 문장에 다양한 노이즈를 추가하고,
  2. 이를 원래 문장으로 복원하는 방식으로 학습

→ 기존 마스킹 방식보다 더 자유로운 텍스트 변형이 가능하며, 문장의 구조나 길이를 바꾸는 것도 허용함.

특히 성능이 좋았던 노이즈 방식:

  • 문장 순서 섞기 (sentence permutation)
  • 연속된 span을 하나의 마스크로 대체하는 text infilling

  • BART는 요약, 질의응답, 기계번역 등 다양한 작업에 모두 잘 작동
  • RoBERTa 수준의 성능을 GLUE, SQuAD 등에서 달성
  • 요약 태스크(XSum)에서는 기존 모델보다 ROUGE 점수 6점 향상

또한, BART를 기계번역에 활용할 수 있는 새로운 파인튜닝 방식도 제안 → 기존 백트랜슬레이션 기법보다 BLEU 점수 1.1 향상

➡️ 결론적으로, BART는 다양한 태스크에 폭넓게 활용 가능한 범용 사전학습 모델임.

✅2. Model

BART는 Denoising Autoencoder 구조를 따르는 모델로,
손상된 문서(corrupted document)를 원래 문서(original document)로 복원하는 것을 목표로 함.

  • 구조적으로는 Sequence-to-Sequence 형태
    - 인코더: BERT처럼 양방향(bidirectional)으로 손상된 입력 인코딩
    - 디코더: GPT처럼 왼쪽에서 오른쪽(left-to-right)으로 원문 생성

  • 사전학습 단계에서는 원래 문서를 예측하는 확률의 음의 로그 우도(Negative Log Likelihood)를 최소화하는 방식으로 학습함

➡️ 즉, 손상된 입력을 보고 원래의 텍스트를 얼마나 잘 복원하는지를 기준으로 모델을 학습시킴

Architecture

BART는 Vaswani et al. (2017)의 표준 Transformer 기반의 sequence-to-sequence 구조를 사용함.

  • GPT처럼 ReLU 대신 GeLU 활성화 함수 사용
  • 파라미터는 평균 0, 분산 0.02의 정규분포에서 초기화됨

[모델 구성]
Base 모델: 인코더와 디코더 각각 6층
Large 모델: 인코더와 디코더 각각 12층

[BERT와의 차이점]

  • 디코더는 인코더의 마지막 hidden layer에 대해 cross-attention 수행
  • BERT는 출력 전에 추가적인 feed-forward layer가 있으나, BART는 사용 X

→ 전체적으로, 동일 크기의 BERT 모델보다 파라미터 수가 약 10% 더 많음

➡️ BART는 BERT의 인코더 구조를 계승하면서도 GPT식 디코더와 sequence-to-sequence 설계를 접목한 형태임.

Pre-training BART

BART는 문서를 인위적으로 손상(corrupt)시키고, 이를 복원하는 과정을 통해 학습함.
→ 구체적으로는 디코더의 출력과 원래 문서 간의 cross-entropy loss를 최소화함.

기존 denoising autoencoder들은 특정 노이즈 방식에 최적화되어 있었던 반면,
BART는 다양한 손상 방식(document corruption)에 유연하게 대응 가능함.

  • 입력 정보가 전부 손실된 극단적인 경우에는, BART는 일반적인 언어 모델(language model)과 동일한 형태로 작동
  • 논문에서는 여러 기존 기법과 새로운 노이즈 방식들을 실험적으로 적용

✅3. Fine-tuning BART

pre-training 후, 다양한 다운스트림 작업에 맞게 fine-tunig 할 수 있음.

Token Classification Tasks

문장 분류 작업(sequence classification)에서는

  • 같은 입력 문장을 인코더와 디코더에 모두 전달하고,
  • 디코더의 마지막 토큰의 hidden state를 선형 분류기(linear classifier)에 입력하여 예측을 수행함

BERT의 [CLS] 토큰 방식과 유사하지만, BART는 입력 끝에 별도의 토큰을 추가하여,
디코더가 전체 입력 시퀀스를 참조한 후 최종 표현을 생성할 수 있도록 설계됨

➡️ 문장의 전체 정보를 고려한 분류가 가능해짐

Sequence Generation Tasks

토큰 단위 분류 작업(ex. SQuAD의 정답 토큰 위치 예측)에서는

  • 전체 문서를 인코더와 디코더에 입력
  • 디코더의 최상위(hidden) 층에서 각 단어에 해당하는 hidden state를 추출하여, 이를 해당 토큰의 표현으로 사용

→ 이 표현을 기반으로 각 토큰이 정답인지 여부를 분류

➡️ BART는 디코더의 출력을 통해 각 토큰에 대해 정교한 분류 가능.

Machine Translation

기계번역(MT) 작업, 특히 영어로의 번역에서도 효과적으로 활용 가능함.

기존 연구(Edunov et al., 2019)에서는 사전학습된 인코더의 활용은 성능 향상을 가져왔지만,
디코더에 사전학습 언어 모델을 사용하는 것은 큰 성과를 내지 못했음.

BART의 접근 방식
: BART 전체(인코더 + 디코더)를 하나의 사전학습된 디코더처럼 사용

이를 위해 새로운 인코더를 추가로 도입하고, 이 인코더는 외국어 입력을 BART가 처리할 수 있는 형태로 변환하도록 학습됨

→ BART는 영어 생성(디코딩)에 집중하고,
새로 학습된 인코더는 외국어 입력을 BART가 이해할 수 있도록 맵핑.

학습 방식
:

  • 1단계
    대부분의 BART 파라미터는 고정
    새 인코더, BART의 positional embedding, self-attention 입력 투영 행렬만 업데이트
  • 2단계
    전체 모델을 소수의 iteration 동안 전체 fine-tuning

새로운 인코더는 BART와는 다른 vocabulary도 사용할 수 있음

➡️ 기존 back-translation 기반 기법보다 BLEU 향상을 보임

✅4. Comparing Pre-training Objectives

BART는 기존 사전학습 방식들보다 훨씬 다양한 노이즈 변형 방식(noising schemes)을 지원함.

Comparison Objectives

최근 제안된 다양한 사전학습 방식들을 같은 조건 하에서 재구현하여 비교

Language Model (GPT 방식)

  • 좌→우 방향 Transformer 사용
  • BART 디코더 구조에서 cross-attention만 제거한 형태

Permuted Language Model (XLNet 기반)

  • 전체 토큰의 1/6을 샘플링하여, 무작위 순서로 생성
  • XLNet의 상대 위치 임베딩, 세그먼트 간 attention은 제외

Masked Language Model (BERT 방식)

  • 입력의 15%를 [MASK]로 대체하고 원래 토큰을 예측

Multitask Masked Language Model (UniLM 방식)

  • BERT 방식에 다양한 self-attention mask를 추가
  • 1/6 좌→우, 1/6 우→좌, 1/3 전체 공개, 1/3 절반만 공개 등의 비율로 마스킹

Masked Seq-to-Seq (MASS 기반)

  • 입력의 절반을 마스킹하고, 나머지 절반으로 복원하는 sequence-to-sequence 학습

Tasks

사전학습 objective들을 비교하기 위해 다양한 다운스트림 태스크에서 성능을 평가함.

SQuAD (Rajpurkar et al., 2016)

  • 위키백과 문단 기반의 추출형 질의응답 태스크
  • BERT처럼 질문과 문맥을 인코더 입력으로 연결(concatenate)
  • 디코더에도 동일 입력을 전달
  • 시작/끝 위치를 예측하는 토큰 단위 분류기를 포함함

MNLI (Williams et al., 2017)

  • 두 문장의 관계(entailment/neutral/contradiction)를 분류하는 자연어 추론(NLI) 태스크
  • 두 문장을 연결하고 EOS 토큰을 추가한 뒤, 인코더와 디코더에 입력
  • EOS 토큰의 출력 표현을 사용해 분류

ELI5 (Fan et al., 2019)

  • 긴 형태의 생성형 질문응답 데이터셋
  • 질문 + 참고 문서를 입력으로 받아, 자유로운 서술형 답변을 생성

XSum (Narayan et al., 2018)

  • 뉴스 요약 데이터셋
  • 매우 추상적인 요약을 생성해야 하므로, 생성 능력이 특히 중요함

ConvAI2 (Dinan et al., 2019)

  • 대화형 응답 생성(task-oriented dialog)
  • 이전 대화 내용과 화자의 페르소나를 입력으로 하여 적절한 응답을 생성

CNN/DM (Hermann et al., 2015)

  • 뉴스 기사 요약 데이터셋
  • 요약은 원문 문장과 유사한 구조를 가짐 → 추출 요약(extractive)에 가까움

Results

  • 사전학습 성능은 Task에 따라 크게 달라짐

  • Token masking 또는 deletion이 핵심 역할
    : 단순 문장 순서 섞기(permutation)문서 회전(rotation)만 적용한 모델은 성능이 낮음
    - 효과적인 방식: 토큰 마스킹(masking)&토큰 삭제(deletion)&self-attention mask 활용

  • 좌→우 pre-training이 생성 작업에 유리
    MLM(BERT)이나 Permuted LM(XLNet)
    autogressive (좌→우) 생성 방식이 없어서 생성 성능이 낮음

  • 양방향 인코더는 SQuAD 같은 분류 태스크에서 필수
    - SQuAD는 미래 문맥을 활용해야 하는 분류 태스크이기 때문에, 단방향 디코더만으로는 성능이 낮음
    - BART는 절반 수준의 양방향 레이어만 사용해도 높은 성능을 유지

  • 사전학습 objective 외에도 모델 설계 요소가 중요

  • + ELI5는 특이 케이스
    Perplexity가 압도적으로 높음

✅5. Large-scale Pre-training Experiments

BART의 대규모 학습 성능을 테스트하고, 범용적으로 사용할 수 있는 모델을 만들기 위해 RoBERTa와 동일한 스케일로 BART를 학습.

Experimental Setup

  • 모델 크기: 인코더 12층 + 디코더 12층, hidden size = 1024
  • 배치 사이즈 8000, 학습 step 50만
  • Byte Pair Encoding (BPE): GPT-2와 동일 방식 사용
  • 학습 데이터: 160GB 규모의 뉴스, 책, 웹 문서 (RoBERTa와 동일)
  • 마지막 10% 학습 단계에서는 dropout 제거하여 데이터 적합도 향상

Discriminative Tasks

  • SQuAD, GLUE 등의 분류 기반 태스크에서 성능 비교
  • 비교 대상: RoBERTa (같은 데이터, 리소스 사용)
  • BART는 대부분의 분류 태스크에서 RoBERTa와 유사한 성능
  • BART는 생성 성능이 향상되었지만, 분류 성능을 희생하지 않음

Generation Tasks

  • 요약, 대화 응답, 생성형 QA 등에 대해 fine-tuning 실시

Translation

  • WMT16 Romanian-English 번역 태스크 + back-translation 데이터 활용

BART는 대규모 학습 환경에서도 분류와 생성 작업 모두에서 강력한 성능을 보이며,
특히 추상적 생성 태스크(요약, 대화, QA)에서 기존 모델을 능가하는 성능 달성.

✅6. Qualitative Analysis

  • BART는 자동 평가 지표(ROUGE 등)에서 기존 모델 대비 최대 6점 향상된 요약 성능을 보였음.
  • 숫자 외에도 출력 결과의 질적 특성을 이해하기 위해 생성된 요약을 정성적으로 분석함.
  • 출력 문장은 유창하고 문법적으로 정확한 영어로 생성됨
  • 대부분의 문장이 입력 문장을 그대로 복사하지 않고, 높은 수준의 추상화(abstraction)를 보여줌
  • 입력의 여러 정보를 종합하여 요약을 생성하고, 배경 지식도 적절히 활용함
  • 전반적으로 사실적으로 정확한 요약을 생성하지만,
    드물게 출처에 없는 정보를 잘못 생성하기도 함

🔚7. Conclusions

  • 본 논문에서는 BART라는 새로운 사전학습 프레임워크를 제안함.
  • BART는 손상된 문서를 원래 문서로 복원하도록 학습하는 구조를 가짐 (denoising autoencoder)
  • 인코더-디코더 기반의 구조로, 다양한 NLP 작업에 유연하게 활용 가능함
  • BART는 텍스트 이해와 생성 능력을 동시에 갖춘 범용적 사전학습 모델
  • 향후 다양한 자연어 처리 분야에 적용 가능성이 높은 강력한 프레임워크임.
profile
🏫 Kookmin University, Major in Electrical Engineering (First Major), AI Big Data & Management (Double Major), Smart Car ICT (Interdisciplinary Major)

0개의 댓글