科技云报道:ChatGPT的胜利,宣告知识图谱的消亡?

news2024/11/19 9:39:14

科技云报道原创。

过去10年,知识图谱可谓是最接近“人工智能”的概念。业内普遍认为,知识图谱的概念最先是由谷歌于2012年正式提出,主要用来支撑下一代搜索和在线广告业务。

此后,这项技术迅速火爆,被国内外多家搜索引擎公司所采用,如:美国的微软必应,中国的百度、搜狗等,都在短短的一年内纷纷宣布了各自的“知识图谱”产品,足以看出这项革新对整个搜索引擎界的整体影响。

但这项技术的应用并不仅拘泥于搜索引擎领域范围。由于让人工智能具备了认知能力和逻辑能力,知识图谱进而实现了智能分析、智能搜索、人机交互、个性化推荐等场景应用,成为互联网知识驱动的智能应用的基础设施。

可以说知识图谱与大数据和深度学习一起,成为推动互联网和人工智能发展的核心驱动力之一。

然而,ChatGPT的横空出世让整个AI界都沸腾了。

在这里插入图片描述

ChatGPT带来的震撼在于,它不用借助知识图谱就可以很好地解决用户对话知识问答相关的任务,具有非常强大的理解能力、流畅的对话能力和上下文的刻画能力。

更重要的是,它将原来基于特定任务的模型变成了一个统一的、基于提示的、任务无关的模型,可以去尝试解决非常复杂或困难的、人类参与很多的任务。

这也让AI界认知产生了分化,有观点认为有了ChatGPT这种大语言模型后,知识图谱完全没有存在的意义,甚至有的公司已经彻底抛弃了知识图谱路线。

那么,在大模型时代,知识图谱真的要消亡了吗?

知识图谱vs大语言模型

在讨论这个问题之前,先来了解一下知识图谱和大语言模型的异同。

知识图谱从字面上看,可以拆分为知识+图谱,这样就可以理解:将需要的知识数据(结构化或非结构化数据)以图谱的形式进行展示,这种简单的过程也是知识图谱的构建过程。

知识图谱通常包含实体、关系和属性三个要素,例如人名、国家、语言等实体,以及人口、首都、官方语言等关系和属性。它可以根据图谱中定义的关系提供精确且逻辑一致的答案,因此对于信息检索、问答和结构化数据推理等任务特别有用。

大语言模型是基于深度学习和神经网络,像GPT-4这样的大语言模型是在大量文本数据上进行训练,以学习模式、上下文以及单词和短语之间的关系。

它们可以生成类似人类的文本、回答问题、提供建议以及执行其他自然语言任务,还可以很好地处理模棱两可和不完整的信息,并且处理广泛的主题。

不难发现,两者在知识的学习、分析、推理方面有着类似的功能,但却各有优劣势。

知识图谱通常需要手动或半自动构建,是一种非常耗时耗人力的工作,随着知识的不断扩展和变化,知识图谱也需要不断更新;

同时,它的作用仅限于图谱编码中的知识范围,这使得它在处理模棱两可或不完整的信息时准确率较低。

但它的优势在于准确的知识库,对于事实性的、专业性的知识有着非常高的准确度。

相反,专业知识在大模型训练语料里占比非常少,这也使得ChatGPT等语言大模型生成的内容的可靠性和真实性备受质疑。

它无法将真实与想象、真实与虚构分开,这种现象甚至促使创造了一个新术语:人工智能幻觉,维基百科将其定义为“人工智能的自信反应,其训练数据似乎没有合理性”。

同时,语言大模型需要大量的计算能力和资源来进行训练和微调,其花费的时间和成本也不容小觑。

目前,语言大模型只在通用领域给出了较为惊艳的表现,至于在知识图谱广泛应用的垂直领域,语言大模型暂时未显示出领先的一面。

知识图谱退场为时尚早

正因为语言大模型暂时还无法解决事实准确性、可信度、可追溯等问题,知识图谱的存在就非常有意义。

