表示学习方法及装置与流程

文档序号:20030189发布日期:2020-02-28 10:17阅读:256来源:国知局
表示学习方法及装置与流程

本申请涉及大数据技术领域,尤其涉及表示学习方法及装置。



背景技术:

知识图谱(knowledgegraph)以结构化的方式描述客观世界中概念、实体及它们之间的关系,将互联网的信息表达成更接近人类认知世界的形式,提供了一种更好地组织、管理和理解互联网海量信息的能力。随着人工智能的技术发展和应用,知识图谱逐渐成为关键技术之一,现已被广泛应用于智能搜索、智能问答、个性化推荐、内容分发等领域。

由于知识图谱中的实体、概念以及关系均采用了离散的符号化表示,这些离散的符号化表示难以直接应用于计算或推理等方面。因此,为了有效利用知识图谱中的符号化知识,研究人员提出了知识图谱的表示学习方法。知识图谱的表示学习方法旨在将知识图谱中的实体和关系都表示成低维向量空间中的向量,从而将实体和关系之间的计算转化为向量间的数值计算。

当前的表示学习方法不能刻画知识图谱中深层次的语义信息,例如“公司a-吞了-公司b”和“蟒蛇-吞了-兔子”,两个“吞了”具有不同的含义,但是在当前的表示学习中会表示成同一个向量,导致出现错误。



技术实现要素:

本申请提供一种表示学习方法及装置,用于刻画知识图谱中深层次的语义信息,提高表示学习的准确性。

为达到上述目的,本申请采用如下技术方案:

第一方面,提供一种表示学习方法,包括:根据融合文本的知识图谱的三元组中实体的类型,确定实体的类型表示向量,该实体包括头实体和尾实体;根据三元组中关系的类型,确定关系的类型表示向量;根据实体的文本信息,确定实体的上下文表示向量;根据关系的权重值,确定关系的上下文表示向量;根据实体的类型表示向量、实体的上下文表示向量、关系的类型表示向量以及关系的上下文表示向量,构建三元组的打分函数;根据三元组的打分函数,构建目标函数;最小化目标函数,学习实体的表示向量和关系的表示向量。基于该技术方案,由于实体的类型和上下文,关系的类型和权重值均代表一定的深层次语义信息,因此通过考虑实体的类型和上下文,以及关系的类型和权重值,使得确定出来的实体的表示向量以及关系的表示向量能够刻画出知识图谱中深层次的语义信息,提高表示学习的准确性。

一种可能的设计中,在根据融合文本的知识图谱的三元组中实体的类型,确定实体的类型表示向量之前,该方法还包括:初始化头实体的表示向量、尾实体的表示向量、关系的表示向量、实体类型表示矩阵、关系类型表示矩阵、词表示矩阵以及权重值的表示向量。这样一来,在后续的表示学习过程中,能够确定关系的类型表示向量、实体的类型表示向量、关系的上下文表示向量以及实体的上下文表示向量。

一种可能的设计中,根据融合文本的知识图谱的三元组中实体的类型,确定实体的类型表示向量,包括:根据头实体的类型,确定头实体的类型标识向量;根据公式确定头实体的类型表示向量;其中,f1(h)表示头实体的类型表示向量,wetype表示实体类型表示矩阵,vetype(h)表示头实体的类型标识向量;根据尾实体的类型,确定尾实体的类型标识向量;根据公式确定尾实体的类型表示向量;其中,f1(t)表示尾实体的类型表示向量,vetype(t)表示尾实体的类型标识向量。

一种可能的设计中,根据三元组中关系的类型,确定关系的类型表示向量,包括:根据关系的类型,确定关系的类型标识向量;根据公式:确定关系的类型表示向量;其中,g1(r)表示关系的类型表示向量,wrtype表示关系类型表示矩阵,vrtype(r)表示关系的类型标识向量。

一种可能的设计中,根据实体的文本信息,确定实体的上下文表示向量,包括:根据头实体的文本信息,确定与头实体相关的词;根据公式:

