[논문 리뷰 - 3] Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

shanny·2025년 3월 31일

논문 리뷰

목록 보기
4/42

‼️ 개인 학습 내용으로, 오류가 있을 수 있습니다.

논문 URL - https://arxiv.org/abs/2005.11401

Methods

  • our models leverage two components: (i) a retriever pη (z|x) with parameters η that returns (top-K truncated) distributions over text passages given a query x and (ii) a generator pθ (yi|x, z, y1:i−1) parametrized by θ that generates a current token based on a context of the previous i − 1 tokens y1:i−1, the original input x and a retrieved passage z.
    -> 주요 요소 2가지
    1) 검색기 - 질의(query) x가 주어지면 텍스트 단락(passage)에 대한 상위 K개 분포('k개'로 절단된 분포)를 반환
    2) 생성기 - 이전 i-1개 토큰(y₁:i−₁), 원본 입력(input) x, 검색된 단락(retrieved passage) z를 기반으로 현재 토큰(yi) 생성

  • We propose two models that marginalize over the latent documents in different ways to produce a distribution over generated text. In one approach, RAG-Sequence, the model uses the same document to predict each target token. The second approach, RAG-Token, can predict each target token based on a different document.
    -> 두 가지 모델 제안
    1) RAG-Sequence - 각 타겟 토큰 예측 시, 동일한 문서 사용
    2) RAG-Token - 각 타겟 토큰 예측 시, 다른 문서 사용

Models

  • 모델 비교

    1) RAG-Sequence

    • 수학적으로 단일 잠재 변수(latent variable) 로 문서를 취급
    • 상위 K개 문서를 검색한 후 각 문서별 시퀀스 확률을 계산하고 주변화(marginalize)
    • 질문에 대한 답변 전체를 하나의 문서에서 참고해 일관된 내용 생성

    2) RAG-Token

    • 토큰마다 문서를 독립적으로 선택해 다양한 문서의 정보를 조합하여 답변을 생성
    • 복합적 질문에 대해 여러 문서의 내용을 유연하게 결합
특징RAG-SequenceRAG-Token
문서 사용 방식전체 시퀀스에 단일 문서 고정토큰마다 독립적 문서 선택
계산 복잡도상대적으로 낮음 (문서당 전체 시퀀스 계산)높음 (토큰별 문서 선택 반복)
적합한 태스크일관성 요구 답변 (예: 요약)복합 정보 통합 요구 답변 (예: QA)
  • 시퀀스 분류 작업 적용
    목표 클래스를 길이 1의 시퀀스로 간주하면 RAG-Sequence와 RAG-Token이 동일하게 동작합니다.
    • 예시: 감정 분석에서 클래스 레이블 예측 시 두 모델 구조가 수렴합니다.

Retriever : DPR(Dense Passage Retriever)

  • bi-encoder architecture(BERT - document, query)

  • Top k 문서 계산 시, MIPS(Maximum Inner Product Search) 사용

    • 목적: 질의 벡터 q(x)와 문서 벡터 d(z)의 내적값이 최대인 상위 k개 문서 검색.
    • 최적화: 대규모 데이터에서 효율적인 검색을 위해 근사 알고리즘(예: FAISS) 사용 → 계산 복잡도 준선형 시간(sub-linear time) 달성
  • 학습 데이터 : TriviaQA, Natural Questions같은 QA 데이터셋 활용

  • 비모수 메모리(Non-parametric Memory) : 사전 구축된 문서 인덱스

Generator : BART

  • BART-large 모델을 사용하여 텍스트 생성

    • 4억 개 파라미터를 가진 사전 훈련된 seq2seq 트랜스포머 모델.
    • BART의 사전 훈련 특징
  • 노이즈 제거 목적함수(denoising objective): 다양한 노이즈 함수로 텍스트를 손상시킨 후 원본 복구하는 방식으로 학습.

  • 성능: 다양한 생성 태스크에서 SOTA 달성, 동일 규모 T5 모델 대비 우수한 성능.

  • 파라메트릭 메모리(parametric memory): BART 생성기의 파라미터 θ를 지칭.

Training

  • 지도 신호 없이 검색기(retriever)와 생성기(generator)를 공동 학습

    • 어떤 문서가 검색되어야 하는지에 대한 명시적 레이블 없이 학습 진행
    • fine tuning 데이터셋의 입력/출력 쌍(x, y) 사용
  • 목적 함수

    • 음의 한계 로그 가능도(negative marginal log-likelihood) 최소화
    • Adam 옵티마이저로 확률적 경사 하강법(SGD) 적용
  • 파라미터 업데이트 전략

    • 문서 인코더(BERTd) 고정: 문서 인덱스 갱신은 계산 비용이 높음(REALM 사전 학습 방식과 유사)
    • 실험 결과, 고정 상태에서도 강력한 성능 달성 가능 확인
    • 질의 인코더(BERTq)와 BART 생성기만 미세 조정

