[https://en.ax-semantics.com/natural-language-generation-explained/]
abstractive, extractive summarization 으로 나누어짐
abstractive : 내용으로부터 주요 단어 추출 및 조합하여 요약, extractive보다 복잡한 task
extractive : 내용으로부터 주요 문장 추출 및 요약
뉴스 요약 등에 적용
내용으로부터 질문(문제)을 생성
공부에 도움이 될 온라인 학습 도구 등에 적용
오지선다에서 오답을 생성
데이터 증강(data augumentation) 에 적용
정보를 추가해서 데이터 길이 늘리기
짧은 제목을 내용을 늘이는 데 적용
NLG subtask중 Abstractive Text Summariation의 DATASET 및 SOTA 모델에 대해 알아봅시다.✒
[Paper : Abstractive Document Summarization without Parallel Data]
huggingface 공식문서를 참고하여 작성하였습니다.
{'id': '0054d6d30dbcad772e20b22771153a2a9cbeaf62',
'article': '(CNN) -- An American woman died aboard a cruise ship that docked at Rio de Janeiro on Tuesday, the same ship on which 86 passengers previously fell ill, according to the state-run Brazilian news agency, Agencia Brasil. The American tourist died aboard the MS Veendam, owned by cruise operator Holland America. Federal Police told Agencia Brasil that forensic doctors were investigating her death. The ship's doctors told police that the woman was elderly and suffered from diabetes and hypertension, according the agency. The other passengers came down with diarrhea prior to her death during an earlier part of the trip, the ship's doctors said. The Veendam left New York 36 days ago for a South America tour.'
'highlights': 'The elderly woman suffered from diabetes and hypertension, ship's doctors say .\nPreviously, 86 passengers had fallen ill on the ship, Agencia Brasil says .'}
id, Article, Highlight(추론된 것이 아닌 실제 요약본) 로 이루어져 있음(string type)
✏keyword
GLM(General Language Model)
,classification
,unconditional generation
,conditional generation
,autoregressive blank infilling
1) input을 Part A 와 B로 나눔
2) Autoregressive하게 Part B span을 생성
3) masking된 상태에서 self-attention 수행
Terminology
- warm-up 기법 : optimizer에서 lr 설정 시 초반에 매우 적은 값으로 간을 보고, 이후에 regular한 값으로 조정해나가는 process. attention 메커니즘이 이용되는 transformer 계열의 모델에서 흔히 이용됨.
- Rouge Score 란? : Recall-Oriented Understudy for Gisting Evaluation의 준말로 텍스트 요약 모델의 성능 평가 지표
- label smoothing : label의 noise를 제거하는 기법
- Beam Search
✏keyword
GSG(Gap Sentence Generation)
,MLM(Masked Language Model)
,Rouge
Pegasus 논문에서 모델 구조의 핵심 개념
모델은 input의 여러 문장중 핵심적인 의미를 담고 있다고 판단되는 중요한(principal) 한 문장을 선택하여 문장 전체를 masking 한다. 이 문장을 논문에서는 gap sentence라고 칭한다.
즉, 이 문장에 대한 masking 및 generation이 상기된 model architecture에서 진행되는 것이다.
그럼 중요한 문장을 어떻게 선택하나?🤔
이를 이용하기 위해 Random, Lead, Principal 이라는 3가지 전략을 이용한다.
[Pretraining 에 이용되는 C4 corpus dataset에서의 예시]
- Random(초록색) : m개의 문장을 랜덤하게 선택
- Lead(빨간색) : 첫 m개의 문장을 선택
- Principal(파란색) : Rouge f1 Score에 의해 중오도에 따른 top m개의 score를 계산
즉, 각 색깔별로 해당된 문장들을 gap sentence로 인식하고 GSG 과정을 수행한다고 이해할 수 있다.
다른 이전의 SOTA 모델과 비교해보았을 때 , XSum, CNN/DailyMail, GigaWord 세 BenchMark에서 나아진 성능을 보임
metric : Rouge f-1 Score
hyperparameter
: L = 12, H = 768, F = 3072, A = 12, batch size = 256
: had L = 16, H = 1024, F =
4096, A = 16, batch size = 8192
- L: layer(Transformer block) 수
- H : hidden size
- F : Feed forward layer 크기
- A : self-attention의 크기
Transformer와 같이 sinosoidal positional encoding 이용
dropout rate 0,1, square root lr decay와 함께 Adafactor optimizer를 pre-training과 fine-tuning에 이용
beam search와 length-penalty 사용
[논문 Appendix C에 기록된 실험 hyperparameter 값]
[의 pre-training 과정]
본 콘텐츠는 "모두의 연구소에서 진행하는 "함께 콘텐츠를 제작하는 콘텐츠 크리에이터 모임" COCRE(코크리) 2기 회원으로 제작한 글입니다.
- 코크리란?
GLM이랑 Pegasus 모델 상세하게 알려주셔서 감사합니다!