본 블로그 포스트에서 사용된 표, 이미지 및 기타 관련 자료는 해당 논문에서 발췌한 것입니다. 이 자료들은 논문의 내용을 요약하고 이해를 돕기 위한 참고용으로 제공됩니다. 또한, 해석 과정에서 일부 오류가 있을 수 있으니 원 논문을 참고하여 확인하시기 바랍니다.
논문 요약
초록(Abstract)
사전 훈련된 대규모 언어 모델은 매개변수 내에 사실적 지식을 저장할 수 있지만, 지식을 명확히 조작하거나 업데이트하는 것이 어렵다. 따라서 지식 집약적 NLP 과제에서는 기존 모델보다 검색 기반 접근 방식이 더욱 효과적일 수 있다.
본 논문에서는 검색-증강 생성(Retrieval-Augmented Generation, RAG) 모델을 제안한다. RAG 모델은 사전 훈련된 시퀀스-투-시퀀스(seq2seq) 생성 모델과 위키백과 기반의 비매개변수적 기억을 결합하여 정보 검색과 생성을 함께 수행한다. 이를 통해, RAG 모델은 보다 사실적이고 다양한 응답을 생성할 수 있다.
RAG 모델에는 RAG-Sequence와 RAG-Token의 두 가지 변형이 존재한다. RAG-Sequence는 전체 출력 시퀀스에서 동일한 검색 문서를 사용하는 방식이며, RAG-Token은 각 출력 토큰마다 서로 다른 검색 문서를 활용하는 방식이다.
본 논문에서는 RAG 모델을 다양한 지식 집약적 NLP 과제에서 평가한 결과, 기존 매개변수적(seq2seq) 모델과 검색-추출 모델보다 우수한 성능을 기록했다. 특히 개방형 질의 응답(Open-Domain QA) 과제에서 최첨단 성능을 달성했으며, 생성된 텍스트의 정확성, 다양성, 사실성이 개선되었음을 확인하였다.
1. 서론(Introduction)
사전 훈련된 신경망 언어 모델은 대량의 데이터를 학습하여 상당한 양의 지식을 내재화할 수 있다. 그러나 이러한 모델들은 새로운 정보를 추가하거나 기존 지식을 수정하는 것이 어렵고, 모델이 생성하는 응답의 출처를 명확히 밝히기 어려우며, 때때로 사실과 다른 응답(환각, hallucination)을 생성하는 문제가 있다.
이러한 한계를 해결하기 위해 매개변수적(Parametric) 기억과 비매개변수적(Non-Parametric) 기억을 결합한 하이브리드 모델이 제안되었다. 기존 연구에서는 검색 기반 질의 응답 모델(REALM, ORQA 등)이 도입되어 일부 성능 개선을 보였지만, 이러한 접근법은 주로 추출 기반(Extractive) 방식에 초점을 맞추었으며, 자연어 생성을 위한 일반적인 방법론으로 확장하는 데는 한계가 있었다.
본 논문에서는 검색-증강 생성(Retrieval-Augmented Generation, RAG) 모델을 제안한다. RAG는 사전 훈련된 시퀀스-투-시퀀스(seq2seq) 생성 모델(BART)을 매개변수적 기억으로, 위키백과(Wikipedia) 기반의 밀집 벡터 색인(Dense Vector Index)을 비매개변수적 기억으로 활용한다. 이를 통해 모델은 입력된 질의에 대해 관련 문서를 검색하고, 이를 바탕으로 보다 사실적이고 다양한 응답을 생성할 수 있다.
RAG 모델은 두 가지 방식으로 구성된다. RAG-Sequence는 전체 출력 시퀀스에서 동일한 검색 문서를 활용하는 방식이며, RAG-Token은 각 출력 토큰마다 서로 다른 검색 문서를 참조할 수 있도록 설계된 방식이다. 이러한 구조를 통해, RAG 모델은 기존의 매개변수적 언어 모델이나 특정 검색-추출 모델보다 우수한 성능을 발휘할 수 있다.
본 논문에서는 RAG 모델을 다양한 지식 집약적 NLP 과제에서 평가하고, 기존 최첨단 모델들과 비교하여 RAG가 보다 정확하고 구체적인 응답을 생성할 수 있음을 입증한다. 또한, 비매개변수적 기억을 업데이트하는 것만으로도 모델의 최신 정보를 반영할 수 있음을 보이며, 지속적인 데이터 업데이트가 필요한 환경에서도 효과적으로 활용될 수 있음을 강조한다.
결론적으로, 본 연구는 검색과 생성을 결합한 하이브리드 접근 방식이 지식 집약적 NLP 과제에서 강력한 성능을 발휘할 수 있음을 증명하며, 향후 더 넓은 범위의 자연어 처리 과제에서 응용될 가능성을 제시한다.