确定头实体的上下文表示向量;其中,f2(h)表示头实体的上下文表示向量,α、β为取值在0到1之间的常数,vh表示头实体的表示向量,wi表示与头实体相关的词,ε1表示所有与头实体相关的词构成的集合,wword表示词表示矩阵,vvocubalary(wi)表示wi的标识向量;根据尾实体的文本信息,确定与尾实体相关的词;根据公式:确定尾实体的上下文表示向量;其中,f2(t)表示尾实体的上下文表示向量,vt表示尾实体的表示向量,mi表示与尾实体相关的词,ε2表示所有与尾实体相关的词构成的集合,vvocubalary(mi)表示mi的标识向量。

一种可能的设计中,根据关系的权重值,确定关系的上下文表示向量,包括:根据公式:确定关系的上下文表示向量;其中,g2(r)表示关系的上下文表示向量,vr表示关系的表示向量,ni表示关系的权重值,ε3表示关系的所有权重值构成的集合,表示ni的表示向量。

可选的,三元组的打分函数为:s(h,r,t)=(f1(h)°g1(r))tf1(t)+(f2(h)°g2(r))tf2(t)。其中,°表示复合运算,f1(h)表示头实体的类型表示向量,g1(r)表示关系的类型表示向量,f1(t)表示尾实体的类型表示向量,f2(h)表示头实体的上下文表示向量,g2(r)表示关系的上下文表示向量,f2(t)表示尾实体的上下文表示向量。

可选的,目标函数为:l=∑(h,r,t)∈δ(∑(h′,r,t′)∈δ′max(0,s(h,r,t)+m-s(h′,r,t′)))。其中,(h,r,t)表示正例三元组,δ表示正例三元组集合,(h′,r,t′)表示负例三元组,h′表示负例的头实体,t′表示负例的尾实体,δ′表示负例三元组集合,m为常数。

一种可能的设计中,在根据融合文本的知识图谱的三元组中实体的类型,确定实体的类型表示向量之前,该方法还包括:获取初始知识图谱;基于初始知识图谱的框架,构建融合文本的知识图谱的框架;融合文本的知识图谱的框架至少定义以下内容:实体的扩展属性、关系的扩展属性以及实体之间的扩展关系;实体的扩展属性包括实体的文本信息;根据初始知识图谱中实体的信息或者关系的信息,获取外部数据;从外部数据中,确定实体的扩展属性值以及关系的扩展属性值,以构建融合文本的知识图谱。基于该技术方案,服务器通过扩展初始知识图谱的框架,补充相关的实体的扩展属性值和关系的扩展属性值,构建出融合文本的知识图谱。这样一来,相比于初始知识图谱,融合文本的知识图谱在内容上更加完备。

第二方面,提供一种表示学习装置,包括:类型表示模块,用于根据融合文本的知识图谱的三元组中实体的类型,确定实体的类型表示向量,实体包括头实体和尾实体;根据三元组中关系的类型,确定关系的类型表示向量。上下文表示模块,用于根据实体的文本信息,确定实体的上下文表示向量;根据关系的权重值,确定关系的上下文表示向量。处理模块,用于根据实体的类型表示向量、实体的上下文表示向量、关系的类型表示向量以及关系的上下文表示向量,构建三元组的打分函数;根据三元组的打分函数,构建目标函数;最小化目标函数,学习实体的表示向量和关系的表示向量。

一种可能的设计中,处理模块,还用于初始化头实体的表示向量、尾实体的表示向量、关系的表示向量、实体类型表示矩阵、关系类型表示矩阵、词表示矩阵以及权重值的表示向量。

一种可能的设计中,类型表示模块,用于根据头实体的类型,确定头实体的类型标识向量;根据公式确定头实体的类型表示向量;其中,f1(h)表示头实体的类型表示向量,wetype表示实体类型表示矩阵,vetype(h)表示头实体的类型标识向量;根据尾实体的类型,确定尾实体的类型标识向量;

根据公式确定尾实体的类型表示向量;其中,f1(t)表示尾实体的类型表示向量,vetype(t)表示尾实体的类型标识向量。

一种可能的设计中,类型表示模块,用于根据关系的类型,确定关系的类型标识向量;根据公式:确定关系的类型表示向量;其中,g1(r)表示关系的类型表示向量,wrtype表示关系类型表示矩阵,vrtype(r)表示关系的类型标识向量。

