对象关系预测、对象推荐方法及装置、电子设备、介质与流程

文档序号:20918142发布日期:2020-05-29 13:47阅读:168来源:国知局
对象关系预测、对象推荐方法及装置、电子设备、介质与流程
本公开涉及计算机
技术领域
,尤其涉及一种对象关系预测方法、对象关系预测装置、对象推荐方法、对象推荐装置、电子设备及计算机可读存储介质。
背景技术
:随着信息时代的来临,各个企业及互联网上出现了大量复杂的数据,通过对这些数据的分析与挖掘,可以得到一些有效信息以便于各个企业进行有效决策。例如电商平台中可以包括海量的商品以及商品数据,通过对商品数据进行分析,以挖掘、预测出商品之间的关系,能够便于对商品进行管理或者为用户提供合理的商品推荐等。现有的对象关系预测方法通常是基于计算多个对象之间的余弦相似度,确定其相似程度,即仅能从对象的表面或语义上来确定不同对象之间的关系。然而,在实际生活中,可能经常会出现语义上并不相似的对象之间,却具有较强的关联性,例如商品“尿布”与“啤酒”之间虽然根据上述方法得到的结果是不相似的,但实际上这两个商品之间却具有一定的关联性,因此,该方法难以针对多种对象的关系进行有效预测;另一方面,在上述计算对象相似度确定对象关系的方法中,一般是通过人为限定相似性的粒度,但是由于不同粒度之间的关系很难囊括,例如商品“衬衫”和“袜子”在衣服的领域是相似关系,但在上衣领域则不是相似关系,导致预测的关系结果不够准确。因此,如何采取合适的对象关系预测方法,对对象之间的关系进行有效且准确的预测是现有技术亟待解决的问题。需要说明的是,在上述
背景技术
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。技术实现要素:本公开提供了一种对象关系预测方法、对象关系预测装置、对象推荐方法、对象推荐装置、电子设备及计算机可读存储介质,进而至少在一定程度上克服现有技术中难以对多个待预测对象之间的关系进行有效、准确预测的问题。本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。根据本公开的第一方面,提供一种对象关系预测方法,包括:获取多个待预测对象在实体空间的特征,以得到每个所述待预测对象的特征张量;将每个所述特征张量映射至关系空间,以得到每个所述待预测对象的关系张量;基于每个所述待预测对象的关系张量,确定所述多个待预测对象之间的关系数据;根据所述关系数据确定所述多个待预测对象之间的关系预测结果。在本公开的一种示例性实施例中,所述将每个所述特征张量映射至关系空间,以得到每个所述待预测对象的关系张量,包括:利用预先配置的所述实体空间到关系空间的映射矩阵,将每个所述特征张量映射为对应的关系张量。在本公开的一种示例性实施例中,所述映射矩阵通过以下方式获得:获取多个样本对,每个所述样本对包含两个样本对象;根据每个样本对中两个样本对象的特征张量之间的相似度,确定所述样本对的第一关系值;通过关联规则,确定每个所述样本对的第二关系值;根据每个所述样本对的第一关系值和/或第二关系值确定所述样本对的样本关系数据;利用每个所述样本对中两个样本对象的特征张量,以及每个所述样本对的样本关系数据,计算所述映射矩阵。在本公开的一种示例性实施例中,所述获取多个样本对,包括:获取多个样本序列,每个所述样本序列包含至少两个样本对象;以每个所述样本序列为一个集合,提取每个所述样本序列的二元子集,得到所述多个样本对;其中,所述二元子集为包含两个样本对象的子集。在本公开的一种示例性实施例中,所述通过关联规则,确定每个所述样本对的第二关系值,包括:基于所述多个样本序列中样本对象的关联,构建至少一个频繁k项集,k为正整数;根据每个所述样本对在所述频繁k项集中出现的情况,确定每个所述样本对的第二关系值。在本公开的一种示例性实施例中,所述获取多个待预测对象在实体空间的特征,以得到每个所述待预测对象的特征张量,包括:获取多个待预测对象的名称文本;将每个所述名称文本转换为词向量,以作为对应的所述待预测对象的特征张量。在本公开的一种示例性实施例中,所述方法还包括:基于所述多个待预测对象之间的关系预测结果,建立各所述待预测对象的推荐词表。根据本公开的第二方面,提供一种对象推荐方法,包括:获取用户搜索的目标对象,将所述目标对象加入到待预测对象中;根据上述对象关系预测方法,确定所述待预测对象之间的关系预测结果;根据所述关系预测结果,从所述待预测对象中确定与所述目标对象具有关联的其他对象;将所述其他对象推荐给所述用户。根据本公开的第三方面,提供一种对象关系预测装置,包括:特征获取模块,用于获取多个待预测对象在实体空间的特征,以得到每个所述待预测对象的特征张量;特征映射模块,用于将每个所述特征张量映射至关系空间,以得到每个所述待预测对象的关系张量;关系确定模块,用于基于每个所述待预测对象的关系张量,确定所述多个待预测对象之间的关系数据;结果预测模块,用于根据所述关系数据确定所述多个待预测对象之间的关系预测结果。在本公开的一种示例性实施例中,特征获取模块包括:关系映射单元,用于利用预先配置的所述实体空间到关系空间的映射矩阵,将每个所述特征张量映射为对应的关系张量。在本公开的一种示例性实施例中,所述映射矩阵通过以下方式获得:样本对获取单元,用于获取多个样本对,每个所述样本对包含两个样本对象;第一关系值确定单元,用于根据每个样本对中两个样本对象的特征张量之间的相似度,确定所述样本对的第一关系值;第二关系值确定单元,用于通过关联规则,确定每个所述样本对的第二关系值;根据每个所述样本对的第一关系值和/或第二关系值确定所述样本对的样本关系数据;映射矩阵计算单元,用于利用每个所述样本对中两个样本对象的特征张量,以及每个所述样本对的样本关系数据,计算所述映射矩阵。在本公开的一种示例性实施例中,样本对获取单元,用于获取多个样本序列,每个所述样本序列包含至少两个样本对象;以及以每个所述样本序列为一个集合,提取每个所述样本序列的二元子集,得到所述多个样本对;其中,所述二元子集为包含两个样本对象的子集。在本公开的一种示例性实施例中,第二关系值确定单元,用于基于所述多个样本序列中样本对象的关联,构建至少一个频繁k项集,k为正整数;以及根据每个所述样本对在所述频繁k项集中出现的情况,确定每个所述样本对的第二关系值。在本公开的一种示例性实施例中,特征获取模块包括:文本获取单元,用于获取多个待预测对象的名称文本;向量转换单元,用于将每个所述名称文本转换为词向量,以作为对应的所述待预测对象的特征张量。在本公开的一种示例性实施例中,对象关系预测方法还包括:词表建立模块,用于基于所述多个待预测对象之间的关系预测结果,建立各所述待预测对象的推荐词表。根据本公开的第四方面,提供一种对象推荐装置,包括:对象获取模块,用于获取用户搜索的目标对象,将所述目标对象加入到待预测对象中;结果预测模块,用于根据上述对象关系预测方法,确定所述待预测对象之间的关系预测结果;对象确定模块,用于根据所述关系预测结果,从所述待预测对象中确定与所述目标对象具有关联的其他对象;对象推荐模块,用于将所述其他对象推荐给所述用户。根据本公开的第五方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的方法。根据本公开的第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的方法。本公开的示例性实施例具有以下有益效果:获取多个待预测对象在实体空间的特征,以得到每个待预测对象的特征张量,将每个特征张量映射至关系空间,以得到每个待预测对象的关系张量,基于每个待预测对象的关系张量,确定多个待预测对象之间的关系数据,根据关系数据确定多个待预测对象之间的关系预测结果。一方面,本示例性实施例提出一种新的对象关系预测方法,相比于现有技术中通过计算对象相似度确定对象之间关系的方法,对于待预测对象之间的关系的预测结果更加准确,且具有较高的可信度;另一方面,通过将实体空间中的待预测对象的特征张量,映射至关系空间中,以确定待预测对象之间的关系,不再仅仅依赖于待预测对象表面语义的判断,可以高效地计算实体空间中的待预测对象与关系空间之间的复杂关联,更深层次的挖掘出待预测对象之间可能具有的其他关联关系,得到更加丰富且全面的关系预测结果,具有较广的适用性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示意性示出本示例性实施例中一种对象关系预测方法的流程图;图2示意性示出本示例性实施例中一种实体空间至关系空间的映射示意图;图3示意性示出本示例性实施例中一种对象关系预测方法的子流程图;图4示意性示出本示例性实施例中另一种对象关系预测方法的子流程图;图5示意性示出本示例性实施例中训练数据的生成的流程图;图6示意性示出本示例性实施例中另一种训练数据的生成的流程图;图7示意性示出本示例性实施例中一种对象推荐方法的流程图;图8示意性示出本示例性实施例中一种对象关系预测装置的结构框图;图9示意性示出本示例性实施例中一种对象推荐装置的结构框图;图10示意性示出本示例性实施例中一种用于实现上述方法的电子设备;图11示意性示出本示例性实施例中一种用于实现上述方法的计算机可读存储介质。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。本公开的示例性实施例首先提供了一种对象关系预测方法,其中,对象可以包括,电商平台中的商品、社交平台中的用户等可以进行关系预测的对象等。本示例性实施例的应用场景可以是:在工作人员在进行商品整理时,基于本示例性实施例提供的对象关系预测方法,将具有关联关系的商品摆放在距离较近的位置,以便于用户进行决策;或者电商平台在为用户进行商品推荐时,通过本示例性实施例为用户推荐其可能感兴趣的商品等等。下面结合附图1对本示例性实施例做进一步说明,如图1所示,对象关系预测方法可以包括以下步骤s110~s140:步骤s110,获取多个待预测对象在实体空间的特征,以得到每个待预测对象的特征张量。其中,待预测对象是指需要进行关系预测的主体,其可以是电商平台的商品、社交平台的用户或其他平台的相关信息等。本示例性实施例可以对多个待预测对象进行关系预测,特别是针对于两个待预测对象,可以准确预测二者之间的关系。首先,需要获取待预测对象在实体空间的特征,即从待预测对象中进行实体空间的特征提取,其可以是对待预测对象进行语义特征的提取,进一步,根据提取的特征生成对应的特征张量。其中,特征张量是指能够反映待预测对象特征的数据,其可以以向量或矩阵的形式表现等。例如提取商品的语义特征,根据语义特征确定关于商品的特征向量等。在一示例性实施例中,上述步骤s110可以包括:获取多个待预测对象的名称文本;将每个名称文本转换为词向量,以作为对应的待预测对象的特征张量。在本示例性实施例中,为了便于模型对待预测对象的处理,可以将获取的多个待预测对象的文本数据,即名称文本,转化为数值型数据。具体的,可以通过embedding(嵌入)方式,将预测对象的名称文本映射或嵌入到另一个数值向量的空间,即可以完成将待预测对象的名称文本转换为词向量的过程,以将词向量作为待预测对象的特征张量,例如“内存卡”这一商品词可以转化为[0.111206,0.212657,…,0.018394]这样包括300个维度的词向量,作为“内存卡”这一商品的特征张量等。步骤s120,将每个特征张量映射至关系空间,以得到每个待预测对象的关系张量。在本示例性实施例中,可以基于知识学习模型(本示例性实施例中,可以采用transr(翻译)模型),将实体空间和关系空间分开,并通过将实体空间中的待预测对象的特征张量,映射至关系空间中,以实现对实体和关系的语义信息表示,可以高效地计算实体空间中的待预测对象与关系空间之间的复杂语义关联。举例说明,知识学习模型能够将商品实体(比如鼠标、键盘等)嵌入到实体空间(entityspace)中,把商品间的关系(比如相同相似关系或其他关系)嵌入到关系空间(relationspace)中,在对应的关系空间中实现翻译。本示例性实施例通过步骤s110得到实体空间中待预测对象的特征张量后,通过映射至关系空间,即可以得到待预测对象的关系张量。步骤s130,基于每个待预测对象的关系张量,确定多个待预测对象之间的关系数据。步骤s140,根据关系数据确定多个待预测对象之间的关系预测结果。其中,关系数据是指可以反映多个待预测对象之间关系的数据,其可以以数值型数据进行表示,例如数字、向量或矩阵等。基于关系数据,可以确定待预测对象之间具有什么样的关系,例如相同、相似、具有某种关系、或没有关系等等。本示例性实施例能够将多个对象与关系编织在一起,预测、挖掘出很多看似没有关系的对象之间的关系,例如待预测对象为商品“指甲刀”和“手链”,如果通过计算相似度确定其之间的关系,则无法进行准确预测,但实际应用中,一般女士在购买手链时会进行试戴观察效果,此时她会同时关注她的手是否好看,指甲是否好看,因此她可能会考虑购买指甲刀来修剪指甲,因此,商品“指甲刀”与“手链”之间具有一定的关系,再例如商品“公仔”和“办公桌”,很多人在购买办公桌后都会去考虑购买一些在办公桌上的摆放物件,如“公仔”,则“公仔”和“办公桌”之间同样具有一定的关联关系。本示例性实施例可以基于关系数据表示多个对象之间是否有关系,有何种关系等。基于上述说明,在本示例性实施例中,获取多个待预测对象在实体空间的特征,以得到每个待预测对象的特征张量,将每个特征张量映射至关系空间,以得到每个待预测对象的关系张量,基于每个待预测对象的关系张量,确定多个待预测对象之间的关系数据,根据关系数据确定多个待预测对象之间的关系预测结果。一方面,本示例性实施例提出一种新的对象关系预测方法,相比于现有技术中通过计算对象相似度确定对象之间关系的方法,对于待预测对象之间的关系的预测结果更加准确,且具有较高的可信度;另一方面,通过将实体空间中的待预测对象的特征张量,映射至关系空间中,以确定待预测对象之间的关系,不再仅仅依赖于待预测对象表面语义的判断,可以高效地计算实体空间中的待预测对象与关系空间之间的复杂关联,更深层次的挖掘出待预测对象之间可能具有的其他关联关系,得到更加丰富且全面的关系预测结果,具有较广的适用性。在一示例性实施例中,上述步骤s120可以包括:利用预先配置的实体空间到关系空间的映射矩阵,将每个特征张量映射为对应的关系张量。其中,映射矩阵是指用于实现将待预测对象的特征张量从实体空间至关系空间映射的投射矩阵。如图2所示,h与t分别表示两个待预测对象在实体空间的特征张量,通过映射矩阵mr可以实现将待预测对象的特征张量h和t映射至关系空间中,投影过程可以是:hr=hmr,tr=tmr,基于映射矩阵可以得到两个待预测对象的关系张量r。其中,r可以表示待预测对象之间具有的关系,可以用向量或矩阵的形式进行表示。在一示例性实施例中,如图3所示,上述映射矩阵可以通过以下方式获得:步骤s310,获取多个样本对,每个样本对包含两个样本对象;步骤s320,根据每个样本对中两个样本对象的特征张量之间的相似度,确定样本对的第一关系值;步骤s330,通过关联规则,确定每个样本对的第二关系值;步骤s340,根据每个样本对的第一关系值和/或第二关系值确定样本对的样本关系数据;步骤s350,利用每个样本对中两个样本对象的特征张量,以及每个样本对的样本关系数据,计算映射矩阵。在本示例性实施例中,可以通过获取大量的样本数据,训练知识学习模型,以得到映射矩阵。为了使知识学习模型可以更好的应用与每两个待预测对象之间,本示例性实施例可以获取多个样本对作为训练对象,将样本对,以及样本对中两个样本对象之间的关系作为训练数据,训练知识学习模型。在一示例性实施例中,如图4所示,上述步骤s310可以包括以下步骤,即可以通过以下方式获取多个样本对:步骤s410,获取多个样本序列,每个样本序列包含至少两个样本对象;步骤s420,以每个样本序列为一个集合,提取每个样本序列的二元子集,得到多个样本对;其中,二元子集为包含两个样本对象的子集。以商品为例,举例说明,本示例性实施例可以通过用户对商品的特定行为(如点击行为、购买行为、收藏行为等等,本公开对此不做具体限定),抽取出大量的商品序列,以实现获取多个样本序列的过程,如表1所示,根据用户1和用户2的点击行为获取的商品序列:表1用户1鼠标、内存卡、键盘、啤酒用户2内存卡、存储卡、键盘以每个样本序列为一个集合,即根据上述用户1与用户2的点击行为可以抽取的两个样本序列的集合,分别是,用户1,“鼠标,内存卡,键盘,啤酒”;用户2,“内存卡,存储卡,键盘”。进一步的,可以从这两个用户的样本序列集合中提取序列中的二元子集,即通过组合的方式将序列中的商品进行拆分,穷尽所有排列,得到所有二元子集,抽取结果如表2所示:表2用户1鼠标、内存卡用户1鼠标、键盘用户1鼠标、啤酒用户1内存卡、键盘用户1内存卡、啤酒用户1键盘、啤酒用户2内存卡、存储卡用户2内存卡、键盘用户2存储卡、键盘根据表2可以得到关于用户1以及用户2生成的多个二元子集,这些二元子集即可以作为本示例性实施例中的样本对,每个样本对中包含两个样本对象,例如“鼠标、内存卡”。需要说明的是,上述示例中,商品词仅作为示意性说明,例如鼠标可以表示鼠标这一商品本身所包含的多种信息,并不限于“鼠标”这一关键词或主题描述,后续示例中均可以表示商品本身。本示例性实施例可以提供两种确定样本对象之间关系值的方法:第一种方法,通过将样本对中的样本对象根据wordembedding(词嵌入)的方式,转换为词向量,并对样本对中的两个样本对象的词向量进行余弦相似度的计算。基于余弦相似度的计算结果进行判断,当计算结果大于某一阈值时,确定样本对中两个样本对象相似,可以为其设置第一关系值为0,若低于该阈值,则认为两个样本对象不相似,可以不做考虑。例如针对商品的产品词,计算每两个商品词之间的余弦相似度,设置相似度阈值为0.8,将相似度值高于0.8的产品词对认为是相似商品,比如“内存卡”和“存储卡”的余弦距离为0.986099870546,认为“内存卡”和“存储卡”为相似商品等等。基于第一种方法,可以确定大量相似样本对,以及样本对的第一关系值,例如样本对(内存卡,存储卡)得到的第一关系值为0。为了便于生成可以用于进行训练的数据,在此,可以将第一关系值作为内存卡与存储卡之间的关系数据,并建立三元组数据,例如(内存卡,存储卡,0)。第二种方法,基于关联规则方法,对样本对象之间的关联性进行分析挖掘得到关系,通过设置支持度与置信度,然后通过剪枝、连接等步骤从候选项集中迭代地找到频繁项集及强关联规则,再根据提升度得到有效的强关联规则,即对样本对经过层层迭代,得到一个频繁k相集,进一步根据频繁k相集得到每个样本对的第二关系值。具体的,上述步骤s220可以包括以下步骤:基于多个样本序列中样本对象的关联,构建至少一个频繁k项集,k为正整数;根据每个样本对在频繁k项集中出现的情况,确定每个样本对的第二关系值。以商品为例,举例说明,基于上述步骤s410~s420可以得到如表3所示的样本对:表3样本对(牛奶,面包)(牛奶,尿布)(牛奶,啤酒)(面包,尿布)(面包,啤酒)(尿布,啤酒)针对表3中出现过的样本对,在用户序列数据库中进行扫描,并统计各样本对出现的次数,得到表4:表4本示例性实施例可以通过设置支持度或出现次数的条件,对表4中的样本对进一步筛选,以确定出满足条件的样本对,例如统计表4中出现次数不低于3次的样本对,得到表5:表5样本对出现次数(牛奶,面包)3(牛奶,尿布)3(面包,尿布)3(尿布,啤酒)3基于表5可以得到频繁3项集合:(牛奶,面包,尿布),在该3项集合中,可以确定集合中的样本对象之间满足同一种有效的强关联规则。本示例性实施例可以为生成的每一个频繁k项集合赋予一个第二关系值,例如1、2、…、n,第二关系值相同的样本对,认为其来自于同一个频繁k项集合。例如为频繁3项集合(牛奶,面包,尿布),赋予第二关系值1,则基于(牛奶,面包,尿布)集合得到的(牛奶,面包)、(牛奶,尿布),(面包,尿布)三组样本对的第二关系值都为1,将第二关系值作为样本对象之间的关系数据,可以得到三元组数据(牛奶,面包,1)、(牛奶,尿布,1)、(面包,尿布,1)。本示例性实施例可以基于第二关系值,确定样本对属于哪一频繁k相集合,与那些样本对象具有相同的强关系规则等等。在本示例性实施例中,通过上述方法一、方法二或方法一与方法二的结合,均能够确定用于训练知识学习模型的训练数据,具体可以包括四种方式:第一种,可以仅通过方法一,基于样本对象的词向量,计算样本对的第一关系值,并根据样本对,以及关系数据(即第一关系值),得到三元组数据;第二种,可以仅通过方法二,通过强关联关系的方法,确定样本对中两个样本对象的第二关系值,以根据样本对,以及关系数据(即第二关系值),得到三元组数据;第三种,如图5所示,具体可以包括,步骤s510,获取多个样本对;先通过方法一,执行步骤s520,计算具有相似关系的样本对中,样本对象的相似度,并根据相似度确定第一关系值,得到关系数据为第一关系值的三元组数据;再通过方法二,执行步骤s530,确定没有相似关系的样本对中的样本对象是否具有其他关联关系,得到关系数据为第二关系值的三元组数据;执行步骤s540,根据步骤s520以及步骤s540中得到的样本对,以及对应的关系数据,生成训练数据;最后执行步骤s550,采用步骤s540生成的训练数据对知识表示学习模型进行训练;第四种,如图6所示,具体可以包括,步骤s610,获取多个样本对;使用方法一和方法二共同对其进行处理,执行步骤s620,基于样本对中样本对象的相似度,确定第一关系值;步骤s630,基于关联规则方法,确定样本对中样本对象之间的第二关系值;进一步执行步骤s640,根据第一关系值与第二关系值确定关系数据,并根据样本对以及其对应的关系数据,生成三元组数据,作为训练数据,即三元组数据中,关系数据可以通过二元向量的形式进行表示,第一维表示第一关系值,第二维表示第二关系值;最后,执行步骤s650,基于得到的训练数据,进行知识表示学习模型的训练过程。在本示例性实施例中,可以将第一关系值与第二关系值进行结合得到关系数据,可以将样本对之间的关系更加丰富的表现出来。在本示例性实施例中,得到用于进行知识表示学习模型的训练数据后,模型能够将样本对象的实体(例如鼠标、键盘)嵌入到实体空间中,把样本对象间的关系(例如相同/相似关系或其他关联关系)嵌入到关系空间中,在对应的关系空间中实现翻译。在本示例性实施例中,对于每一种关系,可以通过关系向量r来进行描述,还可以通过映射矩阵mr来描述这个关系所处的关系空间,即对于一个实体关系三元组数据(head,tail,relation),简化为(h,t,r),其中,h和r表示样本对象的向量,r表示关系张量,其可以是一个矩阵。在通过样本对训练模型时,需要满足以下公式:通过样本对对上述公式进行迭代,可以得到训练完成的映射矩阵mr。在一示例性实施例中,对象关系预测方法还可以包括:基于多个待预测对象之间的关系预测结果,建立各待预测对象的推荐词表。根据训练完成的知识表示学习模型,可以采用任意多个待预测对象得到他们之间的关系,基于得到的结果,可以构建以推荐词表,词表可以包括多个具有关系的对象对,基于建立的推荐词表可以应用在多种应用场景中,当用户在电商平台点开某一商品时,基于推荐词表,平台不仅可以推荐给用户与当前商品相似的商品,还可以推荐给用户与当前商品相关的商品等等。本公开的示例性实施例还提供了一种对象推荐方法,对象可以包括,电商平台中的商品、社交平台中的用户等可以进行关系预测的对象等。本示例性实施例的应用场景可以是:用户在电商平台进行商品搜索时,基于用户输入的商品,为用户返回与该商品相同或相似其他商品的搜索结果;或者用户在浏览某一商品时,向用户推荐与该商品相似,其可能感兴趣的其他商品等。下面结合附图7对本示例性实施例做进一步说明,如图7所示,对象推荐方法可以包括以下步骤s710~s740:步骤s710,获取用户搜索的目标对象,将目标对象加入到待预测对象中;步骤s720,根据上述对象关系预测方法,确定待预测对象之间的关系预测结果;步骤s730,根据关系预测结果,从待预测对象中确定与目标对象具有关联的其他对象;步骤s740,将其他对象推荐给用户。通常,在进行对象搜索或对象推荐时,需要获取一基准对象,例如搜索场景中时,用户输入的待搜索的关键词或待搜索的商品;或者推荐场景中,用户浏览某一商品时,以该商品作为基准对象进行推荐等等,该基准对象即为目标对象。在本示例性实施例中,目标对象可以通过用户即时输入的内容确定,例如进行搜索时,实时输入的信息;也可以通过用户的历史信息中确定,例如从电商平台或其他平台中用户的浏览记录、收藏记录中获取等等,本公开对此不做具体限定。将目标对象加入到待预测对象中,确定待预测对象之间的关系预测结果,根据关系预测结果,从待预测对象中确定与目标对象具有关联的其他对象。即通过步骤s110~s140的对象关系预测方法,将目标对象作为待预测对象中的其中之一,获取目标对象的在实体空间的特征,并得到目标对象的特征张量,将其映射至关系空间中,得到目标对象与空间中的其他待预测对象之间的关系张量,并基于关系张量得到包含目标对象在内的所有对象之间的关系数据。最后,根据关系数据确定待预测对象之间的关系预测结果。其中,关系预测结果包括加入的目标对象与其他待预测对象之间的关系预测,例如加入的目标对象为商品信息“指甲刀”,关系预测结果可以是与“指甲刀”相似的商品,如“剪刀”、“镊子”等,也可以是与“指甲刀”相关的商品,如“指甲油”、“手链”等。基于该关系预测结果,即可以确定与目标对象具有关联关系的其他对象,实现向用户推荐对象或返回搜索结果,例如当用户输入“指甲刀”的商品信息时,为用户推荐商品“剪刀”、“镊子”、“指甲油”、“手链”等。基于上述说明,在本示例性实施例中,获取用户搜索的目标对象,将目标对象加入到待预测对象中;根据上述对象关系预测方法,确定待预测对象之间的关系预测结果;根据关系预测结果,从待预测对象中确定与目标对象具有关联的其他对象;将其他对象推荐给用户。一方面,本示例性实施例提出一种新的对象推荐方法,相比于仅计算对象相似度确定推荐对,本示例性实施例根据关系预测结果进行对象推荐,能够涉及更多与目标对象具有关联关系的其他对象,并不局限于相似性高,且推荐结果具有较高的可信度;另一方面,本示例性实施例不再仅仅依赖于对象表面语义的判断,通过计算实体空间中的待预测对象与关系空间之间的复杂关联,挖掘出对象之间可能具有的关联关系,得到更加丰富且全面的关系预测结果,基于该结果进行推荐,具有较广的适用性。本公开的示例性实施例还提供了一种对象关系预测装置。参照图8,该装置800可以包括,特征获取模块810,用于获取多个待预测对象在实体空间的特征,以得到每个待预测对象的特征张量;特征映射模块820,用于将每个特征张量映射至关系空间,以得到每个待预测对象的关系张量;关系确定模块830,用于基于每个待预测对象的关系张量,确定多个待预测对象之间的关系数据;结果预测模块840,用于根据关系数据确定多个待预测对象之间的关系预测结果。在一示例性实施例中,特征获取模块包括:关系映射单元,用于利用预先配置的实体空间到关系空间的映射矩阵,将每个特征张量映射为对应的关系张量。在一示例性实施例中,映射矩阵通过以下方式获得:样本对获取单元,用于获取多个样本对,每个样本对包含两个样本对象;第一关系值确定单元,用于根据每个样本对中两个样本对象的特征张量之间的相似度,确定样本对的第一关系值;第二关系值确定单元,用于通过关联规则,确定每个样本对的第二关系值;根据每个样本对的第一关系值和/或第二关系值确定样本对的样本关系数据;映射矩阵计算单元,用于利用每个样本对中两个样本对象的特征张量,以及每个样本对的样本关系数据,计算映射矩阵。在一示例性实施例中,样本对获取单元,用于获取多个样本序列,每个样本序列包含至少两个样本对象;以及以每个样本序列为一个集合,提取每个样本序列的二元子集,得到多个样本对;其中,二元子集为包含两个样本对象的子集。在一示例性实施例中,第二关系值确定单元,用于基于多个样本序列中样本对象的关联,构建至少一个频繁k项集,k为正整数;以及根据每个样本对在频繁k项集中出现的情况,确定每个样本对的第二关系值。在一示例性实施例中,特征获取模块包括:文本获取单元,用于获取多个待预测对象的名称文本;向量转换单元,用于将每个名称文本转换为词向量,以作为对应的待预测对象的特征张量。在一示例性实施例中,对象关系预测方法还包括:词表建立模块,用于基于多个待预测对象之间的关系预测结果,建立各待预测对象的推荐词表。本公开的示例性实施例还提供了一种对象关系预测装置。参照图9,该装置900可以包括,对象获取模块910,用于获取用户搜索的目标对象,将目标对象加入到待预测对象中;结果预测模块920,用于根据对象关系预测方法,确定待预测对象之间的关系预测结果;对象确定模块930,用于根据关系预测结果,从待预测对象中确定与目标对象具有关联的其他对象;对象推荐模块940,用于将其他对象推荐给用户。上述装置中各模块/单元的具体细节在方法部分的实施例中已经详细说明,未披露的细节内容可以参见方法部分的实施例内容,因此此处不再赘述。本公开的示例性实施例还提供了一种能够实现上述方法的电子设备。所属
技术领域
的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。下面参照图10来描述根据本公开的这种示例性实施例的电子设备1000。图10显示的电子设备1000仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。如图10所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:上述至少一个处理单元1010、上述至少一个存储单元1020、连接不同系统组件(包括存储单元1020和处理单元1010)的总线1030、显示单元1040。其中,存储单元存储有程序代码,程序代码可以被处理单元1010执行,使得处理单元1010执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,处理单元1010可以执行图1所示的步骤s110~s140,也可以执行图3所示的步骤s310~s350等。存储单元1020可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)1021和/或高速缓存存储单元1022,还可以进一步包括只读存储单元(rom)1023。存储单元1020还可以包括具有一组(至少一个)程序模块1025的程序/实用工具1024,这样的程序模块1025包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。总线1030可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。电子设备1000也可以与一个或多个外部设备1200(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1000交互的设备通信,和/或与使得该电子设备1000能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1050进行。并且,电子设备1000还可以通过网络适配器1060与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1060通过总线1030与电子设备1000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开示例性实施例的方法。本公开的示例性实施例还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。参考图11所示,描述了根据本公开的示例性实施例的用于实现上述方法的程序产品1100,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施例,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1