2. 방법(Methods)
2.1 Models
RAG(Retrieval-Augmented Generation) 모델은 입력 시퀀스 \( x \) 를 기반으로 관련 문서 \( z \) 를 검색하고, 이를 추가적인 컨텍스트로 활용하여 목표 시퀀스 \( y \) 를 생성하는 방식으로 동작한다. 모델은 크게 두 가지 요소로 구성된다.
1. 검색기(Retriever) \( p_\eta (z|x) \):
- 사전 훈련된 밀집 패시지 검색기(Dense Passage Retriever, DPR)를 사용해 입력 \( x \) 에 대해 상위 \( K \) 개의 관련 문서 \( z \) 를 검색한다.
2. 생성기(Generator) \( p_\theta (y|x, z) \):
- 검색된 문서 \( z \) 를 참고하여 응답 \( y \) 를 생성하는 seq2seq 모델(BART)을 사용한다.
RAG 모델의 두 가지 변형
1. RAG-Sequence 모델
RAG-Sequence 모델에서는 검색된 동일한 문서 \( z \) 를 바탕으로 전체 출력 시퀀스를 생성한다. 검색된 문서를 단일 잠재 변수(latent variable) 로 간주하고, 이를 마지날라이즈(marginalize)하여 최종 확률을 계산한다.
\[
p_{\text{RAG-Sequence}}(y|x) \approx \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y|x, z)
\]
보다 구체적으로, \( K \) 개의 검색된 문서를 기반으로 생성 모델이 출력할 시퀀스 확률을 각각 계산한 후, 이를 평균 내어 최종 예측 확률을 얻는다.
\[
p_{\text{RAG-Sequence}}(y|x) = \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) \prod_{i} p_\theta (y_i | x, z, y_{1:i-1})
\]
즉, 모델이 동일한 검색 문서를 사용하여 전체 문장을 생성하며, 검색된 여러 문서에서 나온 예측 결과를 종합하는 방식이다.
2. RAG-Token 모델
RAG-Token 모델에서는 각 출력 토큰마다 서로 다른 검색 문서를 활용할 수 있도록 설계되었다. 이는 보다 유연한 정보 조합을 가능하게 하며, 모델이 각 토큰별로 가장 적절한 문서를 선택하여 사용할 수 있도록 한다.
\[
p_{\text{RAG-Token}}(y|x) \approx \prod_{i} \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y_i | x, z, y_{1:i-1})
\]
즉, 출력의 각 토큰 \( y_i \) 를 예측할 때마다 검색된 \( K \) 개의 문서를 고려하고, 이를 마지날라이즈하여 최종 확률을 계산한다.
RAG 모델의 특징
- RAG-Sequence: 동일한 검색 문서를 기반으로 전체 응답을 생성하는 방식으로, 검색된 문서가 잘 정리된 경우 효과적이다.
- RAG-Token: 각 토큰마다 서로 다른 문서를 참조할 수 있어 보다 다양한 정보를 반영할 수 있으며, 문서가 분산된 정보를 포함할 때 유리하다.
이 두 모델은 개방형 질의 응답(Open-Domain QA), 자연어 생성(NLG), 사실 검증(Fact Verification) 등 다양한 지식 집약적 NLP 과제에서 활용될 수 있다.
2.2 Retriever
RAG 모델의 검색기(Retriever) \( p_\eta (z|x) \) 는 Dense Passage Retriever (DPR) 를 기반으로 한다. DPR은 질의(Query)와 문서(Passage)의 밀집 벡터 표현을 계산하고, 이를 활용하여 입력 질의 \( x \) 와 가장 관련성이 높은 문서 \( z \) 를 검색한다.
DPR의 구조
DPR은 이중 인코더(Bi-Encoder) 구조를 사용하여, 질의와 문서를 각각 독립적으로 임베딩한다.
- 문서 인코더(Document Encoder) \( d(z) \)
- 문서 \( z \) 를 BERT 기반 인코더를 사용하여 벡터로 변환한다.
- 문서 벡터:
\[
d(z) = \text{BERT}_{d}(z)
\]
- 질의 인코더(Query Encoder) \( q(x) \)
- 입력 질의 \( x \) 를 BERT 기반 인코더를 사용하여 벡터로 변환한다.
- 질의 벡터:
\[
q(x) = \text{BERT}_{q}(x)
\]
DPR을 활용한 문서 검색 과정
DPR은 최대 내적 검색(Maximum Inner Product Search, MIPS) 기법을 사용하여 입력 질의와 가장 관련성이 높은 문서를 빠르게 검색한다.
\[
p_\eta (z|x) \propto \exp \left( d(z)^T q(x) \right)
\]
즉, 문서 벡터 \( d(z) \) 와 질의 벡터 \( q(x) \) 의 내적(inner product)을 계산하여 문서의 적합도를 평가하며, 이 값을 확률 분포로 변환하여 검색 순위를 결정한다.
DPR 기반 검색의 특징
1. 효율적인 검색 가능:
- 사전 계산된 문서 임베딩을 활용하여 질의와 문서 간 유사도를 빠르게 계산할 수 있음.
- FAISS(Facebook AI Similarity Search)와 같은 라이브러리를 활용하여 수백만 개의 문서 중에서 빠르게 검색 가능.
2. 사전 훈련된 검색기 활용:
- DPR은 TriviaQA, Natural Questions(NQ) 등의 데이터셋을 활용해 미리 학습된 상태로 제공됨.
- 따라서 추가적인 학습 없이도 강력한 검색 성능을 발휘할 수 있음.
3. 비매개변수적(Non-Parametric) 기억 역할 수행:
- 모델이 질의에 대한 정보를 매개변수로 저장하는 것이 아니라, 외부 문서를 검색하여 정보를 반영함.
- 따라서 새로운 정보가 추가되었을 때 모델 자체를 다시 학습하지 않아도 검색 인덱스만 업데이트하면 최신 정보를 반영 가능.
2.3 Generator: BART
RAG 모델의 생성기(Generator) \( p_\theta(y|x, z) \) 는 BART(Bidirectional and Auto-Regressive Transformer) 기반의 시퀀스-투-시퀀스(seq2seq) 모델을 활용하여, 검색된 문서 \( z \) 를 참고하여 응답 \( y \) 를 생성한다.
BART의 구조
BART는 인코더-디코더(Encoder-Decoder) 아키텍처를 가지며, 다양한 텍스트 생성 및 복원(Task-Agnostic Pretraining)을 수행할 수 있도록 설계된 모델이다.
- 인코더(Encoder): 입력 텍스트(질의 \( x \) 및 검색된 문서 \( z \))를 처리하여 숨겨진 표현(hidden representation)으로 변환.
- 디코더(Decoder): 인코더에서 얻은 정보를 바탕으로 목표 출력 \( y \) 를 순차적으로 생성.
BART를 활용한 RAG의 응답 생성 과정
검색된 문서 \( z \) 를 활용하여 최종 응답 \( y \) 를 생성하는 확률은 다음과 같이 정의된다.
\[
p_\theta(y|x, z) = \prod_{i=1}^{N} p_\theta(y_i | x, z, y_{1:i-1})
\]
즉, 출력 시퀀스 \( y \) 의 각 토큰 \( y_i \) 는 이전까지 생성된 토큰 \( y_{1:i-1} \), 입력 질의 \( x \), 검색된 문서 \( z \) 에 조건부 의존하며, 오토레그레시브 방식으로 생성된다.
BART 모델은 검색된 문서와 입력 질의를 단순히 연결하여 인코더에 입력한다.
\[
\text{Input to Encoder} = \text{concat}(x, z)
\]
디코더는 이 인코딩된 정보를 기반으로 출력을 생성하며, 기본적인 BART의 사전 훈련 기법(denoising autoencoder)과 동일한 방식으로 동작한다.
BART 기반 RAG 생성기의 특징
1. 자연스러운 텍스트 생성
- BART는 사전 훈련된 상태에서 다양한 텍스트 변형 및 복원(task-agnostic learning)이 가능하므로, 보다 자연스럽고 유창한 응답을 생성할 수 있음.
2. 검색된 정보 활용
- 단순한 매개변수 기반(parametric) 모델과 달리, 검색된 문서 \( z \) 를 활용하여 보다 사실적이고 정확한 응답을 생성할 수 있음.
3. 모델 학습 방식
- RAG 모델은 검색기(DPR)와 생성기(BART)를 동시에 학습(fine-tuning)할 수 있으며, 이를 통해 검색과 생성을 함께 최적화할 수 있음.
2.4 Training
RAG 모델의 학습 과정은 검색기(Retriever, DPR)와 생성기(Generator, BART)를 함께 최적화하는 방식으로 진행된다. 그러나 검색된 문서 \( z \) 가 정답과 정확히 일치하는지에 대한 명시적인 정답(supervision)이 없기 때문에, 검색된 문서를 잠재 변수(latent variable)로 간주하여 마지날라이즈(marginalization)하는 방식으로 학습이 이루어진다.
RAG 모델의 학습 목표
RAG 모델은 주어진 입력 \( x \) 에 대해 목표 출력 \( y \) 의 확률을 최대화하는 방식으로 학습된다. 이를 위해 음의 로그 우도(Negative Log-Likelihood, NLL) 를 최소화하는 손실 함수(objective function)를 사용한다.
\[
\mathcal{L} = - \sum_{j} \log p(y_j | x_j)
\]
즉, 모든 학습 데이터 샘플 \( (x_j, y_j) \) 에 대해 정답 \( y_j \) 이 나올 확률의 로그 값을 최소화하는 방식으로 학습이 진행된다.
* 부연 설명
RAG 모델은 주어진 입력 \( x \) 에 대해 목표 출력 \( y \) 의 확률을 최대화하는 방식으로 학습된다. 이를 위해 음의 로그 우도(Negative Log-Likelihood, NLL) 를 최소화하는 손실 함수(objective function)를 사용한다.
\[
\mathcal{L} = - \sum_{j} \log p(y_j | x_j)
\]
즉, 모든 학습 데이터 샘플 \( (x_j, y_j) \) 에 대해 정답 \( y_j \) 가 나올 확률 \( p(y_j | x_j) \) 의 로그 값(우도)을 최소화하는 것은, 정답 확률 자체를 최대화하는 것과 동일한 효과를 가짐.
검색기(Retriever)와 생성기(Generator)의 동시 학습
RAG에서는 검색된 문서 \( z \) 를 명확한 정답으로 지정하지 않고, 여러 문서를 활용하여 확률적으로 최적의 출력을 생성하도록 학습한다. 따라서 검색된 문서들을 잠재 변수로 간주하고, 이를 마지날라이즈(marginalization)하여 최적의 출력 확률을 계산한다.
1. RAG-Sequence의 학습 과정
- 전체 출력 시퀀스 \( y \) 에 대해 동일한 문서 \( z \) 를 참조하여 학습.
- 손실 함수:
\[
p_{\text{RAG-Sequence}}(y|x) = \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y|x, z)
\]
- 즉, 상위 \( K \) 개 검색 문서를 활용하여 최종 출력을 예측하는 확률을 계산한 후, 이를 평균(marginalization)하여 최적화.
2. RAG-Token의 학습 과정
- 출력 시퀀스의 각 토큰 \( y_i \) 마다 서로 다른 검색 문서 \( z \) 를 활용하여 학습.
- 손실 함수:
\[
p_{\text{RAG-Token}}(y|x) = \prod_{i} \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y_i | x, z, y_{1:i-1})
\]
- 즉, 출력의 각 토큰이 가장 적절한 문서를 기반으로 생성될 확률을 최대화하는 방식으로 학습됨.
문서 인코더(Document Encoder) 업데이트 여부
- 문서 인코더 \( BERT_d \) 를 업데이트하는 것은 계산 비용이 크기 때문에, 문서 인코더와 인덱스는 고정(frozen)된 상태로 유지한다.
- 대신 질의 인코더(Query Encoder, \( BERT_q \)) 와 생성기(Generator, \( BART \)) 만 미세 조정(Fine-Tuning)한다.
2.5 Decoding
RAG 모델에서 디코딩(decoding)은 검색된 문서 \( z \) 를 활용하여 최적의 출력 \( y \) 를 생성하는 과정이다. RAG-Sequence와 RAG-Token은 각각 서로 다른 방식으로 디코딩을 수행하며, 이를 최적화하기 위해 다양한 마지날라이제이션(marginalization) 기법이 적용된다.
RAG-Token의 디코딩 방식
RAG-Token 모델은 각 출력 토큰 \( y_i \) 마다 서로 다른 검색 문서 \( z \) 를 활용할 수 있도록 설계되었다. 즉, 출력의 각 토큰이 최적의 문서를 기반으로 생성될 확률을 마지날라이즈하여 디코딩한다.
\[
p'_{\theta}(y_i | x, y_{1:i-1}) = \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y_i | x, z, y_{1:i-1})
\]
디코딩 과정에서는 위의 확률을 기반으로 표준 빔 서치(beam search) 알고리즘을 사용하여 최적의 출력을 생성한다.
RAG-Sequence의 디코딩 방식
RAG-Sequence 모델에서는 출력 전체를 하나의 검색 문서에 기반하여 생성하므로, 표준적인 오토레그레시브(seq2seq) 디코딩 방식과 다소 차이가 있다.
\[
p_{\text{RAG-Sequence}}(y|x) = \sum_{z \in \text{top-K}(p(·|x))} p_\eta (z|x) p_\theta (y|x, z)
\]
여기서 출력 \( y \) 전체의 확률이 단일 검색 문서 \( z \) 에 대해 계산된 후, 상위 \( K \) 개 문서를 마지날라이즈하여 최종 확률을 결정한다.
RAG-Sequence의 경우, 단일 빔 서치로는 최적의 문서를 찾는 것이 어렵기 때문에, 추가적인 전방 패스(forward pass)를 수행하여 확률을 보정한다.
디코딩 최적화를 위한 두 가지 기법
1. Thorough Decoding (철저한 디코딩)
- 모든 검색 문서 \( z \) 에 대해 추가적인 전방 패스를 실행하여, 빔 서치에서 생성되지 않은 경우에도 확률을 계산한다.
- 보다 정확한 확률을 얻을 수 있으나, 연산 비용이 크다.
2. Fast Decoding (빠른 디코딩)
- 빔 서치에서 생성되지 않은 경우, 확률을 0으로 간주하여 추가적인 전방 패스를 생략한다.
- 연산 속도가 빠르지만, Thorough Decoding에 비해 정확도가 낮을 수 있다.
3 Experiments
3.1 Open-domain Question Answering
RAG 모델은 개방형 질의 응답(Open-Domain Question Answering, ODQA) 과제에서 기존의 추출 기반(Extractive) QA 모델과 폐쇄형(Closed-Book) QA 모델보다 높은 성능을 기록했다.
실험에서는 Natural Questions (NQ), TriviaQA (TQA), WebQuestions (WQ), CuratedTrec (CT) 데이터셋을 활용하여 평가를 진행했다. 작은 데이터셋인 WQ와 CT는 NQ 데이터셋에서 사전 학습된 RAG 모델을 기반으로 평가되었다.
결과적으로, RAG-Sequence 모델이 모든 데이터셋에서 최상의 성능을 보였으며, 특히 기존의 추출 기반 QA 모델보다 더 높은 정확도를 기록했다.
- 기존 추출 기반 QA 모델은 검색된 문서에 정답이 포함되지 않은 경우 답변을 생성하지 못하지만, RAG 모델은 여러 문서에서 정보를 종합하여 답변을 생성할 수 있다.
- 특히 정답이 검색된 문서에 포함되지 않은 경우에도 기존 모델보다 11.8% 더 높은 정확도로 답변을 생성했다.
이 실험을 통해, 검색 기반과 매개변수 기반을 결합한 RAG 모델이 개방형 질의 응답 과제에서 강력한 성능을 발휘함을 입증했다.
3.2 Abstractive Question Answering
RAG 모델은 개방형 추상적 질의 응답(Abstractive Question Answering) 과제에서도 평가되었으며, MS-MARCO NLG v2.1 데이터셋을 활용하여 성능을 비교했다.
- MS-MARCO NLG 데이터셋:
- 질문, 검색 엔진에서 검색된 10개의 패시지(Gold Passages), 그리고 정답 문장으로 구성됨.
- RAG 모델은 제공된 패시지를 사용하지 않고, 위키백과를 기반으로 독립적으로 정답을 생성.
결과 분석
- RAG-Sequence 모델이 BART 대비 BLEU 점수 기준으로 2.6 포인트 높은 성능을 기록함.
- 검색된 문서가 부족하거나 정답을 포함하지 않더라도 RAG 모델이 보다 사실적이고 구체적인 답변을 생성할 수 있음을 입증.
- 일부 MS-MARCO 질문은 위키백과만으로는 정확한 답변을 제공하기 어려운 경우도 있었지만, RAG 모델은 매개변수적 기억(parametric memory)과 검색된 정보를 조합하여 신뢰할 수 있는 응답을 생성함.
3.3 Jeopardy Question Generation
실험에는 SearchQA 데이터셋(훈련 10만 개, 개발 1.4만 개, 테스트 2.7만 개) 을 사용했으며, 비교 모델로 BART를 학습하여 성능을 측정했다. 평가 기준으로는 SQuAD-tuned Q-BLEU-1 점수를 활용했다. Q-BLEU는 기존 BLEU와 달리 엔터티(entity) 매칭에 더 높은 가중치를 부여하며, 사람이 평가한 질문 생성 품질과 더 높은 상관관계를 갖는다고 알려져 있다.
- 사실성(Factuality): 생성된 질문이 신뢰할 수 있는 외부 자료로 확인 가능한가?
- 구체성(Specificity): 주어진 정답(엔터티)과 생성된 질문 간의 상호 의존성이 높은가?
평가 방식으로는 pairwise comparative evaluation을 사용하여, 평가자들에게 같은 정답을 기반으로 생성된 두 개의 질문(BART와 RAG) 중 더 나은 질문을 선택하도록 했다. 선택지는 BART가 더 나음, RAG가 더 나음, 둘 다 좋음, 둘 다 나쁨 네 가지로 구성되었다.
- 추가적으로, 생성된 질문의 사실성(factuality)과 구체성(specificity)을 평가하기 위한 인간 평가(human evaluation)도 진행했다.
- RAG 모델의 자연어 생성(NLG) 능력을 평가하기 위해, 일반적인 QA 과제가 아닌 Jeopardy 스타일의 질문 생성 과제를 수행했다. 기존의 개방형 QA 데이터셋은 짧고 단순한 질문들로 구성되는 경우가 많지만, Jeopardy 질문은 특정 엔터티(entity)에 대한 사실적 진술을 기반으로 생성되어야 하므로 더 어려운 과제로 간주된다. 예를 들어, *"The World Cup"*이 정답일 경우, Jeopardy 질문은 "In 1986, Mexico scored as the first country to host this international sports competition twice." 와 같이 보다 구체적인 설명을 포함해야 한다.
3.4 Fact Verification
FEVER(Fact Extraction and VERification) 과제는 자연어로 주어진 주장(claim)이 위키백과(Wikipedia)에서 지원(supports)되는지, 반박(refutes)되는지, 혹은 정보 부족(not enough info)으로 판별할 수 없는지를 분류하는 문제이다. 이 과제는 관련 증거를 검색한 후(entailment reasoning), 이를 기반으로 주장에 대한 진위를 판별하는 과정이 포함되므로, 정보 검색과 논리적 추론을 결합한 어려운 문제로 여겨진다.
본 논문에서는 RAG 모델의 분류(classification) 능력을 평가하기 위해 FEVER 데이터를 활용하였다. 기존의 자연어 생성(NLG) 과제와 달리, FEVER에서는 정답 라벨(지원, 반박, 정보 부족)을 단일 출력 토큰으로 매핑하여 학습하였다.
특히, 기존 연구와 달리, RAG 모델은 검색된 증거(evidence)에 대한 지도(supervision) 없이 학습되었다. 이는 현실 세계에서 검색된 정보에 대한 명확한 정답(supervised retrieval signal)이 제공되지 않는 경우가 많기 때문에, 지도 없이 검색과 분류를 동시에 수행할 수 있는 모델이 더 광범위한 응용 가능성을 가질 수 있음을 의미한다.
FEVER 실험에서는 두 가지 변형된 설정을 테스트했다.
- 3가지 클래스 분류: supports / refutes / not enough info
- 2가지 클래스 분류: supports / refutes (Thorne & Vlachos 연구 방식)
두 실험 모두에서 라벨 정확도(label accuracy) 를 성능 지표로 사용하여 평가가 이루어졌다.
4 Results
4.1 Open-domain Question Answering
실험 설정 및 데이터셋
- 개방형 질의 응답(Open-Domain Question Answering, ODQA) 성능을 평가하기 위해 Natural Questions (NQ), TriviaQA (TQA), WebQuestions (WQ), CuratedTrec (CT) 데이터셋을 활용.
- RAG 모델을 기존의 폐쇄형(Closed-Book) QA 모델(T5) 및 검색 기반 QA 모델(DPR, REALM)과 비교.
결과 분석(Table1)
- RAG-Sequence가 대부분의 데이터셋에서 최상의 성능을 기록.
- 특히 정답이 검색된 문서에 포함되지 않은 경우에도 기존 모델보다 11.8% 더 높은 정확도로 답변을 생성할 수 있었음.
4.2 Abstractive QA Results
실험 설정
- 추상적 질의 응답(Abstractive QA) 성능을 평가하기 위해 MS-MARCO NLG v2.1 데이터셋을 활용.
- 기존의 BART 모델과 비교하여 RAG 모델이 더 자연스럽고 정확한 응답을 생성하는지 분석.
결과 분석(Table2)
- RAG-Sequence가 BART 대비 BLEU 점수 기준으로 2.6 포인트 높은 성능을 기록.
- 검색된 문서가 부족하거나 정답을 포함하지 않더라도 RAG 모델이 보다 사실적이고 구체적인 답변을 생성할 수 있음이 입증됨.

