核心要点

  • KBQA:用自然语言问知识图谱,在图上查询/推理得答案

  • 语义解析路线:把问题翻译为 SPARQL 或逻辑形式,结构化查询图

  • 信息检索/向量路线:检索问题相关子图,在子图上排序推理得答案

  • 难点:实体/关系歧义、多跳推理、自然语言到结构化查询的鸿沟

标准回答

任务

KBQA(Knowledge Base Question Answering)让用户用自然语言提问,系统在知识图谱上查询与推理给出答案,如「鲁迅的弟弟的职业是什么」。

语义解析(Semantic Parsing)路线

把自然语言问题解析为结构化查询(SPARQL)或逻辑形式(lambda 演算/查询图):先做实体链接定位主题实体,识别关系路径,组装查询并在图上执行。优点是可解释、能精确多跳;难点是解析准确率与覆盖度。

信息检索 / 向量路线

不显式生成查询,而是检索与问题相关的候选实体/子图,用模型对候选答案打分排序;可结合实体嵌入与问题嵌入做相似度匹配。适合大规模、关系复杂场景。

核心难点

实体与关系存在歧义需消歧;多跳问题需沿图遍历多条边推理;自然语言与图 schema 之间存在表述鸿沟。近年常用 LLM 做语义解析或与子图检索结合(GraphRAG 思路)来缓解。

常见误区

⚠️ 常见踩坑

别把 KBQA 等同于纯文本阅读理解:KBQA 的答案来自结构化图查询/推理,强调 schema 对齐与多跳,而非在一段文本里抽答案。

追问

追问 1语义解析路线和检索路线各有什么优劣?

语义解析精确、可解释、擅长多跳和聚合(计数/最值),但依赖准确解析、对未见结构泛化差;检索/向量路线鲁棒、易扩展到大图,但可解释性弱、复杂逻辑推理能力有限。实践常融合两者。

追问 2多跳问答(multi-hop)难在哪,如何处理?

多跳需沿图遍历多条关系并组合约束,搜索空间随跳数指数增长且易引入噪声。常用方法:分步关系路径预测、子图召回后图神经网络推理、或用 LLM 分解问题为多步子查询再逐步在图上执行。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。