论文浅尝 | Dually Distilling KGE for Faster and Cheaper Reasoning

news2024/11/25 13:02:04

d7f499230ebbb27afa08fdc70b486e7b.png

笔记整理:张津瑞,天津大学硕士,研究方向为知识图谱

链接:https://dl.acm.org/doi/10.1145/3488560.3498437

动机

知识图谱已被证明可用于各种 AI 任务,如语义搜索,信息提取和问答等。然而众所周知,知识图谱还远非完备,这进而也促进了许多关于知识图谱完备性的研究。其中比较常见且广泛使用的方法是知识图谱嵌入(KGE Knowledge Graph Embedding),如 TransE、ComplEx 和 RotatE 等。同时,为了获得更好的性能,通常首选训练具有更高维度的 KGE。但是模型大小(参数的数量)以及推理时间的成本通常随 embedding 维度的增加而快速增加,如图 1 所示:随着 embedding 维度的增大,性能增益越来越小,而模型大小和推理成本却仍几乎保持线性增长。此外,高维 KGE 在许多现实场景中是不切实际的,尤其是对于计算资源有限或者是在推理时间有限的应用中,低维的 KGE 是必不可少的。然而,直接训练一个小尺寸 KGE 通常表现不佳,我们进一步提出一个新的研究问题:是否有可能从预训练的高维 KGE 中获得低维 KGE,在更快成本更低的情况下取得良好的效果。

亮点

DualDE的亮点主要包括:

1. 提出了一种新颖的框架,能从高维 KGE 中提取低维 KGE,并取得良好的性能;

2. 在蒸馏过程中考虑了教师和学生之间的双重影响,并提出了一种软标签评估机制,为不同的三元组自适应地分配不同的软标签和硬标签权重,以及一种两阶段的蒸馏方法来提高学生对教师的接受程度。

概念及模型

模型整体框架如图 1 所示:

1b460931c85a5483e9d4ec1e3aec77f9.png

图1 DualDE总体架构图

  • 蒸馏目标

准备一个预训练好的高维 KGE 模型(教师),并随机初始化一个低维 KGE 模型(学生)。在 DualDE 中,训练学生模型的硬标签损失是KGE方法的原始损失,通常是二元交叉熵损失。此外,我们让学生从目标三元组的整体可信度和嵌入结构这两个方面模仿教师。

首先,对一个三元组 (h, r, t),教师和学生模型可以通过评分函数为其分配一个分数:1)学生模仿教师对三元组的整体可信度可以通过拟合两个模型输出的三元组分数完成;2)学生模仿教师的嵌入结构可以通过拟合两个模型中三元组头实体 embedding 和尾实体 embedding 的长度比和角度来反映。最后我们将教师和学生的三元组分数差异和嵌入结构差异之和作为软标签优化目标。

  • 软标签评估机制

软标签评估机制可评估教师提供的软标签的质量,并自适应地为不同的三元组分配不同的软标签和硬标签权重,从而保留高质量软标签的积极作用,避免低质量软标签的负面影响。

理论上,KGE 模型会给正三元组更高的分数,给负三元组更低的分数,但对于一些 KGE 模型难以掌握的三元组则相反。具体来说,如果教师给一个负(正)三元组打高(低)分,这意味着教师倾向于将其判断为正(负)三元组,那么教师输出的这个三元组的软标签是不可靠的,甚至会误导学生。对于这个三元组,我们需要削弱软标签的权重,鼓励学生更多地从硬标签中学习。

  • 两阶段蒸馏方式

上一部分介绍了如何让学生从 KGE 教师那里提取知识,其中学生用硬标签训练,软标签由固定教师生成。为了获得更好的学生,我们提出了一种两阶段蒸馏方法,通过解冻教师并让其在蒸馏的第二阶段向学生学习来提高学生对教师的接受度。

第一阶段。第一阶段类似于传统的知识蒸馏方法,其中教师在培训学生时保持不变。第二阶段。在第二阶段调整教师的同时,对于那些学生没有掌握好的三元组,我们也希望减少学生的输出对教师的负面影响,让教师更多从硬标签中学习,从而以保持教师的高准确性。因此,我们也将软标签评估机制应用于教师的调整。通过评估学生给每个三元组的分数,教师的硬标签和软标签的权重被自适应分配。在此阶段,教师和学生一起优化。

实验

我们在典型的KGE基准上评估了DualDE,并做实验探究了以下几个问题:

(1)DualDE是否能够从高维的教师中提炼出一个好的低维学生,并比从头开始训练的相同维度的模型表现更好?没有蒸馏或使用其他KD方法训练的相同维度模型?在没有蒸馏或使用其他KD方法的情况下?

(2)蒸馏后的推理时间有多大提高?

(3)软标签评估机制和两阶段蒸馏方法对我们的提议是否有贡献,贡献有多大?

DualDE 在常用的数据集 WN18RR 和 FB15K-237 上进行了实验,与几个当前先进的蒸馏方法相比,DualDE 体现了优越的性能。下面是实验结果:

f0e8baee2f07e1324ea57ff701115353.png

表1 WN18RR的链接预测结果

c522ca4199cf69315448509f53261b92.png

表2 FB15k-237的链接预测结果

Q1:我们的方法是否成功地提炼出一个好学生?

首先,我们在表1中分析了WN18RR的结果。表1表明,随着嵌入维数的减小,“无DS”模型的性能显著下降。对于Simple,与512维教师相比,32维“无DS”模型在MRR、Hit@3和Hit@1上仅获得64.8%、66.1%和47.8%的结果。而对于ComplEx,MRR从0.433下降到0.268(38.1%)。这说明直接训练低维KGE产生差的结果。

与“no-DS”相比,DualDE大大提高了32维学生的成绩。TransE, SimplE,ComplEx 和 RotatE对WN18RR的MRR从0.164提高到0.21(28.0%),从0.273提高到0.384(40.7%),从0.268提高到0.397(48.1%),从0.421提高到0.468(11.2%)。在“no-DS”的基础上,我们的32个维度的学生在这四个KGE中的MRR、Hit@10、Hit@3和Hit@1上平均提高了32.0%、23.0%、33.9%和46.7%,最终达到了教师在MRR、Hit@10、Hit@2和Hit@3上92.9%、94.8%、93.1%和102.3%的水平。我们还可以在表2中观察到FB15k-237的类似结果。实验结果表明,DualDE在保留教师的大部分性能(90%以上)的同时,可以达到16倍(512:32)的嵌入压缩比,尽管有一定的性能损失,但仍然比直接训练低维模型好得多。

Q2:训练学生加快推理速度和多少?

为了测试推理速度,我们在93003条实验样本WN18RR和310116条FB15k237样本进行链路预测实验。由于推断速度不受预测模式(头部预测或尾部预测)的影响,因此统一比较尾部预测时间。推理在单个Tesla-V100 GPU上执行,测试批量大小设置为实体总数:WN18RR为40943,FB15k-237为14541。为了避免偶然因素,我们重复实验3次并报告平均时间。表3示出了推理时间成本的结果(以秒为单位)。

9dd144fc7ccf810c07aad2784273a6f7.png

表3 推理时间(秒)

结果表明,经过训练的学生大大加快了推理速度.以ComplEx和RotatE为例,512维教师在WN18RR上的推理时间是32维学生的7.03倍和7.81倍。与教师相比,64维学生在两个数据集的TransE、SimplE、ComplEx和RotatE上的平均速度提高了2.25 ×、2.22 ×、3.66 ×和3.98 ×,32维学生的平均速度提高了3.11 ×、3.35 ×、5.90 ×和5.76 ×。

Q3:软标签评价机制和两阶段蒸馏法是否有贡献?贡献程度如何?

我们进行了一系列消融研究,以评价DualDE两种策略的影响:软标签评价机制和两阶段蒸馏方法。

首先,研究软标签评价机制的影响,我们比较我们的方法与删除软标签评价机制之后的方法。然后,研究影响二级蒸馏方法,我们比较DS和删除第一阶段(- s1)和删除第二阶段(s2)之后的模型。表4总结了WN18RR数据集上MRR 和Hit@10的结果。

3a5fee4ed5fdd47762359b4278b6025b.png

表4:WN18RR消融研究。D指的是学生的维度和M指的是方法。

在去除SEM(见 -SEM)后,所有学生的表现与DS相比都有所下降。在这四个KGE中,64维学生的MRR和Hit@10平均下降了3.7%和2.8%,32维学生的MRR和Hit@10平均下降了7.9%和5.4%。实验结果表明,软标签评价模块对每个三元组的软标签质量进行评价,并对不同的三元组赋予不同的软标签和硬标签权重,确实有利于学生模型掌握较难的三元组,获得更好的性能。