一种可能的设计中,上下文表示模块,用于根据头实体的文本信息,确定与头实体相关的词;根据公式:确定头实体的上下文表示向量;其中,f2(h)表示头实体的上下文表示向量,α、β为取值在0到1之间的常数,vh表示头实体的表示向量,wi表示与头实体相关的词,ε1表示所有与头实体相关的词构成的集合,wword表示词表示矩阵,vvocubalary(wi)表示wi的标识向量;根据尾实体的文本信息,确定与尾实体相关的词;根据公式:确定尾实体的上下文表示向量;其中,f2(t)表示尾实体的上下文表示向量,vt表示尾实体的表示向量,mi表示与尾实体相关的词,ε2表示所有与尾实体相关的词构成的集合,vvocubalary(mi)表示mi的标识向量。

一种可能的设计中,上下文表示模块,用于根据公式:确定关系的上下文表示向量;其中,g2(r)表示关系的上下文表示向量,vr表示关系的表示向量,ni表示关系的权重值,ε3表示关系的所有权重值构成的集合,表示ni的表示向量。

可选的,三元组的打分函数为:s(h,r,t)=(f1(h)°g1(r))tf1(t)+(f2(h)°g2(r))tf2(t)。其中,°表示复合运算,f1(h)表示头实体的类型表示向量,g1(r)表示关系的类型表示向量,f1(t)表示尾实体的类型表示向量,f2(h)表示头实体的上下文表示向量,g2(r)表示关系的上下文表示向量,f2(t)表示尾实体的上下文表示向量。

可选的,目标函数为:l=∑(h,r,t)∈δ(∑(h′,r,t′)∈δ′max(0,s(h,r,t)+m-s(h′,r,t′)))。其中,(h,r,t)表示正例三元组,δ表示正例三元组集合,(h′,r,t′)表示负例三元组,h′表示负例的头实体,t′表示负例的尾实体,δ′表示负例三元组集合,m为常数。

一种可能的设计中,表示学习装置还包括:框架扩展模块、数据获取模块以及扩展映射模块。框架扩展模块,用于获取初始知识图谱;基于初始知识图谱的框架,构建融合文本的知识图谱的框架;融合文本的知识图谱的框架至少定义以下内容:实体的扩展属性、关系的扩展属性以及实体之间的扩展关系;实体的扩展属性包括实体的文本信息。数据获取模块,用于根据初始知识图谱中实体的信息或者关系的信息,获取外部数据。扩展映射模块,用于从外部数据中,确定实体的扩展属性值以及关系的扩展属性值,以构建融合文本的知识图谱。

第三方面,提供一种服务器,包括:处理器、存储器、总线和通信接口;所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述服务器运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述服务器执行如上述第一方面中任一项所述的表示学习方法。

第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的表示学习方法。

第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的表示学习方法。

第六方面,提供了一种芯片系统,该芯片系统包括处理器,用于支持服务器实现上述第一方面中所涉及的功能。在一种可能的设计中,该芯片系统还包括存储器,该存储器,用于保存服务器必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。

其中,第二方面至第六方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。

附图说明

图1为本申请实施例提供的一种通信系统的示意图;

图2为本申请实施例提供的一种服务器的结构示意图;

图3为本申请实施例提供的一种构建知识图谱的方法的流程图;

图4为本申请实施例提供的一种初始知识图谱的示意图;

图5为本申请实施例提供的一种融合文本的知识图谱的示意图;

图6为本申请实施例提供的一种表示学习方法的流程图;

图7为本申请实施例提供的一种表示学习装置的结构示意图。

具体实施方式

在介绍本申请实施例提供的方法之前,对本申请实施例涉及的术语进行简单介绍。

知识图谱是对客观世界的一种符号表达。知识图谱本身是一个具有属性的实体通过关系连接而成的网状知识库。从图的角度来看,知识图谱在本质上是一种网络,其中的节点表示客观世界的实体(或概念),而边则表示实体间的各种关系或者实体的属性。

其中,实体是指具有可区别性且独立存在的具体事物。例如,“苹果”、“香蕉”等都可以是实体。

概念是指人们在认知世界过程中形成的对客观事物的概念化表示,例如人、动物、植物。换句话说,概念可以理解为具有同种特性的实体构成的集合。

