Summarization task는 크게 Abstractive Summarization과 Extractive Summarization으로 나눌 수 있다. Abstractive model은 rewriting을 통해서 summary를 생성하는 것을 목표로 한다. 이에 비해 Extractive model은 중요한 문장들을 선택해서 summary를 만들어낸다. 이 논문의 저자들은 extractive model이 abstractive model에 비해 reliable하다고 한다.
그림에서 볼 수 있듯이 두 단계의 Transformer Encoder를 거쳐서 Document Summarization을 수행한다. Sentence level에서의 encoding은 일반적으로 생각하는 Transformer Encoder처럼 word를 masking 하고 missing word를 predict하는 task로 pre-training한다. 이 결과로 Sentence가 embedding 되고 이것은 document level의 encoding에서 입력이 된다. 그 다음으로, document level의 encoding은 기존의 단어를 예측하는 task로 학습하기 보다는 문장을 예측하는 task로 학습하는 것이 자연스러울 것이다.
학습을 위해서 15%의 문장을 masking한다. 이 중에서 80%는 그대로 masking 하고, 10%는 그대로 놔두고, 나머지 10%는 선택된 문장을 랜덤한 문장으로 대체한다.
문맥에 민감한 문장 표현을 얻기 위해 masking 된 Document에 HIBERT를 적용해서 d1, d2,...,d|D|까지 얻는다. 그리고 masking된 문장은 한 단계에 한 단어씩 precition 하는데, j번째 단계에서는 앞에서 예측된 단어와, 마스킹 된 Document가 주어진 상태에서 j번째 단어를 예측할 것이다. dk는 이미 Sk 주변을 focus해서 Document에 대한 정보를 encoding한 상태로 가지고 있다. 여기서 Transformer decoder를 사용하는데, 오리지널과 달리 한 개의 multi-head attention layer를 갖는다. 원래는 encoder와 decoder의 문맥을 모두 포함해야 하기 때문에 두 개의 multi-head attention layer를 갖는데, 여기서는 encoder 문맥은 (dk와 같이) 이미 vector로 주어져 있기 때문에 한 개의 multi-head attention layer를 갖는다고 한다.
이 논문에서는 Summarization 문제를 (여기서는 Extractive Summarization) Sequence labeling 문제로 생각했다. 각각의 문장에 대해서 True
또는 False
로 분류하는 문제로 생각하면 True
로 분류되는 문장은 Summarization에 들어가는 것이고 반대의 경우에는 들어가지 않는 문제로 생각할 수 있다.
평가에 사용된 데이터셋은 non-anonymous version CNN/Daily(CNNDM)와 New York Times dataset for CNNDM dataset이다. 학습은 총 3단계로 진행되는데, 첫번째는 open-domain에서 GIGA-CM 데이터셋으로 pre-training한다. 두번째는 in-domain에서 CNNDM으로 pre-training한다. 마지막으로 세번째는 CNNDM 데이터셋에서 extractive label을 예측하는 summarization model로 fine-tuning한다.
평가는 Summarization task에서 일반적으로 사용하는 ROUGE score를 사용하였다. 아래는 기존 모델들과의 비교이다.
이 논문에서 제안한 방법은 unlabeled data에서 사용할 수 있는 pre-train document level hierarchical bidirectional transformer encoder이다. open-domain과 in-domain을 나눠서 학습한 것도 성능 향상에 도움이 되었다. 저자들은 이 구조의 모델을 다른 task에 적용하는 것도 연구할 예정이다.