论文浅尝 | 基于知识图谱检索的LLM推荐系统生成(ACL2025)
笔记整理杜文杰东南大学硕士研究方向为自然语言处理、知识图谱论文链接https://arxiv.org/abs/2501.02226发表会议ACL 20251. 动机推荐系统在缓解信息过载方面至关重要而大语言模型LLMs的出现为下一代推荐系统带来了巨大潜力。然而基于LLM的推荐系统面临着严重的局限性特别是“幻觉”问题以及缺乏最新的、特定领域的知识。虽然检索增强生成RAG技术可以通过引入外部知识来缓解这些问题但传统的基于文本Document/Paragraph的RAG方法往往引入不必要的噪声并且忽略了知识中的结构化关系导致推理能力欠佳。如下图1所示为了解决这些限制作者提出从知识图谱KG中检索高质量、最新的结构化信息来增强推荐。具体而言现有的KG检索方法往往只检索实体的一阶邻居或简单的三元组忽略了高阶邻域效应且对所有项目无差别检索会降低效率。因此作者提出了一个新的框架K-RagRec旨在通过高效检索和编码知识图谱中的结构化子图来增强LLM的推荐能力。图1基于LLM的推荐系统中的幻觉和缺乏特定领域知识以及如何通过KG RAG解决2. 贡献本文的主要贡献包括1提出K-RagRec框架提出了一种新颖的检索增强框架通过从知识图谱中检索真实可靠的结构化知识来增强LLM的推荐能力无需昂贵的微调过程。2混合粒度索引与图编码引入了一种灵活的知识图谱索引方法Hop-Field Knowledge Sub-graphs结合GNN和预训练语言模型PLM进行语义索引通过更具表现力的图编码器GNN Encoder将结构化数据映射到LLM空间避免了长文本上下文的问题。3流行度选择性检索策略设计了一种基于流行度的选择性检索策略Popularity Selective Retrieval Policy。该策略根据项目的流行度决定是否需要检索外部知识主要针对长尾/冷启动物品在保证效果的同时显著提高了推理效率。4实验验证在三个真实世界数据集MovieLens-1M, MovieLens-20M, Amazon Book上进行了广泛实验。结果表明K-RagRec在准确率和召回率上均优于现有的基线模型并且有效减少了幻觉现象。3. 方法作者提出了K-RagRec框架旨在利用知识图谱中的结构化信息来增强LLM的推荐性能。该框架主要由五个关键组件组成如下图2所示包含五个关键组件用于语义索引的跳域知识子图、流行度选择性检索策略、知识子图检索、知识子图重排序和知识增强推荐。图2 K-RagRec框架图跳域知识子图语义索引Hop-Field Knowledge Sub-graphs for Semantic Indexing为了捕捉实体间的高阶邻域效应模型首先使用PLM获取节点和边的语义信息然后通过一个索引GNN聚合l-hop邻居信息生成包含丰富结构信息的知识子图表示并存储在向量数据库中 。流行度选择性检索策略Popularity Selective Retrieval Policy考虑到大多数用户的在线行为符合幂律分布且检索每个项目会消耗大量时间作者设计了一种策略仅当项目的流行度低于预定义阈值p时才触发检索。这使得模型能够专注于缺乏信息的长尾/冷启动项目显著减少检索时间 。知识子图检索Knowledge Sub-graphs Retrieval对于需要检索的项目将其文本属性作为Query通过PLM编码后在向量数据库中检索Top-K个最相似的知识子图 。知识子图重排序Knowledge Sub-graphs Re-Ranking直接将所有检索到的子图输入LLM可能导致信息过载。因此模型使用当前的推荐Prompt包含任务描述和用户历史作为查询对检索到的子图集合进行重排序筛选出Top-N个最相关的子图 。知识增强推荐Knowledge-augmented Recommendation为了让LLM更好地理解结构信息并避免超长文本输入作者引入了另一个编码GNN和一个投影层Projector。检索到的子图被编码并映射到LLM的嵌入空间作为Soft Promp与原始Prompt拼接输入冻结参数的LLM中生成推荐结果。4. 实验为了评估K-RagRec的性能作者在MovieLens-1M、MovieLens-20M和Amazon Book三个数据集上进行了实验并结合了Freebase知识图谱。表1 总体实验结果为了验证方法的有效性作者将K-RagRec与多类先进的基线模型进行了对比主要分为三大类1仅推理方法Inference-only包括 Retrieve-Rewrite-Answer (KG-Text) 和 KAPING 这类方法直接检索子图或三元组并将其转化为文本输入LLM。2检索增强的提示微调方法Prompt Tuning w/ RAG包括 PT w/ KG-Text、GraphToken w/ RAG 以及 G-retriever 这类方法尝试通过软提示或图Token来增强LLM。3微调方法Fine-tuning对比了结合检索的LoRA微调方法Lora w/ KG-Text。实验基于三个主流开源LLM骨干网络进行LLama-2-7b、LLama-3-8b 和 QWEN2-7b 。评估指标采用Accuracy (ACC) 和 Recallk总体结果如上表1所示作者比较了K-RagRec与各类基线模型在不同数据集上的表现。主要发现如下1显著的性能提升。K-RagRec在三个数据集和三个LLM骨干网络上始终优于基线模型。以LLama-2-7B为例K-RagRec在所有数据集上相比次优基线平均提升了41.6%。在LLama-3和QWEN2上也分别带来了13%至32%的平均提升。这证明了通过检索和编码结构化知识子图能有效增强LLM的推荐能力2优于传统RAG方法。简单的将KG转化为文本如KG-Text和KAPING在推荐任务中表现有限。K-RagRec通过图编码器更好地保留了结构信息从而实现了更高的准确率。3微调场景下的优势。在LoRA微调设置下Lora w/ K-RagRec依然取得了最佳性能表明该框架不仅适用于推理阶段也能在微调过程中提供高质量的知识增强。在LLama-2-7b 上跨指标 Accuracy、Recall3 和 Recall5进行消融实验结果如下图所示。去除GNN编码器导致性能大幅下降在MovieLens和Amazon Book上准确率分别下降37%和45.9%证明了使用GNN编码知识子图结构的重要性而非仅仅依赖文本语义。如下表2所示作者评估了推理时间传统的KG RAG方法如KAPING, G-retriever由于检索开销大推理时间显著增加约6秒/次。而K-RagRec得益于流行度选择性检索策略单次推理仅需1.06秒与不进行检索的直接推理0.92秒相当实现了效率与性能的最佳平衡。表2 总体实验结果K-RagRec框架的性能与推理效率高度依赖于其关键超参数的设置。流行度选择性检索阈值p必须仔细选择因为它在推荐准确率和检索效率之间存在明显的权衡p值过小会导致检索不足性能受限p值过大虽然能覆盖更多项目但会大幅增加推理时间。同时检索到的知识子图数量 K决定检索广度和重排序子图数量 N决定输入LLM的知识专注度也至关重要。实验表明K3和N在5-7之间能获得较好的平衡因为K太小会遗漏关键信息而K太大或N太大则可能引入过多无关噪声因此超参数需要根据具体数据集和知识图谱规模进行精心调整。5. 总结本文提出了K-RagRec框架通过从知识图谱中检索可靠且最新的知识来增强LLM的推荐能力。该方法利用GNN和PLM对KG进行语义索引实现了粗粒度和细粒度的检索。为了解决效率问题引入了流行度选择性检索策略。此外通过图编码器将结构化子图映射为软提示使得LLM能有效利用结构信息而无需处理超长文本上下文。广泛的实验证明了该框架在提升准确率、减少幻觉以及处理冷启动问题方面的有效性。展望未来作者指出仍有几个值得探索的方向。例如可以将该框架应用于更大规模的LLM进行性能测试以验证其扩展性。同时为了应对更复杂的推荐场景可以进一步丰富知识来源整合如YAGO、DBpedia等多样的知识图谱。此外探索利用强化学习或更高级的动态机制来设计更智能、更具上下文感知的检索策略实现知识的按需动态获取是提升框架适应性和泛化能力的重要途径。OpenKGOpenKG中文开放知识图谱旨在推动以中文为核心的知识图谱数据的开放、互联及众包并促进知识图谱算法、工具及平台的开源开放。点击阅读原文进入 OpenKG 网站。