关系用于描述实体、概念之间的客观存在的关联。示例性的,实体之间的关系可以为包含关系、上下位关系等。例如,手机包含摄像头,也即手机和摄像头之间存在包含关系。

属性是一个对象的抽象方面的刻画。值得说明的是,一个实体(或概念)一般具有许多的性质与关系,这些性质与关系可以称之为实体(或概念)的属性。例如,以实体是北京为例,北京的属性包括:人口、面积等。

属性值是对象指定属性的值。例如中国的面积为:960万平方公里,960万平方公里即是面积这一属性的值。

三元组是知识图谱的一种通用表示形式。三元组的基本形式包括(首实体-关系-尾实体)和(概念-属性-属性值)。例如,中国-首都-北京是一个(首实体-关系-尾实体)的三元组示例,其中,中国是首实体,北京是尾实体,首都就是中国和北京的关系。北京-人口-2069.3万构成一个(概念-属性-属性值)的三元组示例,其中,人口是一种属性,2069.3万是属性值。需要说明的是,在本申请实施例中,如无特殊说明,三元组均指(首实体-关系-尾实体)这一基本形式。

知识图谱的框架(schema)是对概念进行建模的规范,是描述客观世界的抽象模型,以形式化方式对概念及其之间的联系给出明确的定义。可以理解的是,schema定义了知识图谱中的数据模型。具体的,schema定义了实体的类型和关系的类型。

图1给出了本申请提供的技术方案所适用的一种通信系统,该通信系统包括服务器10以及终端设备20。服务器10与终端设备20之间通过无线网络或有线网络来通信。

该终端设备20可以手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本、个人数字助理(personaldigitalassistant,pda)等等。终端设备20可以安装具有智能搜索、智能问答等功能的客户端。

服务器10用于为终端设备提供智能搜索、智能问答等服务。服务器10包括框架扩展单元、数据获取单元、扩展映射单元、特征计算单元和存储单元。

其中,所述框架扩展单元用于根据初始的知识图谱的框架,构建融合文本的知识图谱的框架。

所述数据获取单元用于根据初始的知识图谱中实体的信息或者关系的信息,从互联网中获取外部数据。

所述扩展映射单元用于从外部数据中,生成实体的扩展属性值和关系的扩展属性值;将所述实体的扩展属性值以及所述关系的扩展属性值添加到融合文本的知识图谱中,构建所述融合文本的知识图谱。

所述特征计算单元用于确定融合文本的知识图谱中的实体的表示向量和关系的表示向量。

所述存储单元用于存储构建好的融合文本的知识图谱的相关数据。

图2为本申请实施例提供的一种服务器的硬件结构示意图。该服务器包括至少一个处理器101,通信线路102,存储器103以及至少一个通信接口104。

处理器101可以是一个通用中央处理器(centralprocessingunit,cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本申请方案程序执行的集成电路。

通信线路102可包括一通路,在上述组件之间传送信息。

通信接口104,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radioaccessnetwork,ran),无线局域网(wirelesslocalareanetworks,wlan)等。

存储器103可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器103可以独立存在,通过通信线路102与处理器相连接。存储器103也可以和处理器101集成在一起。

其中,存储器103用于存储执行本申请方案的计算机可执行指令。处理器101用于执行存储器103中存储的计算机可执行指令,从而实现本申请下述实施例提供的技术方案。

可选地,本申请实施例中的计算机可执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。

在具体实现中,作为一种实施例,处理器101可以包括一个或多个cpu,例如图2中的cpu0和cpu1。

在具体实现中,作为一种实施例,服务器可以包括多个处理器,例如图2中的处理器101和处理器107。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

如图3所示,为本申请实施例提供的一种构建知识图谱的方法,该方法包括以下步骤:

s101、服务器获取初始知识图谱。

其中,所述初始知识图谱是服务器从互联网中获取的;或者,所述初始知识图谱是人工录入到服务器的。

s102、服务器基于所述初始知识图谱的框架,构建融合文本的知识图谱的框架。

相比于初始知识图谱的框架,融合文本的知识图谱的框架至少还包括:实体的扩展属性、关系的扩展属性以及实体之间的扩展关系。

