본문 바로가기
Research/NLP

[논문리뷰] Reliable, Adaptable, and Attributable Language Models with Retrieval

by yooonlp 2024. 8. 10.

본 포스트는 2024년 5월에 나온 "Reliable, Adaptable, and Attributable Language Models with Retrieval" 논문을 정리하였습니다.

Retrieval Augmented Generation은 외부 지식 베이스을 참조하여 LLM의 출력을 최적화하는 인기 있는 방법론이지만, 주로 아주 성능이 좋은 검색 모델과 생성 모델에 의존하여 이를 이어붙이는 Frozen RAG가 아무래도 편의성과 확장성으로 인해 많이 쓰이고 있는 추세입니다. 본 논문에서는 Parametric LM에서 검색 증강 생성을 위한 구조를 갖춘 Retrieval-Augmented LM으로 나아가야 하고, 이를 위한 연구의 현주소와 방향성을 이야기하고 있습니다. University of Washington과 Meta AI에서 Retrieval, Retrieval LM에 대한 선구적인 논문들을 많이 내서 개인적으로 흥미롭게 보고 있는 중입니다. 최근 5월에 이를 종합하여 survey 논문을 발표하여 그 내용을 아래 포스트에 담아보았습니다.

 

1. 용어 정의

  • Parametric LM: 학습된 파라미터만으로 예측을 수행하며, 외부 데이터를 사용하지 않음.
  • Retrieval-Augmented LM: 테스트 시 외부 데이터베이스에서 관련 문서를 검색하여 활용하는 모델

 

2. 연구 목적

retrieval-augmented LM(이하 RALM)은 parametric LM에 비해 안 쓰이고 있다. 그 이유를 알기 위해 retrieval-augmented lm의 현주소와 어떤 장애물들이 있는지 알아보고, 앞으로 연구 방향을 제언.

Retrieval-augmented LM의 효과

  • 이전에는 검색, 생성 모델을 같이 학습시키는 방식이 연구되어옴 (REALM, RAG, RETRO)
  • 최근에는 별도의 훈련없이 강력한 파라메트릭 언어 모델(GPT-3 등)에 검색 결과를 concat하는 방법이 주로 쓰임 (=우리가 RAG라고 부르는 방식, Frozen RAG)
  1. 장기 지식(long-tail knowledge)의 사실적 오류 감소 (hallucination)
  2. 더 나은 출처 명시, 검증 용이
  3. 시퀀스의 유연한 선택 허용
  4. 학습된 parametric LM에 추가 훈련에 대한 비용 감소
  5. 파라미터 효율성

 

3. 연구의 현주소

  • 세 가지 축으로 모델 구조 분류 :
    1. 검색된 텍스트 z의 세분성 (granularity) - chunk, phrase,token
    2. z가 통합되는 방식 (incorporation) - input,intermediate,output
    3. z의 검색 빈도 - one,per token,per phrase,adaptive

(본문에서는 Incorporation을 위주로 모델을 분류하여 작성함. Appendix에 다른 분류가 있음)

 

검색 문서의 Incorporation 위치에 따른 분류

 

  1. Input Augmentation: 입력 + 검색 결과 ⇒ LLM
    • 대부분의 RAG 방식들 (retriever + 강력한 LLM) 이 여기에 해당
    • 너무 많은 문서들을 인코딩하여 context length window를 차지하게 됨
  2. Intermediate fusion
    • 쿼리와 독립적으로 문서를 인코딩하여 중간 레이어에 합치기
    • 대규모 데이터 처리에는 유용하지만, 새로운 인코딩 블록을 위한 사전학습 필요
    • RETRO 예시
     
  3. Output Interpolation
    • LM의 다음 토큰 확률 분포와 검색된 텍스트의 다음 토큰의 확률 분포를 결합하여 다음 단어 예측
    • input layer보다 훨씬 효율적이지만, datastore에 모든 임베딩에 대한 다음 토큰을 저장해두어야함
    • TRIME 예시

Slide from ACL 2023 Tutorial: Retrieval-based Language Models and Applications

훈련 패러다임의 종류

  1. Independent or Sequential training
    • Independent: retriever와 lm을 개별로 훈련 - 따로 개발하기는 좋지만, 관련없는 문맥에서 쉽게 방해받음
    • Sequential: 둘 중 하나를 먼저 학습하고, 학습된 모델의 signal을 받아서 학습하는 방법
  2. Joint Training
    • 동시에 학습시켜서 두 모델간의 상호작용을 높임
    • 검색 모델과 인덱스를 동시에 업데이트하는 방식이기 때문에, 인덱스를 학습중에 업데이트하는 것의 비용 큼
      • 비동기 업데이트 - 일정 기간 동안은 stale하게 두고, 업데이트
      • in-batch approximation - 배치 내에서 sub index를 만들어서 전체 인덱스를 대표하도록 함.

Independent Training
Sequential Training
Joint Training

 

 

4. 연구 방향 제언

  1. Retrieval과 Datastore 재조정
    1. 의미적, 어휘적 유사도 이상의 요소?
      • 유용한 문서의 특성을 더 잘 이해해야함 (ex. 문서의 논리 패턴, 글쓰기 스타일)
      • 다양한 유사성 개념(의미적, 어휘적, 논리적 패턴 등)에 따라 검색 행동을 조정할 수 있는 검색기 필요
      • ex. instruction-tuned retriever
    2. 좋은 Datastore 구축
      • 단순히 wiki가 아닌 여러 도메인에 균형잡힌 데이터
      • pre-training 할때 데이터 정제하듯 quality filter가 있어야함
  2. Retriever와 LM의 상호작용 개선
    1. Input augmentation 이외의 다른 모델 구조 - intermediate, ouput 등 새로운 모델 구조는 pretrain cost가 커서 parametric LM보다는 크기가 작음
    2. LM pretraining 시 retrieval 도입 - 효과적인 것이 입증
    3. Pretraining 이후의 훈련: Instruction-tuning, RLHF으로 adaption
    4. Retriever와 LM의 end-to-end 학습: retriever도 같이 학습, 인덱스 수정하지 않더라도 좋은 결과, rerank
  3. RALM scaling과 adaptation을 위한 시스템과 인프라 구축
    1. Scalable datastore search
      • RALM 은 PLM에 비해 GPU는 적게 들지만 CPU-heavy, datastore로 빠른 접근이 필요함
    2. 표준화된 오픈 소스 부족
      • LangChain, LlamaIndex, DSPy는 기존 parametric LM 위에 RAG를 가능하게 했지만, 여러 구조의 RALM 훈련, 평가할 수 있는 파이프라인 부족

 

5. 참고문헌 / 추가로 볼 만한 자료