본문 바로가기
연구노트/PAPER

Retrieval-Augmented Generation forKnowledge-Intensive NLP Tasks

by 스꼬맹이브로 2026. 4. 16.
728x90
반응형

Lewis, Patrick, et al. "Retrieval-augmented generation for knowledge-intensive nlp tasks."  Advances in neural information processing systems  33 (2020): 9459-9474.

1. 한 줄 핵심 요약

LLM의 파라메트릭 지식의 한계를 non-parametric 외부 메모리(검색)와 결합하여, 지식 집약적 NLP 태스크를 위한 범용 생성 프레임워크를 제안한다.

 


2. 문제 정의

왜 이 논문이 등장했는가?

2020년 당시 BERT, T5, BART 등 대형 사전학습 모델이 NLP 벤치마크를 지배하고 있었다.

이 모델들은 파라미터 안에 방대한 factual knowledge를 내재화하지만, 그 지식에 접근하고 정밀하게 활용하는 능력은 근본적으로 제한적이었다.

기존 방법의 근본적 한계:

  • Closed-book 모델(T5, BART): 지식이 파라미터에 고정되어 있어 업데이트 불가, hallucination 발생, 어떤 근거로 생성했는지 추적 불가
  • 기존 Retrieval 모델(DrQA, DPR+extractive reader): retrieve-then-extract 패러다임으로, 반드시 문서에 정답 span이 존재해야 하며 자유로운 생성(abstractive generation)이 불가능
  • REALM, ORQA: retrieval + MLM 조합을 시도했으나 extractive QA에만 국한, seq2seq 생성 태스크로 확장하지 못함

핵심 병목: "검색의 유연성"과 "생성의 표현력"을 동시에 갖춘 범용 아키텍처가 없었다.


3. 핵심 아이디어

검색된 문서를 latent variable로 처리하고 marginalize함으로써, retriever와 generator를 end-to-end로 학습시키는 범용 seq2seq 프레임워크

직관적 설명:

모델이 질문을 받으면 Wikipedia에서 관련 문서 K개를 찾아온다.

그런데 이 문서들 중 어떤 것이 실제로 정답 생성에 기여했는지는 명시적으로 알 수 없다.

그래서 논문은 "어떤 문서가 맞는지 모르니, K개 문서 모두에 대해 생성 확률을 계산한 뒤 합산(marginalize)하자"는 전략을 취한다.

이 marginalization이 핵심이다.

단순히 top-1 문서만 쓰는 것이 아니라, 여러 문서의 기여를 확률적으로 가중합산함으로써 다음과 같은 장점을 갖는다.

  • retriever가 완벽하지 않아도 robust하게 동작
  • 문서별 generator 확률과 retriever 확률이 jointly 학습됨 
    → 동시에 학습되므로 retriever는 "generator가 답 잘 만들 수 있는 문서"를 찾는 방향으로 자동으로 발전
  • retrieval supervision(어떤 문서가 정답인지 라벨) 없이도 학습 가능

4. 핵심 메커니즘

4-1. 전체 Framework

입력 x → Retriever → top-K 문서 {z₁,...,zₖ}
                          ↓
              각 zᵢ에 대해 Generator가 y 생성
                          ↓
              문서에 대한 marginalization → p(y|x)

 

4-2. Retriever: DPR (Dense Passage Retriever)

입력: 쿼리 x

출력: top-K 문서와 각 문서의 retrieval 확률 $p_η(z|x)$

$$pη​(z∣x)∝exp(d(z)ᵀq(x))$$

$$d(z)=BERTd(z), q(x)=BERTq(x)$$

 

이 수식의 목적:

  • d(z): 문서 z를 BERT로 인코딩한 dense vector. 문서의 "의미적 내용"을 고차원 공간에 표현
  • q(x): 쿼리 x를 BERT로 인코딩한 dense vector. 쿼리의 "정보 요구"를 동일 공간에 표현
  • d(z)ᵀq(x): 내적(inner product). 두 벡터가 같은 방향일수록 값이 크고, 즉 의미적으로 유사할수록 높은 확률을 부여

- 왜 inner product인가?