知识图谱或者类似的知识库、知识引擎,能够为大模型提供准确的知识,它可以被用来通知、聚焦、过滤和控制生成式人工智能,增强大模型响应的智能和可靠性,使其更适合关键任务。

当大模型真正落地到工业应用时,也需要有知识图谱对专业领域知识的支撑,至少短期来看是非常需要的。

因此,我们也可以说,知识图谱的构建原来有各种各样的构建方式,现在又多了一种构建方式——用大模型去辅助整个知识图谱构建,通过大量语料和大数据的学习,通过Prompt去进行知识的激发。

同时知识图谱反过来也能够去推动大模型Prompt工程里的相关工作,融入到大模型的训练中,使得生成更可控,更准确。同时,知识图谱也可以提供很多额外的语义信息,帮助大模型的知识推理做得更好。

所以从本质上看,大语言模型出现后,并不是将知识图谱消灭了,而是可以发挥知识图谱和大模型这两种技术的优势:在需要可控知识或可控逻辑的时候,知识图谱会发挥更大作用;在需要更自由的交互任务理解和生成时,大模型发挥更好的作用。

结合这两种方法的优势,可以产生更强大和有效的自然语言处理系统。

知识图谱与大语言模型的结合

那么,知识图谱如何与大语言模型相结合呢?

有意思的是,ChatGPT给出了将知识图谱集成到大语言模型中的几种方法:

使用知识图谱数据进行预训练

将知识图谱中的知识注入到大语言模型的预训练阶段,可以帮助大模型学习实体与其属性之间的关系。可以通过将知识图谱三元组(主语、谓语、宾语)转换为自然语言句子并将它们添加到训练语料库中来完成。

使用基于图的目标进行微调

在预训练之后,使用基于图的目标对特定任务的模型进行微调,可以帮助大模型学习使用图中编码的知识进行推理和推理。这可能涉及将自然语言查询转换为基于图形的查询,以及开发将基于图形的推理与基于文本的推理相结合的方法。

例如,可以对模型进行微调,以预测图形中缺失的实体或关系,这可以提高其对底层结构的理解。

改进实体链接和消除歧义

增强模型识别文本中的实体并将其链接到知识图谱中相应节点的能力。这可以通过在训练或微调期间结合高级实体链接和消除歧义技术来实现。

集成图嵌入

图嵌入是一种用于将图中的节点、边或整个子图转换为连续向量或低维表示的技术,机器学习算法可以更轻松地处理这些向量或低维表示。

图嵌入在知识工程的上下文中特别有用,因为它可以帮助将知识图谱中的结构化信息转换为可以更容易地与机器学习算法(尤其是神经网络)集成的格式。

使用图神经网络或其他图表示学习方法学习,并可用于丰富模型对实体及其关系的理解。

推理时查询知识图谱

当模型遇到需要精确、结构化知识的问题或任务时,可以查询知识图谱获取相关信息。这可以通过将自然语言查询转换为基于图形的查询(例如,使用SPARQL),然后使用检索到的信息来回答问题或执行任务来完成。

知识图谱引导生成

将大语言模型的生成能力与知识图谱中的结构化信息相结合,可以生成更准确、更相关的文本。例如,在生成实体的摘要或描述时,模型可以对知识图谱中的信息进行优先级排序,以确保事实的正确性。

混合模型

开发包含基于图和基于神经网络的组件的混合模型,可以利用这两种方法的优势。例如,图神经网络(GNN)可用于学习图结构数据的潜在表示,然后可以将其与大语言模型集成以执行自然语言处理任务。

鼓励可解释性和可解释性

开发允许大语言模型基于知识图谱为其推理和预测生成解释的方法。这可以帮助用户了解模型如何利用知识图谱中的结构化信息,并有助于调试和优化模型。

结语

技术的浪潮总是汹涌而至,在新的技术革新来临之际,我们更应该客观看待新旧技术的优劣,而不是冲动地去拥抱新技术,抛弃现有成熟技术。