实体的扩展属性即为初始知识图谱的框架中未定义的实体的属性。例如,对于北京这一实体,初始知识图谱的框架中仅定义的两个属性:面积和人口,而融合文本的知识图谱的框架中还定义了另一个属性:经纬度。这样一来,经纬度即为北京的扩展属性。可选的,实体的扩展属性可以根据以下方式来确定:服务器根据初始知识图谱中的实体的名称信息,利用文本挖掘算法,从已有的文本信息或者外部的文本信息中抽取与实体的名称信息有关的高频词,并结合词性过滤技术,形成实体的扩展属性。其中,所述文本挖掘算法包括:主题模型、核心词抽取以及命名实体识别。

需要说明的是,在本申请实施例中,实体的扩展属性至少包括:实体的文本信息。也就是说,融合文本的知识图谱是至少具有实体的文本信息这一属性的知识图谱。

关系的扩展属性即为初始知识图谱的框架中未定义的关系的属性。示例性的,关系的扩展属性包括:头实体的类型、尾实体的类型等。可选的,所述关系的扩展属性由专家人工定义。

实体之间的扩展关系即为初始知识图谱的框架中未定义的实体之间的关系。示例性的,实体之间的扩展关系包括:距离关系、临近关系等。可选的,扩展关系可从关系数据库中获取,所述关系数据库包含了各种实体之间的关系。需要说明的是,为了保证实体之间的扩展关系的合理性,在确定实体之间的扩展关系后,服务器将当前融合文本的知识图谱中明确的实体之间的关系作为训练数据,利用弱监督算法以及强化学习算法,验证扩展关系的合理性,从而去除掉不合理的扩展关系。

s103、服务器根据所述融合文本的知识图谱中实体的信息或者关系的信息,获取外部数据。

其中,所述实体的信息包括实体的名称。所述关系的信息包括关系的名称。所述外部数据包括实体或者关系的扩展属性的信息。所述外部数据可以为结构化的数据、半结构化的数据或者非结构化的数据。若所述外部数据为非结构化的数据,所述外部数据可以为文本信息或多媒体信息,所述多媒体信息包括:视频、图片和网页。

一种可选的实现方式中,服务器根据所述融合文本的知识图谱中实体的信息或者关系的信息,利用爬虫等技术从互联网获取外部数据。

示例性的,服务器直接从百科类网站(例如百度百科、维基百科)或者垂直网站(例如电子产品网站、图书网站、电影网站、音乐网站)中提取外部数据。由于百科类网站和垂直网站包括有大量的实体的属性信息,例如图书网站中包括了图书的作者、出版社、出版时间等信息,因此服务器可以通过生成一定规则的包装器(或称为模板),以包装器来提取包含属性信息的外部数据。需要说明的是,包装器的生成方法可以分为:人工法(即以人工的方式编写包装器)、监督方法、半监督方法以及无监督方法。

s104、服务器从外部数据中,确定所述实体的扩展属性值以及所述关系的扩展属性值,以构建所述融合文本的知识图谱。

可选的,若外部数据为结构化数据或者半结构化数据,服务器利用人工定义或者自动生成的匹配模式,从外部数据中提取所述实体的扩展属性值或者关系的扩展属性值。

可选的,若外部数据为非结构化数据,例如外部数据为文本信息,则服务器采用数据挖掘的方法,从文本信息中挖掘属性与属性值之间的关系模式,从而实现对属性名称与属性值在文本中的定位。可以理解的是,在真实语言环境中,许多属性值的附近均存在一些用于限制和界定该属性值含义的关键词(例如属性名称),因此可以利用这些关键词来定位属性值。

之后,服务器将实体的扩展属性值以及关系的扩展属性值补充到融合文本的知识图谱中,以完成对融合文本的知识图谱的创建。

示例性的,图4示出一种初始知识图谱的示意图,图5示出一种融合文本的知识图谱的示意图。如图4所示,初始知识图谱的框架定义了两种实体类型:产品和零部件。产品有:华为p10和华为p8,零部件有:摄像头、镜头1、镜头2以及镜头。镜头1、镜头2以及镜头具有两种属性:传感器以及像素。图5所示的融合文本的知识图谱是基于图4所示的初始知识图谱扩展得到的。如图5所示,华为p10和华为p8之间存在扩展关系:有序共现关系。华为p10具有扩展属性:主题和频度。包含关系具有扩展属性:htype、hr频度、ttype以及rt频度。其中,htype表示头实体的类型,hr频度表示头实体与关系的频度,ttype表示尾实体的类型,rt频度表示关系与尾实体的频度。需要说明的是,虽然图5中未示出,图5中的任一实体还具有文本信息这一扩展属性。

