Search
📽️

[논문리뷰] Unsupervised Commonsense Question Answering with Self-Talk

Created
3/7/2021, 12:26:24 PM
Tags
QA
💡
논문 리뷰: commonsense-reasoning 문제를 푸는데, 외부 지식을 활용해서 이 문제를 풀면 더 잘한다
저자 : Vered Shwartz, Peter West, Ronan Le Bras, Chandra Bhagavatula, Yejin Choi (Allen AI)
keyword : Question Answering (QA)

핵심 요약

commonsense-reasoning 문제를 푸는데, 외부 지식을 활용해서 이 문제를 풀면 더 잘한다
이때 knowledge graph 와 같은 외부 지식이 아닌 생성모델이 갖고 있는 백그라운드를 사용해도 좋다.
LM이 갖고 있는 지식을 명시적으로 끌어내서 사용하겠다는 느낌 → 끌어내지 않았을 때 보다 획기적인 성능 향상
Winograd 데이터 형태. 두 문장 중에서, 상식적으로 어떤 문장이 더 맞는지 고르기 예: 트로피가 너무 커서 케이스에 안들어가요 vs 트로피가 너무 작아서 케이스에 안들어가요
Self-Chat 에서 다중 택일을 하는 방법. 대명사 대신에 실제 값을 넣고, 뒤에 추가적인
본 논문은 사전 학습된 생성모델(GPT, XLNET etc)을 이용해서 다중택일 commense reasoning task 문제를 해결하고자 합니다. 다중택일을 하는 방법으로는 각 후보의 PPL을 측정하고 가장 낮은 PPL의 후보를 가장 자연스럽다고 판단하여 이를 정답으로 예측합니다.
본 논문에서는 사전학습된 생성 모델에 추가적인 fine-tuning 없이 self-chat 이라는 기법을 사용해 주어진 commonsense-reasoning 을 보다 잘할 수 있는 방법이 있음을 주장합니다.
Self-chat에서 clarification 을 만드는 과정
Self-chat은 총 3가지 스텝으로 이루어 집니다.
1.
Question Generation: 주어진 context 에 대응되는 질문을 사전에 정의된 질문 prefix 를 기반으로 생성합니다. (what is the purpose of .., 등등) Neuclus sampling 을 이용해 총 5가지의 질문을 생성합니다.
2.
Clarification Generation: 주어진 Question 에 대응되는 clarification 을 생성합니다.
3.
Clarification + Context 이용해서 PPL 측정 → 제일 낮은 PPL값을 갖는 문장을 정답으로 예측함
베이스라인으로는 두가지를 사용하였습니다.
1) 단순히 사전 학습된 생성 모델을 사용했을 때 (zero-shot)
2) 외부 지식을 텍스트 형태로 추가하였을 때. 외부 지식으로는 Knowledge graph, n-gram retrieval 문장, 외부 지식 생성 모델
기존에 knowledge 없이 예측한 모델보다 월등히 성능이 좋았고, knowledge 를 추가한 모델과 근접하거나 조금 더 좋은 성능을 얻을 수 있었다. → 추가적인 지식 없이도 LM만을 이용해서