知识图谱与大模型相结合的3种方法,1+1>2
本文分享自华为云社区《知识图谱与大模型结合方法概述》,作者: DevAI 。
《Unifying Large Language Models and Knowledge Graphs: A Roadmap》总结了大语言模型和知识图谱融合的三种路线:1)KG增强的LLM,可在LLMs的预训练和推理阶段引入KGs;2)LLM增强KG,LLM可用于KG构建、KG embedding、KG补全、基于KG的文本生成、KBQA(基于图谱的问答)等多种场景;3)LLM+KG协同使用,主要用于知识表示和推理两个方面。该文综述了以上三个路线的代表性研究,探讨了未来可能的研究方向。
知识图谱(KG)和大语言模型(LLM)都是知识的表示形式。 KG是符号化的知识库,具备一定推理能力,且结果可解释性较好。但存在构建成本高、泛化能力不足、更新难等不足。LLM是参数化的概率知识库,具备较强语义理解和泛化能力,但它是黑盒模型,可能编造子虚乌有的内容,结果的可解释性较差。可见,将LLM和KG协同使用,同时利用它们的优势,是一种互补的做法。

LLM和KG的融合路线,可分为以下类型:

第一种融合路线是KG增强LLM,可在LLM预训练、推理阶段引入KG。以KG增强LLM预训练为例,一个代表工作是百度的ERNIE 3.0将图谱三元组转换成一段token文本作为输入,并遮盖其实体或者关系来进行预训练,使模型在预训练阶段直接学习KG蕴含的知识。

第二种融合路线是LLM增强KG。LLM可用于KG构建、KG embedding、KG补全、基于KG的文本生成、KBQA(基于图谱的问答)等多种场景。以KG构建为例,这是一项成本很高的工作,一般包含1) entity discovery 实体挖掘 2) coreference resolution 指代消解 3) relation extraction 关系抽取任务。LLM本身蕴含知识,且具备较强的语义理解能力,因此,可利用LLM从原始数据中抽取实体、关系,进而构建知识图谱。

第三种融合路线是KG+LLM协同使用,主要用于知识表示和推理两个方面。以知识表示为例,文本语料库和知识图谱都蕴含了大量的知识,文本中的知识通常是非结构化的,图谱里的知识则是结构化的,针对一些下游任务,需要将其对齐进行统一的表示。比如,KEPLER是一个统一的模型来进行统一表示,它将文本通过LLM转成embedding表示,然后把KG embedding的优化目标和语言模型的优化目标结合起来,一起作为KEPLER模型的优化目标,最后得到一个能联合表示文本语料和图谱的模型。示意图如下:

