[논문 리뷰] FlexKBQA: A Flexible LLM-Powered Framework for Few-Shot Knowledge Base Question Answering
FlexKBQA는 LLM을 프로그램 번역가로 활용하여 합성 데이터를 생성하고, 실행 가이드 자기 학습과 고유한 추론을 통해 여러 데이터셋에서 소수 샷 KBQA를 tackling하며 최소한의 주석으로도 강력한 성능을 달성합니다.
Knowledge base question answering (KBQA) is a critical yet challenging task due to the vast number of entities within knowledge bases and the diversity of natural language questions posed by users. Unfortunately, the performance of most KBQA models tends to decline significantly in real-world scenarios where high-quality annotated data is insufficient. To mitigate the burden associated with manual annotation, we introduce FlexKBQA by utilizing Large Language Models (LLMs) as program translators for addressing the challenges inherent in the few-shot KBQA task. Specifically, FlexKBQA leverages automated algorithms to sample diverse programs, such as SPARQL queries, from the knowledge base, which are subsequently converted into natural language questions via LLMs. This synthetic dataset facilitates training a specialized lightweight model for the KB. Additionally, to reduce the barriers of distribution shift between synthetic data and real user questions, FlexKBQA introduces an executionguided self-training method to iterative leverage unlabeled user questions. Furthermore, we explore harnessing the inherent reasoning capability of LLMs to enhance the entire framework. Consequently, FlexKBQA delivers substantial flexibility, encompassing data annotation, deployment, and being domain agnostic. Through extensive experiments on GrailQA, WebQSP, and KQA Pro, we observe that under the few-shot even the more challenging zero-shot scenarios, FlexKBQA achieves impressive results with a few annotations, surpassing all previous baselines and even approaching the performance of supervised models, achieving a remarkable 93% performance relative to the fully-supervised models. We posit that FlexKBQA represents a significant advancement towards exploring better integration of large and lightweight models. The code is open-sourced.
연구 동기 및 목표
- KBQA에서 이질적인 KB 스키마와 질의 언어에 대한 데이터 주석 병목 현상을 해결한다.
- LLMs를 활용하여 KB 템플릿에서 다양하고 실행 가능한 프로그램을 생성하고 이를 자연어 질문으로 번역한다.
- 실행 가이드 자기 학습(EGST)을 통해 합성 데이터와 실제 사용자 질문 간의 분포 차이를 좁힌다.
- LLM의 내재 추론 능력을 프레임워크에 도입하여 KBQA 성능을 향상시킨다.
- 경량 하부 모델로 강력한 소수 샷 성능을 달성할 수 있는 도메인에 구애받지 않는 KBQA를 입증한다.
제안 방법
- 템플릿 수집과 단계적 바인딩을 통해 실행 가능한 KB 프로그램을 자동으로 샘플링한다.
- 저자원 환경에서 프로그램 번역가로서 LLM이 프로그램에서 자연어 질문으로 번역하는 방식으로 프로그램을 번역한다.
- 교사-학생 루프를 사용하고 가짜 정답을 필터링하여 미표본 사용자 질문에 대해 반복적으로 주석을 달아 주는 실행 가이드 자기 학습(EGST)을 수행한다.
- LLM의 내부 지식을 활용하여 데이터 확장을 수행하고 의미 분석 실패 시 대안으로 활용하는 고유 추론 보강을 도입한다.
- 합성 데이터, 소수의 주석 데이터, 미주석 사용자 질문의 결합으로 경량 모델을 학습하여 KBQA를 수행한다.
- 구현은 GrailQA/WebQSP에 대해 RnG-KBQA를, KQA Pro에 대해 BART-SPARQL을 사용하는 경량 하부 KBQA 모델과 번역에 gpt-3.5-turbo를 사용한다.
실험 결과
연구 질문
- RQ1유연한 KBQA 프레임워크가 LLM을 프로그램 번역가로 활용하여 소수 샷 KBQA를 위한 고품질 합성 데이터를 생성할 수 있는가?
- RQ2실행 가이드 자기 학습이 합성 데이터와 실제 사용자 질문 간의 분포 차이를 완화하는가?
- RQ3특히 제로샷 및 저자원 환경에서 LLM의 내재 추론이 KBQA 성능을 얼마나 높일 수 있는가?
- RQ4제한된 주석으로 다양한 KB(GrailQA, WebQSP, KQA Pro) 및 프로그램 유형(S-expression, SPARQL)에서 FlexKBQA의 성능은 어떠한가?
주요 결과
- GrailQA, WebQSP, KQA Pro 전반에서 강력한 소수 샷 성능을 달성하며 기저 모델을 능가하고 지도 학습 모델에 근접합니다.
- GrailQA에서 단 25개의 라벨링 예시만으로도 FlexKBQA가 기존 100샷 방법을 능가하고 완전 지도 학습 성능에 근접합니다(완전 지도 대비 93% 상대).
- EGST는 GrailQA에서 F1 점수 10.3, WebQSP에서 7.1, KQA Pro에서 10.2의 정확도 향상을 보여 분포 차이 완화에 효과적임을 입증합니다.
- 내재 추론은 특히 엔티티 연결이 없는 KQA Pro에서 추가 이점을 제공하며 LLM이 직접 정확한 답을 제공할 수 있습니다.
- FlexKBQA는 제로샷 가능성을 입증하고 주석 데이터가 더 많아질수록 이점이 유지되며 강력한 일반화 및 데이터 확장 이점을 나타냅니다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.