本申请实施例提供的构建知识图谱的方法,通过扩展初始知识图谱的框架,补充相关的实体的扩展属性值和关系的扩展属性值,构建出融合文本的知识图谱。这样一来,相比于初始知识图谱,融合文本的知识图谱在内容上更加完备。

在构建融合文本的知识图谱之后,需要对构建好的融合文本的知识图谱进行表示学习,以便于有效利用融合文本的知识图谱中的知识。图6示出本申请实施例提供的一种表示学习方法的流程图,该方法包括如下步骤:

s201、服务器初始化所述融合文本的知识图谱的三元组中头实体的表示向量、尾实体的表示向量、关系的表示向量、实体类型表示矩阵、关系类型表示矩阵、词表示矩阵以及权重值的表示向量。

具体的,服务器采用均匀分布初始化、伯努利分布初始化等方法来初始化所述融合文本的知识图谱的三元组中所述头实体的表示向量、所述尾实体的表示向量、所述关系的表示向量、所述实体类型表示矩阵、所述关系类型表示矩阵、所述词表示矩阵以及所述权重值的表示向量。

需要说明的是,所述头实体的表示向量的维数、所述尾实体的表示向量的维数、所述关系的表示向量的维数以及所述权重值表示向量的维数均是预先设定的。并且,所述头实体的表示向量的维数、所述尾实体的表示向量的维数、所述关系的表示向量的维数以及所述权重值表示向量的维数相等。

在本申请的实施例中,所述实体类型表示矩阵用于使实体的类型标识向量映射为实体的类型表示向量。所述实体的类型标识向量用于直接表征实体所属的类型。所述实体的类型表示向量用于间接表征实体所属的类型。

需要说明的是,所述实体类型表示矩阵的行数等于所述实体的类型表示向量的维数。所述实体类型表示矩阵的列数等于所述实体的类型标识向量的维数。其中,所述实体的类型表示向量的维数等于实体的表示向量的维数。所述实体的类型标识向量的维数等于实体的类型的总数。实体的类型标识向量的每一个维度分别对应实体的一种类型,实体的类型标识向量的每一个维度的取值为0或1。若实体的类型标识向量的一个维度取值为1,说明实体属于该维度对应的类型。若实体的类型标识向量的一个维度取值为0,说明实体不属于该维度对应的类型。示例性的,知识图谱的框架定义实体的类型包括类型1、类型2、类型3以及类型4,若实体a所属的类型为类型1和类型4,则实体a的类型标识向量为(1,0,0,1)。

在本申请实施例中,所述关系类型表示矩阵用于使关系的类型标识向量映射为关系的类型表示向量。所述关系的类型标识向量用于直接表征关系所属的类型。所述关系的类型表示向量用于间接表征关系所属的类型。

需要说明的是,所述关系类型表示矩阵的行数等于所述关系的类型表示向量的维数。所述关系类型表示矩阵的列数等于所述关系的类型标识向量的维数。所述关系的类型表示向量的维数等于所述关系的表示向量的维数。所述关系的类型标识向量的维数等于关系的类型的总数。关系的类型标识向量的每一个维度分别对应实体的一种类型,实体的类型标识向量的每一个维度的取值为0或1。若关系的类型标识向量的一个维度取值为1,说明关系属于该维度对应的类型;若关系的类型标识向量的一个维度取值为0,说明关系不属于该维度对应的类型。

在本申请实施例中,所述词表示矩阵用于使词的标识向量映射为词的表示向量。所述词的标识向量用于直接表征词在词表中的位置。所述词的类型表示向量用于间接表征词在词表中的位置。词表包含知识图谱中所有实体相关的词。

