Search
🏆

[논문리뷰] Learning to Collaborate for Question Answering and Asking

Created
3/7/2021, 12:26:24 PM
Tags
QA
💡
논문 리뷰: QA + QG = ??

Abstract

질문에 대한 답을 찾는 모델과 좋은 질문을 만드는 모델을 서로 상호 보완적으로 학습할 수 있지 않을까?
QA 모델의 성능 향상을 위해서 QG 모델을 이용해 학습 데이터셋을 augmentation (generator)
QG 모델의 성능 향상을 위해서 QA 모델이 QG 모델의 성능을 평가 (일종의 discriminator)

모델

QA 모델은 주어진 문맥과 질문 그리고 답이 주어졌을 때, 이 쌍이 참인지 거짓인지 판단하는 모델 (binary).
기존의 span 을 찾는 QA 모델이 아님. 주어진 쌍이 말이 되냐를 판단
QG 모델은 문맥과 답이 주어졌을 때, 질문을 생성하는 모델.

(a) QG improves QA

QA 모델의 업데이트에 목적이 있음
QG 모델이 생성한 결과를 이용해서 데이터셋을 augmentation → QA 모델의 성능 향상
하지만 QG 모델이 생성한 질문이 모두 정확하고 좋은 질문이 아님 → 생성된 질문 중 참인 것만 학습 해야 함
연관성 분류 모델을 이용해서 생성된 질문과 원본 질문간의 유사도를 판단 → 생성된 질문 중 원본 질문과 유사한 질문만 학습에 사용

Collaboration Detection (연관성 분류 모델)

A: "Microsoft was founded by Paul Allen and Bill Gates on April 4, 1975., Original Question: “who founded Microsoft”. Generated Question: “who is the founder of Microsoft” Generated Bad Question #1: “who is the founder of Google” Generated Bad Question #2: “how old is Bill Gates” are both bad cases.
JavaScript
두 질문이 연관된 질문인지 아닌지 binary 로 구분하는 Collaboration Detection 모델
두 문장이 주어졌을 때, 두 문장이 유사한지 positive/negative 로 레이블링되어 있는 데이터셋으로 학습
Quora 데이터셋: 두 질문이 의미적으로 같은 질문인지 분류하는 데이터셋 (총 50만 학습 문장)
Web Query: 검색 엔진에서 어떤 두 질의문이 동일한 사이트를 클릭한 경우, 두 질의문이 유사하다고 가정. 검색 로그를 기반으로 유사 질의 쌍을 만든 데이터셋 (총 1200만)
위 모델 구조에서 Collaboration Detection 모델은 freeze 하고 업데이트 하지 않음.

(b) QA improves QG

QG 모델의 업데이트에 목적이 있음. 아래 두 objective 를 동시에 학습
Objective 1: 정답이 주어졌을 때, 원본 질문을 생성하도록 모델 업데이트: P(Q | A)
Objective 2: 생성된 질문과 원래 답이 주어졌을 때, 두개의 pair의 QA 점수가 최대가 되도록 생성 모델 업데이트: P(Q, A)
요약: 실제 질문처럼 질문을 생성하도록 학습 + 생성된 질문과 답이 QA 모델 입장에서 참이 되도록 학습

평가 & 데이터

QA 성능 올랐음
QG 성능도 올랐음
학습/평가는 MARCO 데이터셋으로 진행
span 에 대한 정보도 있지만, 답에 대한 후보도 존재함
QA, QG 성능 모두 올랐음