Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
Text-Summarization-Repo
텍스트 요약 분야의 주요 연구 주제, Must-read Papers, 이용 가능한 model 및 data 등을 추천 자료와 함께 정리한 저장소입니다.
https://github.com/uoneway/Text-Summarization-Repo
Last synced: about 3 hours ago
JSON representation
-
Others
-
Other Papers List
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- A Survey on Neural Network-Based Summarization Methods
- Review of Automatic Text Summarization Techniques & Methods
- A Survey of Knowledge-Enhanced Text Generation
- Headline Generation Based on Statistical Translation - abs |
- **LexRank**: graph-based lexical centrality as salience in text summarization - ext |
- Sentence Extraction Based Single Document Summarization - ext |
- Text summarization using Latent Semantic Analysis - ext |
- A Neural Attention Model for Abstractive Sentence Summarization - to-source attention을 도입하여 abstractive summary를 생성합니다. | abs<br />Seq2Seq with att |
- Toward Abstractive Summarization Using Semantic Representations - CL | abs, <br />task-event,<br /> arch-graph |
- Neural Summarization by Extracting Sentences and Words - 2stage |
- **Pointer-generator**: Get to the point: Summarization with pointergenerator networks - generator))<br />A. See, P. J. Liu, and C. D. Manning / ACL 2017<br /><br />![img](images/summarization.011.png)<br /> Generator를 통해 vocabulary distrubution을 생성하고, pointer를 통해 원문의 어떤 단어를 copy할 지를 나타내는 attention distribution을 생성한 후, 학습된 생성 확률(Pgen)에 따라 weighted-sum하여 최종 단어 생성분포를 결정합니다. Abstactive 방식인 generator와 extractive 방식인 attention을 결합한 hybrid 방식으로 기 Seq2Seq with Attention 방식이 factual consistency가 낮던 문제를 보완합니다. 또한 특정 단어가 반복해서 생성되는 문제를 해결하고자, 현재까지 사용된 단어별 누적 attention distribution값(coverage vector c)에 기반한 repetition penalty term을 loss에 포함합니다. <br /><br />- [Review] [김형석(KoreaUniv DSBA)](https://brunch.co.kr/@kakao-it/139) | ext/abs,<br />Pointer-Generator, <br />Coverage loss |
- Abstractive text summarization using sequence-to-sequence RNNs and beyond - abs, data-new |
- **SummaRuNNer**: A Recurrent Neural Network based Sequence Model for Extractive Summarization of Documents
- A deep reinforced model for abstractive summarization - ext/abs |
- Abstractive Document Summarization with a Graph-Based Attentional Neural Model - graph, arch-att |
- Deep Recurrent Generative Decoder for Abstractive Text Summarization - vae |
- Generative Adversarial Network for Abstractive Text Summarization
- Controlling Decoding for More Abstractive Summaries with Copy-Based Networks
- Query Focused Abstractive Summarization: Incorporating Query Relevance, Multi-Document Coverage, and Summary Length Constraints into seq2seq Models
- Bottom-Up Abstractive Summarization - up attention |
- Fast Abstractive Summarization with Reinforce-Selected Sentence Rewriting - ext/abs<br />arch-graph |
- Content Selection in Deep Learning Models of Summarization - knowledge |
- Faithful to the Original: Fact Aware Neural Abstractive Summarization
- A reinforced topic-aware convolutional sequence-to-sequence model for abstractive text summarization
- Global Encoding for Abstractive Summarization
- Fine-tune BERT for Extractive Summarization - ext<br /> |
- Pretraining-Based Natural Language Generation for Text Summarization - abs |
- Improving the Similarity Measure of Determinantal Point Processes for Extractive Multi-Document Summarization - multiDoc |
- HIBERT: Document Level Pre-training of Hierarchical Bidirectional Transformers for Document Summarization - transformer |
- Searching for Effective Neural Extractive Summarization: What Works and What's Next - ext |
- BottleSum: Unsupervised and Self-supervised Sentence Summarization using the Information Bottleneck Principle - ext, sup-sup, sup-unsup, arch-transformer |
- Scoring Sentence Singletons and Pairs for Abstractive Summarization - abs, arch-cnn |
- 10 must-read papers for neural **extractive** summarization
- **PEGASUS**: Pre-training with Extracted Gap-sentences for Abstractive Summarization - research/pegasus))<br />Jingqing Zhang, Yao Zhao, Mohammad Saleh, Peter J. Liu / ICML 2020<br /><br />![image-20210109064954956](images/image-20210109064954956.png) <br />PEGASUS는 Pretraining objective가 텍스트 요약 과정과 흡사할수록 높은 성능을 보여줄 것이라는 가정하에 ROUGE score에 기반하여 중요하다고 판단되는 문장을 골라 문장 단위로 마스킹하는 GSG(Gap Sentences Generation) 방식을 사용했습니다.<br /><br />- [Review] 김한길. [영상](https://www.youtube.com/watch?v=JhGmeQBbDdA), [발표자료](https://www2.slideshare.net/hangilkim75/pegasus-237175343) | |
- TLDR: Extreme Summarization of Scientific Documents - ext/abs |
- 10 must-read papers for neural **abstractive** summarization
- Review of Automatic Text Summarization Techniques & Methods
- Toward Abstractive Summarization Using Semantic Representations - CL | abs, <br />task-event,<br /> arch-graph |
- Deep Recurrent Generative Decoder for Abstractive Text Summarization - vae |
- Bottom-Up Abstractive Summarization - up attention |
- Ranking Sentences for Extractive Summarization with Reinforcement Learning - reinforce |
- BanditSum: Extractive Summarization as a Contextual Bandit - reinforce |
- Content Selection in Deep Learning Models of Summarization - knowledge |
- Global Encoding for Abstractive Summarization
- Searching for Effective Neural Extractive Summarization: What Works and What's Next - ext |
- BottleSum: Unsupervised and Self-supervised Sentence Summarization using the Information Bottleneck Principle - ext, sup-sup, sup-unsup, arch-transformer |
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Review of Automatic Text Summarization Techniques & Methods
- Deep Communicating Agents for Abstractive Summarization - CL | abs, task-longtext, arch-graph |
- Review of Automatic Text Summarization Techniques & Methods
-
Recommended Resources
-
Services
-
-
Intro to Text Summarization
-
Main Topics
- summarizers 라이브러리
- Tan, Qin, Xing, & Hu(2020)
- Liu et al. (2018) - d convolution을 적용하여 개별 attention key, value의 수를 줄인 attention 방식을 사용합니다. [Big Bird (2020)](https://arxiv.org/abs/2007.14062) 논문은 transformer의 계산량을 줄이기 위해 기존 모든 단어 간 조합을 살펴보는 full attention 방식(quadratic) 대신 sparse attention mechanism(linear)을 도입합니다. 그 결과 동일 성능 하드웨어로 최대 8배까지 긴 문장을 요약할 수 있었습니다.
- Gidiotis &Tsoumakas (2020) - and-conquer 접근을 시도합니다. 원문과 target summary를 multiple smaller source-target pairs로 바꿔서 모델을 훈련합니다. inference 시에는 이 모델을 통해 출력된 partial summaries를 aggregate하여 complete summary를 만듭니다.
- Cao, Dong, Wu, &Cheung (2020)
- Brazinskas, Lapata, & Titov (2020)
- Lee et al. (2020) - supervised, model-based approach를 제안했습니다.
-
Related Knowledge
-
Definition
-
Task Categories
-
-
Papers
-
SOTA & Latest Research List
-
Must-read Papers
- **CTRLsum**: Towards Generic Controllable Text Summarization - sum)<br />*Junxian He, Wojciech Kryściński, Bryan McCann, Nazneen Rajani, Caiming Xiong* <br /><br />CTRLsum은 keywords 또는 descriptive prompts를 통해 생성되는 요약문을 조정할 수 있는 controllable Text Summarization 모델입니다.<br />- Training: 일반적인 summary 데이터를 변형하여 keyword 기반 controllable summary 데이터셋을 만들기 위해, 본문에서 요약문과 가장 유사한(ROUGE score가 높은) sub-sequences를 고르고 거기서 keyword를 추출합니다. 이를 문서와 함께 input으로 넣어 pretrained BART를 fine-tuning 합니다. <br />![image-20210323020610430](images/image-20210323020610430.png)<br />- Inference: 아래 이미지와 같이 본문과 함께 적절한 keywords와 prompts(optional)를 넣어주면 특정 entity에 대한 요약문을 생성하거나 요약문 길이를 조정하거나, 질문(query)에 대한 응답을 생성하는 등의 요약문 control이 가능합니다. 주목할 부분은 모델 training 단계에서 이러한 prompts를 명시적으로 학습시키지 않았는데도 마치 prompt를 이해하고 이에 따른 요약을 생성해내는 것 처럼 작동한다는 점입니다. GPT-3와 유사하게요.![image-20210323023840092](images/image-20210323023840092.png)<br />- [Library] [Package for controllable summarization based CTRLsum](https://github.com/hyunwoongko/summarizers) | controllable,<br />BART |
- **TextRank**: Bringing order into texts - level weighted graph를 구성하고, 이 weight가 높은 sentence를 summary에 포함합니다. <br />통계 기반 unsupervised learning 방식으로 별도의 학습 데이터 없이 추론이 가능하고, 알고리즘이 명확하여 이해가 쉽습니다. <br /><br />- [Library] [gensim.summarization](https://radimrehurek.com/gensim_3.8.3/auto_examples/tutorials/run_summarization.html#sphx-glr-auto-examples-tutorials-run-summarization-py)(3.x버전만 가능. 4.x버전에서 삭제), [PyTextRank](https://github.com/DerwenAI/pytextrank)<br />- [이론/Code] [lovit. TextRank 를 이용한 키워드 추출과 핵심 문장 추출](https://lovit.github.io/nlp/2019/04/30/textrank/) | ext,<br />Graph-based(PageRank),<br />Unsupervised |
- Text Summarization with Pretrained Encoders - trained BERT를 요약 task에 활용하려면 어떻게 해야할까요? <br />BertSum은 여러 sentence를 하나의 인풋으로 넣어주기 위해 매 문장 앞에 [CLS] 토큰을 삽입하고 interval segment embeddings을 추가한 변형 input embeddings을 제안합니다. <br />ext 모델은 BERT에 Transformer layers를 얹은 encoder 구조를, abs 모델은 ext 모델 위에 6-layer Transformer decoder를 얹은 encoder-decoder 모델을 사용합니다.<br /><br />- [Review] [이정훈(KoreaUniv DSBA)](https://www.youtube.com/watch?v=PQk9kr9dGu0)<br />- [Korean] [KoBertSum](https://github.com/uoneway/KoBertSum) | ext/abs, <br />BERT+transformer,<br />2-staged fine-tuning |
- **MatchSum**: Extractive Summarization as Text Matching - [Review] [이유경(KoreaUniv DSBA)](https://www.youtube.com/watch?v=8E2Ia4Viu94&t=1582s) | ext |
- **What Have We Achieved on Text Summarization?** - 전통적 rule-based 방법은 여전히 baseline으로 유효하다.<br />- 유사한 세팅 하에서는 abs모델보다 **ext모델**이 대체적으로 faithfulness와 factual-consistency에서 더 좋은 성능을 보임. The main shortcoming is unnecessity for extractive models, and omission and intrinsic hallucination for abstractive models.<br />- Sentence representation을 생성하기 위한 **transformer와 같은 더 복잡한 구조**가 duplication 문제 말고는 크게 도움이 안됨<br />- Copy(**Pointer-Generator**)는 reproducing detail하는데, Inaccuracy Intrinsic 뿐만 아니라 추출/생성을 적절히 혼합하여 word level duplication 문제도 효과적으로 해결함. but tends to cause redundancy to a certain degree.<br /> **Coverage**는 by a large margin으로repetition errors(Duplication)은 감소시키나, 동시에 Addition과 Inaccuracy Intrinsic error를 증가시키는 한계 <br />- ext후 abs하는 **hybrid 모델**은 원문의 일부(extracted snippets)을 통해 요약을 생성해내기에 recall은 좋지만 Inaccuracy error에 문제가 있을 수 있음<br />- Pre-training, 특히 encoder only 모델(BertSumExtAbs)보다 encoder-decoder 모델(BART)은 요약분야에서 아주 효과적임. 이는 입력에 대한 이해 및 생성을 모두 pretraining하는 것이 content selection과 combination에 아주 유용함을 시사함. 동시에 대부분의 abs 모델이 앞쪽 문장만 집중하는데 반해 BART가 원문 전반을 모두 보고 있다는 점은 pretraing 시 sentence shuffling의 효과로 보임<br />![image-20210109062449344](images/image-20210109062449344.png)<br /><br />- [Review] [김한길](https://www.slideshare.net/hangilkim75/paper-review-what-have-we-achieved-on-text-summarization), [허훈](https://github.com/kakaobrain/nlp-paper-reading/blob/master/notes/summarization_achievement.md) | review |
- Text Summarization with Pretrained Encoders - trained BERT를 요약 task에 활용하려면 어떻게 해야할까요? <br />BertSum은 여러 sentence를 하나의 인풋으로 넣어주기 위해 매 문장 앞에 [CLS] 토큰을 삽입하고 interval segment embeddings을 추가한 변형 input embeddings을 제안합니다. <br />ext 모델은 BERT에 Transformer layers를 얹은 encoder 구조를, abs 모델은 ext 모델 위에 6-layer Transformer decoder를 얹은 encoder-decoder 모델을 사용합니다.<br /><br />- [Review] [이정훈(KoreaUniv DSBA)](https://www.youtube.com/watch?v=PQk9kr9dGu0)<br />- [Korean] [KoBertSum](https://github.com/uoneway/KoBertSum) | ext/abs, <br />BERT+transformer,<br />2-staged fine-tuning |
-
-
Resources
-
Code / Examples
-
Datasets
- **sae4K** - BY-SA-4.0](https://github.com/warnikchow/sae4k/blob/master/LICENSE) |
- sci-news-sum-kr-50
- **WikiLingua**: A Multilingual Abstractive Summarization Dataset (2020) - [paper](https://arxiv.org/abs/2010.03093), [Collab notebook](https://colab.research.google.com/drive/1HxonmcM7EOQVal2I6oTi9QWEP257BgDP?usp=sharing)</a> | - How-to docs<br />- 391w→ 39w | 12,189<br />(전체 770,087 중 kor) | 2020,<br />[CC BY-NC-SA 3.0](https://creativecommons.org/licenses/by-nc-sa/3.0/) |
- LongSumm - [LongSumm 2020@EMNLP 2020](https://ornlcda.github.io/SDProc/sharedtasks.html#longsumm)<br />- [LongSumm 2021@ NAACL 2021](https://sdproc.org/2021/sharedtasks.html#longsumm) | - Research paper(NLP, ML)<br />- origin → 100s/1,500w(abs); 30s/ 990w(ext) | 700(abs) + 1,705(ext) | [Attribution-NonCommercial-ShareAlike 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) |
- **MLSUM**: The Multilingual Summarization Corpus - [Paper](https://www.aclweb.org/anthology/2020.emnlp-main.647), [이용(huggingface)](https://github.com/huggingface/datasets/tree/master/datasets/mlsum) | - 뉴스<br />- 790w→ 56w<br />(en 기준) | 1.5M(abs) | non-commercial research purposes only |
- **AIHub-도서자료 요약** - 보건사회, 생명, 조세, 환경, 지역사회 개발, 무역, 경제, 노동 등<br />- 300-1000자 원문 → abs | 200,000 | AIHub<br />(개별 약정) |
- **AIHub-논문자료 요약** - 학술논문, 특허명세서<br />- origin → abs | 350,000 | AIHub<br />(개별 약정) |
- **모두의 말뭉치-문서 요약 말뭉치** - 신문 말뭉치와 결합하면 소제목, media, date, topic 관련 추가 정보를 얻을 수 있음 | 뉴스<br />\- origin → 3s(abs); 3s(ext) | 13,167 | 국립국어원<br />(개별 약정) |
- **AIHub-문서요약 텍스트** - [EDA] [데이터 EDA 노트북](https://github.com/uoneway/KoBertSum/blob/master/tutorials/EDA.ipynb)<br />- [한국어 문서 추출요약](https://dacon.io/competitions/official/235671/overview/) 및 [생성요약 AI 경진대회](https://dacon.io/competitions/official/235673/overview/)(~ 20.12.09)에서 사용 | - 신문기사 30만, 기고문 6만, 잡지기사 1만, 법원 판결문 3만<br />\- 13s/214w → 1s/26w(abs); 3s/55w(ext) | 400,000 | AIHub<br />(개별 약정) |
- **AIHub-논문자료 요약** - 학술논문, 특허명세서<br />- origin → abs | 350,000 | AIHub<br />(개별 약정) |
- **AIHub-도서자료 요약** - 보건사회, 생명, 조세, 환경, 지역사회 개발, 무역, 경제, 노동 등<br />- 300-1000자 원문 → abs | 200,000 | AIHub<br />(개별 약정) |
- TensorFlow Datasets
- 기타 요약 관련 영어 데이터셋 목록
- **Global Voices**: Crossing Borders in Automatic News Summarization (2019) - [Paper](https://www.aclweb.org/anthology/D19-5411.pdf) | - 뉴스<br />- 359w→ 51w | | |
- ScisummNet - CL-SciSumm 2019-Task2([repo](https://github.com/WING-NUS/scisumm-corpus), [paper](https://arxiv.org/abs/1907.09854))<br />- [CL-SciSumm @ EMNLP 2020-Task2](https://ornlcda.github.io/SDProc/sharedtasks.html#clscisumm)([repo](https://github.com/WING-NUS/scisumm-corpus)) | - Research paper<br />(computational linguistics, NLP)<br />- 4,417w → 110w(논문abstract) ; 2s(citation); 151w(abs) | 1,000(abs/ ext) | [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/legalcode) |
- CL-LaySumm - [CL-LaySumm @ EMNLP 2020](https://ornlcda.github.io/SDProc/sharedtasks.html#laysumm) | - Research paper(epilepsy, archeology, materials engineering)<br />- origin → 70~100w | 600(abs) | 개별약정 필요([[email protected]](mailto:[email protected]) 로 이메일을 송부) |
-
Pre-trained Models
- **KOBERT** - Base(92M parameters) | - 위키백과(문장 5M개), 뉴스(문장 20M개)<br />- [SentencePiece](https://github.com/google/sentencepiece)<br />- 8,002 vocabs(unused token 없음) | - PyTorch<br />- [KoBERT-Transformers(monologg)](https://github.com/monologg/KoBERT-Transformers)를 통해 Huggingface Transformers 라이브러리로 이용 가능, [DistilKoBERT](https://github.com/monologg/DistilKoBERT) 이용 가능 | SKTBrain<br />(Apache-2.0) |
- KcBERT - Base/Large | - 네이버 뉴스 댓글(12.5GB, 8.9천만개 문장)<br />(19.01.01 ~ 20.06.15 기사 중 댓글 많은 기사 내 댓글과 대댓글)<br />- [tokenizers](https://github.com/huggingface/tokenizers)의 BertWordPieceTokenizer<br />- 30,000 vocabs | | [Beomi](https://github.com/Beomi)<br />(MIT) |
- KoBART - 위키백과(5M), 기타(뉴스, 책, 모두의 말뭉치 (대화, 뉴스, ...), 청와대 국민청원 등 0.27B)<br />- [tokenizers](https://github.com/huggingface/tokenizers)의 Character BPE tokenizer<br />- 30,000 vocabs(<unused> 포함)<br /><br />- [Example] seujung. KoBART-summarization([Code](https://github.com/seujung/KoBART-summarization), [Demo](http://20.194.43.11:7874/)) | - 요약 task에 특화<br />- Huggingface Transformers 라이브러리 지원<br />- PyTorch | SKT *T3K*<br />(modified MIT) |
- **BERT(multilingual)** - Base(110M parameters) | - Wikipedia(multilingual)<br />- WordPiece. <br />- 110k shared vocabs | - [`BERT-Base, Multilingual Cased`](https://storage.googleapis.com/bert_models/2018_11_23/multi_cased_L-12_H-768_A-12.zip) 버전 권장<br />(`--do_lower_case=false` 옵션 넣어주기)<br />- Tensorflow | Google<br />(Apache 2.0) |
- **KorBERT** - Base | - 뉴스(10년 치), 위키백과 등 23GB<br />- [ETRI 형태소분석 API](https://aiopen.etri.re.kr/service_api.php) / WordPiece(두 버전을 별도로 제공)<br />- 30,349 vocabs<br />- Latin alphabets: Cased<br />- [소개] [임준(ETRI). NLU Tech Talk with KorBERT](https://www2.slideshare.net/LGCNSairesearch/nlu-tech-talk-with-korbert) | - PyTorch, Tensorflow <br/> | ETRI<br />(개별 약정) |
-
Programming Languages
Sub Categories
Keywords
nlp
5
summarization
3
machine-learning
3
natural-language-processing
3
korean-nlp
3
transformers
2
language-model
2
bert
2
dialogue
2
python
1
text-summarization
1
machine-translation
1
named-entity-recognition
1
nlp-tasks
1
huggingface-transformers
1
pytorch-lightning
1
pytorch
1
bert-model
1
abstractive-text-summarization
1
deep-learning
1
extractive-text-summarization
1
text-mining
1