相关新闻

反序列化漏洞分析讲解,零基础入门到精通,收藏这篇就够了

反序列化漏洞分析讲解,零基础入门到精通,收藏这篇就够了

一、什么是反序列化 1.1 漏洞简介 PHP反序列化漏洞也叫PHP对象注入,是一个非常常见的漏洞,这种类型的漏洞虽然有些难以利用,但一旦利用成功就会造成非常危险的后果。漏洞的形成的根本原因是程序没有对用户输入的反序列化字符串进行检测&…

2026/5/17 6:48:25 阅读更多 →
全栈开发的演变:从LAMP到MEAN再到现代JavaScript

全栈开发的演变:从LAMP到MEAN再到现代JavaScript

全栈开发者概述在众多企业中,尤其是创业型公司,人力资源部门在招聘时常常渴望能够找到一位技术上的多面手,即全栈开发者。那么,究竟什么是全栈开发者,他们需要掌握哪些核心技能呢?◆ 定义与技能要求传统上&…

2026/7/3 6:35:59 阅读更多 →
【python使用DrissionPage如何关闭浏览器

【python使用DrissionPage如何关闭浏览器

在DrissionPage中关闭浏览器主要通过调用close()方法实现,具体操作取决于浏览器控制方式(如Selenium模式或无头模式)。以下是详细步骤和示例代码: 1. 基本关闭方法 from DrissionPage import ChromiumPage# 创建页面对象&#xff…

