知识图谱推理引擎是一种通过应用逻辑规则、模式或机器学习技术来发现知识图谱中隐含信息的系统。 知识图谱将数据存储为相互连接的实体(节点)和关系(边),例如“X 先生在 Y 公司工作”。 推理引擎分析这些显式连接以得出新事实,例如如果 Y 公司的总部位于 Z 市,则推断出“X 先生位于 Z 市”。 此过程通过填补空白或预测关系而无需手动输入来增强图的效用。
推理引擎通常使用预定义的规则或学习的模式运行。 基于规则的系统应用逻辑,例如传递性(例如,如果 A 是 B 的一部分,而 B 是 C 的一部分,则 A 是 C 的一部分)或语义层次结构(例如,基于子类关系推断“拉布拉多”是“狗”)。 例如,在医疗保健知识图谱中,规则可能会使用因果关系将症状与潜在的诊断联系起来。 基于机器学习的方法(如图神经网络)识别图结构中的模式,以预测缺失的链接,例如根据用户的购买历史记录和类似的用户行为推荐产品。 诸如 Apache Jena 或 OWL 推理器(例如,Pellet)之类的工具实现基于规则的推理,而诸如 PyTorch Geometric 之类的框架支持 ML 驱动的推理。
实际应用包括推荐系统、欺诈检测和语义搜索。 在电子商务中,推理引擎可以通过分析购买历史记录和产品属性来建议补充商品。 对于欺诈检测,它可以通过推断帐户之间的隐藏连接来标记可疑交易。 在语义搜索中,它通过理解上下文关系来增强查询结果,例如返回“1990 年代成立的公司”的结果,即使图仅显式存储成立日期。 开发人员可以使用开源库或云服务(例如,AWS Neptune)来利用这些引擎,将它们集成到管道中以自动进行推理并丰富数据驱动的应用程序。