需要说明的是,所述词表示矩阵的行数等于所述词的表示向量的维数。所述词表示矩阵的列数等于所述词的标识向量的维数。所述词的表示向量的维数等于实体的表示向量的维数。所述词的标识向量的维数等于词表中词的总数。词的标识向量的每一个维度对应词表中的一个位置。词的标识向量的每一个维度的取值为0或1。若词的标识向量的一个维度取值为0,说明该词不在该维度对应的词表的位置;若词的标识向量的一个维度取值为1,说明该词在该维度对应的词表的位置。

在本申请实施例中,所述权重值的表示向量用于表示关系的权重值。关系的权重值用于说明关系所连接的两个实体之间的相关程度。

s202、服务器根据融合文本的知识图谱的三元组中实体的类型,确定所述实体的类型表示向量。

其中,所述实体包含头实体和尾实体。

在本申请实施例中,所述实体的类型是由融合文本的知识图谱的框架定义的。并且,所述实体的类型并不是唯一的。换句话说,一个实体可以对应多个类型。示例性的,假设实体为手机,手机可以是电子产品,也可以是通信工具。这里,电子产品或者通信工具即为手机所属的类型。

具体的,服务器先根据头实体的类型,确定头实体的类型标识向量;然后,服务器再根据公式确定所述头实体的类型表示向量。其中,f1(h)表示所述头实体的类型表示向量,wetype表示所述实体类型表示矩阵,vetype(h)表示所述头实体的类型标识向量,‖‖表示二范数。

具体的,服务器先根据尾实体的类型,确定尾实体的类型标识向量;然后,服务器再根据公式确定所述尾实体的类型表示向量。其中,f1(t)表示所述尾实体的类型表示向量,vetype(t)表示所述尾实体的类型标识向量。

s203、服务器根据所述三元组中关系的类型,确定所述关系的类型表示向量。

其中,所述关系的类型是由融合文本的知识图谱的框架定义的。所述关系的类型包括:包含关系、上下位关系、并列关系等。

具体的,服务器可以先根据关系的类型,确定所述关系的类型标识向量。然后,服务器根据公式:确定所述关系的类型表示向量;其中,g1(r)表示所述关系的类型表示向量,wrtype表示所述关系类型表示矩阵,vrtype(r)表示所述关系的类型标识向量。

s204、服务器根据所述实体的文本信息,确定所述实体的上下文表示向量。

其中,所述实体的上下文表示向量用于表征所述实体的上下文特征。所述文本信息为服务器预先存储的。

具体的,服务器根据所述头实体的文本信息,确定与所述头实体相关的词;然后,服务器根据公式:确定所述头实体的上下文表示向量;其中,f2(h)表示所述头实体的上下文表示向量,α、β为取值在0到1之间的常数,vh表示所述头实体的表示向量,wi表示与所述头实体相关的词,ε1表示所有与所述头实体相关的词构成的集合,wword表示词表示矩阵,vvocubalary(wi)表示wi的标识向量。

具体的,服务器根据所述尾实体的文本信息,确定与所述尾实体相关的词;然后,服务器根据公式:确定所述尾实体的上下文表示向量;其中,f2(t)表示所述尾实体的上下文表示向量,vt表示所述尾实体的表示向量,mi表示与所述尾实体相关的词,ε2表示所有与所述尾实体相关的词构成的集合,vvocubalary(mi)表示mi的标识向量。

需要说明的是,服务器确定与实体相关的词可采用以下实现方式:服务器从文本信息中选取距离实体的名称在一定范围内的文字序列,使用分词技术将所述文字序列划分为一个个单独的词,这些单独的词即为与实体相关的词。

可选的,上述分词技术可以为基于字符串匹配的分词技术、基于理解的分词技术和基于统计的分词技术。这些分词技术的具体实现方式可以参考现有技术,本申请实施例对此不予赘述。

s205、服务器根据所述关系的权重值,确定所述关系的上下文表示向量。

其中,所述关系的上下文表示向量用于表征所述关系的权重特征。

具体的,服务器根据公式:确定所述关系的上下文表示向量。其中,g2(r)表示所述关系的上下文表示向量,vr表示所述关系的表示向量,ni表示所述关系的权重值,ε3表示关系的所有权重值构成的集合,表示ni的表示向量。

s206、服务器根据所述实体的类型表示向量、所述实体的上下文表示向量、所述关系的类型表示向量以及所述关系的上下文表示向量,构建所述三元组的打分函数。