删除S1,仅保留S2(见 -S1),总体性能低于DS。据推测,原因是教师和学生都将在S2适应对方。对于随机初始化的学生,学生向教师传递大部分无用的信息,这可能是误导性的并且将使教师崩溃。此外,“-S1”的性能非常不稳定。在“-S1”设置下,64维学生的成绩仅略差于DS,而32维学生的成绩明显非常差。对于SimplE 32维学生来说,“-S1”的MRR和Hit@10比DS下降了21.4%和10.6%。这甚至比使用最基本的蒸馏方法BKD更糟,表明第一阶段对于DualDE是必要的。

删除S2,仅保留S1(见 -S2),性能在几乎所有的指标上都降低了。与DS相比,64维和32维-s2的学生平均下降了2.4%和3.8%,表明第二阶段确实可以使老师和学生互相适应,并进一步改善结果。

这些结果支持我们的二级蒸馏的有效性,首先培养学生S1收敛到一定的性能,然后在S2共同优化老师和学生。

总结

太多的知识图谱的嵌入参数将带来巨大的存储和计算挑战实际应用场景。在这项工作中,我们提出一种新颖的KGE蒸馏法DualDE,将KGE压缩到低维空间,有效转移老师的知识到学生中。考虑教师和学生之间的双重影响,我们建议DualDE使用两种蒸馏策略分为: 软标签评估机制,用于自适应地为不同的三元组分配不同的软标签和硬标签权重;以及两阶段蒸馏方法,用于通过鼓励学生老师相互学习来提高学生对教师的接受度。我们已经在几个KGE和基准数据集上通过链接预测任务评估了DualDE。实验结果表明,该方法可以有效地减少嵌入参数,在性能损失很小或没有损失的情况下,极大地提高了高维KGE的推理速度。


OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

1e5b06d6c95bf0416ba6c67d9cd95eae.png

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

【C++】C++11常用新特性