对于知识图谱来说,大模型的出现并不是一个冲击,恰恰是给了知识图谱一个新的生长空间。当我们将大模型与自身优势的行业应用去深度结合,形成数据和算法的持续迭代,必将看到更好的结果持续涌现。

【关于科技云报道】

专注于原创的企业级内容行家——科技云报道。成立于2015年,是前沿企业级IT领域Top10媒体。获工信部权威认可,可信云、全球云计算大会官方指定传播媒体之一。深入原创报道云计算、大数据、人工智能、区块链等领域。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/562897.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FasterTransformer5.0编译安装与测试

基础环境:centos7 cuda10.2cudnn7 显卡:Tesla V100 1 C编译准备 代码准备: git clone -b release/v5.0_tag https://github.com/NVIDIA/FasterTransformer.git mkdir -p FasterTransformer/build cd FasterTransformer/build git submodu…

2023年还有人在纠结如何学习黑客知识?

首先我谈下对黑客&网络安全的认知,其实最重要的是兴趣热爱,不同于网络安全工程师,他们大都是培训机构培训出来的,具备的基本都是防御和白帽子技能,他们绝大多数的人看的是工资,他们是为了就业而学习&am…

【国产虚拟仪器】基于AD9172/AD9176的4 通道12.6GSPS 采样率16 位DA 播放FMC JESD204B 接口子卡模块

板卡概述 FMC_XM131 是一款4 通道12.6GSPS 采样率16 位DA 播放FMC子卡模块,该板卡为FMC标准,符合VITA57.4 规范,可以作为一个理想的IO 模块耦合至FPGA 前端,16 通道的JESD204B 接口通过FMC连接器连接至FPGA 的高速串行端…

day7 - 使用几何变换让图像动起来

本期将了解图像的几何变换。几何变换是指改变图像的几何结构,例如大小、角度和形状等,让图像呈现出缩放、翻转、映射和透视的效果。 完成本期内容,你可以: 了解几何变换的定义掌握几何变换的原理和使用 若要运行案例代码&#…

【正点原子STM32连载】 第十五章 按键输入实验 摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第十五…

Vue之MVVM模型

文章目录 前言一、简说MVVM模型二、走进MVVM总结 前言 Vue的创建者在创建Vue时没有完全遵守MVVM(一种软件架构模式),但是Vue的设计受到了他它的启发。这也是为什么经常用vm(ViewModel的缩写)这个变量名表示Vue实例。 …

服了呀,被现在的00后卷麻了....

现在的小年轻真的卷得过分了。前段时间我们公司来了个00年的,工作没两年,跳槽到我们公司起薪18K,都快接近我了。后来才知道人家是个卷王,从早干到晚就差搬张床到工位睡觉了。 最近和他聊了一次天,原来这位小老弟家里条…

docker创建emqx容器,emqx版本4.4.9

题记:网上找了很多文章,都没能怎么说明白如何对mqtt连接通信做认证,也就是tcp方式的时候,携带user、password,很苦恼,最后找了一大圈,说emqx的4.4.9版本的Dashboard有插件,果然顺藤摸…

vue动态class的写法

本文会详细介绍 vue动态 class的写法,并且提供一些我个人的理解,希望对你有所帮助。 如果你是一个新手,或者想了解 vue的源码,那么首先应该学习 vue的基础知识,比如:什么是静态语言,有什么作用等…

155. 最小栈

题目描述&#xff1a; 主要思路&#xff1a; 利用辅助栈来实现&#xff0c;一个最小栈用类似于单调栈的方法进行维护&#xff0c;具体见代码。 class MinStack { private:stack<int> x;stack<int> minx; public:MinStack() {minx.push(INT_MAX);}void push(int v…

IMX6ULL的I2C驱动详细分析