其中,所述三元组的打分函数为:

其中,°表示复合运算。需要说明的是,所述复合运算包括向量加法或者按位相乘。

其中,按位相乘是指第一向量的每一个维度的取值乘以第二向量的对应维度的取值,生成第三向量的对应维度的取值。示例性的,f(h1,h2,……,hn)°f(r1,r2,……,rn)=f(h1×r1,h2×r2,……,hn×rn)。

s207、服务器根据所述三元组的打分函数,构建目标函数。

其中,所述目标函数为:

其中,(h,r,t)表示正例三元组,δ表示正例三元组集合,(h′,r,t′)表示负例三元组,h′表示负例头实体,t′表示负例尾实体,δ′表示负例三元组集合,m为常数。

需要说明的是,正例三元组为融合文本的知识图谱中存在的三元组,负例三元组为融合文本的知识图谱中不存在的三元组。负例三元组由正例三元组随机替换头实体或者尾实体而得到。负例三元组集合中不包括正例三元组。

另外,s(h′,r,t′)的生成方法可参考上述s(h,r,t)的生成方法,本申请实施例对此不再赘述。

s208、服务器最小化所述目标函数,学习所述实体的表示向量和所述关系的表示向量。

一种可选的实现方式中,服务器以梯度下降算法来迭代更新所述头实体的表示向量、所述尾实体的表示向量、所述关系的表示向量、所述实体类型表示矩阵、所述关系类型表示矩阵、所述词表示矩阵、权重值的表示向量、负例头实体的表示向量以及负例尾实体的表示向量等,以使得目标函数能求解出最小值,进而能够确定所述头实体的表示向量、所述尾实体的表示向量和所述关系的表示向量。

需要说明的是,所述梯度下降算法可参考现有技术,本申请实施例对此不予赘述。

本申请实施例提供的表示学习方法,由于实体的类型和上下文,关系的类型和权重值均代表一定的深层次语义信息,因此通过考虑实体的类型和上下文,以及关系的类型和权重值,从而使得确定出来的实体的表示向量以及关系的表示向量能够刻画出知识图谱中深层次的语义信息,提高表示学习的准确性。

上述主要从服务器的角度对本申请实施例提供的方案进行了介绍。可以理解的是服务器为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例可以根据上述方法示例对服务器进行划分,例如,可以对应各个功能划分各个模块或者单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件模块或者单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

比如,在采用对应各个功能划分各个功能模块的情况下,图7示出上述实施例涉及的表示学习装置的一种可能的结构示意图。如图7所示,该表示学习装置包括:类型表示模块701、上下文表示模块702、处理模块703、框架扩展模块704、数据获取模块705以及扩展映射模块706。其中,类型表示模块701用于支持服务器执行图6中的步骤s202和s203。上下文表示模块702用于支持服务器执行图6中的步骤s204和s205。处理模块703用于支持服务器执行图6中的步骤s201、s206、s207和s208。框架扩展模块704用于支持服务器执行图3中的步骤s101和s102。数据获取模块705用于支持服务器执行图3中的步骤s103。扩展映射模块用于支持服务器执行图3中的步骤s104。

在本申请实施例中,该表示学习装置以对应各个功能划分各个功能模块的形式来呈现,或者,该表示学习装置以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以包括特定应用集成电路(application-specificintegratedcircuit,asic),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该表示学习装置可以采用图2所示的服务器来实现。比如,图7中的类型表示模块701、上下文表示模块702、处理模块703、框架扩展模块704以及扩展映射模块706可以由图2中的处理器101来实现,图7中的数据获取模块705可以由图2中的通信接口104来实现。本申请实施例对此不做任何限制。

可选的,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令;当所述计算机可读存储介质在图2所示的服务器上运行时,使得该服务器执行图3或图6所示的表示学习方法。

可选的,本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行图3或图6所示的表示学习方法。

可选的,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持服务器实现图3或图6所示的表示学习方法。在一种可能的设计中,该芯片系统还包括存储器。该存储器,用于保存接收机必要的程序指令和数据。当然,存储器也可以不在芯片系统中。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件,本申请实施例对此不作具体限定。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。

尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1