본문 바로가기
  • 머킹이의 머신로그
AI/논문 읽어보기

RAG의 역사 논문 (2) Retrieval-Augmented Language Model Pre-Training (REALM)

by 머킹 2024. 10. 10.
728x90

[논문] Retrieval-Augmented Language Model Pre-Training (REALM) 정리

 

안녕하세요 머킹입니다.

 

두 번째 읽은 논문입니다.

 

 

REALM(Retrieval-Augmented Language Model)은 구글에서 발표한 논문으로, 기존 언어 모델의 한계를 해결하기 위해 retrieval(검색) 기능을 도입한 모델입니다. 기존의 언어 모델(예: BERT, GPT)은 학습된 데이터에 기반하여 지식을 저장하며, 이 지식을 바탕으로 다양한 태스크를 수행할 수 있었습니다. 하지만 학습된 데이터 외의 정보에는 접근할 수 없어 최신 정보를 반영하지 못하거나, 학습된 지식의 업데이트가 어렵다는 문제가 있었습니다.

특히, 오픈 도메인 질문 응답(Open-Domain Question Answering, ODQA) 같은 과제에서는 방대한 외부 지식에 접근해야 하는데, 기존의 모델은 이러한 요구에 부응하지 못했습니다. 이러한 문제를 해결하기 위해 REALM은 외부 지식 데이터베이스에서 문서를 검색하고, 그 문서를 바탕으로 답변을 생성하는 방식을 도입했습니다.

1. 기존 언어 모델의 한계

기존의 Pre-trained Language Models(예: BERT, GPT)는 파라미터에 지식을 암묵적으로 저장하고 이를 바탕으로 예측을 수행합니다. 이 방식은 학습 데이터에 포함된 지식만을 사용할 수 있기 때문에, 새로운 정보에 대한 응답이나 최신 정보를 반영하는 데 어려움이 있습니다. 학습된 지식 외의 정보에 대해 답변하려 할 때는 hallucination(환각) 문제, 즉 존재하지 않는 사실을 생성하는 오류가 발생할 수 있습니다.

이러한 모델의 한계로 인해, 지식 업데이트가 어렵고 지식의 확장성에도 한계가 있었으며, 특히 오픈 도메인 문제에 취약했습니다.

2. REALM의 도입: 검색과 결합된 언어 모델

REALM은 이러한 한계를 극복하기 위해 기존 모델에 retrieval 기능을 결합했습니다. 즉, 사용자가 제시한 질문에 대해 답변할 때, 모델 내부의 파라미터에 저장된 지식에만 의존하는 것이 아니라, 외부 대규모 데이터베이스에서 관련 문서를 실시간으로 검색하여 그 문서를 바탕으로 답변을 생성합니다. 이를 통해, 모델이 최신 정보나 학습되지 않은 지식에도 접근할 수 있으며, 보다 유연한 대응이 가능해졌습니다.

REALM의 구조는 크게 두 가지 구성 요소로 나뉩니다:

  • Retriever: 입력된 질문에 대해 외부 대규모 코퍼스에서 관련 문서를 검색합니다.
  • Generator: 검색된 문서와 질문을 결합하여 최종 답변을 생성합니다.

이 두 요소는 동시에 학습되며, 이는 검색된 문서가 질문과 얼마나 연관성이 있는지, 그리고 그 문서를 사용해 생성된 답변이 얼마나 정확한지를 함께 고려하는 방식입니다.

3. REALM의 학습 및 기술적 특징

REALM은 기존의 언어 모델과 달리, 지식을 모델 파라미터에 내재시키는 방식이 아닌, 비파라메트릭(non-parametric) 방식으로 외부 지식에 접근하는 retrieval-augmented 방식을 채택했습니다. 이 방식을 통해 모델은 언제든지 새로운 정보에 접근할 수 있고, 지식의 업데이트가 훨씬 용이해졌습니다.

  • 문서 검색: REALM의 retriever는 MIPS(Maximum Inner Product Search) 알고리즘을 사용해 효율적으로 문서를 검색합니다. 이는 수백만 개의 문서 중에서 질문과 가장 관련성이 높은 문서를 빠르게 찾는 데 큰 도움을 줍니다.
  • 지식 증강 인코더: REALM의 generator는 검색된 문서와 질문을 결합하여 마스킹된 부분을 예측하는 마스킹 언어 모델(MLM) 방식을 사용합니다. 이 방식을 통해 검색된 문서를 바탕으로 정확한 답변을 생성할 수 있습니다.

