Pointer Generator
- Get To The Point: Summarization with Pointer-Generator Networks(2017, ACL, Google)
- Seq2seq RNN 기반 모델의 발전된 형태
- Hybrid pointer-generator network: Pointing 메커니즘을 통해 새로운 단어를 생성
- Coverage : 요약문을 생성하는 시점을 기준으로 포함된 정보에 대해서는 그 다음 단계에서 token의 생성 확률을 낮춤에 따라 새로운 token을 포함하게 함

- Seq2seq RNN
- Encoder, Decoder, attention distribution와 context vector, vocabulary distrubution으로 구성
- RNN Encoder : source의 단어를 input으로 받음
- RNN Decoder : target에 들어갈 단어를 순서대로 생성
- Attention : Decoder에서 단어를 생성할 때마다 source에 등장한 모든 단어와의 관계를 고려하여 더 연관된 단어를 선택하도록 함
- Attention distribution와 Encoder의 hidden state를 가중합하여 현재 시점에서 source로부터 어떤 token을 받았는지에 대한 vector인 context vector 생성
- Context vector와 Decoder의 hidden state와 합쳐 classification 수행
- Prediction 시 vocabulary distribution에서 가장 등장 확률이 높은 단어 선택
- Corpus에 등장하지 않는 단어를 사용했을 때 out-of-vocabulary 문제 발생
- Encoder, Decoder, attention distribution와 context vector, vocabulary distrubution으로 구성
- Pointer-generator network
- Seq2seq RNN 모델의 OOV 문제를 해결하고자 attention distribution을 prediction 단계에서도 사용 (copy distribution)
- 즉 단어를 예측할 때 source 단어를 참조할 확률을 사용함으로써 OOV의 문제가 있을 경우 source에서 단어를 가져오게 됨

- Coverage mechanism
- Seq2seq RNN에서 흔히 겪는 문제점 중 하나인 중요한 단어를 반복하는 현상을 해결
- 요약문 생성 시점 이전까지의 attention distribution을 누적한 coverage vector를 정의
- 기존의 attention mechanism에 coverage vector를 추가한 다음, penalty를 반영하는 loss 함수 정의
- 성능 : pointer generator network + coverage mechanism > pointer generator network > seq2seq + attention baseline
- Abstractive model의 성능 증가폭이 extractive model의 성능 증가폭보다 컸음
- Pointer-generator + coverage이 reference에서 가져온 단어의 비율이 적고 실제 label과 비슷
Pointer Generator
- Get To The Point: Summarization with Pointer-Generator Networks(2017, ACL, Google)
- Seq2seq RNN 기반 모델의 발전된 형태
- Hybrid pointer-generator network: Pointing 메커니즘을 통해 새로운 단어를 생성
- Coverage : 요약문을 생성하는 시점을 기준으로 포함된 정보에 대해서는 그 다음 단계에서 token의 생성 확률을 낮춤에 따라 새로운 token을 포함하게 함
- Seq2seq RNN
- Encoder, Decoder, attention distribution와 context vector, vocabulary distrubution으로 구성
- RNN Encoder : source의 단어를 input으로 받음
- RNN Decoder : target에 들어갈 단어를 순서대로 생성
- Attention : Decoder에서 단어를 생성할 때마다 source에 등장한 모든 단어와의 관계를 고려하여 더 연관된 단어를 선택하도록 함
- Attention distribution와 Encoder의 hidden state를 가중합하여 현재 시점에서 source로부터 어떤 token을 받았는지에 대한 vector인 context vector 생성
- Context vector와 Decoder의 hidden state와 합쳐 classification 수행
- Prediction 시 vocabulary distribution에서 가장 등장 확률이 높은 단어 선택
- Corpus에 등장하지 않는 단어를 사용했을 때 out-of-vocabulary 문제 발생
- Encoder, Decoder, attention distribution와 context vector, vocabulary distrubution으로 구성
- Pointer-generator network
- Seq2seq RNN 모델의 OOV 문제를 해결하고자 attention distribution을 prediction 단계에서도 사용 (copy distribution)
- 즉 단어를 예측할 때 source 단어를 참조할 확률을 사용함으로써 OOV의 문제가 있을 경우 source에서 단어를 가져오게 됨
- Coverage mechanism
- Seq2seq RNN에서 흔히 겪는 문제점 중 하나인 중요한 단어를 반복하는 현상을 해결
- 요약문 생성 시점 이전까지의 attention distribution을 누적한 coverage vector를 정의
- 기존의 attention mechanism에 coverage vector를 추가한 다음, penalty를 반영하는 loss 함수 정의
- 성능 : pointer generator network + coverage mechanism > pointer generator network > seq2seq + attention baseline
- Abstractive model의 성능 증가폭이 extractive model의 성능 증가폭보다 컸음

- Pointer-generator + coverage이 reference에서 가져온 단어의 비율이 적고 실제 label과 비슷


'AI' 카테고리의 다른 글
[논문읽기-1] OCR-free Document Understanding Transformer - 번역 (3) | 2023.06.06 |
---|---|
[텍스트 생성 요약] BART 알아보기 (0) | 2023.04.27 |
[Text Extraction] NLP for Indian Languages - 인도 언어를 위한 NLP 라이브러리 (0) | 2023.03.03 |
[IBM]Machine Learning with Python : course introduction (0) | 2023.01.31 |
COSMIC: COmmon Sense knowledge for eMotion Identification in Conversations (Findings of EMNLP 2020) (0) | 2022.12.09 |