4.3 Jeopardy Question Generation
Table 2의 결과에 따르면, RAG-Token 모델이 RAG-Sequence 모델보다 Jeopardy 질문 생성에서 더 높은 성능을 기록했으며, 두 모델 모두 BART보다 우수한 Q-BLEU-1 점수를 보였다.
Table 4의 인간 평가(human evaluation) 결과에서는, 452개의 BART와 RAG-Token 생성 질문을 비교한 결과:
- BART가 더 사실적인(factual) 질문을 생성한 경우는 단 7.1%
- RAG가 더 사실적인 질문을 생성한 경우는 42.7%
- 두 모델이 모두 사실적인 경우는 17%
이러한 결과는 Jeopardy 질문 생성에서 RAG 모델이 기존 최첨단(NLG) 모델보다 더 효과적인 접근법임을 입증한다. 또한 평가자들은 RAG가 생성한 질문이 BART보다 더 구체적(specific)이라는 점을 확인하였다.
Jeopardy 질문은 두 개 이상의 정보를 조합해야 하는 경우가 많아, RAG-Token 모델이 여러 문서에서 내용을 결합하여 질문을 생성할 수 있기 때문에 더 좋은 성능을 보일 가능성이 크다.
추가 분석: 검색 기반 생성과 매개변수 기억의 상호작용
Figure 2의 분석에서는, RAG 모델이 특정 단어를 생성할 때, 어떤 검색 문서(posteriors)가 영향을 미치는지 살펴보았다.
- *"Sun"*이라는 단어를 생성할 때, 문서 2(The Sun Also Rises 관련)가 가장 높은 posterior를 가짐.
- *"A Farewell to Arms"*라는 단어를 생성할 때, 문서 1이 주요 posterior를 차지함.
- 하지만, 첫 번째 토큰이 생성된 이후에는 posterior 값이 평탄해지는(flattening) 현상이 관찰됨.
이것은 RAG 모델이 제목의 첫 단어를 검색 문서를 활용하여 유도하지만, 이후 단어는 모델의 매개변수적 기억(parametric memory)에서 불러와 생성한다는 것을 의미한다.
이 가설을 검증하기 위해 BART 모델 단독으로 "The Sun"이라는 부분적인 문장을 입력했을 때,
- "The Sun Also Rises is a novel by this author of The Sun Also Rises" 와 같은 문장을 생성함.
- 즉, "The Sun Also Rises"라는 제목 자체는 BART의 매개변수 기억에 저장되어 있으며, 검색 없이도 완성할 수 있음을 보여줌.
이러한 실험은 검색 기반 비매개변수적 기억(non-parametric memory)이 모델의 응답을 유도하고, 모델 내부의 매개변수적 기억(parametric memory)이 그 정보를 활용하여 보다 자연스럽게 응답을 생성하는 방식으로 동작함을 시사한다.


