Jinhwan
코딩랍스터🦞
Jinhwan
전체 방문자
오늘
어제
  • 분류 전체보기 (93)
    • 일상 (15)
      • 독후감 (9)
    • Computer Science (26)
      • 네트워크 (0)
      • 알고리즘 (0)
      • 데이터베이스 (4)
      • 객체지향 (3)
      • Security (4)
      • 멀티코어 (3)
      • 디자인패턴 (8)
    • 개발 (40)
      • 쿠버네티스 (2)
      • Oracle (15)
      • Spring (12)
      • Git (2)
      • MySQL (1)
      • C++ (1)
      • Neo4j (4)
      • 데이터 엔지니어링 (2)
    • 인공지능 (12)
      • 강화학습 (2)
      • Computer Vision (2)
      • 생성모델 (1)
      • 논문 (2)
      • LLM (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 더 좋은 삶을 위한 철학
  • Java
  • go
  • 객체지향
  • Database
  • Spring
  • GraphDB
  • Spring Rest Docs
  • SQL 연산자
  • RAG
  • 독후감
  • 데이터 베이스개론
  • self rag
  • SQL
  • CEO라는 직업
  • 마음의 법칙
  • SQL 종류
  • LLM
  • 강화학습
  • spring boot
  • Neo4j
  • EER Model
  • 남궁훈 고문
  • 오브젝트
  • springsecurity
  • 자바
  • JUnit
  • LockFreeHash
  • @Validation
  • docker

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Jinhwan

코딩랍스터🦞

[RAG] Knowledge Graph Prompting for Multi-Document Question Answering
인공지능/LLM

[RAG] Knowledge Graph Prompting for Multi-Document Question Answering

2024. 4. 7. 23:42

https://arxiv.org/abs/2308.11730?source=post_page-----ab5c4006a429-------------------------------- 

 

Knowledge Graph Prompting for Multi-Document Question Answering

The `pre-train, prompt, predict' paradigm of large language models (LLMs) has achieved remarkable success in open-domain question answering (OD-QA). However, few works explore this paradigm in the scenario of multi-document question answering (MD-QA), a ta

arxiv.org


Concept

  • 여러 Document들을 KG로 저장하는 방법에 대해서 제안하였다.
  • KG traversal agent를 통한 On-Demand Retrieval방식을 제안하였다.

Problem

  • 최신 Multi-Document 대상의 QA를 해결하기 위해 multi-hop retrieval을 채택해서 해결하려고 함. 
  • 이는 LLM모델에게 지속적인 질의를 해야하기 때문에 latency를 발생시킴
  • 또한 Document간의 연관 관계를 LLM이 전부 해석해야함.

 이를 해결하기 위해 Multi-Document를 바탕으로 KG를 구축하여 Retrieval과정에서 단순히 Embedding Vector에만 의존하는게 아니라 KG의 지식 구조를 이용하고자 함.


KG Construction

Knowledge Graph Construction.

Node : 문서나 문서 구조를 나타낸다.

Edge : 문서 사이의 연관 관계를 나타내는 역할을 한다.

 

Node 추출 방식

  • Document에 있는 passage, page, table등을 Node화 시킨다.

 

Edge 추출 방식

본 논문에서 Edge의 경우 2가지의 관계를 나타낸다.

1) lexical similarity : passage들 사이에서 공유되고 있는 단어들이 있다면 두 passage는  edge를 가지게 된다.

  • TF-IDF : TF-IDF방식을 사용해서 passage의 keyword를 추출하고 문서의 제목과 함께 키워드 공간을 형성한다.
  • TAGME : Wikipedia Entity를 기반으로 passage에서 Entity를 추출하고  keyword space를 제작한다.

    이후 문서들간의 keyword space를 비교하여 lexical similarity에 대한 Edge를 연결한다.

2) semantic similarity : passage들이 가지는 의미가 유사한 경우 두 passage들은 edge를 가지게 된다.

  • KNN-ST : passage를 sentence-transformer를 이용해서 embedding 한후 이를 knn을 통해 clustering하여 semantic similarity edge를 추가한다.
    • 이는 domain-specific한 document의 의미를 충분히 반영하지 못한다.
  • KNN-MDR : encoder모델을 passage들에 sentence와 next-sentence사이의 embedding vector가 유사하게끔 pre-training을 시키고 이를 이용해서 KNN-ST와 같은 방식으로 semantic similarity edge추가한다.

LLM-based KF Traversal Agent

 Graph에서 유의미한 정보를 Retrieve하기 위해서 다음과 같은 과정을 거치게끔 만들었다.

1. LLM으로 하여금 사용자의 질문이 KG에 대한 Retrieve가 필요한지 판단하게끔 한다.
2. 만약 Retrieve가 필요하다면 질문에서 어떤 구조(page, table)가 필요한지 찾아낸다.
3. TF-IDF를 통해 초기 Node를 선정한다.
4. 해당 노드의 Neighbor Node를 추출하여 Queue에 넣어둔다.
5. Neighbor Node들에 대해서 LLM-basd graph traversal agent로 하여금 rank를 매기게 한다.
6. top-k passge를 가져와 해당 top-k에 대해서 4번부터 6번의 과정을 진행한다.

이 과정은 queue가 비게 되거나 prefixed budget을 넘게 되면 멈추게 된다.

여기서 Top-K passage를 고르기 위해서 이전까지 방문했던 passage들에 대한 embedding vector와 이번에 방문하게 되는 passage의 embedding vector간의 유사도를 이용해서 구하게 된다.

f와 g를 선택하는데 있어서 Encode based Model(Roberta-base)과 Encoder-Decoder based Model(T5)이 모두 고려되어졌다.


Result

1) KGP vs MD-QA Baseline

HotpotQA처럼 KG의 shortcut을 탐색하면서 정보를 추출하는 것만으로 답변이 가능한 경우 KG를 활용하는 방식이 더 좋은 성능을 보이지만 IIRC처럼 보다 복잡한 지식 관계를 요구하는 Task에서는 기존의 방식이 좀 더 좋은 성능을 보이는 것을 알 수 있다.

 

2) KG Construction

  • KG Density의 증가는 F1/EM의 향상을 가져오지만 Latency는 증가시킨다
  • KNN-MDR은 KNN-ST보다 promising neighbor간의 Relation을 더 많이 만들어준다..
    • 이는 Encoder모델이 pretrain이 된 Space가 KNN-MDR이 더 Domain specific하기 때문이다.
  • TAGME는 다른 방식 대비 KG의 Density를 증가시킨다.

3) LLM-Agent

  • Llama보다 T5의 성능이 더 좋았다. 이는 논문저자 말을 빌리면 T5의 parameter수가 적어서 적은 데이터로 더 좋은 학습 효과를 냈기 때문이라고 이야기한다.

Conclusion

  • 비정형 데이터에 대해서 KG를 구축하는 아이디어를 제안했다.
  • KG traversal agent를 제안하였다.

 

Multi-Hop문제를 해결하기 위해 KG를 구축하고 traversal agent를 제안한 흥미로운 논문이다.
IIRC에서 MDR보다 안 좋은 성능을 내는 것은 아쉬운 사실이지만 현실에서 모두 MDR방식을 사용할 수 없을 수 있기에 해당 방향을 연구를 해보는 것도 유의미하다고 생각이 든다.

저작자표시 비영리 (새창열림)

'인공지능 > LLM' 카테고리의 다른 글

[LLM] SELF-RAG: Learning to Retrieve, Generate and Critique through Self-reflect  (1) 2024.02.13
[LLM] Seven Failure Points When Engineering a Retrieval AugmentedGeneration System  (0) 2024.01.29
[LLM] Paged Attention  (1) 2024.01.28
[LLM] Flash Attention  (0) 2024.01.22
    '인공지능/LLM' 카테고리의 다른 글
    • [LLM] SELF-RAG: Learning to Retrieve, Generate and Critique through Self-reflect
    • [LLM] Seven Failure Points When Engineering a Retrieval AugmentedGeneration System
    • [LLM] Paged Attention
    • [LLM] Flash Attention
    Jinhwan
    Jinhwan
    잘 몰라서 하고 있는 블로그 입니다. 틀린 부분에 대해서 언제든지 댓글 달아주세요.

    티스토리툴바