2026/5/17 6:48:24 阅读更多 →

最新新闻

湿地生态好不好,不能只看绿不绿

湿地生态好不好,不能只看绿不绿

湿地体检不能只看绿不绿:WEI如何读懂黄河三角洲的生态完整性湿地体检不能只看绿不绿:WEI如何读懂黄河三角洲30年生态变化?一、为什么传统生态指数在湿地里会“看走眼”?1. 只看单一指标,容易把复杂湿地看得太简单2. RS…

2026/7/6 4:08:16 阅读更多 →
什么是.NET Compact Framework

什么是.NET Compact Framework

基于.NET Compact Framework开发的程序,可以叫做托管程序,英文叫做Managed code。所谓Managed code就是使用C#,VB.NET语言来编写代码,使用.NET Compact Framework来开发,编译成平台无关的中间语言(Intermediate Lanuage, IL)的文件…

2026/7/6 4:02:14 阅读更多 →
LangChain FewShotPromptTemplate少样本应用实战

LangChain FewShotPromptTemplate少样本应用实战

里有个容易踩的坑:创建 FewShotPromptTemplate 的时候,examples 和 example_selector 这两个参数是互斥的,必须填其中一个,不然代码直接报错。绝大多数情况下,我们直接用 examples 参数把准备好的示例数据传进去就行。…

2026/7/6 4:02:14 阅读更多 →
PowerShell 路径规则详解:从基础到高级

PowerShell 路径规则详解:从基础到高级

1. 引言在 Windows 系统管理和自动化脚本编写中,PowerShell 是功能强大的工具。无论是访问文件、加载模块,还是执行脚本,都离不开对路径的正确理解和处理。PowerShell 的路径规则与传统的 CMD 有所不同,它更灵活,但也更…

2026/7/6 3:56:12 阅读更多 →
你的前端代码打包后究竟经历了什么?

你的前端代码打包后究竟经历了什么?

打包命令执行的一瞬间,构建工具并不会立刻编译代码,第一步永远是读取并整合所有配置规则。构建工具配置读取: 以 Vite 为例,工具会自动查找项目根目录 vite.config.js,读取入口文件、输出目录、打包策略、公共路径等核…

2026/7/6 3:50:11 阅读更多 →
[实例] SPI接口的ADC芯片全通道纯硬件驱动——基于HAL库和TLA2518芯片

[实例] SPI接口的ADC芯片全通道纯硬件驱动——基于HAL库和TLA2518芯片

本次需要通过TI的TL2518芯片进行ADC采样。该芯片为SPI接口,具有八个通道,可以全部配置成AIN进行采样,本次需要探究如何该如何配置才能将芯片的采样率达到最大。1.TLA2158首先要陈列一下该芯片的一些特性,为节省篇幅,此…

2026/7/6 3:48:11 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性:5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域,单元测试是保证代码质量的重要环节。当应用涉及数据库操作时,测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南:告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况:下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