REALM의 retriever와 generator는 동시에 학습되며, 이는 검색된 문서가 답변에 적합한지, 생성된 답변이 정확한지에 따라 모델이 점점 더 성능을 개선하도록 돕습니다.

4. 성능 및 효율성

REALM은 다양한 오픈 도메인 질문 응답 벤치마크에서 뛰어난 성능을 보였습니다. 기존의 대형 모델과 비교했을 때도 상대적으로 작은 모델 크기로 더 높은 정확도를 기록했으며, 특히 T5 같은 대형 모델보다 효율적으로 지식을 활용할 수 있었습니다. 또한 REALM은 검색 기반 시스템이기 때문에 적은 수의 문서로도 정확한 답변을 도출할 수 있는 장점을 가집니다.

5. 해석 가능성 및 모듈성

REALM의 또 다른 장점은 해석 가능성입니다. 기존의 언어 모델은 파라미터에 지식을 내재시켜, 모델이 왜 특정한 답변을 생성했는지를 추적하기 어려웠습니다. 하지만 REALM은 검색된 문서를 바탕으로 답변을 생성하므로, 모델이 참조한 문서를 명확하게 확인할 수 있어 예측 과정이 해석 가능해졌습니다. 또한 retrievergenerator를 개별적으로 수정하거나 확장할 수 있는 모듈형 구조를 가졌기 때문에, 다양한 응용 분야에 쉽게 적용할 수 있습니다.


RAG와 REALM의 연결: 왜 RAG에 중요한가?

REALM은 retrieval-augmented language model의 초기 모델 중 하나로, RAG의 발전에 큰 기여를 했습니다. RAG(Retrieval-Augmented Generation)는 REALM의 retrieval 방식을 기반으로, 검색과 생성 과정을 통합한 모델입니다. RAG는 REALM의 핵심 개념을 확장하여, BART와 같은 sequence-to-sequence 구조를 사용해 더욱 복잡한 텍스트 생성 작업을 처리할 수 있게 했습니다.

특히, RAG는 검색된 문서를 사용해 단순히 질문에 답하는 것뿐만 아니라, 텍스트 생성 작업까지 수행할 수 있습니다. 이 과정에서 RAG는 REALM에서 도입한 retrieval 기법을 발전시켜, **DPR(Dense Passage Retrieval)**이라는 검색 방법을 사용해 더욱 효율적이고 정교한 문서 검색을 수행합니다. RAG는 REALM의 주요 개념을 기반으로 하여, retrievalgeneration의 결합을 통해 더 넓은 범위의 오픈 도메인 질문에 대응할 수 있습니다.

따라서 REALM은 retrieval과 language model의 결합이라는 새로운 패러다임을 제시했으며, RAG는 이를 발전시켜 retrieval-augmented generation이라는 개념을 구체화한 모델입니다. 이로 인해, REALM은 RAG와 같은 모델이 발전하는 데 중요한 기초가 되었으며, retrieval 기반 생성 모델의 역사에서 매우 중요한 역할을 합니다.


용어 정리

  1. Retrieval-Augmented Language Model (REALM): 검색 기능을 언어 모델에 결합하여, 외부 지식에 실시간으로 접근해 답변을 생성하는 모델.
  2. Non-parametric knowledge: 언어 모델의 파라미터에 저장된 지식이 아닌, 외부 데이터베이스에서 실시간으로 검색해오는 지식.
  3. Open-Domain Question Answering (ODQA): 제한되지 않은 범위의 주제에 대해 질문을 하고 답변을 얻는 작업.
  4. Hallucination: 언어 모델이 존재하지 않는 사실을 바탕으로 잘못된 답변을 생성하는 문제.
  5. Retriever: 질문에 대한 관련 문서를 외부 데이터베이스에서 검색하는 역할을 하는 컴포넌트.
  6. Generator: 검색된 문서와 질문을 결합하여 최종 답변을 생성하는 역할을 하는 컴포넌트.
  7. MIPS (Maximum Inner Product Search): 효율적으로 문서를 검색하기 위한 알고리즘.
  8. RAG (Retrieval-Augmented Generation): REALM의 아이디어를 확장하여, retrieval과 generation을 동시에 수행하는 모델.
  9. DPR (Dense Passage Retrieval): 문서와 질문을 임베딩한 후, 이를 기반으로 연관성을 계산해 문서를 검색하는 retrieval 기법.