4.4 Fact Verification Results
RAG 모델의 FEVER 데이터셋 성능을 평가한 결과, 최첨단(SotA) 모델 대비 3-way 분류에서는 4.3% 낮은 성능을 기록했으며, 2-way 분류에서는 2.7% 차이로 근접한 성능을 보였다.
- 기존 SotA 모델은 복잡한 파이프라인 시스템과 도메인 특화 아키텍처를 활용하며, 검색 과정에서 중간 단계의 지도 학습(supervision)이 포함되었음.
- 반면, RAG 모델은 검색된 증거에 대한 지도 없이도 높은 정확도를 유지했다.
검색된 문서의 신뢰도 분석
- RAG 모델이 검색한 상위 kk 개 문서와 FEVER의 정답(Gold Evidence) 문서 간의 제목(title) 일치율을 분석한 결과:
- 최상위(top-1)로 검색된 문서가 정답 문서인 경우: 71%
- 상위 10개(top-10) 검색 문서 중 하나 이상이 정답 문서에 포함된 경우: 90%
이러한 결과는 RAG 모델이 지도 학습 없이도 높은 품질의 문서를 검색하여 사실 검증을 수행할 수 있음을 의미.
4.5 Additional Results
RAG 모델의 추가적인 실험 결과를 제시하며, 특히 텍스트 생성의 다양성, 검색기(retriever) 동결 실험, BM25 검색기와의 비교, 인덱스 변경 실험, 검색 문서 수의 영향 등을 분석하였다.
1. Jeopardy 질문 생성에서의 다양성(Diversity in Jeopardy Question Generation)
- 최근 연구에서 다양한 텍스트 생성을 유도하는 디코딩 기법(diversity-promoting decoding) 이 제안되었지만, RAG 모델은 별도의 기법 없이도 높은 다양성을 보였다.
- Table 5의 결과에 따르면, RAG-Sequence가 RAG-Token보다 더 다양한 질문을 생성했으며, 두 모델 모두 BART보다 훨씬 더 다양한 출력을 생성하였다.
2. 검색기 동결 실험(Retrieval Ablations)
- RAG 모델의 주요 특징 중 하나는 입력에 따라 검색을 동적으로 수행하는 것이다.
- 검색기의 중요성을 확인하기 위해, 검색기(Retriever)를 학습하지 않고 고정(freeze)한 상태에서 실험을 수행하였다.
- Table 6의 결과에서 확인할 수 있듯이, 학습된 검색기를 사용할 때 모든 과제에서 성능이 향상되었음을 확인했다.
3. BM25 검색기와의 비교(Comparison to BM25 Retriever)
- RAG의 밀집 검색기(Dense Retriever)와 전통적인 단어 기반 BM25 검색기를 비교하였다.
- 실험 결과:
- FEVER 데이터셋에서는 BM25 검색기가 더 나은 성능을 보였다.
- 이는 FEVER의 문장이 명확한 엔터티(entity)를 포함하는 경우가 많아, 단순한 단어 기반 매칭(word overlap)이 효과적이기 때문으로 분석됨.
- ODQA(개방형 QA)에서는 RAG의 밀집 검색기가 훨씬 더 높은 성능을 기록하였다.
- 이는 개방형 QA에서 단순한 단어 매칭보다 의미적으로 관련된 정보를 검색하는 것이 더 중요하기 때문으로 해석된다.
- FEVER 데이터셋에서는 BM25 검색기가 더 나은 성능을 보였다.
4. 인덱스 변경 실험(Index Hot-Swapping)
- RAG 모델의 비매개변수적 기억(non-parametric memory)이 쉽게 업데이트될 수 있는지를 확인하기 위한 실험을 수행하였다.
- 2016년 12월의 위키백과(DrQA Wikipedia dump)와 2018년 12월의 위키백과를 기반으로 두 개의 검색 인덱스를 구축한 후, 서로 다른 시점의 세계 지도자(총 82명)를 대상으로 질문을 수행하였다.
실험 결과:
- 2016년 인덱스를 사용하면 2016년 세계 지도자를 70% 정확도로 예측.
- 2018년 인덱스를 사용하면 2018년 세계 지도자를 68% 정확도로 예측.
- 잘못된 인덱스를 사용하면 성능이 급격히 저하됨.
- 2018년 인덱스로 2016년 지도자를 예측할 경우 정확도 12%.
- 2016년 인덱스로 2018년 지도자를 예측할 경우 정확도 4%.
이는 RAG 모델이 단순한 매개변수적 기억(parametric memory)보다 검색된 비매개변수적 기억(non-parametric memory)에 강하게 의존하며, 새로운 정보를 추가할 때 모델을 재학습할 필요 없이 인덱스만 교체하면 된다는 장점을 보여줌.
5. 검색 문서 수의 영향(Effect of Retrieving More Documents)
- RAG 모델은 학습 시 5개 또는 10개의 검색 문서를 활용하도록 설정되었으며, 테스트 시에는 검색 문서 수를 조정하여 성능 변화를 분석하였다.
- Figure 3 (왼쪽)에서는 검색 문서 수가 증가할수록 RAG-Sequence의 개방형 QA 성능이 지속적으로 향상됨을 확인.
- RAG-Token의 경우 검색 문서 수가 10개까지 증가할 때 성능이 향상되었으나, 그 이상에서는 성능 개선이 제한적이었음.
- Figure 3 (오른쪽)에서는 검색 문서 수 증가가 RAG-Token의 ROUGE-L 점수를 향상시키지만, BLEU-1 점수에는 부정적인 영향을 미칠 수 있음이 확인됨.
- RAG-Sequence는 검색 문서 수 변화에 상대적으로 덜 민감한 경향을 보였음.


