知识图谱嵌入领域的重要研究:编辑基于语言模型的知识图谱嵌入

今天,向大家介绍一篇在知识图谱嵌入领域具有重要意义的研究论文——Editing Language Model-based Knowledge Graph Embeddings。这项工作由浙江大学和腾讯公司的研究人员联合完成,为我们在动态更新知识图谱嵌入方面提供了新的视角和方法。

研究背景

在当今的人工智能领域,知识图谱作为一种丰富的结构化知识库,对于驱动智能应用如搜索引擎、推荐系统和问答机器人等发挥着至关重要的作用。它通过将现实世界中的实体和关系映射为图谱中的节点和边,为机器提供了一种强有力的知识表示方式。

然而,随着时间的推移和社会的演进,知识图谱面临着一个显著挑战:如何有效地应对知识更新的需求?在现实世界中,新的实体不断出现,实体间的关系也会发生变化,这就要求我们的知识图谱能够灵活地反映这些动态变化。

传统的知识图谱嵌入方法,如TransE或RotatE,通常在模型部署后难以进行更新。当知识图谱更新时,这些方法往往需要重新训练整个模型,这不仅耗时,而且计算成本高昂。此外,随着预训练语言模型的兴起,基于这些模型的KG嵌入方法虽然在表示能力上取得了进步,但在知识更新的灵活性上仍然存在局限。

因此,如何设计出一种机制,使得基于语言模型的知识图谱嵌入能够在不重新训练整个模型的情况下,快速适应知识的更新,成为了一个亟待解决的问题。这正是本论文所要探讨的核心议题。

研究方法

为了实现这一目标,论文提出了以下几个关键的研究方法:

研究任务的创新定义

作者们首先定义了两个关键的研究任务:EDITADD。这两个任务分别针对知识图谱嵌入中的错误知识修正和新知识添加。EDIT任务关注于如何准确地纠正KG嵌入中已经存在的错误知识,而ADD任务则着眼于如何将新出现的知识有效地整合进已有的KG嵌入中。这两个任务的提出,为动态更新KG嵌入提供了明确的目标和方向。

数据集的精心构建

为了全面评估所提出方法的性能,作者们构建了四个新的数据集,这些数据集基于两个广泛使用的知识图谱:FB15k237WN18RR。这些数据集经过精心设计,包含了需要编辑或添加的知识,为实验提供了标准化的测试平台。通过这些数据集,研究者能够系统地评估模型在编辑和添加知识时的准确性、效率和对现有知识的保护。

KGEditor模型的创新设计

KGEditor模型是这篇论文的核心贡献之一,它是一个利用超网络(Hypernetwork)来动态编辑KG嵌入的框架。KGEditor的核心思想是通过在超网络中学习额外的参数层,对KG嵌入的实体和关系表示进行精确的调整,而无需重新训练整个模型。

超网络结构的巧妙应用

超网络在KGEditor中扮演着至关重要的角色。它通过学习输入知识的特定模式,生成额外的参数层,这些参数层随后被用来调整KG嵌入中的实体和关系表示。这种方法不仅能够实现对特定知识的快速更新,而且能够保持对其他知识的最小干扰。

编辑知识的效率和效果

KGEditor模型在参数数量和计算时间上均优于现有的基线方法,这表明它在知识编辑上具有更高的效率。此外,通过一系列实验,作者们证明了KGEditor在保持知识局部性的同时进行知识更新方面表现出色,这意味着KGEditor能够在不破坏其他知识表示的前提下,有效地编辑特定的知识。

评估指标的全面设计

为了全面评估编辑操作的效果,作者们设计了一套评估指标,包括知识可靠性(Knowledge Reliability)、知识局部性(Knowledge Locality)和知识效率(Knowledge Efficiency)。这些指标从不同角度衡量了编辑操作的质量和效率,为比较不同编辑方法提供了科学的依据。

实验结果

实验结果表明,KGEditor在多个评估指标上均优于现有技术,特别是在保持知识局部性的同时进行知识更新方面表现出色。此外,KGEditor在参数数量和计算效率上也具有明显优势。

知识可靠性的验证

作者们首先评估了KGEditor在EDIT和ADD任务上的知识可靠性。通过计算Success@1指标,即在所有需要编辑的三元组中,KGEditor能够准确预测正确实体的比例,实验结果显示KGEditor在两个任务上都取得了高成功率。这意味着KGEditor能够有效地修正错误知识(EDIT任务)和整合新知识(ADD任务)。

知识局部性的考察

