Patrick Lewis, Ethan Perez, Aleksandra Piktus, Fabio Petroni, Vladimir Karpukhin, Naman Goyal, Heinrich Küttler, Mike Lewis, Wen-tau Yih, Tim Rocktäschel, Sebastian Riedel, Douwe Kiela
Facebook AI Research | University College London | New York University
- 22 May 2020
- NeurIPS 2020
- url : https://arxiv.org/abs/2005.11401
Intro
사전 학습된 언어 모델은 방대한 데이터로부터 지식을 습득하며, 외부 메모리에 접근하지 않고 parametric memory 형태로 이를 내재화한다. 그러나 이러한 모델은 메모리를 손쉽게 확장하거나 수정하기 어렵고, 예측 근거에 대한 해석이 제한적이며, 종종 hallucination 문제가 발생한다.
반면, parametric memory와 non-parametric (retrieval-based) memory를 결합한 hybrid model은 지식을 직접적으로 수정·확장할 수 있고, 접근한 정보를 검증 및 해석할 수 있어 이러한 한계를 완화할 수 있다. 본 논문은 이러한 하이브리드 구조를 sequence-to-sequence (seq2seq) 모델에 적용하였다.
Parametric memory : 모델 파라미터(즉, 신경망의 가중치) 안에 저장된 지식
이 연구에서는 Retrieval-Augmented Generation (RAG)이라 불리는 범용 fine-tuning 방법을 통해, 사전 학습된 생성 모델에 non-parametric memory를 부여하였다. 저자들은 사전 학습된 seq2seq transformer를 parametric memory로, Wikipedia의 dense vector index를 사전 학습된 retriever로 접근하는 non-parametric memory로 사용하여 RAG 모델을 구성하고, 이를 end-to-end fine-tuning하였다.
Retriever는 입력을 조건으로 latent document를 반환하고, seq2seq model은 입력과 해당 문서를 조건으로 출력을 생성한다. 저자들은 top-K approximation을 사용하여 latent document를 marginalize하였으며, 동일한 문서가 모든 토큰에 대응한다고 가정할 경우 per-output marginalization, 서로 다른 문서가 각 토큰에 대응한다고 가정할 경우 per-token marginalization을 수행하였다. T5나 BART와 유사하게, RAG는 모든 seq2seq task에 대해 fine-tuning이 가능하며, generator와 retriever가 공동으로 학습된다.
기존의 non-parametric memory 기반 접근법은 특정 task를 위해 처음부터 학습되는 반면, RAG는 parametric과 non-parametric memory 모두가 사전 학습되어 있어 추가 학습 없이도 지식 접근 메커니즘을 활용할 수 있다.
RAG는 외부 지식이 필수적인 knowledge-intensive task에서 강점을 보인다. RAG model은 Natural Questions, WebQuestions, CuratedTrec에서 state-of-the-art (SOTA) 성능을 기록했으며, TriviaQA에서는 특수 목적 함수를 사용하는 최신 방법보다 우수한 성과를 보였다. 또한 MS-MARCO와 Jeopardy Question Generation 과제에서는 BART보다 더 사실적이고 구체적이며 다양한 응답을 생성하였다. FEVER fact-verification에서도 강력한 supervision을 사용하는 SOTA 모델과 4.3% 이내의 성능 차이를 보였다. 마지막으로, 저자들은 non-parametric memory를 교체함으로써 세상의 변화에 따라 모델의 지식을 업데이트할 수 있음을 입증하였다.
Methods

RAG 모델은 입력 시퀀스 를 사용하여 추가 컨텍스트로 텍스트 문서 를 검색/사용하여 타겟 시퀀스 를 생성한다.
모델은 두 가지 구성 요소를 활용한다.

Retriever와 Generator는 end-to-end 방식으로 공동 학습되며, 검색된 문서 z를 latent variable로 취급한다.
여기서, latent variable은 말그대로 잠재변수로, 아래와 같이 이해할 수 있음

