:)

[RAG/Core] RAG : Retrieval-Augmented Generation for Knowledge-Intensive NLP Task 본문

Paper Review

[RAG/Core] RAG : Retrieval-Augmented Generation for Knowledge-Intensive NLP Task

andre99 2024. 12. 28. 09:51

0. Abstract

  • Pre-trained Language Models의 한계: knowledge-intensive tasks에서는 특정한 과제에 최적화된 모델보다 성능이 떨어짐.
  • RAG 모델은 parametric memory와 non-parametric memory를 결합하여 텍스트 생성함.
  • parametric memory는 사전 학습된 seq2seq 모델, non-parametric memory는 pre-trained neural retriever로 접근 가능한 위키피디아의 벡터 인덱스.
  • RAG 모델은 문장을 생성하는 동안 필요한 지식을 외부 데이터베이스에서 검색해 가져옴 → 이를 통해 더 정확한 정보를 바탕으로 텍스트를 생성 가능함.

1. Introduction

  • Pre-trained neural language models은 외부 메모리에 접근하지 않고도 지식 저장 & 활용 가능하지만 정확한 정보 접근과 조작의 한계.
  • 실험 결과, RAG는 오픈 도메인 QA 및 추상적 질문 생성에서 기존 모델을 능가하는 성과를 냈으며 non-parametric memory를 업데이트해 최신 지식 반영도 가능.

2. Methods

RAG 모델 구성 요소

  • Retriever: 입력 ‘x’로부터 관련 문서 검색
  • Generator: 검색된 문서 ‘z’와 입력 ‘x’를 기반으로 타겟 시퀀스 ‘y’ 생성

2.1 Models

  • RAG-Sequence Model : 하나의 문서로 전체 시퀀스 생성
  • RAG-Token Model : 각 토큰을 생성할 때마다 다른 문서를 활용해 더 다양한 답변 생성 가능

2.2 Retriever: DPR

Bi-encoder를 사용해 쿼리 q(x)와 문서 d(z)를 각각 BERT로 인코딩하여 벡터화

 

2.3 Generator: BART

BART-large 모델을 활용해 검색된 문서 ‘z’와 입력 ‘x’를 결합하여 시퀀스를 생성

 

2.4 Training

쿼리 인코더와 BART만 파인튜닝, 문서 인코더는 고정

 

2.5 Decoding

  • RAG-Token: 각 토큰마다 다른 문서 사용 가능, 빔 검색을 통해 최적의 토큰 생성
  • RAG-Sequence: 단일 문서로 전체 시퀀스를 생성

3. Experiments

3.1 Open-domain Question Answering

  • 질문과 답변을 입력-출력 쌍으로 간주하여 RAG를 훈련.
  • RAG는 추출 기반 QA 및 Closed-Book QA 모델과 비교.
  • 평가 데이터셋: Natural Questions, TriviaQA, WebQuestions, CuratedTrec.

3.2 Abstractive Question Answering

  • RAG를 사용해 추출형이 아닌 생성형 답변 생성.
  • MSMARCO NLG v2.1 데이터셋으로 실험. Wikipedia 기반으로 일부 질문에는 답변 한계 존재.

3.3 Jeopardy Question Generation

  • Jeopardy 형식의 질문 생성 실험: 정확하고 사실 기반의 질문을 생성하는 것이 목표.
  • SearchQA 데이터셋 사용 (훈련: 100K, 개발: 14K, 테스트: 27K).
  • BART 모델과 비교하여 RAG 모델 평가. Q-BLEU-1을 활용해 정확도 평가, 사실성 및 특이성에 대한 인간 평가 수행.

3.4 Fact Verification

  • FEVER 데이터셋 사용: 주어진 주장에 대해 Wikipedia 근거를 검색하고, 참/거짓/판단 불가로 분류.
  • RAG 모델은 검색 증거에 대한 지도 학습 없이 훈련, 실생활에서 활용 가능성 높임.
  • 3가지 레이블(서포트/반박/불충분) 및 2가지 레이블(서포트/반박) 분류 실험, 정확도 보고.

4. Results

4.1 Open-domain Question Answering

  • RAG 모델은 4개의 오픈 도메인 QA 작업에서 기존 모델들과 비교해 최고 성능을 기록.
  • RAG는 “closed-book” 접근법과 “open-book” 검색 기반 접근법의 장점을 결합. 추출적 모델과 달리 생성 모델을 사용해, 답이 정확히 문서에 없더라도 적합한 답을 생성.

4.2 Abstractive Question Answering

  • RAG-Sequence는 MS-MARCO NLG에서 BART보다 높은 성능을 기록, 생성된 답변의 사실성이 더 우수.
  • RAG는 정보 부족 문제에도 불구하고 더 정확하고 다양한 텍스트를 생성함.

4.3 Jeopardy Question Generation

  • RAG-Token은 RAG-Sequence와 BART보다 Jeopardy 질문 생성에서 더 우수한 성능을 보였으며, Q-BLEU-1 점수에서 뛰어난 성과를 기록.
  • RAG는 BART보다 더 정확하고 구체적인 답변을 생성하며, 여러 문서에서 정보를 결합하여 정확한 답변을 생성하는 능력을 보여줌.

4.4 Fact Verification

  • RAG는 복잡한 파이프라인을 사용하는 최신 모델들과 유사한 성과를 보였으며, 자체 증거 검색을 통해 높은 정확도를 달성.
  • RAG가 검색한 문서의 상위 문서가 FEVER에서 금본 증거와 일치하는 경우가 많음.

4.5 Additional Results

  • Generation Diversity: RAG 모델은 BART보다 더 다양하고 구체적인 생성 결과를 제공하며 RAG-Sequence는 RAG-Token보다 더 다양한 결과를 생성.
  • Retrieval Ablations: RAG는 학습된 검색기능을 통해 성능이 향상되며, BM25보다 RAG의 밀집형 검색기가 더 나은 결과를 보임.
  • Index hot-swapping: RAG는 비-매개변수 기억 모델로, 테스트 중에 지식을 간단히 업데이트할 수 있음.
  • Effect of Retrieving more documents: 검색 문서 수가 증가하면 성능과 실행 시간이 개선되며 RAG-Token은 10개 문서에서 최고 성능을 기록.