5 Related Work
5장에서는 RAG 모델과 관련된 기존 연구를 정리하며, 정보 검색(Retrieval) 및 자연어 생성(Generation)과 결합된 다양한 접근법을 비교한다.
1. 개방형 질의 응답(Open-Domain Question Answering, ODQA)
- 기존 개방형 QA 시스템은 주로 정보 검색(retrieval)과 답변 생성(answering)을 별도로 수행하는 파이프라인 구조를 사용해왔다.
- 대표적인 검색 기반 QA 모델:
- DrQA: 단어 기반 BM25 검색기를 활용하여 정답이 포함된 문서를 검색한 후, 신경망 기반의 추출 모델을 사용하여 정답을 찾음.
- ORQA (Open-Retrieval Question Answering): 밀집 임베딩을 사용한 검색 모델을 활용하여 기존 BM25 기반 모델보다 높은 성능을 기록.
- REALM (Retrieval-Augmented Language Model): 검색기와 언어 모델을 공동 학습(joint training)하는 접근법을 제안.
RAG는 ODQA 접근 방식을 확장하여, 검색된 정보를 활용하여 추출형 답변뿐만 아니라 생성형 답변도 가능하도록 설계됨.
2. 검색 기반 자연어 생성(Retrieval-Augmented Generation, RAG)
- 기존 자연어 생성 모델(NLG)은 사전 훈련된 매개변수적 기억(parametric memory)에 의존하여 답변을 생성하지만, 이 방식은 새로운 정보를 반영하기 어렵다는 단점이 있음.
- 검색을 활용한 NLG 접근법:
- See et al. (2017): 요약(summarization)에서 검색 기반 정보를 활용하는 방법을 연구.
- Lewis et al. (2020): 생성 과정에서 검색된 문서를 참고하는 접근법을 제안.
- Khandelwal et al. (2020): 문장 생성 과정에서 과거 문장을 검색하여 활용하는 kNN-LM 모델을 개발.
RAG는 기존 NLG 모델의 한계를 극복하기 위해, 검색과 자연어 생성을 결합한 통합적인 프레임워크를 제안.
3. 검색기(Retriever)와 생성기의 공동 학습(Joint Training of Retriever and Generator)
- 기존 연구에서는 검색기와 생성기를 별도로 학습하는 경우가 많았음.
- 하지만 최근 연구에서는 검색기와 생성기를 함께 학습(joint learning)하는 방식이 효과적임을 보임.
- REALM: 검색기와 생성기를 공동 최적화하여 성능을 향상.
- RAG: 검색기(DPR)와 생성기(BART)를 함께 학습할 수 있도록 설계되어, 검색과 생성 간의 최적화가 가능하도록 함.
RAG 모델은 검색기의 정보 검색 능력과 생성기의 자연어 처리 능력을 통합하여 보다 정교한 응답을 생성할 수 있도록 설계됨.
4. 사실 검증(Fact Verification) 및 지식 기반 질의 응답(Knowledge-Intensive QA)
- FEVER와 같은 사실 검증(Fact Verification) 과제에서도 검색과 생성 모델을 결합하는 접근법이 연구됨.
- 기존 연구에서는 검색된 문서에서 정답을 추출하는 방식이 주로 사용되었지만, RAG는 검색 정보를 기반으로 자연어 생성까지 수행할 수 있도록 확장됨.
- 사실 검증과 지식 기반 QA의 주요 연구들:
- Thorne et al. (2018): FEVER 데이터셋을 개발하여 사실 검증 문제를 제안.
- Nie et al. (2020): FEVER에서 강력한 신경망 기반 검증 모델을 연구.
- T5, BART 등 사전 훈련된 언어 모델이 QA 및 검증 과제에서 활용됨.
RAG는 검색을 통해 정답을 찾아야 하는 지식 집약적(Knowledge-Intensive) 과제에서 매우 효과적인 방법론임을 입증.
6. Discussion
본 연구에서는 매개변수적 기억(parametric memory)과 비매개변수적 기억(non-parametric memory)을 결합한 하이브리드 생성 모델인 RAG(Retrieval-Augmented Generation)를 제안하였다.
- RAG 모델이 개방형 질의 응답(Open-Domain QA)에서 최첨단(state-of-the-art) 성능을 달성했음을 입증.
- 인간 평가 결과, 순수 매개변수적 모델(BART)보다 RAG의 응답이 더 사실적(factual)이고 구체적(specific)이라는 점이 확인됨.
- 검색기(retriever)의 학습된 검색 메커니즘이 효과적으로 작동함을 검증하였으며, 검색 인덱스(hot-swappable retrieval index)를 교체하는 방식으로 모델을 재훈련 없이 업데이트할 수 있음을 실험적으로 입증.
향후 연구에서는 검색기와 생성기를 사전 훈련(pre-training) 단계부터 공동 학습하는 방법을 탐색할 수 있으며, BART와 유사한 잡음 제거(denoising) 목표나 새로운 학습 목표를 도입하는 것도 고려할 수 있음.
본 연구는 매개변수적 기억과 비매개변수적 기억을 어떻게 효과적으로 결합할 것인가에 대한 연구 방향을 새롭게 제시하며, 다양한 NLP 과제에 적용될 가능성을 보여줌.
7. 사회적 영향 (Broader Impact)
긍정적인 영향
- RAG 모델은 위키백과(Wikipedia)와 같은 신뢰할 수 있는 정보원에 기반하여 사실적(factual)이고 근거 있는 응답을 생성할 수 있어, 기존 모델보다 "환각(hallucination)" 현상이 적다.
- 더 높은 수준의 통제 가능성(control)과 해석 가능성(interpretability)을 제공.
- 의료 데이터베이스와 결합하면 의료 분야의 개방형 QA 시스템으로 활용될 수 있으며, 업무 효율성을 높이는 데 기여할 수 있음.
잠재적인 위험 및 윤리적 고려 사항
- RAG 모델이 의존하는 외부 지식 소스(Wikipedia 등)가 반드시 완전한 사실만을 포함하는 것은 아니며, 편향(bias) 문제를 내포할 가능성이 있음.
- 기존의 GPT-2 모델과 유사한 윤리적 문제를 가질 수 있음.
- 허위 정보(fake news) 생성 가능성
- 소셜 미디어에서 악용 가능성 (예: 악성 댓글, 가짜 계정 생성)
- 스팸(spam) 및 피싱(phishing) 콘텐츠 자동 생성 위험
- 고급 언어 모델이 향후 몇 십 년 안에 다양한 직업 자동화를 가속화할 가능성이 있음.
이러한 위험을 줄이기 위해, AI 시스템을 활용하여 허위 정보 탐지 및 자동화된 스팸/피싱 방지 기술을 개발하는 것이 필요함.
Appendices for Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
A Implementation Details
[Open-Domain QA 및 생성 과제의 평가 설정 요약]
- 개방형 질의 응답(Open-Domain QA) 평가
- RAG-Token 모델: 15개의 검색 문서를 활용하여 테스트 진행.
- RAG-Sequence 모델: 50개의 검색 문서를 활용하며, Thorough Decoding 방식을 사용(응답이 짧기 때문).
- 디코딩 방식: QA에서는 탐욕적 디코딩(Greedy Decoding) 사용(빔 서치(Beam Search)는 성능 향상에 기여하지 않음).
- MS-MARCO 및 Jeopardy 질문 생성 평가
- 두 RAG 모델(RAG-Token, RAG-Sequence) 모두 10개의 검색 문서를 활용.
- 비교를 위해 BART-large 모델도 학습하여 베이스라인으로 사용.
- 디코딩 방식: 빔 사이즈(Beam Size) 4를 사용하며,
- RAG-Sequence는 Fast Decoding을 사용 (Thorough Decoding은 성능 향상에 기여하지 않음).
B Human Evaluation

