System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及知识图谱压缩,尤其涉及基于知识蒸馏与模型量化的知识图谱压缩方法。
技术介绍
1、知识图谱(knowledge graphs,kgs)是由表示现实世界实体及其关系的事实三元组组成的结构化知识库。其具有高结构、准确性和领域专门化等特点,可以在对话问答、推荐系统和可解释的ai中找到应用。大规模的kgs通常存在稀疏性和不完整性的问题,限制了其应用。为了应对上述挑战,提出利用知识图谱补全(knowledge graph completion,kgc)来补充或纠正现有知识图谱中的缺失信息,提高其完整性。
2、近年来,基于知识图谱嵌入表示(knowledge graph embedding,kge)的模型在知识图谱补全研究中取得了较好的性能。其试图将实体和关系编码到连续低维的嵌入表示空间中,并选取合适的评分函数衡量三元组的合理性。kge简化了符号的操作,同时保留三元组的语义结构和知识图谱的图结构。
3、现有的kge模型主要分为以下三大类:几何方法、张量分解方法和深度神经网络方法。其中几何方法和张量分解方法通常由简单运算和有限的参数进行训练,可扩展到大型知识图谱,但产生的嵌入表示通常表达性能较差。相比之下,深度神经网络方法由于复杂的网络结构和大量的参数,可以学习到更有表现力的嵌入表示。所以近年来,研究人员致力于研发提升深度神经网络方法模型的预测性能,不断的引入学习参数和复杂网络结构,实现了在许多任务中都表现出了出色的性能。
4、然而,附加的计算总量与模型性能提升不是成比例的。而且,复杂的模型在实
5、为降低基于深度神经网络的kge方法的复杂性,同时保持其与传统方法相比的优越性能。现有技术公开了一种资源高效的kge模型,其有望显著降低计算和内存需求,使其适合部署在资源受限的嵌入表示式设备上,如物联网和移动设备。同时,kge模型的速度和效率使其适用于需要快速计算的场景,如信息导航和实时分析。此外,资源高效的kge支持cpu上的部署推理,为现有的kge模型提供了一种更经济、更易于访问的替代方案,而不是依赖gpu。通过优先考虑资源效率,有效利用资源的方法扩展了kge模型在各种场景中的适用性,增强了其在各种实际应用中的实用性和可扩展性。
6、具体来说,近年来研究人员相继提出了几种网络压缩方法,如设计高效小型网络、剪枝、量化和蒸馏。其中,二值化网络作为一种基于量化模型的压缩技术,在计算机视觉任务中已经取得了巨大的成功。知识蒸馏使用特殊的迁移学习方法以达到压缩目的,使其已被广泛应用到图像语义识别、目标检测等场景中。
7、然而,上述方法大多数都是为计算机视觉、自然语言处理设计的,由于存在以下问题,使其不能直接用于知识图谱这种复杂的异质图处理任务中:
8、(1)结构复杂性:kgs除了嵌入表示实体和关系外,还需要对事实三元组之间的相互作用进行建模,使其结构不同于具有欧几里得结构的数据(如图像和文本);(2)计算复杂:kgs通常是稀疏且庞大的,需要高嵌入表示维数来表示,这种需求可能会导致网络中涉及大量的计算;(3)浅层网络结构:基于网络的kge模型通常具有1-2层的浅层结构,压缩可学习参数会导致显著的精度损失,并且难以改善浅结构的表示;(4)内存挑战:对于基于图神经网络的kge模型,通常在每个处理步骤中都将整个属性图加载到网络中,这可能会限制内存受限环境下的可扩展性。
技术实现思路
1、为解决上述问题,本专利技术提供一种基于知识蒸馏与模型量化的知识图谱压缩方法,以1位精度对kge模型的权重和嵌入表示进行二值化,通过反向传播中的梯度近似利用位运算进行计算和训练,可大幅度降低模型的时间和空间复杂度,解决了传统计算复杂以及内存受限的问题;考虑到二值化带来的精度损失,提出了针对kge浅层结构的优化策略:反向传播中二元算子的近似函数和用于在二值化期间恢复丢失信息的因子,解决了传统浅层网络结构存在的精度损失问题;根据知识图谱的结构特征设计了一种知识蒸馏方法,提高了二值化模型的精度,解决了传统结构复杂的问题。
2、为实现上述目的,本专利技术提供了基于知识蒸馏与模型量化的知识图谱压缩方法,包括以下步骤:
3、s1、利用基于1位的二值化神经网络嵌入表示框架对kge模型的每层网络前的网络权重和嵌入表示进行二值化操作,获得kge初始化二值模型;
4、s2、优化kge二值初始化模型:
5、通过反向传播中的二元算子的近似导数对kge二值初始化模型的浅层结构进行优化;
6、同时通过提取比例因子和单一可伸缩的学习因子恢复网络权重二值化过程中丢失的因子;
7、s3、利用知识蒸馏训练优化后的kge二值初始化模型,得到最终训练好的kge二值化模型,二值化和知识蒸馏技术实现kge模型的压缩,降低训练的时空复杂度;
8、s4、在资源有限的设备上部署kge二值化模型,利用kge二值化模型对输入的知识图谱进行二值化的推理,降低推理的时空复杂度。
9、优选的,步骤s1中,在二值化函数的正向传播中,采用信号函数sign作为二值化算子,其定义如下:
10、
11、式中,x0表示二值化后的输出;x表示kge模型中二值化矩阵的元素;
12、在基于cnn的kge模型的基础上,采用二值化算子将卷积层和全连接层进行二值化,用1-bit的可学习权重和嵌入表示矩阵替代32-bit浮点数,且将基于cnn的kge模型转化为:
13、
14、式中,ψ(eh,r,et)表示评分函数;σ表示激活函数;表示重塑后的头实体嵌入;表示重塑后的关系嵌入;ω表示卷积层的卷积核;w表示全连接层的权重参数;ett表示尾实体嵌入;表示二进制乘法,xnor和bit-count组合的二值化运算;
15、此时,使用直通估计器ste为网络权重和嵌入表示提供有效梯度;
16、步骤s1中,在二值化函数的反向传播过程中,采用截断函数htanh作为二值化算子:
17、x0=htanh(x)=clip(x,-1,1)
18、htanh(x)对x的导数表示为1|x|≤1,则将网络权重的梯度传递表示为:
19、
20、式中,表示损失函数;
21、利用ste估计二值化函数在反向传播的梯度且在当ste的实值大于1时,将梯度置为0,将更新后的实值限制在[-1,+1]间。
22、优选的,在步骤s2中,利用leakyclip函数近似二值化算子sign在反向传播中的函数:
23、
24、式中,f1(x)表示leakyclip函数;
25、或者利用双曲函数hyperbolic近似二值化算子sign在反向传播中的函数:
26、
27、式中,f2(x)表示双曲函数;λ表示超本文档来自技高网...
【技术保护点】
1.基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:步骤S1中,在二值化函数的正向传播中,采用信号函数sign作为二值化算子,其定义如下:
3.根据权利要求2所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:在步骤S2中,利用Leakyclip函数近似二值化算子sign在反向传播中的函数:
4.根据权利要求3所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:在步骤S2中,将实值权重在每个输出通道方向上提取一个比例因子,以恢复该通道上的二值化权重的信息,其具体包括以下步骤:
5.根据权利要求4所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:当每个输出通道一个因子时,单一可伸缩的学习因子Γ的计算方式如下:
6.根据权利要求5所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:在步骤S3中,以全精度网络作为教师模型,KGE二值化模型作为学生模型,并将链接预测问题转化为多标签二分类问题,引入
...【技术特征摘要】
1.基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:步骤s1中,在二值化函数的正向传播中,采用信号函数sign作为二值化算子,其定义如下:
3.根据权利要求2所述的基于知识蒸馏与模型量化的知识图谱压缩方法,其特征在于:在步骤s2中,利用leakyclip函数近似二值化算子sign在反向传播中的函数:
4.根据权利要求3所述的基于知识蒸馏与模型量化的知识图谱压缩方法...
【专利技术属性】
技术研发人员:胡旭阳,李荣华,秦宏超,王国仁,
申请(专利权)人:北京理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。