논문 리뷰/자연어처리

Dense Passage Retrieval for Open-Domain Question Answering 리뷰

kyj0015 2025. 5. 20. 00:48
    링크: 

Background

  • QA systems
    • context retriever과 machine reader인 2단계로 구성되어 있음
    • context retriever: answer이 담긴 passage를 선택
    • machine reader: retrieved context를 조사하고 정답 식별
    • passage를 가져오는 retriever의 성능이 중요
  • Retriever1 - Traditional sparse vector space model
    • open-domain question answering task는 후보 context 중에 efficient passage를 잘 선택하는 것이 중요
    • TF-IDF
      • t: 용어 (단어), d: 문서 (문장들)
      • tf(t, d): 한 문서 내에 같은 단어가 여러 번 등장하면 증가
      • idf(t, D): 여러 문서에서 같은 단어가 등장하면 감소
      • tfidf(t, d, D): tf(t,d)xidf(t,D)
      • -> 적은 문서에서 많이 등장 하는 것이 목적에 맞는 전문 용어이니 통계를 기반으로 문서 선택
      • -> 하지만 문서가 길수록 유리해 잘못 선택될 수 있음
    • BM25
      • TF-IDF의 개선 버전
      • 보정 파라미터를 추가하여 TF의 영향을 줄이고, IDF의 영향을 키움
      • 문서 길이의 영향을 줄임
    • -> sparse vector space model이 아닌 dense representations의 dual-encoder framework를 사용하면 어떨까?
  • Retriever2 - ICT (Inverse-Cloze-Task)
    • 가려진 부분의 텍스트를 이용해 그 주변의 텍스트들을 예측해내는 것.
    • 문서들 Z 중 임의의 문서 90%의 문서 z에서 문장 x를 지우고 x가 있던 문서 z'를 찾도록 학습함
    • 하지만 3가지 한계점이 있었음
    • ICT pretraining은 computationally intensive함 (적은 학습하는데 많은 자원이 듬)
    • 질문 또는 일반 문장 (데이터 부족 등의 문제로)과 관련 문서를 찾도록 학습하는데 이게 적절할까?
    • context encoder가 QA 데이터로 fine-tuning되지 않아 해당 표현이 최적이 아닐 수 있
  • 그 외 몰랐던 용어
    • cross-attention mechnism: transformer의 encoder 부분이 아닌 decoder 부분에서 input이 두개 들어가는 거
    • knowledge-intensive task: 사람도 외부 지식 (웹 검색) 없이는 해결하기 어려운 task
    • triplet loss: 기준 A를 Positive Sample과는 가깝게, Negative Sample과는 멀어지게 학습
    • hard sample: 모델이 Positive인지 Negative인지 구분하기 어려워하는 데이터
    • Non-iid: 분포가 불균형함
    • MIPS (Maximum Inner Product Search): 쿼리 벡터와 문서 벡터의 내적 값이 가장 큰 것을 찾는 알고리즘

 

Methods

  • 용어
    • collection of Documents  D: 문서들 {d1, d2, d3, ... dn}
    • total corpus M:  documents를 쪼갠 문장들 {p1, p2, p3, ... pn}
    • token w|pi|(e): pi번째 passage의 e번째 토큰
    • retriever R(q, C) -> Cf: C에서 question q와 관련된 passage k의 집합을 선택
    • dense encoder Ep(.): text passage를 d-dimensional real-valued vectors로 변환하고, M에 대한 index를 만듬
    • encoder EQ(.): input question을 d-dimensional vector로 변환하고 k개의 passage를 선택함
  • Architecture
    • passage encoder과 question encoder 둘 다 어떤 신경망이든 쓸 수 있지만 해당 논문에서는 standard BERT pretrained model을 사용
    • dual-encoder architecture를 활용한 DPR 제안
    • Inference: encoder Ep의 index로 FAISS 사용하여 vq = EQ(q)를 도출
  • DPR (Dense Passage Retriever)
    • passage를 sparce vector가 아닌 dense vector로 표현 == low-dimensional and continuous space에 투영
  • Training
    • 유사도를 구해서 관련된 문서를 뽑고자 함
    • 이때 cross attentions 등을 사용하는 방법도 있는데 M의 embedding representation이 사전에 계산될 수 있도록 decomposable해야함
    • ablation study에서 다른 유사도 함수들도 비슷한 성능을 내서 간단한 inner product를 선택

  • Metric learning
    • Metric learning: space 공간에 거리를 조절하도록 학습하는거라고만 이해함
    • questions and passage pair가 가까운 거리에 매핑되도록 vector space를 학습
    • 추가적인 학습 없이 Question-Passage 페어를 활용한 dense embedding model를 사용하고자 함
    • positive sample은 가까워지고, negative sample은 멀어지도록 학습
    • contrastive learning할 때 보통 positive sample 하나, negative sample을 여러개를 사용: 학습 방향성의 안정을 위해 loss를 줄이기 위해서는 긍정 예제랑 더 비슷해져야하는데 positive 예제를 많이 쓰면 앵커랑 여러 방향을 당겨져서

 

Experiment & Analysis

  • Setting
    • 40 epoch for large dataset, 100 epoch for small dataset
    • learning rate of 10-5 using Adam
    • linear scheduling with warm-up
    • dropout rate 0.1
    •  
  • Table 2
    • SQuAD를 제외하고 DPR을 적용했을 때 더 높은 성능을 보임
    • SQuAD의 성능이 낮은 이유는 2가지를 추측
      • passage를 보고 question을 주석으로 달기 때문에 passage와 question 사이의 높은 overlap -> BM25 (통계 기반) 가 더 유리함
      • data를 오직 wikipedia articles에서 수집했기 때문에 편향되었

  • Figure 1
    • training example의 수를 늘릴수록 일관되게 성능이 향상함

  • Table 3
    • Random: 무작위 문서로 학습
    • BM25: 통계 기반 문서로 학습
    • Gold: 해당 정답이 있는 문서와 gold negative를 사용한 문서로 학

  • 수식 3, 4, 5
    • (3) passage의 시작을 예측
    • (4) passage의 끝을 예측
    • (5) passage를 선택 (정답이 passage 하나에만 들어있는 경우)

  • Table 4
    • Single: 하나의 데이터셋으로만 학습
    • Multi: 여러 데이터셋으로 학습
    • Multi training 학습은 모델의 범용성과 성능을 향상시킴
    •  DPR을 적용하면 높은 성능을 보임

 

Result & Contribution

  • proper training (추가적인 학습 없이 encoder를 question-passage pairs로 학습)하여 BM25를 능가
  • higher retrieval precision이 higher end-to-end QA accuracy로 이어짐을 증명
  • 4/5 dataset에서 SOTA 달성

 

Limitation

  • 기존 통계 기반 모델에 비해 많은 데이터와 컴퓨팅 자원이 필요 (BERT)
  • 낮은 성능을 보이는 task도 있음