接下来,作者们考察了KGEditor在编辑操作中的知识局部性。通过计算Retain Knowledge (RK@k)指标,即在模型编辑后,原有正确知识被保留的比例,实验结果表明KGEditor在编辑特定知识时,对其他知识的影响很小。这验证了KGEditor在进行知识编辑时,能够保持对其他知识的最小干扰,体现了良好的知识局部性。

知识编辑效率的评估

在知识编辑效率方面,作者们比较了KGEditor和其他基线方法在参数数量和计算时间上的差异。实验结果表明,KGEditor在参数数量上更为精简,在计算时间上也更短。这表明KGEditor在知识编辑上具有更高的效率,能够在更短的时间内,用更少的计算资源完成知识更新。

模型扩展性的探索

此外,作者们还探讨了编辑多个知识点对KGEditor性能的影响。通过逐步增加需要编辑的三元组数量,作者们评估了KGEditor处理更复杂编辑任务的能力。实验结果显示,KGEditor能够稳定地处理一定数量的编辑操作,而不会显著降低模型性能。这验证了KGEditor在处理更大规模知识编辑任务时的扩展性。

实验的深入分析

在实验分析部分,作者们还深入探讨了影响KGEditor性能的多个因素:

  1. 编辑操作的数量: 实验结果表明,KGEditor能够稳定地处理一定数量的编辑操作,但当编辑操作的数量超过一定阈值时,模型性能会有所下降。这提示我们在实际应用中需要合理控制单次编辑操作的数量。

  2. 不同KGEmbedding初始化方法: 论文还比较了不同的KGEmbedding初始化方法(如FT-KGE和PT-KGE)对KGEditor性能的影响。结果表明,基于提示(prompt-based)的模型更适合于编辑任务,这可能是因为提示能够更有效地利用语言模型的知识表示能力。

  3. 实体和关系的复杂性: 对于涉及多对多关系和复杂知识的编辑操作,KGEditor展现了一定的鲁棒性,但仍有改进空间。这提示我们在设计KGEditor时,需要考虑如何处理更复杂的知识关系。

这项研究为知识图谱嵌入的动态更新提供了一种有效的解决方案,对于促进知识的动态更新和维护具有重要意义。未来的研究可以在此基础上进一步探索,例如处理更复杂的知识关系,或者将这种编辑技术应用到更大规模的语言模型中。

建议大家去看看原论文:

论文作者:程思源(浙江大学)、张宁豫(浙江大学)、田博中(浙江大学)、陈曦(腾讯)、刘庆斌(腾讯)、陈华钧(浙江大学)

发表会议:AAAI 2024

论文链接:https://arxiv.org/abs/2301.10405

代码链接:https://github.com/zjunlp/PromptKG/tree/main/deltaKG

Demo链接:https://huggingface.co/spaces/zjunlp/KGEditor

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

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

相关文章

kubernetes中的附件组件Metrics-server与hpa资源实现对pod的自动扩容和缩容

一、概述 Metrics-Server组件目的:获取集群中pod、节点等负载信息; hpa资源目的:通过metrics-server获取的pod负载信息,自动伸缩创建pod; 二、安装部署 Metrics-Server组件 安装目的,就是给k8s集群安装top…

Win 下 ncnn 编译运行

ncnn 官网上编译的过程比较详细,本文主要记录编译、运行过程中遇到的问题,希望可以帮到大家。 我的环境是 Win10 系统,VS 2022。 编译 先使用如下命令获取 ncnn 代码库: git clone https://github.com/Tencent/ncnn.git cd n…

【库函数】Linux下动态库.so和静态库.a的生成和使用

目录 🌞1. Linux下静态库和动态库的基本概念 🌞2. 动态库 🌊2.1 动态库如何生成 🌍2.1.1 文件详情 🌍2.1.2 编译生成动态库 🌊2.2 动态库如何使用 🌍2.2.1 案例 🌍2.2.2 动态…

速卖通自养号测评:如何规避安全风险?

对于初涉电商领域的新卖家而言,进行销量测评显得尤为关键。由于速卖通新店铺往往难以获得平台活动的支持,流量也相对匮乏,因此,开店的首要任务便是进行测评,通过积累一定的评论和销售数据。 测评的益处颇多&#xff0…

【数据结构与算法】8.二叉树的基本概念|前序遍历|中序遍历|后序遍历

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 |《MySQL探索之旅》 |《Web世界探险家》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更…

4.3网安学习第四阶段第三周回顾(个人学习记录使用)

本周重点 ①Java入门基础 ②Java方法入门 ③Java面向对象(**重点) ④Java的Maven构建项目工具 ⑤Java其他操作补充 ⑥Java序列化和反序列化 ⑦Url 的DNS 审计链(**难点) ⑧Springboot和前端数据分离(主流使用) ⑨Common Collections(CC链漏洞) 本周主要内容 ①Java入…