코사인 유사도와 달리 MIPS(Maximum Inner Product Search)로 sub-linear 시간 내에 top-K를 찾을 수 있어 21M 문서 규모에서 실용적이다.

이 수식이 없으면 dense retrieval 자체가 계산 불가능하다.

- 왜 이런 설계를 했는가?

BM25(기존 방식) 같은 sparse retrieval은 "키워드 매칭" 기반이라 의미적으로 관련되나 단어가 다른 문서를 놓친다.

Dense bi-encoder는 의미 공간에서 유사도를 계산하므로 paraphrase나 implicit knowledge 검색에 강하다.

-중요한 트레이드오프

문서 encoder(BERT_d)는 학습 중 고정(freeze).

21M 문서를 매 step마다 재인코딩하는 것은 REALM처럼 비용이 너무 크기 때문이다.

대신 query encoder만 fine-tune하여 효율성을 확보했다.


4-3. Generator: BART-large

입력: 쿼리 x와 검색된 문서 z를 concatenate한 시퀀스

출력: 목표 시퀀스 y의 각 토큰 확률

$$p_\theta(y_i | x, z, y_{1:i-1})$$

- 왜 BART인가?

BART는 denoising 사전학습으로 인해 noisy/incomplete 입력에서도 coherent한 텍스트를 생성하는 능력이 뛰어나다.

검색 문서와 쿼리를 단순 concatenation하면 입력이 길고 heterogeneous해지는데, BART의 인코더-디코더 구조가 이를 잘 처리한다.

- 대안과의 비교 

T5도 seq2seq 모델이지만 당시 BART가 생성 태스크에서 더 우수했다.

GPT 계열 decoder-only 모델은 문서와 쿼리를 함께 처리하는 구조적 분리가 어렵다.


4-4. 두 가지 Marginalization 모델

[RAG-Sequence]

$$p_{\text{RAG-Seq}}(y|x) \approx \sum_{z \in \text{top-k}} p_\eta(z|x) \prod_{i}^{N} p_\theta(y_i|x,z,y_{1:i-1})$$

이 수식이 계산하는 것:

문서 z가 주어졌을 때 전체 시퀀스 y를 생성할 확률을 문서별로 계산한 뒤, retrieval 확률로 가중합산

→ 하나의 문서가 전체 답변을 책임진다. 각 문서로 독립적인 beam search를 실행하고, 결과를 합산한다.

- 왜 이런 구조인가?

답변이 단일 출처에서 나오는 경우(factoid QA)에 적합하다.

단, 디코딩 시 각 문서마다 별도 beam search가 필요하므로 연산 비용이 크다.

 

[RAG-Token]

$$p_{\text{RAG-Tok}}(y|x) \approx \prod_{i}^{N} \sum_{z \in \text{top-k}} p_\eta(z|x) p_\theta(y_i|x,z_i,y_{1:i-1})$$

이 수식이 계산하는 것:

각 토큰 y_i를 생성할 때마다, K개 문서 각각에서의 생성 확률을 retrieval 확률로 가중합산

  토큰마다 다른 문서를 참조할 수 있다. "Hemingway" 예시에서 "The Sun Also Rises"를 생성할 때는 Document 2를 강하게 참조하고, "A Farewell to Arms"를 생성할 때는 Document 1을 참조하는 식이다.

- 왜 이런 구조인가? 

여러 문서의 정보를 하나의 답변 안에 통합해야 할 때 강력하다.

표준 autoregressive beam search로 디코딩 가능하여 효율적이다.

 

 

* 두 모델의 근본적 차이:

RAG-Sequence는 document-level marginalization, RAG-Token은 token-level marginalization.

이는 "어떤 단위에서 문서 불확실성을 해소하는가"의 차이로, 태스크 특성에 따라 성능 차이를 만든다.


4-5. Training Objective

$$\min_{\eta, \theta} \sum_{j} -\log p(y_j | x_j) = \sum_{j} -\log \sum_{z \in \text{top-k}} p_\eta(z|x_j) \cdot p_\theta(y_j|x_j, z)$$

이 수식의 목적:

retriever와 generator를 동시에, retrieval supervision 없이 학습

- 왜 이 형태인가?

