.box_article .article_cont p code

상세 컨텐츠

본문 제목

2. Fine-tune BERT for Extractive Summarization 논문 리뷰

심화 스터디/NLP 스터디2

by 오홍민 2021. 9. 19. 14:50

본문

BERTSUM

: extractive summarization을 위한 BERT 변형 모델


Single-document summarization

- abstractive summarization

: text rewriting을 통해 원문에 없던 단어, 구 등을 이용해서 summary 생성

 

- extractive summarization

: 문서 내에 중요한 spans(주로 문장 단위) 그대로 가져와서 합치는 방식

 


방법론

d (document) : [sent1, sent2, …, sentm]으로 구성된 문서

extractive summary는 senti마다 yi ∈ {0,1} 로 summary에 포함시킬지 말지 assign


1) BERT

cf. 원래 BERT

  • masked-language model로 output vector가 문장이 아닌 토큰 형태
  • 서로 다른 문장을 구분할 때는 2개의 label만 존재(sentence A, sentence B)

→ summarization을 위해서는 변형 필요

  • Encoding Multiple Sentences
    • 문장의 시작에는 [CLS]토큰, 끝에는 [SEP] 토큰

(vanilla BERT에서는 한 개 또는 한 쌍의 문장의 features 종합 / 여기서는 use multiple [CLS] symbols to get features for sentences ascending the symbol)

→ [CLS]을 문장을 대표하는 토큰으로 사용해 문장의 특징을 추출할 것

 


  • Interval Segment Embeddings
    • senti가 홀수, 짝수번째 문장인지에 따라 segment embedding EA, EB assign해서 서로 다른 문장 구분할 것
    • BERT의 top layer의 [CLS]에 해당하는 벡터 Ti가 senti에 대한 representation으로 쓰임

2) Fine-tuning with Summarization Layers

BERT로부터 sentence vector T<sub>i</sub> 구한 뒤, 그 위에 document-level features 얻기 위한 summarization-specific layers 쌓음

  1. 각 문장에 대해 최종 예측 score hat Yi 계산
  2. 전체 모델의 loss: gold label Yi에 대한 Binary Classification Entropy of hat Yi
  • Simple Classifier
    • BERT output에 linear layer 추가 / predicted score 얻기 위해 sigmoid function 적용
    •  
      [수식 1] Simple Classifier
  • Intersentence Transformer
    • sentence representations에만 더 많은 Transformer layers 적용 → 요약 태스크 위한 document-level features 추출
    • hl-1: (l-1)th depth stacked layer에서 BERT sentence vectors output T에 positional embeddings 더한 것 (PosEmb(T)) MHAtt: multi-head attention operation
    • LN : layer normalization operation
    • final output layer: sigmoid classifier
    • [수식 2] Inter-sentence Transformer

      • : top layer(L-th)의 i번째 문장 벡터
      • → L=1,2,3으로 실험한 결과 Transformer with 2 layers의 성능이 가장 좋았음
  • Recurrent Neural Network
    • Transformer와 RNN 합쳤을 때의 이점이 있기 때문에 summarization-specific features 학습을 위해 BERT outputs에 LSTM layer 추가
    • 훈련과정을 안정화 시키기 위해 각 LSTM cell에 대해 pergate layer normalization 사용 (층 정규화라고 생각하면 될 듯)
    • [수식 3] Recurrent Neural Network
    • Fi : forget gate, Ii: input gate, Oi: output gate, Gi: hidden vector, Ci: memory vecor, hi: output vector, LNh, LNx, LNc: 서로 다른 layer normalization operations
    • 여기서도 final output layer는 sigmoid classifier
    • [수식 4] Sigmoid Classifier

Experiments

  • Trigram Blocking(요약 결과 중 이미 나온 결과를 필터링하기 위한 것)
    • 예측 과정에서 redundancy 줄이기 위해 사용
    • 이미 만들어진 summary와 후보 문장 c 간에 trigram overlapping 있으면 그 c는 건너뜀 (MMR; Maximal Marginal Relevance와 유사하지만 훨씬 간단)
  • 사용한 데이터셋
    • CNN/DailyMail Dataset : 뉴스 본문과 associated highlights 포함
    • NYT dataset: 기사와 abstractive summaries 포함
    • greedy algorithm 기반으로 요약 수행 : ROUGE score 최대화할 수 있는 문장들을 모두 oracle sentence로 간주 (0,1 labeling)

 


Experiment Results

 

cf. 비교 모델 정리

  1. transformer
  2. LEAD : 처음 3문장을 전체 문서의 요약으로 간주
  3. REFRESH : globally optimizing the ROUGE metric
  4. NEUSUM : jointly score and select sentences
  5. PGN : encoder-decoder 구조 기반 abstractive summarization system
  6. DCA : 문서 표현 위한 multiple agents 쓰는 abstractive summarization system + decoding에 대해서는 hierachical mechanism over the agents

[테스트 결과 1] CNN/DailyMail dataset using ROUGE F1

⇒ BERT-based model들의 성능이 좋음

 

 

 

[테스트 결과 2] Results of ablation studies of BERTSUM on CNN/Dailymail test set using ROUGE F1

⇒ interval segment와 trigram blocking 모두 base model의 성능 향상에 기여함

 

 

 

[테스트 결과 3] Test set results on the NYT50 dataset using ROUGE Recall.


Conclusion

BERTSUM with inter-sentence Transformer layers can achieve the best performance

관련글 더보기

댓글 영역