- Figure 4는 인간 평가(human evaluation)에 사용된 인터페이스를 보여줌.
- 화면 위치(screen position)로 인한 편향(bias)을 방지하기 위해, 문장 A와 문장 B가 어느 모델의 출력인지 무작위로(randomly) 배정.
- 평가자(annotators)들은 인터넷 검색을 통해 주제를 조사할 수 있도록 허용됨.
- 평가 가이드라인:
- 상세한 지침(detailed instructions)과 예제(worked examples)를 포함한 탭을 제공.
- 정확도 검증:
- 평가자들의 신뢰도를 확인하기 위해 일부 정답(Gold Sentences)을 포함.
- 두 명의 평가자가 정답 문장에서 낮은 정확도를 보였으며, 이들의 평가 결과는 최종 결과에서 제외됨.
C Training setup Details
- 모든 RAG 모델과 BART 베이스라인은 Fairseq [45]을 사용하여 학습.
- 혼합 정밀도 부동소수점 연산(Mixed Precision Floating Point Arithmetic)을 적용하여 학습 성능 최적화.
- 8개의 32GB NVIDIA V100 GPU를 활용하여 분산 학습(distributed training) 수행.
- 단, 모델 학습 및 추론은 단일 GPU에서도 실행 가능.
- FAISS를 사용한 Maximum Inner Product Search(MIPS) 속도가 CPU에서도 충분히 빠름.
- 문서 인덱스(document index) 벡터를 CPU에 저장하며, 위키백과 전체를 저장하는 데 약 100GB의 CPU 메모리 필요.
- 이후 FAISS의 압축(compression) 기능을 활용하여 문서 인덱스를 36GB로 축소.
- 논문 제출 후, Hugging Face Transformers 라이브러리로 코드 포팅(porting).
- 새로운 구현은 기존 성능과 동등하지만, 더 간결하고 사용하기 쉬운 코드 구조로 개선됨.
- Hugging Face Transformers의 오픈소스 버전 공개.
- 실험 실행 및 RAG 모델 사용을 위한 코드 및 데모 제공:
- RAG 실험 실행 코드: https://github.com/huggingface/transformers/blob/master/examples/rag/README.md
- RAG 모델 인터랙티브 데모: https://huggingface.co/rag/
D Further Details on Open-Domain QA
- 개방형 QA 데이터셋에서는 동일한 질문에 대해 여러 개의 정답(annotation)이 존재할 수 있음.
- 추출 기반(Extractive) 모델들은 이러한 다중 정답을 활용하여, 문서 내에서 정답을 찾는 방식으로 학습.
RAG 모델의 다중 정답 처리 방식
1. 다중 정답 처리 (Handling Multiple Answer Annotations in Open-Domain QA)
- 개방형 QA에서는 하나의 질문에 대해 여러 개의 정답(annotations)이 존재할 수 있음.
- 기존 추출 기반(Extractive) QA 모델은 모든 정답을 활용하여 문서 내에서 정답을 찾는 방식으로 학습됨.
- RAG 모델도 Natural Questions(NQ) 및 WebQuestions(WQ)에서 다중 정답을 활용.
- 각 질문-정답(q, a) 쌍을 개별적으로 학습하여 소폭의 정확도 향상을 유도.
- TriviaQA의 경우, 일부 정답(이모지, 철자 변형 등)이 학습에 적합하지 않음.
- 이를 방지하기 위해, 검색된 상위 1000개 문서 내에 등장하지 않는 정답 후보는 필터링.
2. CuratedTrec 데이터 전처리 (CuratedTrec Preprocessing)
- CuratedTrec 데이터셋의 정답은 정규 표현식(regular expressions)으로 제공되며, 이는 정답 생성 모델(answer-generation models)에는 적합하지 않다고 지적됨.
- 이를 해결하기 위해, 다음과 같은 전처리(preprocessing) 단계를 수행:
- 각 질문(query)에 대해 상위 1000개의 문서를 검색.
- 이 문서들 중에서 정규 표현식과 가장 자주 매칭되는 정답을 학습용 타겟으로 설정.
- 매칭되는 정답이 없을 경우, 정규 표현식에서 비결정적(non-deterministic) 기호를 공백(whitespace)으로 대체하여 가능한 모든 조합을 생성하는 휴리스틱(heuristic) 방식을 적용.
3. TriviaQA 평가 방식 (TriviaQA Evaluation Setups)
- 개방형 QA 연구에서는 공개된 개발 데이터셋을 테스트 데이터셋으로 사용하는 것이 일반적.
- 이는 QA 데이터셋의 공식 테스트 세트가 종종 독해(reading comprehension) 평가에만 사용되기 때문.
- DPR 논문에서 사용된 데이터 분할 방식을 따라 결과를 보고함.
- TriviaQA 평가 방식 비교:
- 개방형 QA 연구에서는 TriviaQA Web Development Split을 테스트 세트로 활용.
- Roberts et al. (2020)은 TriviaQA의 공식 Wikipedia 테스트 세트를 사용.
- Févry et al. (2020)도 Roberts et al. (2020)과 비교하기 위해 공식 Wikipedia 테스트 세트를 활용.
- 논문의 RAG 모델도 두 가지 테스트 세트에서 평가하여 기존 연구와 공정한 비교를 가능하게 함.
- 실험 결과, 공식 Wikipedia 테스트 세트에서 성능이 더 높게 나타남.
- 이는 공식 Wiki 테스트 세트의 질문이 위키백과에서 더 쉽게 답변할 수 있도록 구성되어 있기 때문으로 분석됨.
E Further Details on FEVER
[FEVER 분류(Fact Verification) 방법 요약]
- FEVER 분류(Classification) 방법은 기존 연구 [32]의 방식을 따름.
- 모델이 주어진 주장을(claim) 먼저 재생성(re-generate)한 후, 최종 숨겨진 상태(final hidden state)의 표현을 사용하여 분류를 수행.
- 이후, 검색된 문서들에 대해 마지날라이제이션(marginalization)을 적용하여 최종 클래스 확률을 계산.
FEVER의 두 가지 서브태스크(Sub-tasks) 중 본 연구에서 다룬 부분
- FEVER 과제는 두 가지 주요 서브태스크로 구성됨.
- 주장을 "지원(Supported)", "반박(Refuted)", "정보 부족(Not Enough Info)" 중 하나로 분류하는 작업.
- 논문에서는 이 분류 작업을 집중적으로 연구.
- 위키백과에서 주장에 대한 증거 문장을 추출하는 작업.
- FEVER에서 사용된 위키백과 덤프(Wikipedia dump)와 본 연구에서 사용한 덤프가 다르므로, 직접적인 적용이 어려움.
- 향후 연구에서 이 문제를 해결할 계획.
- 주장을 "지원(Supported)", "반박(Refuted)", "정보 부족(Not Enough Info)" 중 하나로 분류하는 작업.
F Null Document Probabilities
- RAG 모델에 REALM 에서 제안한 "Null Document" 메커니즘을 추가하는 실험을 진행.
- Null Document란?
- 검색된 문서들 중 유용한 정보가 없는 경우를 모델링하기 위한 방법.
- 기존 검색된 개 문서에 빈(null) 문서를 추가로 검색하고, 이 문서에 대한 로짓(logit)을 예측한 후, k+1 개의 예측을 마지날라이제이션(marginalization)하여 최종 출력을 생성.
- Null Document란?
- Null Document Logit을 예측하는 방법 세 가지를 실험:
- Null Document 자체의 문서 임베딩(document embedding)을 학습.
- 고정된(static) 학습된 바이어스(bias) 값을 사용.
- 신경망(neural network)을 활용하여 logit을 예측.
- 그러나 이러한 방법들이 성능 향상에 기여하지 못했으며, 복잡성을 줄이기 위해 최종 모델에서는 제외.
MS-MARCO 실험에서 Null Document의 필요성 검토
- Open MS-MARCO 과제에서는 검색된 문서가 항상 유용한 정보를 포함하지 않을 수 있음.
- 실험 결과, 모델이 검색이 필요하지 않은 질문에 대해 특정한 문서 집합을 항상 검색하는 경향을 보였음.
- 이는 Null Document 메커니즘이 RAG 모델에서는 필요하지 않을 가능성을 시사함.
G Parameters
- RAG 모델의 학습 가능한(trainable) 파라미터 구성:
- DPR의 BERT-base 기반 질의(query) 인코더 및 문서(document) 인코더: 각각 110M(1.1억)개 파라미터
- 단, 문서 인코더는 학습하지 않음.
- BART-large 생성기: 406M(4.06억)개 파라미터
- 총 학습 가능한 파라미터 수: 626M(6.26억)개
- DPR의 BERT-base 기반 질의(query) 인코더 및 문서(document) 인코더: 각각 110M(1.1억)개 파라미터
- 기존 폐쇄형(Closed-Book) QA 모델과의 비교:
- T5-11B (11B, 110억 개 파라미터): 기존 최상위 폐쇄형 QA 모델
- T5-Large (770M, 7.7억 개 파라미터): RAG와 유사한 크기의 모델
- T5-Large는 Natural Questions에서 28.9 EM(정확 일치) 점수를 기록
- 반면, RAG-Sequence는 44.5 EM 점수를 기록하여 훨씬 우수한 성능을 보임.
- 즉, 하이브리드 모델(RAG)이 순수 매개변수 기반 모델(parametric-only)보다 훨씬 적은 파라미터로 높은 성능을 달성할 수 있음을 입증.
- 비매개변수적(non-parametric) 메모리 인덱스:
- 학습 가능한 파라미터는 아니지만, 21M(2,100만)개의 728차원 벡터로 구성됨.
- 총 15.3B(153억)개의 값을 포함.
- 메모리 및 디스크 사용량을 줄이기 위해 8비트 부동소수점(8-bit floating point) 형식으로 저장 가능.
H Retrieval Collapse
- 사전 실험(preliminary experiments)에서 일부 과제(예: 이야기 생성, story generation)에서 검색기가 "붕괴(collapse)"하는 현상을 관찰.
- 붕괴 현상:
- 모델이 입력과 무관하게 항상 동일한 문서를 검색하게 되는 문제.
- 검색기가 붕괴하면, 생성기(generator)는 검색된 문서를 무시하고 BART 모델과 동일한 방식으로 작동하게 됨.
- 결과적으로, RAG 모델의 성능이 BART와 동일해지고, 검색 기반 학습의 효과가 사라짐.
- 붕괴 원인 가능성:
- 일부 과제에서는 사실적 지식(factual knowledge)의 필요성이 덜 명확하여, 검색기의 학습이 약화될 수 있음.
- 이야기 생성(story generation)처럼 타겟 시퀀스가 긴 경우, 검색기에 전달되는 그래디언트(gradients)가 덜 명확할 수 있음.
- Perez et al. (2020) 연구에서도, 검색기의 최적화가 오히려 검색 결과를 왜곡(spurious retrieval)시킬 수 있음을 발견.
- 이는 검색기의 학습이 단순한 성능 향상만을 목표로 할 경우, 의미적으로 적절한 문서가 아니라 패턴적으로 유리한 문서를 검색하게 되는 문제를 초래할 수 있음을 시사.
I Number of instances per dataset
The number of training, development and test datapoints in each of our datasets is shown in Table 7.