小结:上述方法都在尝试打破LLM和KG两类不同知识表示的边界,促使LLM这种概率模型能利用KG静态的、符号化的知识;促使KG能利用LLM参数化的概率知识。从现有落地案例来看,大模型对知识的抽象程度高,泛化能力强,用户开箱即用,体验更好。且如果采用大模型+搜索的方案,用户更新知识的成本也较低,往知识库加文档即可。在实际业务场景落地时,如果条件允许,优先考虑使用大模型。当前chatGPT火爆,也印证了其可用性更好。如遇到以下场景时,可以考虑将LLM和KG结合使用:
• 对知识可信度和可解释性要求高的场景,比如医疗、法律等,可以考虑再建设知识图谱来降低大模型回答错误知识的概率,提高回答的可信度和可解释性。
• 已经有一个蕴含丰富知识的图谱,再做大模型建设时。可以参考KG增强LLM的方法,将其知识融合到LLM中。
• 涉及基于图谱的多跳推理能力的场景。
• 涉及基于图谱可视化展示的场景,比如企查查、天眼查等。
文章来自:PaaS技术创新Lab,PaaS技术创新Lab隶属于华为云,致力于综合利用软件分析、数据挖掘、机器学习等技术,为软件研发人员提供下一代智能研发工具服务的核心引擎和智慧大脑。我们将聚焦软件工程领域硬核能力,不断构筑研发利器,持续交付高价值商业特性!加入我们,一起开创研发新“境界”!
PaaS技术创新Lab主页链接:https://www.huaweicloud.com/lab/paas/home.html
参考文献:
Unifying Large Language Models and Knowledge Graphs: A Roadmap https://arxiv.org/abs/2306.08302
知识图谱与大模型相结合的3种方法,1+1>2的更多相关文章
- 10.我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。 请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形. 请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 是不是发现看不懂,哈哈:编程题就是这样,一定要归纳,手写过程: n ...
- 【转】Linux 中清空或删除大文件内容的五种方法(truncate 命令清空文件)
原文: http://www.jb51.net/article/100462.htm truncate -s 0 access.log -------------------------------- ...
- 剑指offer10:2*1的小矩形横着或者竖着去覆盖2*n的大矩形,总共有多少种方法?
1. 题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 2.思路和方法 思路:(下面说到的x*y的矩形,x是宽 ...
- 华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)
题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...
- sklearn 中模型保存的两种方法
一. sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘. from sklearn.externals import joblib #lr是一个LogisticRegressi ...
- 矩形覆盖-我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
class Solution { public: int rectCover(int number) { ; ; ; ||number==) ; ) ; ;i<number+;i++){ res ...
- 动态规划之----我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
利用动态规划,一共有n列,若从左向右放小矩形,有两种放置方式: 第一种:横着放,即占用两列.此时第二行的前两个空格只能横着放,所有,总的放置次数变为1+num(2*(n-2)),其中2*(n-2)代表 ...
- Android基础知识02—安卓日志工具LogCat的五种方法
--------Android 02-------- >>> Android的日志工具LogCat 五个方法,记录信息的级别不一样,从低到高为: 1.Log.v()-日志 ...
- Linux下清空或删除大文件内容的2种方法
在Linux终端下处理文件时,有时候我们想要直接清空文件的内容时但又不用使用任何Linux命令行编辑器,去打开这些文件.那如何才能达到这个目的呢? 1.通过重定向到NULL来清空文件内容 清空或者让一 ...
- [译]在Linux中清空或删除大文件内容的5种方法
原文来源: https://www.tecmint.com/empty-delete-file-content-linux/ 有时,在处理Linux终端中的文件时,您可能希望清除文件的内容,而无需使用 ...
随机推荐
- Stable Diffusion生成图片的参数查看与抹除方法
前几天分享了几张Stable Diffusion生成的艺术二维码,有同学反映不知道怎么查看图片的参数信息,还有的同学问怎么保护自己的图片生成参数不会泄露,这篇文章就来专门分享如何查看和抹除图片的参数. ...
- python: ImportError: cannot import name '_unicodefun' from 'click'
报错 报错原因 click模块版本问题 解决方案 指定click版本为8.0.4 参考链接 https://github.com/psf/black/issues/2964
- PHP插件
- 搭建rsyncd服务
前言 rsync常用来做文件传输和同步.本文示例中客户端通过rsync同步服务端的/home/tmp目录到本地(不是将客户端的文件同步到服务端). 环境信息 IP 系统版本 rsync版本 说明 19 ...
- [kafka]常见术语
前言 kafka属于分布式的消息引擎系统,主要功能是提供一套完备的消息发布与订阅解决方案. 消息和批次 kafka 的数据单元被称为消息.消息由字节数组组成,对kafka来说,消息里的数据没有特殊的格 ...
- 【Unity3D】激光雷达特效
1 由深度纹理重构世界坐标 屏幕深度和法线纹理简介中对深度和法线纹理的来源.使用及推导过程进行了讲解,本文将介绍使用深度纹理重构世界坐标的方法,并使用重构后的世界坐标模拟激光雷达特效. 本文完 ...
- nlp入门(五)隐马尔科夫模型
源码请到:自然语言处理练习: 学习自然语言处理时候写的一些代码 (gitee.com) 一.马尔科夫模型概念 1.1 马尔科夫模型:具有马尔可夫性质并以随机过程为基础的模型 1.2 马尔科夫性质:过去 ...
- Vue【原创】下划线动态效果按钮,一般按钮模式,开关切换模式
效果图: 1.icon-button 一般按钮模式: 1 <template> 2 <div class="icon-button" :style="{ ...
- 一次Python本地cache不当使用导致的内存泄露
背景 近期一个大版本上线后,Python编写的api主服务使用内存有较明显上升,服务重启后数小时就会触发机器的90%内存占用告警,分析后发现了本地cache不当使用导致的一个内存泄露问题,这里记录一下 ...
- MediaBox助力企业一站式获取音视频能力
以一只音视频百宝箱,应对「千行千面」. 洪炳峰.楚佩斯|作者 大家好,今天我分享的主题是MediaBox--行业音视频数字化再加速. 根据权威数据表明,65%的行业数字化信息来自视频,基于此,音视频技 ...