CN115098700A - 知识图谱嵌入表示方法及装置 - Google Patents
知识图谱嵌入表示方法及装置 Download PDFInfo
- Publication number
- CN115098700A CN115098700A CN202210735568.2A CN202210735568A CN115098700A CN 115098700 A CN115098700 A CN 115098700A CN 202210735568 A CN202210735568 A CN 202210735568A CN 115098700 A CN115098700 A CN 115098700A
- Authority
- CN
- China
- Prior art keywords
- representation
- document
- knowledge
- calculating
- calculation result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本公开涉及人工智能技术领域,提供了一种知识图谱嵌入表示方法及装置。该方法包括:定义知识图谱嵌入表示,并基于知识图谱嵌入表示中实体的名称获取第一文档;利用预设算法初始化知识图谱嵌入表示,得到第一表示和第二表示;利用语言表征模型初始化第一文档,得到第二文档;根据第一表示和第二表示,计算第三表示;根据第一表示和第二文档,计算第四表示;根据第三表示和第四表示,计算第五表示,根据第二表示和第四表示,计算第六表示;根据第五表示和第六表示计算损失值,并基于损失值训练知识图谱嵌入模型;利用知识图谱嵌入模型提供知识图谱嵌入服务。
Description
技术领域
本公开涉及人工智能技术领域,尤其涉及一种知识图谱嵌入表示方法及装 置。
背景技术
知识图谱嵌入(Knowledge Graph Embedding,KGE)是一种学习知识库中的 实体和关系的Embedding表示的方法,是语义检索、知识问答、推荐等众多应 用的基础研究。现有技术,常常通过文本增强来改进知识图谱嵌入表示的方法。 具体地,通常采用实体连接工具将知识图谱中的实体连接到文档库中的单词, 然后构建实体和文档库中单词的共现网络,通过skip-gram等方法增强知识图谱 实体和关系的语义信息。这种方法存在如下问题:当前的实体连接工具不够准 确,存在错误传导到下游任务的问题;使用语义共现网络进行嵌入表示学习忽 略了文档的语义信息。上述存在的问题都会导致最终知识图谱嵌入表示的准确 度较低的问题。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下技术问 题:现有的知识图谱嵌入表示的方法存在准确度较低的问题。
发明内容
有鉴于此,本公开实施例提供了一种知识图谱嵌入表示方法及装置,以解 决现有技术中,现有的知识图谱嵌入表示的方法存在准确度较低的问题。
本公开实施例的第一方面,提供了一种知识图谱嵌入表示方法,包括:定 义知识图谱嵌入表示,并基于知识图谱嵌入表示中实体的名称获取第一文档; 利用预设算法初始化知识图谱嵌入表示,得到第一表示和第二表示;利用语言 表征模型初始化第一文档,得到第二文档;根据第一表示和第二表示,计算第 三表示;根据第一表示和第二文档,计算第四表示;根据第三表示和第四表示, 计算第五表示,根据第二表示和第四表示,计算第六表示;根据第五表示和第 六表示计算损失值,并基于损失值训练知识图谱嵌入模型;利用知识图谱嵌入 模型提供知识图谱嵌入服务。
本公开实施例的第二方面,提供了一种知识图谱嵌入表示装置,包括:定 义模块,被配置为定义知识图谱嵌入表示,并基于知识图谱嵌入表示中实体的 名称获取第一文档;第一初始化模块,被配置为利用预设算法初始化知识图谱 嵌入表示,得到第一表示和第二表示;第二初始化模块,被配置为利用语言表 征模型初始化第一文档,得到第二文档;第一计算模块,被配置为根据第一表 示和第二表示,计算第三表示;第二计算模块,被配置为根据第一表示和第二 文档,计算第四表示;第三计算模块,被配置为根据第三表示和第四表示,计 算第五表示,根据第二表示和第四表示,计算第六表示;第四计算模块,被配 置为根据第五表示和第六表示计算损失值,并基于损失值训练知识图谱嵌入模 型;服务模块,被配置为利用知识图谱嵌入模型提供知识图谱嵌入服务。
本公开实施例的第三方面,提供了一种电子设备,包括存储器、处理器以 及存储在存储器中并且可在处理器上运行的计算机程序,该处理器执行计算机 程序时实现上述方法的步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可 读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的 步骤。
本公开实施例与现有技术相比存在的有益效果是:因为本公开实施例定义 知识图谱嵌入表示,并基于知识图谱嵌入表示中实体的名称获取第一文档;利 用预设算法初始化知识图谱嵌入表示,得到第一表示和第二表示;利用语言表 征模型初始化第一文档,得到第二文档;根据第一表示和第二表示,计算第三 表示;根据第一表示和第二文档,计算第四表示;根据第三表示和第四表示, 计算第五表示,根据第二表示和第四表示,计算第六表示;根据第五表示和第 六表示计算损失值,并基于损失值训练知识图谱嵌入模型;利用知识图谱嵌入 模型提供知识图谱嵌入服务,因此,采用上述技术手段,可以解决现有技术中,因为没有充分利用用户会话记录中的信息,进而给用户推荐物品存在效率低的 问题,进而提高推荐物品的效率。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技 术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅 仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳 动的前提下,还可以根据这些附图获得其它的附图。
图1是本公开实施例的应用场景的场景示意图;
图2是本公开实施例提供的一种知识图谱嵌入表示方法的流程示意图;
图3是本公开实施例提供的一种知识图谱嵌入表示装置的结构示意图;
图4是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术 之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当 清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中, 省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节 妨碍本公开的描述。
下面将结合附图详细说明根据本公开实施例的一种知识图谱嵌入表示方法 和装置。
图1是本公开实施例的应用场景的场景示意图。该应用场景可以包括终端 设备101、102和103、服务器104以及网络105。
终端设备101、102和103可以是硬件,也可以是软件。当终端设备101、 102和103为硬件时,其可以是具有显示屏且支持与服务器104通信的各种电 子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机 等;当终端设备101、102和103为软件时,其可以安装在如上的电子设备中。 终端设备101、102和103可以实现为多个软件或软件模块,也可以实现为单个 软件或软件模块,本公开实施例对此不作限制。进一步地,终端设备101、102 和103上可以安装有各种应用,例如数据处理应用、即时通信工具、社交平台 软件、搜索类应用、购物类应用等。
服务器104可以是提供各种服务的服务器,例如,对与其建立通信连接的 终端设备发送的请求进行接收的后台服务器,该后台服务器可以对终端设备发 送的请求进行接收和分析等处理,并生成处理结果。服务器104可以是一台服 务器,也可以是由若干台服务器组成的服务器集群,或者还可以是一个云计算 服务中心,本公开实施例对此不作限制。
需要说明的是,服务器104可以是硬件,也可以是软件。当服务器104为 硬件时,其可以是为终端设备101、102和103提供各种服务的各种电子设备。 当服务器104为软件时,其可以是为终端设备101、102和103提供各种服务的 多个软件或软件模块,也可以是为终端设备101、102和103提供各种服务的单 个软件或软件模块,本公开实施例对此不作限制。
网络105可以是采用同轴电缆、双绞线和光纤连接的有线网络,也可以是 无需布线就能实现各种通信设备互联的无线网络,例如,蓝牙(Bluetooth)、 近场通信(NearField Communication,NFC)、红外(Infrared)等,本公开实 施例对此不作限制。
用户可以通过终端设备101、102和103经由网络105与服务器104建立通 信连接,以接收或发送信息等。需要说明的是,终端设备101、102和103、服 务器104以及网络105的具体类型、数量和组合可以根据应用场景的实际需求 进行调整,本公开实施例对此不作限制。
图2是本公开实施例提供的一种知识图谱嵌入表示方法的流程示意图。图 2的知识图谱嵌入表示方法可以由图1的终端设备或服务器执行。如图2所示, 该知识图谱嵌入表示方法包括:
S201,定义知识图谱嵌入表示,并基于知识图谱嵌入表示中实体的名称获 取第一文档;
知识图谱嵌入表示是表示实体之间的关系的方法。现有技术常常将实体分 为头实体与尾实体,知识图谱嵌入表示就是表示头实体与尾实体之间的关系。 关于定义知识图谱嵌入表示,比如:定义|X|代表集合X中元素的个数,知识图 谱G={E,P,F},其中E代表知识图谱中的实体节点集合,E={e1,...,e|E|},P 代表知识图谱本体中关系标签的集合,P={p1,...,p|P|},F代表知识图谱中的 三元组的集合,F={f1,...,f|F|},每个三元组的形式是:f=(s,p,o),其中s,o∈E,s 代表头实体,o代表尾实体,p∈P代表头实体和尾实体之间的关系。
文档集合D={d1,...,d|D|},文档集合中的每个文档可以表示为d= (wi,1,...,wi,j,...,wi,|d|),此处wi,j∈W代表文档集合D中第i个文档的第j个单词, W为文档集合D的词汇库。第一文档就是类似于文档集合D的,基于知识图 谱嵌入表示中实体的名称获取的文档。比如知识图谱嵌入表示中头实体的名称 为A品牌,尾实体的名称为B集团,A品牌是B集团的一个主品牌,第一文档 就是关于B集团下属的A品牌的相关文档。
S202,利用预设算法初始化知识图谱嵌入表示,得到第一表示和第二表示;
预设算法可以是TranE算法,TranE是一篇Bordes等人2013年发表在NIPS 上的文章提出的算法。它的提出,是为了解决多关系数据(multi-relational data) 的处理问题。TransE的直观含义,就是TransE基于实体和关系的分布式向量表 示,将每个三元组实例(head,relation,tail)中的关系relation看做从头实体 head到尾实体tail的翻译,通过不断调整h、r和t(head、relation和tail的向 量),使(h+r)尽可能与t相等,即h+r=t。需要说明的是,在本公开中, 同一个物体可能使用多种字母表示,比如头实体可以用h或s表示,但是这并 不影响描述是否清楚。利用预设算法初始化知识图谱嵌入表示,可以是使用TransE处理知识图谱嵌入表示。
S203,利用语言表征模型初始化第一文档,得到第二文档;
语言表征模型可以是BERT模型,BERT的全称为Bidirectional EncoderRepresentation from Transformers,是一个预训练的语言表征模型。它强调了不 再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接 的方法进行预训练,而是采用新的masked language model(MLM),以致能生 成深度的双向语言表征。利用语言表征模型初始化第一文档,可以理解为将第 一文档输入语言表征模型。
S204,根据第一表示和第二表示,计算第三表示;
S205,根据第一表示和第二文档,计算第四表示;
S206,根据第三表示和第四表示,计算第五表示,根据第二表示和第四表 示,计算第六表示;
S204、S205和S206可以理解为是知识图谱嵌入模型内部网络层的运算。 知识图谱嵌入模型可以是一种常用的神经网络模型,比如GAT、GPT和XLNET 等模型。
S207,根据第五表示和第六表示计算损失值,并基于损失值训练知识图谱 嵌入模型;
训练知识图谱嵌入模型,和常见的神经网络模型训练方法一样,可以用梯 度反向传播算法等方法实现。
S208,利用知识图谱嵌入模型提供知识图谱嵌入服务。
根据本公开实施例提供的技术方案,定义知识图谱嵌入表示,并基于知识 图谱嵌入表示中实体的名称获取第一文档;利用预设算法初始化知识图谱嵌入 表示,得到第一表示和第二表示;利用语言表征模型初始化第一文档,得到第 二文档;根据第一表示和第二表示,计算第三表示;根据第一表示和第二文档, 计算第四表示;根据第三表示和第四表示,计算第五表示,根据第二表示和第 四表示,计算第六表示;根据第五表示和第六表示计算损失值,并基于损失值 训练知识图谱嵌入模型;利用知识图谱嵌入模型提供知识图谱嵌入服务,因此, 采用上述技术手段,可以解决现有技术中,因为没有充分利用用户会话记录中 的信息,进而给用户推荐物品存在效率低的问题,进而提高推荐物品的效率。
在步骤S203中,利用语言表征模型初始化第一文档,得到第二文档,包 括:对第一文档中的实体进行标注处理;利用语言表征模型初始化经过标注处 理后的第一文档,得到第二文档。
对第一文档中的实体进行标注处理,可以是在第一文档中提及实体的单词 前面添加特殊字符<SE>、</SE>、<OE>、</OE>分别代表头实体的开始,结束 和尾实体的开始,结束,得到文档所有的标注文档形成文档集合
在步骤S204中,根据第一表示和第二表示,计算第三表示,包括:计算 第一表示的转置矩阵;基于第一表示、转置矩阵、第二表示、第一权重矩阵、 第二权重矩阵和第一预设偏差,利用双曲正切函数进行计算,得到第一计算结 果;基于第一计算结果和第三权重矩阵进行计算,得到第二计算结果;基于第 二计算结果确定第一注意力权重;基于第一注意力权重、第一表示和和第四权 重矩阵进行计算,得到第三表示。
可以通过如下公式,完成上述计算:
其中,l代表知识图谱嵌入模型的第l层,代表知识图谱嵌入表示中 第i个实体节点在知识图谱嵌入模型第l层的k维嵌入表示,其中,R为实数集合, k表示维度数,包括头实体和尾实体;代表知识图谱嵌入表示中第i个实 体节点在知识图谱嵌入模型第l-1层的k维嵌入表示,代表的转置矩阵; rij l-1∈Rk代表当前实体节点i与其邻居节点j之间的关系在知识图谱嵌入模型 第l-1层的k维嵌入表示;Wh∈Rk×k,Wh是第四权重矩阵;Wz∈R2k×1,Wz是 第三权重矩阵;Wij∈Rk×k,是第二权重矩阵;Wr∈Rk×k,Wr是第一权重矩阵; bij∈R2k第一预设偏差;N(i)代表知识图谱嵌入表示中第i个实体节点的邻居节 点集合,αi,j代表知识图谱嵌入表示中第i个实体节点对其邻居j的注意力权重。代表和相拼接;tanh为双曲正切函数;exp 为指数函数。
为知识图谱嵌入表示中第i个实体节点在知识图谱嵌入模型第l层的第三 表示,αi,j为知识图谱嵌入表示中第i个实体节点对其邻居j的第一注意力权重; zi,j为知识图谱嵌入表示中第i个实体节点对其邻居j的第二计算结果,为知识图谱嵌入表示中第i个实体节点对其邻 居j的第一计算结果。
需要说明的是,本公开中的第一表示、第二表示等表示,第一注意力权重 等注意力权重,第一计算结果等计算结果均可以是矩阵或者向量。本公开中的 第一表示、第二表示等表示,第一注意力权重等注意力权重,第一计算结果等 计算结果实际上包括多个,比如为知识图谱嵌入表示中第i个实体节点在知 识图谱嵌入模型第i层的第三表示,知识图谱嵌入表示中所有的实体节点在知识 图谱嵌入模型所有的层的表示,合起来才是整个第三表示。
在步骤S205中,根据第一表示和第二文档,计算第四表示,包括:基于 第一表示、第二文档和第二预设偏差,利用双曲正切函数进行计算,得到第三 计算结果;基于第三计算结果和第五权重矩阵进行计算,得到第四计算结果; 基于第四计算结果确定第二注意力权重;基于第二注意力权重、第一表示、第 二文档和第六权重矩阵进行计算,得到第七表示;将第七表示输入语言表征模 型,输出第四表示。
可以通过如下公式,完成上述计算:
f=(s,p,o)
此处,表示在知识图谱嵌入模型的第l层文档在位置p处的单词 的k维嵌入表示,代表文档在知识图谱嵌入模型第l层的嵌入表示, 是第二文档中的一个表示,在知识图谱嵌入模型的所有层所有文档的k维嵌 入表示组成第二文档,第二文档是一个文档集合,是第二文档中的一个文档; Widp∈R2k×2k,Widp是第五权重矩阵;Wzdp∈R2k×1,Wzdp是第六权重矩阵; bidp∈R2k是第二预设偏差。
需要说明的是,第五权重矩阵、第六权重矩阵、第二预设偏差、第三计算 结果、第四计算结果、第二注意力权重、第七表示和第四表示均包括多个,比 如Widp是众多第五权重矩阵中的一个矩阵,又比如βi,d,p代表第i个实体对文档 中位置p的单词的注意力权重,是在知识图谱嵌入模型的第l层文档在位 置p处的单词的第七表示等。
在步骤S206中,根据第三表示和第四表示,计算第五表示,根据第二表 示和第四表示,计算第六表示,包括:根据第四权重矩阵、第三表示、第四表 示和第二注意力权重,计算第五表示;基于第七权重矩阵、第二表示、第四表 示和第三预设偏差,利用双曲正切函数进行计算,得到第五计算结果;基于第 五计算结果和第八权重矩阵进行计算,得到第六计算结果;基于第六计算结果 确定第三注意力权重;基于第三注意力权重、第二表示、第四表示和第一权重 矩阵进行计算,得到第六表示。
可以通过如下公式,完成上述计算:
此处是在知识图谱嵌入模型的第l层文档的第四表示(第四表示是整 个第二文档对应的表示,第四表示中有文档集合中(第二文档是个文档集合) 某个文档中某个单词对应的表示,也有文档集合中某个文档对应的表示);代表标注文档中同时包含实体i和实体j名称的文档集合(也就是第二文档); 为第五计算结果,zr,d为第六计算结果;Wrd∈R2k×2k, Wrd为第七权重矩阵,Wzr∈R2k×1,Wzr为第八权重矩阵,brd∈R2k,brd为第 三预设偏差;μr,d为第三注意力权重;为第五表示,为第六表示。
本公开中的权重矩阵和注意力权重等都是可以训练的,在模型训练最初, 权重矩阵和注意力权重是随意的,随着训练,可以得到最优的权重矩阵和注意 力权重。
在步骤S207中,根据第五表示和第六表示计算损失值,包括:根据第五 表示和第六表示,利用合理性度量评价函数进行计算,得到第七计算结果和第 八计算结果;根据第七计算结果和第八计算结果,利用知识图谱嵌入模型的损 失函数进行计算,得到损失值。
合理性度量评价函数f(i,r,j)如下:
L代表知识图谱嵌入模型的最后一层,||||2代表二范数运算,代表对二范数的结果平方。rij l代表当前实体节点i与其邻居节点j 之间的关系在知识图谱嵌入模型第l层的k维嵌入表示,代表知识图谱嵌入表 示中第i个实体节点在知识图谱嵌入模型第l层的k维嵌入表示,代表知识图 谱嵌入表示中第j个实体节点在知识图谱嵌入模型第l层的k维嵌入表示。
损失函数L如下:
在步骤S208中,利用知识图谱嵌入模型提供知识图谱嵌入服务,包括: 在接收到目标对象发送的知识图谱嵌入请求的情况下,向目标对象获取第一目 标文档;利用语言表征模型初始化第一目标文档,得到第二目标文档;利用知 识图谱嵌入模型处理第二目标文档,得到目标知识图谱嵌入表示。
利用知识图谱嵌入模型给目标对象提供知识图谱嵌入服务,就是利用知识 图谱嵌入模型处理目标对象对应的第二目标文档,得到目标对象对应的目标知 识图谱嵌入表示。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在 此不再一一赘述。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开 装置实施例中未披露的细节,请参照本公开方法实施例。
图3是本公开实施例提供的一种知识图谱嵌入表示装置的示意图。如图3 所示,该知识图谱嵌入表示装置包括:
定义模块301,被配置为定义知识图谱嵌入表示,并基于知识图谱嵌入表 示中实体的名称获取第一文档;
第一初始化模块302,被配置为利用预设算法初始化知识图谱嵌入表示, 得到第一表示和第二表示;
第二初始化模块303,被配置为利用语言表征模型初始化第一文档,得到 第二文档;
第一计算模块304,被配置为根据第一表示和第二表示,计算第三表示;
第二计算模块305,被配置为根据第一表示和第二文档,计算第四表示;
第三计算模块306,被配置为根据第三表示和第四表示,计算第五表示, 根据第二表示和第四表示,计算第六表示;
第四计算模块307,被配置为根据第五表示和第六表示计算损失值,并基 于损失值训练知识图谱嵌入模型;
服务模块308,被配置为利用知识图谱嵌入模型提供知识图谱嵌入服务。
知识图谱嵌入表示是表示实体之间的关系的方法。现有技术常常将实体分 为头实体与尾实体,知识图谱嵌入表示就是表示头实体与尾实体之间的关系。 关于定义知识图谱嵌入表示,比如:定义|X|代表集合X中元素的个数,知识图 谱G={E,P,F},其中E代表知识图谱中的实体节点集合,E={e1,...,e|E|},P 代表知识图谱本体中关系标签的集合,P={p1,...,p|P|},F代表知识图谱中的 三元组的集合,F={f1,...,f|F|},每个三元组的形式是:f=(s,p,o),其中s,o∈E,s 代表头实体,o代表尾实体,p∈P代表头实体和尾实体之间的关系。
文档集合D={d1,...,d|D|},文档集合中的每个文档可以表示为d= (wi,1,...,wi,j,...,wi,|d|),此处wi,j∈W代表文档集合D中第i个文档的第j个单词, W为文档集合D的词汇库。第一文档就是类似于文档集合D的,基于知识图 谱嵌入表示中实体的名称获取的文档。比如知识图谱嵌入表示中头实体的名称 为A品牌,尾实体的名称为B集团,A品牌是B集团的一个主品牌,第一文档 就是关于B集团下属的A品牌的相关文档。
预设算法可以是TranE算法,TranE是一篇Bordes等人2013年发表在NIPS 上的文章提出的算法。它的提出,是为了解决多关系数据(multi-relational data) 的处理问题。TransE的直观含义,就是TransE基于实体和关系的分布式向量表 示,将每个三元组实例(head,relation,tail)中的关系relation看做从头实体 head到尾实体tail的翻译,通过不断调整h、r和t(head、relation和tail的向 量),使(h+r)尽可能与t相等,即h+r=t。需要说明的是,在本公开中, 同一个物体可能使用多种字母表示,比如头实体可以用h或s表示,但是这并 不影响描述是否清楚。利用预设算法初始化知识图谱嵌入表示,可以是使用TransE处理知识图谱嵌入表示。
语言表征模型可以是BERT模型,BERT的全称为Bidirectional EncoderRepresentation from Transformers,是一个预训练的语言表征模型。它强调了不 再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接 的方法进行预训练,而是采用新的masked language model(MLM),以致能生 成深度的双向语言表征。利用语言表征模型初始化第一文档,可以理解为将第 一文档输入语言表征模型。
知识图谱嵌入模型可以是一种常用的神经网络模型,比如GAT、GPT和 XLNET等模型。训练知识图谱嵌入模型,和常见的神经网络模型训练方法一样, 可以用梯度反向传播算法等方法实现。
根据本公开实施例提供的技术方案,定义知识图谱嵌入表示,并基于知识 图谱嵌入表示中实体的名称获取第一文档;利用预设算法初始化知识图谱嵌入 表示,得到第一表示和第二表示;利用语言表征模型初始化第一文档,得到第 二文档;根据第一表示和第二表示,计算第三表示;根据第一表示和第二文档, 计算第四表示;根据第三表示和第四表示,计算第五表示,根据第二表示和第 四表示,计算第六表示;根据第五表示和第六表示计算损失值,并基于损失值 训练知识图谱嵌入模型;利用知识图谱嵌入模型提供知识图谱嵌入服务,因此, 采用上述技术手段,可以解决现有技术中,因为没有充分利用用户会话记录中 的信息,进而给用户推荐物品存在效率低的问题,进而提高推荐物品的效率。
可选地,第二初始化模块303还被配置为对第一文档中的实体进行标注处 理;利用语言表征模型初始化经过标注处理后的第一文档,得到第二文档。
对第一文档中的实体进行标注处理,可以是在第一文档中提及实体的单词 前面添加特殊字符<SE>、</SE>、<OE>、</OE>分别代表头实体的开始,结束 和尾实体的开始,结束,得到文档所有的标注文档形成文档集合
可选地,第一计算模块304还被配置为计算第一表示的转置矩阵;基于第 一表示、转置矩阵、第二表示、第一权重矩阵、第二权重矩阵和第一预设偏差, 利用双曲正切函数进行计算,得到第一计算结果;基于第一计算结果和第三权 重矩阵进行计算,得到第二计算结果;基于第二计算结果确定第一注意力权重; 基于第一注意力权重、第一表示和和第四权重矩阵进行计算,得到第三表示。
可以通过如下公式,完成上述计算:
其中,l代表知识图谱嵌入模型的第l层,代表知识图谱嵌入表示中 第i个实体节点在知识图谱嵌入模型第l层的k维嵌入表示,其中,R为实数集合, k表示维度数,包括头实体和尾实体;代表知识图谱嵌入表示中第i个实 体节点在知识图谱嵌入模型第l-1层的k维嵌入表示,代表的转置矩阵; rij l-1∈Rk代表当前实体节点i与其邻居节点j之间的关系在知识图谱嵌入模型 第l-1层的k维嵌入表示;Wh∈Rk×k,Wh是第四权重矩阵;Wz∈R2k×1,Wz是 第三权重矩阵;Wij∈Rk×k,是第二权重矩阵;Wr∈Rk×k,Wr是第一权重矩阵; bij∈R2k第一预设偏差;N(i)代表知识图谱嵌入表示中第i个实体节点的邻居节 点集合,αi,j代表知识图谱嵌入表示中第i个实体节点对其邻居j的注意力权重。代表和相拼接;tanh为双曲正切函数;exp 为指数函数。
为知识图谱嵌入表示中第i个实体节点在知识图谱嵌入模型第l层的第三 表示,αi,j为知识图谱嵌入表示中第i个实体节点对其邻居j的第一注意力权重; zi,j为知识图谱嵌入表示中第i个实体节点对其邻居j的第二计算结果,为知识图谱嵌入表示中第i个实体节点对其邻 居j的第一计算结果。
需要说明的是,本公开中的第一表示、第二表示等表示,第一注意力权重 等注意力权重,第一计算结果等计算结果均可以是矩阵或者向量。本公开中的 第一表示、第二表示等表示,第一注意力权重等注意力权重,第一计算结果等 计算结果实际上包括多个,比如为知识图谱嵌入表示中第i个实体节点在知 识图谱嵌入模型第l层的第三表示,知识图谱嵌入表示中所有的实体节点在知识 图谱嵌入模型所有的层的表示,合起来才是整个第三表示。
可选地,第二计算模块305还被配置为基于第一表示、第二文档和第二预 设偏差,利用双曲正切函数进行计算,得到第三计算结果;基于第三计算结果 和第五权重矩阵进行计算,得到第四计算结果;基于第四计算结果确定第二注 意力权重;基于第二注意力权重、第一表示、第二文档和第六权重矩阵进行计 算,得到第七表示;将第七表示输入语言表征模型,输出第四表示。
可以通过如下公式,完成上述计算:
f=(s,p,o)
此处,表示在知识图谱嵌入模型的第l层文档在位置p处的单词 的k维嵌入表示,代表文档在知识图谱嵌入模型第l层的嵌入表示, 是第二文档中的一个表示,在知识图谱嵌入模型的所有层所有文档的k维嵌 入表示组成第二文档,第二文档是一个文档集合,是第二文档中的一个文档; Widp∈R2k×2k,Widp是第五权重矩阵;Wzdp∈R2k×1,Wzdp是第六权重矩阵; bidp∈R2k是第二预设偏差。
需要说明的是,第五权重矩阵、第六权重矩阵、第二预设偏差、第三计算 结果、第四计算结果、第二注意力权重、第七表示和第四表示均包括多个,比 如Widp是众多第五权重矩阵中的一个矩阵,又比如βi,d,p代表第i个实体对文档 中位置p的单词的注意力权重,是在知识图谱嵌入模型的第l层文档在位 置p处的单词的第七表示等。
可选地,第三计算模块306还被配置为根据第四权重矩阵、第三表示、第 四表示和第二注意力权重,计算第五表示;基于第七权重矩阵、第二表示、第 四表示和第三预设偏差,利用双曲正切函数进行计算,得到第五计算结果;基 于第五计算结果和第八权重矩阵进行计算,得到第六计算结果;基于第六计算 结果确定第三注意力权重;基于第三注意力权重、第二表示、第四表示和第一 权重矩阵进行计算,得到第六表示。
可以通过如下公式,完成上述计算:
此处是在知识图谱嵌入模型的第l层文档的第四表示(第四表示是整 个第二文档对应的表示,第四表示中有文档集合中(第二文档是个文档集合) 某个文档中某个单词对应的表示,也有文档集合中某个文档对应的表示);代表标注文档中同时包含实体i和实体j名称的文档集合(也就是第二文档); 为第五计算结果,zr,d为第六计算结果;Wrd∈R2k×2k, Wrd为第七权重矩阵,Wzr∈R2k×1,Wzr为第八权重矩阵,brd∈R2k,brd为第 三预设偏差;μr,d为第三注意力权重;为第五表示,为第六表示。
本公开中的权重矩阵和注意力权重等都是可以训练的,在模型训练最初, 权重矩阵和注意力权重是随意的,随着训练,可以得到最优的权重矩阵和注意 力权重。
可选地,第四计算模块307还被配置为根据第五表示和第六表示,利用合 理性度量评价函数进行计算,得到第七计算结果和第八计算结果;根据第七计 算结果和第八计算结果,利用知识图谱嵌入模型的损失函数进行计算,得到损 失值。
合理性度量评价函数f(i,r,j)如下:
L代表知识图谱嵌入模型的最后一层,||||2代表二范数运算,代表对二范数的结果平方。rij l代表当前实体节点i与其邻居节点j 之间的关系在知识图谱嵌入模型第l层的k维嵌入表示,代表知识图谱嵌入表 示中第i个实体节点在知识图谱嵌入模型第l层的k维嵌入表示,代表知识图 谱嵌入表示中第j个实体节点在知识图谱嵌入模型第l层的k维嵌入表示。
损失函数L如下:
可选地,服务模块308还被配置为在接收到目标对象发送的知识图谱嵌入 请求的情况下,向目标对象获取第一目标文档;利用语言表征模型初始化第一 目标文档,得到第二目标文档;利用知识图谱嵌入模型处理第二目标文档,得 到目标知识图谱嵌入表示。
利用知识图谱嵌入模型给目标对象提供知识图谱嵌入服务,就是利用知识 图谱嵌入模型处理目标对象对应的第二目标文档,得到目标对象对应的目标知 识图谱嵌入表示。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后, 各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施 过程构成任何限定。
图4是本公开实施例提供的电子设备4的示意图。如图4所示,该实施例 的电子设备4包括:处理器401、存储器402以及存储在该存储器402中并且 可在处理器401上运行的计算机程序403。处理器401执行计算机程序403时 实现上述各个方法实施例中的步骤。或者,处理器401执行计算机程序403时 实现上述各装置实施例中各模块/单元的功能。
电子设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子 设备。电子设备4可以包括但不仅限于处理器401和存储器402。本领域技术 人员可以理解,图4仅仅是电子设备4的示例,并不构成对电子设备4的限定, 可以包括比图示更多或更少的部件,或者不同的部件。
处理器401可以是中央处理单元(Central Processing Unit,CPU),也可以 是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集 成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或 者晶体管逻辑器件、分立硬件组件等。
存储器402可以是电子设备4的内部存储单元,例如,电子设备4的硬盘 或内存。存储器402也可以是电子设备4的外部存储设备,例如,电子设备4 上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。存储器402还可以既包括电子设备 4的内部存储单元也包括外部存储设备。存储器402用于存储计算机程序以及 电子设备所需的其它程序和数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上 述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上 述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的 功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单 元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可 以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的 形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售 或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开 实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关 的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序 在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包 括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执 行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代 码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的 是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求 进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可 读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述 实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进 行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各 实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。
Claims (10)
1.一种知识图谱嵌入表示方法,其特征在于,包括:
定义知识图谱嵌入表示,并基于所述知识图谱嵌入表示中实体的名称获取第一文档;
利用预设算法初始化所述知识图谱嵌入表示,得到第一表示和第二表示;
利用语言表征模型初始化所述第一文档,得到第二文档;
根据所述第一表示和所述第二表示,计算第三表示;
根据所述第一表示和所述第二文档,计算第四表示;
根据所述第三表示和所述第四表示,计算第五表示,根据所述第二表示和所述第四表示,计算第六表示;
根据所述第五表示和所述第六表示计算损失值,并基于所述损失值训练知识图谱嵌入模型;
利用所述知识图谱嵌入模型提供知识图谱嵌入服务。
2.根据权利要求1所述的方法,其特征在于,所述利用语言表征模型初始化所述第一文档,得到第二文档,包括:
对所述第一文档中的实体进行标注处理;
利用所述语言表征模型初始化经过所述标注处理后的第一文档,得到所述第二文档。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一表示和所述第二表示,计算第三表示,包括:
计算所述第一表示的转置矩阵;
基于所述第一表示、所述转置矩阵、所述第二表示、第一权重矩阵、第二权重矩阵和第一预设偏差,利用双曲正切函数进行计算,得到第一计算结果;
基于所述第一计算结果和第三权重矩阵进行计算,得到第二计算结果;
基于所述第二计算结果确定第一注意力权重;
基于所述第一注意力权重、所述第一表示和和第四权重矩阵进行计算,得到所述第三表示。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一表示和所述第二文档,计算第四表示,包括:
基于所述第一表示、所述第二文档和第二预设偏差,利用双曲正切函数进行计算,得到第三计算结果;
基于所述第三计算结果和第五权重矩阵进行计算,得到第四计算结果;
基于所述第四计算结果确定第二注意力权重;
基于所述第二注意力权重、所述第一表示、所述第二文档和第六权重矩阵进行计算,得到第七表示;
将所述第七表示输入所述语言表征模型,输出所述第四表示。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第三表示和所述第四表示,计算第五表示,根据所述第二表示和所述第四表示,计算第六表示,包括:
根据第四权重矩阵、所述第三表示、所述第四表示和第二注意力权重,计算所述第五表示;
基于第七权重矩阵、所述第二表示、所述第四表示和第三预设偏差,利用双曲正切函数进行计算,得到第五计算结果;
基于所述第五计算结果和第八权重矩阵进行计算,得到第六计算结果;
基于所述第六计算结果确定第三注意力权重;
基于所述第三注意力权重、所述第二表示、所述第四表示和第一权重矩阵进行计算,得到所述第六表示。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第五表示和所述第六表示计算损失值,包括:
根据所述第五表示和所述第六表示,利用合理性度量评价函数进行计算,得到第七计算结果和第八计算结果;
根据所述第七计算结果和所述第八计算结果,利用所述知识图谱嵌入模型的损失函数进行计算,得到所述损失值。
7.根据权利要求1所述的方法,其特征在于,所述利用所述知识图谱嵌入模型提供知识图谱嵌入服务,包括:
在接收到目标对象发送的知识图谱嵌入请求的情况下,向所述目标对象获取第一目标文档;
利用所述语言表征模型初始化所述第一目标文档,得到第二目标文档;
利用所述知识图谱嵌入模型处理所述第二目标文档,得到目标知识图谱嵌入表示。
8.一种知识图谱嵌入表示装置,其特征在于,包括:
定义模块,被配置为定义知识图谱嵌入表示,并基于所述知识图谱嵌入表示中实体的名称获取第一文档;
第一初始化模块,被配置为利用预设算法初始化所述知识图谱嵌入表示,得到第一表示和第二表示;
第二初始化模块,被配置为利用语言表征模型初始化所述第一文档,得到第二文档;
第一计算模块,被配置为根据所述第一表示和所述第二表示,计算第三表示;
第二计算模块,被配置为根据所述第一表示和所述第二文档,计算第四表示;
第三计算模块,被配置为根据所述第三表示和所述第四表示,计算第五表示,根据所述第二表示和所述第四表示,计算第六表示;
第四计算模块,被配置为根据所述第五表示和所述第六表示计算损失值,并基于所述损失值训练知识图谱嵌入模型;
服务模块,被配置为利用所述知识图谱嵌入模型提供知识图谱嵌入服务。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并且可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210735568.2A CN115098700A (zh) | 2022-06-27 | 2022-06-27 | 知识图谱嵌入表示方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210735568.2A CN115098700A (zh) | 2022-06-27 | 2022-06-27 | 知识图谱嵌入表示方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115098700A true CN115098700A (zh) | 2022-09-23 |
Family
ID=83294460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210735568.2A Pending CN115098700A (zh) | 2022-06-27 | 2022-06-27 | 知识图谱嵌入表示方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115098700A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115936115A (zh) * | 2023-01-05 | 2023-04-07 | 电子科技大学 | 基于图卷积对比学习和XLNet的知识图谱嵌入方法 |
CN117808089A (zh) * | 2024-02-29 | 2024-04-02 | 山东大学 | 一种基于双空间信息聚合的知识图谱推荐方法及系统 |
-
2022
- 2022-06-27 CN CN202210735568.2A patent/CN115098700A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115936115A (zh) * | 2023-01-05 | 2023-04-07 | 电子科技大学 | 基于图卷积对比学习和XLNet的知识图谱嵌入方法 |
CN115936115B (zh) * | 2023-01-05 | 2023-10-13 | 电子科技大学 | 基于图卷积对比学习和XLNet的知识图谱嵌入方法 |
CN117808089A (zh) * | 2024-02-29 | 2024-04-02 | 山东大学 | 一种基于双空间信息聚合的知识图谱推荐方法及系统 |
CN117808089B (zh) * | 2024-02-29 | 2024-06-11 | 山东大学 | 一种基于双空间信息聚合的知识图谱推荐方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10650102B2 (en) | Method and apparatus for generating parallel text in same language | |
CN110377740B (zh) | 情感极性分析方法、装置、电子设备及存储介质 | |
CN115098700A (zh) | 知识图谱嵌入表示方法及装置 | |
CN104899304A (zh) | 命名实体识别方法及装置 | |
WO2021027125A1 (zh) | 序列标注方法、装置、计算机设备和存储介质 | |
CN111159409B (zh) | 基于人工智能的文本分类方法、装置、设备、介质 | |
CN108121699B (zh) | 用于输出信息的方法和装置 | |
CN113158687B (zh) | 语义的消歧方法及装置、存储介质、电子装置 | |
CN113268560A (zh) | 用于文本匹配的方法和装置 | |
CN112328735A (zh) | 热点话题确定方法、装置及终端设备 | |
CN110046344B (zh) | 添加分隔符的方法及终端设备 | |
CN112307738B (zh) | 用于处理文本的方法和装置 | |
CN114281996A (zh) | 长文本分类方法、装置、设备及存储介质 | |
CN112598039B (zh) | 获取nlp分类领域阳性样本方法及相关设备 | |
CN110852057A (zh) | 一种计算文本相似度的方法和装置 | |
CN116127925B (zh) | 基于对文本进行破坏处理的文本数据增强方法及装置 | |
CN116108810A (zh) | 文本数据增强方法及装置 | |
CN115146033A (zh) | 命名实体识别方法及装置 | |
CN112905786A (zh) | 一种标签推荐方法和装置 | |
CN111274818A (zh) | 词向量的生成方法、装置 | |
CN117392260B (zh) | 一种图像生成方法及装置 | |
CN115329767B (zh) | 抽取文本实体的方法、装置、电子设备及存储介质 | |
US12001790B2 (en) | Methods for exact and approximate inverses of neural embedding models | |
CN115563933B (zh) | 词编码方法、装置、存储介质与电子设备 | |
CN112685574B (zh) | 领域术语层次关系的确定方法、装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221202 Address after: 518054 cable information transmission building 25f2504, no.3369 Binhai Avenue, Haizhu community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Xumi yuntu Space Technology Co.,Ltd. Address before: No.103, no.1003, Nanxin Road, Nanshan community, Nanshan street, Nanshan District, Shenzhen City, Guangdong Province Applicant before: Shenzhen Jizhi Digital Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right |