IMX6ULL的I2C驱动详细分析 文章目录 IMX6ULL的I2C驱动详细分析i2c_imx_driver 的平台驱动注册i2c_imx_probe注册函数i2c_imx_algoI2C算法结构体i2c_imx_start开始I2Ci2c_imx_stop停止I2Ci2c_imx_isr中断服务函数i2c_imx_dma_writeDMA 进行写操作的 I2C 传输2c_imx_dma_readi2c_…

动图怎么拆分成静图?简单快速分解gif的方法

怎么把gif动图变成静态图片&#xff1f;常见的gif动图画面生动丰富&#xff0c;是由一帧一帧静态的图片合成的&#xff0c;当我们想要把gif动图拆分成多张图片的时候要怎么操作呢&#xff1f;有没有什么简单方便的工具吗&#xff1f; 一、有没有简单方便的gif工具呢&#xff1…

Linux内存简介

Linux内存简介 概述 为何MemTotal小于RAM容量 [rootiZbp1dphe2bpv39op1g123Z ~]# dmesg | grep Memory [ 1.391064] Memory: 131604168K/134217136K available (14346K kernel code, 9546K rwdata, 9084K rodata, 2660K init, 7556K bss, 2612708K reserved, 0K cma-reserved) …

云原生改造- istio

istio 官网有bookinfo的案例&#xff0c; 但是这个案例过于繁琐&#xff0c;直接就可以运行&#xff0c;但是有些原理不是很清楚。 本教程是k8s改造成istio一个案例。spring-petclinic-msa是网上找到的一个k8s的一个java案例&#xff0c;通过spring-petclinic-msa改造成istio&a…

盘点团队在线帮助文档怎么做?

团队在线帮助文档是一个非常重要的工具&#xff0c;它可以帮助团队成员更好地协作和沟通&#xff0c;提高工作效率&#xff0c;并减少沟通成本。在本文中&#xff0c;我们将会盘点团队在线帮助文档的各个方面&#xff0c;以帮助您更好地了解如何创建一个高效的在线帮助文档。 …

6. python的for循环

文章目录 一、for循环1.1、for循环分析1.2、注意事项 二、遍历数值列表2.1、range()函数的使用2.2、 创建数值列表2.3、对数值列表进行简单统计 一、for循环 有时&#xff0c;我们需要对列表内的所有元素逐一进行相同的操作&#xff0c;为避免出现大量重复的代码&#xff0c;p…

js一行代码就能完成的事情,为什么要写两行

三元运算符 用三元运算符代替简单的if else if (age < 18) { me 小姐姐; } else { me 老阿姨; }改用三元运算符,一行就能搞定 me age < 18 ? 小姐姐 : 老阿姨;复杂的判断三元运算符就有点不简单易懂了 const you "董员外" const your "菜…

一周吃透Java面试八股文(2023最新整理

Java就业大环境仍然根基稳定&#xff0c;市场上有很多机会&#xff0c;技术好的人前景就好&#xff0c;就看你有多大本事了。小编得到了一份很不错的资源&#xff0c;建议大家可以认真地来看看以下的资料&#xff0c;来提升一下自己的核心竞争力&#xff0c;在面试中轻松应对面…

如何在WordPress页面上显示或隐藏小部件?

您想在 WordPress 网站的特定页面上显示或隐藏小部件吗&#xff1f; 默认情况下&#xff0c;当您将小部件添加到您的网站时&#xff0c;它们将显示在所有页面上。但是&#xff0c;有时您可能只想在某些页面上显示选定的小部件可以帮助您更好地自定义您的网站并提供个性化的用户…

如何在 Fedora 37 上安装 FileZilla?

FileZilla 是一款流行的开源 FTP&#xff08;文件传输协议&#xff09;客户端&#xff0c;它提供了一个直观的界面来管理和传输文件。本文将详细介绍如何在 Fedora 37 上安装 FileZilla。以下是安装过程的详细步骤&#xff1a; 步骤一&#xff1a;更新系统 在安装任何软件之前…