z(어떤 문서가 정답에 기여했는가)는 관측 불가능한 latent variable이다.

이를 marginalize out함으로써, 모델은 "올바른 출력 y를 만드는 데 도움이 되는 z를 선택하도록" 암묵적으로 retriever를 유도한다.

만약 이 marginal likelihood를 쓰지 않고 특정 z에 대해서만 학습하면, retriever는 별도 supervision 없이는 학습되지 않는다.

Adam으로 최적화, document encoder는 freeze, query encoder + BART generator만 fine-tune.


 

4-6. Decoding

  RAG-Token RAG-Sequence
방식 표준 beam search(token-level transition probability) 문서별 beam search 후 hypothesis 합산
비용 낮음 높음(Thorough)/근사 가능(Fast)
특성 다문서 통합에 강함 단일 출처 일관성에 강함

5. 기존 방법 대비 차별점

기존 retrieve-and-extract 방식(DPR+reader)은 정답이 문서 내 span으로 존재해야 한다는 근본 제약이 있다.

RAG는 이를 생성으로 대체하여, 문서에 정답이 verbatim 없어도 정답을 생성할 수 있다(NQ에서 관련 문서 없는 경우에도 11.8% 정확도 달성).

REALM은 retrieval을 사전학습에 통합했으나 extractive QA에 한정되고, 학습 비용이 매우 크다(document index를 주기적으로 재구축).

RAG는 fine-tuning 단계에서만 retrieval을 통합하여 범용성과 효율성을 동시에 달성했다.

T5/BART 같은 parametric-only 모델 대비 지식 업데이트가 재학습 없이 index hot-swap만으로 가능하다는 점이 실용적으로 결정적인 차이다.


6. 후속 연구 영향

RAG는 현재 LLM 기반 시스템의 표준 아키텍처인 RAG pipeline의 원형이 되었다.

ChatGPT 이후 enterprise LLM 응용에서 hallucination 완화의 de facto 방법론으로 자리잡았다.

직접적 후속 연구로는 FiD(Fusion-in-Decoder), Atlas, REPLUG 등이 있으며, retriever-generator 상호작용을 더 정교하게 만드는 방향으로 발전했다.

또한 dense retrieval 자체의 발전(Contriever, E5 등)과 결합되어 retrieval 품질 향상으로 이어졌다.

LLM 시대에서는 in-context learning + retrieval 형태(LlamaIndex, LangChain 등)로 재해석되었고, retriever를 별도 학습 없이 frozen LLM + vector DB 형태로 구현하는 실용적 변형이 폭발적으로 확산되었다.


 

7. 반드시 가져가야 할 개념/스킬

  • Latent variable marginalization으로 weak supervision 학습: 어떤 문서가 정답에 기여했는지 라벨 없이도, marginal likelihood를 최대화함으로써 retriever를 암묵적으로 학습시키는 설계 패턴. retrieval supervision이 없는 현실 문제에 직접 적용 가능
  • Parametric vs Non-parametric memory의 역할 분리: 모델 파라미터(암묵적, 편집 불가)와 외부 인덱스(명시적, 즉시 업데이트 가능)를 분리 설계하는 시스템 아키텍처 관점. 지식 업데이트 빈도와 모델 재학습 비용 간 트레이드오프를 다루는 모든 시스템 설계에 적용됨
  • Bi-encoder + MIPS 패턴: Dense retrieval의 핵심 구조. 문서와 쿼리를 독립적으로 인코딩하여 inner product로 유사도를 계산하는 구조는, 문서 인코딩을 오프라인 사전계산 가능하게 만들어 대규모 검색을 현실적으로 만든다
  • Document-level vs Token-level marginalization의 트레이드오프: 생성 단위에서 불확실성을 어떻게 처리할 것인가라는 설계 결정이 태스크 성능과 계산 비용에 미치는 영향을 분석하는 실험적 사고방식
  • Index hot-swapping을 통한 지식 업데이트 검증 방법: 2016년/2018년 Wikipedia 덤프 비교 실험처럼, 모델의 지식 소스를 교체하여 지식 의존성을 분리 검증하는 실험 설계 기법
728x90
반응형
LIST