저자들은 생성된 텍스트의 분포를 정의하기 위해 이 latent document를 서로 다른 방식으로 marginalize하는 두 가지 모델을 제안하였다.
- RAG-Sequence: 동일한 문서를 기반으로 전체 시퀀스의 각 토큰을 예측한다.
- RAG-Token: 서로 다른 문서를 기반으로 각 토큰을 개별적으로 예측한다.
RAG 모델은 retriever와 generator를 결합해 입력 x로부터 관련 문서 를 검색하고, 이를 바탕으로 출력 를 생성하는 구조다.
- Retriever는 DPR 기반 bi-encoder로, query와 document를 각각 BERT encoder로 임베딩해 dense vector index(non-parametric memory)에서 유사도가 높은 문서를 찾는다.
- Generator는 BART-large로, 입력 와 문서 를 concat하여 생성하며, 그 파라미터는 parametric memory로 간주된다. 학습은 문서에 대한 명시적 정답(supervision) 없이 negative marginal log-likelihood를 최소화하는 end-to-end fine-tuning으로 진행된다. 디코딩 시 RAG-Token은 각 토큰마다 다른 문서를 참조하며 beam search로 처리되고, RAG-Sequence는 동일 문서 기반으로 시퀀스를 생성하되, 효율성을 위해 Thorough 또는 Fast Decoding 근사를 사용한다.
Experiments
Open-domain Question Answering
질문 주제에 제한이 없이 아무 분야로든 나올 수 있는 질의응답과제인 Open-Domain QA에 대한 테스트 점수를 나타낸 표이다. 모델이 광범위한 지식 즉, 내부 파라미터나 검색을 활용해 답을 만들어야 한다. 아래 표의 숫자들은 Exact Match(EM) 기반 score 들이다.

- NQ(Natural Questions) : Google이 만든 대규모 QA 데이터셋. 실제 사용자가 Google에 친 자연어 질문을 기반으로 하고, 보통 Wikipedia에서 정답 근거를 찾음.
- TQA = TriviaQA : 퀴즈(트리비아) 스타일의 질문 모음. 다양한 출처의 질문이고, 정답 근거 문서(특히 Wikipedia)와 함께 쓰이는 오픈 도메인 QA 벤치마크.
- WQ = WebQuestions : 웹에서 수집된 자연어 질문과 정답 쌍으로 구성된 비교적 오래된 오픈 도메인 QA 데이터셋.
- CT = CuratedTREC : TREC QA 문제 중에서 선별(curated)된 세트. 짧고 명확한 사실성 질문이 많아 오픈 도메인 QA의 고전적 평가셋으로 쓰임.
EM : Exact Match는 질의 응답 Task에서 사용되는 성능 지표로, 예측된 답변이 실제 답변과 정확하게 일치하는지를 측정한다. 모델이 제공한 답변이 참조 답변과 완전히 동일한 경우에만 점수가 부여되고, 그렇지 않으면 0점이 부여된다. (https://hr1588.tistory.com/36)
Generation and Classification
아래는 Jeopardy Quesion Generation, MS-MARCO (Abstractive QA), FEVER (사실 검증)에 대한 테스트 점수를 비교한 표이다.

Jeopardy 질문은 종종 두 개 이상의 독립적인 정보를 포함하는데, RAG-Token은 여러 문서의 내용을 조합해 응답을 생성할 수 있기 때문에 이러한 경우에 가장 우수한 성능을 보인다.
아래 그림은 입력 “Hemingway”에 대해 5개의 검색된 문서를 기반이며, 아래와 같이 각 생성 토큰에 대한 RAG-Token posterior p(zi| x, yi, y-i)를 시각화한 결과를 보여준다.

문서 1의 posterior는 “A Farewell to Arms”를 생성할 때 높고, 문서 2의 posterior는 “The Sun Also Rises”를 생성할 때 높다.
아래는 Jeopardy Quesion Generation과 MS-MARCO에 대한 예이다.

아래는 Jeopardy Quesion Generation에 대한 인간 평가 결과이다.

Additional Results

RAG-Sequence의 생성이 RAG-Token의 생성보다 더 다양하며, 둘 다 다양성을 촉진하는 디코딩이 필요 없이 BART보다 훨씬 더 다양하다는 것을 보여준다.
아래는 ablation 결과이다.

아래는 검색된 문서 수에 따른 Natural Questions (NQ) 성능을 비교한 그래프이다.