Decoding

  • RAG-Token 모델의 추론 방식
    • RAG-Token은 자동 회귀 seq2seq 생성기*와 유사하게 작동
      • 자동회귀 생성(auto-regressive): 이전 토큰들을 기반으로 다음 토큰을 순차적으로 예측하는 방식 (GPT 등에서 사용)
    • 전이 확률(transition probability)
      • top-k 문서를 검색한 후, 각 문서에 대한 토큰 확률을 가중합하여 최종 토큰 확률 계산
      • 표준 빔 디코더(beam decoder) 적용 가능 → 효율적이고 직관적인 생성
  • RAG-Sequence 모델의 추론 방식
    • RAG-Sequence는 문서 단위로 시퀀스 생성하기 때문에 더 복잡
    • 기존 토큰 단위 likelihood로 분해 불가능 → 단일 빔 서치로 해결할 수 없음
    • Thorough Decoding (정확한 추론)
      • 각 문서 z마다 독립적으로 beam search* 실행 → 후보 시퀀스 집합 Y 생성
        - beam search: 각 단계에서 가장 가능성 높은 시퀀스 후보들을 유지하는 탐색 알고리즘
      • Y에 포함되지 않은 시퀀스에 대해 추가 계산
      • Fast Decoding (근사 추론) : 빔 서치에서 생성되지 않은 시퀀스의 확률을 0으로 근사화(추가 순전파 생략 → 계산 효율성 향상 (정확도 약간 희생))

Experiments

  • 위키피디아 데이터 사용

open-domain Question Answering

  • 개방형 질의응답(ODQA)은 지식 집약적 NLP 태스크의 대표적 평가 프레임워크로, 현실 세계 적용 가능성이 높음
  • RAG는 질문-답변 쌍(x, y)을 직접 학습 데이터로 사용하며, 음의 로그 가능도(negative log-likelihood) 최소화를 목표로 함.
  • 평가 데이터셋 및 설정
    • 데이터셋: Natural Questions(NQ), TriviaQA(TQA), WebQuestions(WQ), CuratedTrec(CT)

Abstractive Question Answering

  • RAG 모델은 단순한 추출형 QA(문서에서 정답 범위를 찾는 방식)를 넘어 자유 형식 생성형 답변 가능
  • MSMARCO NLG v2.1 데이터셋 활용
    • 질문(Question)
    • 검색 엔진에서 추출한 10개의 골드 패시지(Gold Passage = 질문과 직접 관련된 고품질 참조 문서)
    • 패시지 기반 생성 답변(Full-sentence Answer)

Jeopardy Question Generation

  • 비QA 환경에서의 RAG 생성 능력 평가 : 기존 QA 태스크의 짧고 단순한 질문 대신 Jeopardy 형식의 복잡한 질문 생성을 통해 모델의 지식 활용도와 언어 생성 능력을 검증
  • 데이터셋 및 평가 지표
    • 데이터셋: SearchQA
    • 비교 모델: BART
    • 평가 방법:
      • Q-BLEU-1: 표준 BLEU 대비 엔터티 매칭 가중치 강화 → 인간 평가와 높은 상관관계
        • 인간 평가:
          1) 사실성(Factuality): 생성 질문이 신뢰할 수 있는 외부 자료로 검증 가능 여부
          2) 구체성(Specificity): 입력(정답)과 출력(질문) 간의 상호 의존성 강도
    • 평가 방식: 평가자에게 동일 정답에 대한 BART와 RAG 생성 질문을 쌍으로 제공 → 4가지 옵션 중 선택(A(BART) 우월, B(RAG) 우월, 둘 다 좋음, 둘 다 나쁨.)

Fact Verification

  • 자연어 claim이 Wikipedia 기반으로 지원(supported), 반박(refuted), 또는 정보 부족(not enough info) 중 어디에 해당하는지 분류
  • FEVER 라벨(지원/반박/정보 부족)을 단일 토큰으로 매핑 → claim-class 쌍으로 직접 학습
  • 증거 검색에 대한 지도(supervision) 없이 학습 → 실제 응용 환경(검색 신호 미제공)을 반영
  • 핵심 기술적 차별점(검색 의존도 완화: RAG는 증거 문서에 대한 지도 없이도 신뢰할 수 있는 분류 가능)
요소기존 FEVER 접근법RAG 모델 접근법
검색 지도증거 문서에 대한 명시적 레이블 활용검색 신호 없이 자율 학습
모델 구조도메인 특화 파이프라인통합된 검색-분류 구조
실용성제한된 응용 범위광범위한 실제 환경 적용 가능
profile
데이터 분석가

0개의 댓글