LLM의 부상과 함께 LLM의 문제점 중 하나의 Hallucination 문제를 해결하는 방안으로 검색 기반의 답변을 근거로 제시할 수 있는 방법인 Retrieval-Augmented Generation(RAG)가 LLM 기반의 서비스를 위한 필수 요소로 받아들여지고 있습니다. 이에 따라 RAG라는 용어를 최초로 제안한 논문을 선정하여 리뷰하게 되었습니다.
2020년 당시에도 이미 pretrained Large LM들이 다양한 벤치마크 성능을 갱신하고 있었습니다. 하지만 knowledge-intensive tasks 들은 특정 task에 특화된 아키텍쳐에 뒤지는 성능을 보여주었습니다. 또한, 기존의 pre-trained 모델들은 방대한 지식을 학습할 수 있는 능력이 있지만, parameter를 업데이트 하는데 어려움이 있고 잘못된 정보나 "hallucination"을 생성하는 경향이 있습니다. 이러한 문제를 해결하기 위해 LLM 자체의 학습된 파라미터에만 의존한 대답을 내는 대신에 외부 메모리에 저장된 정보를 함께 활용하여 답변을 도출할 수 있는 모델들이 open-domain QA 영역에서 제안되었습니다.
제안 방법은 hybrid parametric and non-parametric memory를 seq2seq model에 적용하여 다양한 language generation 태스크에 활용하 방법인 Retrieval-augmented Generation(RAG)을 제안합니다. 이는 pretrained seq2seq (BART) 모델과 위키피디아를 dense vector index로 만든 외부 메모리를 pretrained neural retriever로 접근할 수 있는 구조로서, end-to-end 방식으로 학습 가능합니다.
이러한 방식을 통해 제안된 방법은 Open Natural Questions, WebQuestions, CuratedTrec, TriviaQA 등의 task에서 해당 task에 특화된 모델들을 뛰어 넘는 성능을 보여줬습니다. 또한, 이러한 방식은 별도의 추가 학습 없이도 외부 메모리를 업데이트 함으로서, 새로운 지식에 기반한 답변을 도출해 낼 수 있는 것을 증명하였습니다.
제안 방법은 크게 Retriever와 Generator로 구성됩니다.
Retriever $p_η(z|x)$는 입력 쿼리 $x$에 대해 document index $z$에 대한 top-k 검색 결과를 리턴합니다.
Generator $p_θ(y_i|x, z, y_{1:i-1})$ 는 입력 $x$, 검색된 구문 $z$, 이전 단계까지 생성된 결과 토큰 $y_{1:i-1}$에 기반한 결과를 도출합니다.
제안 방법은 document z에 기반하여 답변을 도출하는 모델을 2가지로 설계하였습니다.