使用 Flutter 打造引人入胜的休闲游戏体验

作者 / Zoey Fan 去年,Flutter 休闲游戏工具包进行了一次重大更新。近期在旧金山举办的游戏开发者大会 (GDC) 上,Flutter 首次亮相。GDC 是游戏行业的顶级专业盛会,致力于帮助游戏开发者不断提升开发技能。欢迎您继续阅读,了解开发…

01、创建型-单例模式--只有一个实例

文章目录 前言一、基本介绍1.1 什么是单例模式1.2 为什么要用单例模式1.3 应用场景1.4 单例优缺点 二、单例模式的实现方式2.1 饿汉式单例2.1.1 静态变量方式2.1.2 静态代码块 2.2 懒汉式单例2.2.1 懒汉式单例2.2.2 懒汉式优化①-线程安全2.2.2 懒汉式优化②-双重检查锁2.2.3 懒…

智能人事管理系统:全球团队高效管理之道

在全球化背景下,企业面临着管理分布在各地的员工队伍的挑战。为了确保人力资源管理的高效运作,实现跨地域、跨时区的协同工作,智能化人事管理系统应运而生。本文将重点介绍一款功能全面、智能化的人事管理系统都具备哪些功能,可以…

upload-labs第十七十八关

第十七关 $is_upload false; $msg null;if(isset($_POST[submit])){$ext_arr array(jpg,png,gif);$file_name $_FILES[upload_file][name];$temp_file $_FILES[upload_file][tmp_name];$file_ext substr($file_name,strrpos($file_name,".")1);$upload_file …

【面试必会】线程池创建方式详解

最近面试问道了线程池的创建方式,这里出一篇文章记录下这一知识点! 线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的ThreadFactory创建…

【QT】Ubuntu22.04 配置 QT6.5 LTS

【QT】Ubuntu22.04 配置 QT6.5 LTS 文章目录 【QT】Ubuntu22.04 配置 QT6.5 LTS1.注册QT Group的账号2.安装QT Creator3.启动QT Creator报错from 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.4.运行QT的demoReference 1.注册QT Group的…

JAVASE基础语法(异常、常用类)

一、异常 1.1 什么是异常 异常就是指不正常。是指代码在运行过程中可能发生错误,导致程序无法正常运行。 package com.atguigu.exception;public class TestException {public static void main(String[] args) {int[] arr {1,2,3,4,5};System.out.println(&quo…

【AI写作】未来科技趋势:揭秘DreamFusion的革新力量

首先,这篇文章是基于笔尖AI写作进行文章创作的,喜欢的宝子,也可以去体验下,解放双手,上班直接摸鱼~ 按照惯例,先介绍下这款笔尖AI写作,宝子也可以直接下滑跳过看正文~ 笔尖Ai写作:…

数据库之数据库恢复技术思维导图+大纲笔记

大纲笔记: 事务的基本概念 事务 定义 用户定义的一个数据库操作系列,这些操作要么全做,要么全不做,是一个不可分割的基本单位 语句 BEGIN TRANSACTION 开始 COMMIT 提交,提交事务的所有操作 ROLLBACK 回滚&#xff0c…

Centos之yum安装好玩的命令

1.会动的小火车 我在root下使用的 yum install sl.x86_64sl2.figlet yum install figlet.x86_64figlet 55553.cowsay会说话 yum install cowsay

防火墙详细讲解

目录 介绍 防火墙的特征 防火墙的组成 介绍 防火墙(firewall)是指一种计算机硬件和软件的结合,将内部网和公众访问网(如Internet)分开的方法,它实际上是一种隔离技术。防火墙主要由服务访问规则、验证工…

python数字验证码自动识别

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在网络上,许多网站和应用程序使用验证码(Completely Automated Publ…

MYSQL 存储java.sql.Timestamp类型的数据时,mysql存储时间和java获取到的时间相差8小时

###JAVA JDBC驱动 com.mysql.cj.jdbc.DriverJDBC连接字符串 jdbc:mysql://127.0.0.1:3006/db?useUnicodetrue&characterEncodingUTF8&useLegacyDatetimeCodefalse&serverTimezoneUTCMySQL 时区 show global variables like “%time_zone%”; 问题分析 驱动…

网络安全之SQL注入漏洞复现(中篇)(技术进阶)

目录 一,报错注入 二,布尔盲注 三,sleep延时盲注 四,DNSlogs 盲注 五,二次注入 六,堆叠注入 总结 一,报错注入 报错注入就是在错误信息中执行 sql 语句,利用网站的报错信息来带…