✍作者:阿润菜菜 📖专栏:C 目录 一、统一的列表初始化二、 简化声明2.1 auto2.2 decltype2.3 nullptr 三、右值引用和移动语义 -- 重要3.1 区分左值引用和右值引用3.2 对比左值引用看看右值引用使用价值3.3 万能引用和完美转发(st…

基于word文档,使用Python输出关键词和词频,并将关键词的词性也标注出来

点击上方“Python爬虫与数据挖掘”,进行关注 回复“书籍”即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 移船相近邀相见,添酒回灯重开宴。 大家好,我是Python进阶者。 一、前言 前几天在有个粉丝问了个问题,大概意思是这样…

一道北大强基题背后的故事(三)——什么样的题是好题?

早点关注我,精彩不错过! 上回我们针对这道北大强基题[((1 sqrt(5)) / 2) ^ 12]在答案的基础上给出了出题的可能思路,想一探究竟,相关内容请戳: 一道北大强基题背后的故事(二)——出题者怎么想的…

【Kubernetes入门】Service四层代理入门实战详解

文章目录 一、Service四层代理概念、原理1、Service四层代理概念2、Service工作原理3、Service原理解读4、Service四种类型 二、Service四层代理三种类型案例1、创建ClusterIP类型Service2、创建NodePort类型Service3、创建ExternalName类型Service 三、拓展1、Service域名解析…

Latex中图片排版(多个子图、横排、竖排、添加小标题)

1、两个子图横排 \begin{figure}[!t] \centering %\includegraphics[width3in]{fig5} \subfloat[subfig figure title]{\includegraphics[scale0.5]{superd2}} \subfloat[subfig figure title]{\includegraphics[scale0.5]{superd2}} \caption{title} \label{fig_6} \end{figu…

阿里发布的百亿级高并发系统(全彩版小册),涵盖了所有的高并发操作

高并发 提到“高并发”相信你们应该都不会感到陌生!此时你脑中应该会浮现好多有关高并发的:业务急剧增长、电商购物、电商秒杀、12306抢票、淘宝天猫各种活动等;都是需要用到高并发的,那么如何去设计一个高并发系统抵挡这些冲击呢…

Django的app里面的视图函数

我之前说过需要重点去了解view和model,下面是我的总结。 视图函数是存在view.py里面的,视图函数的主要功能是接收请求、返回响应。在建立应用程序后,先在URL配置文件中加一条配置项指明URL与视图函数的对应关系。然后按照实际需求在视图函数…

三次握手四次挥手过程剖析

【一】预备知识: 1.三次握手并不一定非得成功,最担心得其实就是最后一个akc(应答)丢失,但是还是有配套得解决方案,比如超时重传机制。 2.连接是需要被保存下来得,是需要被os管理起来得&#xf…

被一个gpio口搞死的一天

今天是新项目调试的第一天。 我起的很早,起早的原因很简单,我家楠哥要我送他上学,他说爸爸没有起到一个当爸爸的责任,他也想让爸爸送他上学,然后我就送了。 7点30起来,8点出发,然后回来看了一下…

IDEA把css/js压缩成一行min文件,idea实现右键压缩css和js文件

前言 发布时有些css和js文件较长多行,导致加载的时候略慢,所以想把指定的css或js压缩 实现 整合 yuicompressor-2.4.8.jar 下载地址1:https://github.com/yui/yuicompressor/releases 下载地址2:https://github.com/yui/yuicom…

小学生开“卷”AIGC,绝不能输在起跑线上

图片来源:由无界AI生成 OpenAI的研究报告称,未来,大量工作岗位将受到AI冲击,首当其冲的岗位是作家、数学家、网页设计师、记者、律师…… 自从ChatGPT问世以来,人类会被AI替代的讨论甚嚣尘上,焦虑情绪无处不…

chatgpt赋能python:Python中的倒序遍历:如何使用Python倒序遍历?

Python中的倒序遍历:如何使用Python倒序遍历? Python是一种高级编程语言,它非常适合数据科学、机器学习和人工智能等领域。Python的强大之处在于它有很多内置功能,其中包括倒序遍历。 在本篇文章中,我们将介绍如何使…

EmbodiedGPT|具身智能或将成为实现AGI的最后一公里

卷友们好,我是穆尧。 最近由Chatgpt所引爆的新一代人工智能的革命正在如火如荼的进行,几乎重塑了所有的互联网产品,如办公软件、浏览器插件、搜索引擎、推荐系统等。这样巨大的改变,让大家对通用人工智能又燃起了新的希望&#xf…

CTPN文本检测详解 面试版本

二.关键idea 1.采用垂直anchor回归机制,检测小尺度的文本候选框 2.文本检测的难点在于文本的长度是不固定,可以是很长的文本,也可以是很短的文本.如果采用通用目标检测的方法,将会面临一个问题:**如何生成好…

Autosar诊断实战系列01-手把手教你增加一路31Routine服务

本文框架 1.系列概述2. UDS Routine服务添加3. DcmDspRoutine配置3.1 DcmDspRoutineInfos配置3.2 DcmDspRoutines配置1.系列概述 在本系列笔者将结合工作中对诊断实战部分的应用经验进一步介绍常用UDS服务的进一步探讨及开发中注意事项, Dem/Dcm/CanTp/Fim模块配置开发及注意…

编译tolua——2、基础编译tolua

目录 1、编译工具和环境说明 2、基础编译tolua 大家好,我是阿赵。 继续来讲tolua的各个常用平台的编译。 这里使用官方的tolua_runtime-master项目来做编译 具体需要的编译软件和源码地址,在上一篇文章已经介绍过了,先把环境准备好&#xff…

飞桨AI4S污染物扩散快速预测模型,亮相全国数据驱动计算力学研讨会

5月19-21日,第一届全国数据驱动计算力学研讨会在大连召开。本次研讨会由中国力学学会主办,大连理工大学运载工程与力学学部承办,北京理工大学先进结构技术研究院协办。 会议共吸引了400多位来自全国各地高校与企业的老师与学生参会&#xff0…

DNSPod十问林洪祥:顶级带货主播,其实是数字人?

本期嘉宾 林洪祥 风平智能CEO 林洪祥,风平智能CEO。风平智能拥有全球领先的数字人AIGC预训练大模型技术,利用数字人AI知识大模型打造视频版ChatGPT,实现数字人名师、数字人医生、数字人保险客服、数字广告模特、数字人AI直播等,…

百度大模型算法实习岗上岸经验!

Datawhale干货 作者:J同学,学校:天津大学 写在前面 大家好,我是天大J同学,2023找暑期实习期间也算是历经坎坷,最后去了百度做大模型相关工作,虽然本硕均为计算机科班但本身实力尚浅&#xff0c…

全景浏览技术在虚拟现实中的应用

随着虚拟现实技术的发展,全景浏览技术越来越受到人们的关注。全景浏览技术是一种可以将场景全方位呈现给用户的虚拟现实技术,可以为用户带来身临其境的视觉和听觉体验。本文将介绍全景浏览技术在虚拟现实中的应用以及如何利用代码实现这些应用。 一、全…