掌桥专利:专业的专利平台
掌桥专利
首页

对象推荐方法、装置、设备和介质

文献发布时间:2024-04-18 19:58:53


对象推荐方法、装置、设备和介质

技术领域

本公开一般涉及信息推荐技术领域,具体涉及一种对象推荐方法、装置、设备和介质。

背景技术

随着互联网技术的发展和普及,网络中的媒体内容也呈现了海量的增长。有针对性地向用户推送其可能感兴趣的对象内容,已成为很多网络平台重点关注的业务之一。相关技术中,通常根据用户的历史操作进行对象推荐,例如根据其他用户的操作频次进行推荐,使得推荐对象集中于高频操作对象上。例如,《王者荣耀》和《和平精英》等游戏,由于玩家较多,在推荐时也会占用较高的推荐几率。

发明内容

鉴于现有技术中的上述缺陷或不足,期望提供一种对象推荐方法、装置、设备和介质,在进行候选对象选取时充分考量候选对象与关联对象、其他候选对象之间的关联关系,提高对象推荐的可靠性。

一方面,本申请实施例提供了一种对象推荐方法,包括:

获取多个候选对象的关联对象,基于所述候选对象和所述关联对象之间的关联关系以及所述候选对象之间的关联关系,确定每一所述候选对象的表达向量,所述表达向量用于表征所述候选对象与所述关联对象之间的关联关系以及所述候选对象之间的关联关系;

获取目标对象的历史操作数据,根据所述历史操作数据从所述多个候选对象中确定所述目标对象的第一推荐对象;

根据所述第一推荐对象的表达向量与其余所述候选对象的表达向量之间的相似度,从其余所述候选对象中确定所述目标对象的第二推荐对象。

一方面,本申请实施例提供了一种对象推荐装置,包括:

第一获取模块,用于获取多个候选对象的关联对象,基于所述候选对象和所述关联对象之间的关联关系以及所述候选对象之间的关联关系,确定每一所述候选对象的表达向量,所述表达向量用于表征所述候选对象与所述关联对象之间的关联关系以及所述候选对象之间的关联关系;

第二获取模块,用于获取目标对象的历史操作数据,根据所述历史操作数据从所述多个候选对象中确定所述目标对象的第一推荐对象;

推荐模块,用于根据所述第一推荐对象的表达向量与其余所述候选对象的表达向量之间的相似度,从其余所述候选对象中确定所述目标对象的第二推荐对象。

一方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现如本申请实施例描述的方法。

一方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例描述的方法。

一方面,本申请实施例提供了一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如本申请实施例描述的方法。

本申请实施例提出的对象推荐方法、装置、设备和介质,通过基于候选对象和关联对象之间的关联关系和候选对象之间的关联关系,确定候选对象的表达向量,使得到的候选对象的表达向量内容更丰富,不仅使候选对象的表达向量中包含了关联对象的内容信息,还通过候选对象之间的关联关系,有效解决了候选对象的表达向量缺乏候选对象之间关联关系的问题。

在针对目标对象进行关联推荐时,首先根据目标对象的历史操作数据确定第一推荐对象(例如,选择目标对象高频操作的对象为第一操作对象),进一步还可以根据第一操作对象和其余候选对象的表达向量的相似度,确定目标对象的第二推荐对象。由于本申请实施例中候选对象的表达向量更为丰富,不仅仅包含候选对象和关联对象之间的关系,还包含了不同候选对象之间的关系,依赖候选对象的表达向量之间的相似度进行关联推荐,能够有效解决关联推荐参考的信息较为单一、推荐结果存在倾向性(例如,频繁推荐高频操作的对象),推荐结果准确度较低的问题,基于特征表达更充分的表达向量筛选出更符合实际相似性的推荐对象,提高个性化推送的精准度。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出了本申请实施例提供的对象推荐方法的实施环境架构图;

图2示出了本申请一实施例提供的对象推荐方法的流程示意图;

图3示出了本申请一实施例提供的分类模型原理示意图;

图4示出了本申请一实施例提供的推荐策略的原理示意图;

图5示出了本申请一实施例提供的异构信息网络的原理示意图;

图6示出了本申请一实施例提供的skip-gram模型的结构示意图;

图7示出了本申请一实施例提供的对象推荐装置的方框示意图;

图8示出了适于用来实现本申请实施例的电子设备或服务器的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。

语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。

自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。

自动驾驶技术通常包括高精地图、环境感知、行为决策、路径规划、运动控制等技术,自定驾驶技术有着广泛的应用前景,

随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。

本申请实施例提供的方案涉及人工智能的自然语言处理等技术,具体通过如下实施例进行说明。

图1示出了本申请实施例提供的对象推荐方法的实施环境架构图。

如图1所示,该实施环境架构包括:客户端101和服务器102。

其中,客户端101可以是包括但不限于个人计算、平台电脑、智能手机、车载终端等设备,本申请实施例对此不作限定。需要说明的是,尽管图1仅描绘了一个客户端101,但是本领域技术人员将能够理解,本申请可以支持任何数量的用户设备。

服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。

客户端101与服务器102之间通过有线或无线通信方式进行直接或间接地连接。可选地,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网,也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(MetropolitanArea Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或无线网络、专用网络或者虚拟专用网络的任何组合。

在一种实现方式中,客户端101和服务器102均可单独用于执行本申请实施例中提供的对象推荐方法。

例如,服务器102或客户端101获取多个候选对象的关联对象,基于候选对象和关联对象之间的关联关系以及候选对象之间的关联关系,确定每一候选对象的表达向量。之后,服务器102或客户端101获取目标对象的历史操作数据,根据历史操作数据从多个候选对象中确定目标对象的第一推荐对象,然后根据第一推荐对象的表达向量与其余候选对象的表达向量之间的相似度,从其余候选对象中去欸的那个目标对象的第二推荐对象。

在本申请实施例中,对于目标对象的对象信息的获取之前需要先征得目标对象的同意或许可,并且也需要符合法律法规和相关的规则标准。

为了进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下实施例或附图所示的方法操作指令步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作指令步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。所述方法在实际的处理过程中或者装置执行时,可按照实施例或者附图所示的方法顺序执行或者并行执行。

图2示出了本申请一实施例提供的对象推荐方法的流程示意图,该方法可应用于图1所示的客户端101和/或服务器102。

如图2所示,该方法包括以下步骤:

201,获取多个候选对象的关联对象,基于候选对象和关联对象之间的关联关系以及候选对象之间的关联关系,确定每一候选对象的表达向量,表达向量用于表征候选对象与关联对象之间的关联关系以及候选对象之间的关联关系。

其中,候选对象是服务器所提供的各种前端服务的载体,用于呈现服务器提供的各种推荐内容。例如,可以是向客户端的用户推荐的各种多媒体内容,例如新闻、视频、游戏等。候选对象的关联对象可以是对候选对象进行过历史操作的用户对象,例如,对候选对象进行查看、下载、评价等操作的用户,还可以是候选对象的分类标签,例如,可以是服务器利用分类网络对候选对象进行分类预测得到的分类标签,还可以是由预设的知识图谱网络确定的候选对象的分类标签。其中,知识图谱是指一种图状且具有关联关系的知识集合,图中的节点是实体对象,实体对象之间可以通过关联关系互联,例如,游戏对象与其对应的属性标签。本申请对候选对象的分类标签的来源不作具体限定。

一种可能的实现方式中,可根据候选对象之间的相似度,确定候选对象之间的关联关系。示例性的,可根据候选对象的特征表示向量,确定候选对象之间的相似度,基于候选对象之间的相似度确定候选对象之间的关联关系。其中,可以利用余弦相似度、欧式距离等方式判断候选对象的特征向量之间的相似度,然后将相似度达到预设相似度阈值的两个候选对象作为具有关联关系的候选对象。

一种可能的实现方式中,特征表示向量可通过分类网络获取。其中,分类网络可以是用于预测对象类型的神经网络模型,其输入为待预测对象(例如,游戏对象)的描述文本特征(例如,文字简介)、属性描述(例如,属性文本特征),输出为待预测对象的分类信息(例如,游戏类型和游戏画风等)。可选的,分类模型可以获得一个对象的预测类型和特征表示向量。以游戏为例,在分类模型的训练过程中,可基于游戏类型和游戏画风分别与相应的真实标签之间的损失对模型进行迭代训练,使得模型逐步学习到基于某一对象的分类能力,从而使得用于分类的多模态向量特征对对象的特征表达更准确。

一种可能的实现方式中,分类模型包括语义提取网络,将待预测游戏的文本特征和图像特征分别输入至语义提取网络进行语义特征提取,以便可以基于提取到的语义表达特征(即特征表示向量)进行类型预测。

具体地,如图3所示,针对不同的类型特征信息,可以采用不同的网络进行语义提取,获得不同数据类型的语义表达特征。其中,待预测游戏的数据类型可以是图像或文本。示例性的,在特征信息为图像特征信息时,可以由图像语义提取网络中的卷积网络对输入分类模型的图像进行卷积处理,以提取图像特征,语义提取网络还可基于图像特征进行语义提取,获得语义表达特征(即,图像特征向量)。或者,语义提取网络中的文本语义提取网络可以对输入模型的文本进行语义识别。例如,对游戏的文字简介或属性标签进行分词处理,并对分词结果进行识别,以得到语义表达特征(即,文本特征向量)。上述图像语义提取网络可以是BiT(Big Transfer)模型,文本语义提取网络BERT(bidirectional encoderrepresentation from transformers)模型。

一种可能的实现方式中,为了对语义表达特征进行分类结果的监督,还可进一步输入至映射层,如图3所示,映射层可以是MLP(Multi-Layer Perceptron,多层感知器),以在训练时对语义特征的分类结果进行监督,以提高语义表达特征的可靠性。

需要说明的是,采用不同的网络对不同数据类型的描述信息进行语义提取后,对不同数据类型的语义表达特征进行融合,例如,将一个游戏的描述信息包括文字描述信息、属性标签和游戏截图,将基于图像特征提取的语义表达特征与基于文本提取的语义表达特征进行拼接融合,得到游戏对象的特征表示向量。

一种可能的实现方式中,根据任意两个候选对象(即,游戏对象)的特征表示向量的欧式距离确定该两个候选对象之间是否具有关联关系。示例性的,对于任两个候选对象的特征表示向量,按照阈值进行分段采样,将满足相似准确率在80%以上的最大距离作为相似度阈值。也就是说,将欧式距离大于相似度阈值的两个候选对象确认为不具有关联关系,将欧式距离小于相似度阈值的任两个候选对象确认为具有关联关系。由此,本申请采用相较于余弦相似度,无需进行特征压缩,保留有更多原有标识信息的欧式距离进行相似度确认,能够进一步提高候选对象之间关联关系的可靠性。

一种可能的实现方式中,在获取到候选对象与关联对象之间的关联关系以及候选对象之间的关联关系之后,可以将基于关联关系关联起的多个对象看作具有“上下文”关系,表达向量可以通过对各对象之间的关联关系进行学习得到。例如,将候选对象及其关联对象按照预设的关联顺序输入至能够对上下文关系进行预测的模型进行训练,从而得到能够对对象及其关联关系进行表达的表达向量。

202,获取目标对象的历史操作,根据历史操作数据从多个候选对象中确定目标对象的第一推荐对象。

需要说明的是,第一推荐对象可以是目标对象历史操作过的对象,也可以是根据目标对象的历史操作确定的感兴趣标签确定出的对象。其中,历史操作数据可以包括:用户在历史时间段内的操作行为所对应的游戏信息,也即包括用户历史游戏行为(例如最近历史游戏行为)对应的游戏对象的游戏信息,用于反映用户的最近游戏行为。其中,历史操作数据可以包括用户当前查看的游戏、最近游戏过的游戏、最近收藏的游戏或最近下载的游戏等游戏对象的游戏信息。

203,根据第一推荐对象的表达向量与其余候选对象的表达向量之间的相似度,从其余候选对象中确定目标对象的第二推荐对象。

也就是说,在确定出第一推荐对象后,获取第一推荐对象在根据前述关联关系确定出的表达向量,然后利用候选对象的表达向量的相似度,从其余候选对象中确定目标对象的第二推荐对象。

一种可能的实现方式中,也可根据与第一推荐对象(即,游戏对象)的表达向量的欧式距离确定第二推荐对象。示例性的,对于任两个候选对象的表达向量,按照阈值进行分段采样,将满足相似准确率在80%以上的最大距离作为预设距离。也就是说,将与第一推荐对象的表达向量的欧式距离小于相似度阈值的候选对象确认为第二推荐对象。

一种可能的实现方式中,为了更好的满足游戏推广需求,还可以进一步根据推广消耗对第二推荐对象进行排序,以确定最终的推荐列表。

示例性的,可获取每个第二推荐对象对应的推荐消耗,然后将目标对象的第二推荐对象按照推荐消耗递减规则进行排序,得到目标推荐对象对应的推荐列表,然后按照展示规则的显示数量,向目标对象推荐推荐列表中TopN的第二推荐对象。

可以理解的是,推荐消耗可以是运营消耗,可以与候选对象的曝光量和单次曝光的成本费用相关。其中,推荐消耗可以与单次曝光的成本费用正相关,也与曝光量正相关。示例性的,推荐消耗是曝光量与单次曝光的成本费用的乘积,在曝光量需求相同时,单次曝光的成本费用较高的候选对象的推荐消耗则较高,在推荐列表中的位置靠前,具有较高的优先推荐可能性,在单次曝光的成本费用相同时,处于推荐协议末期的候选对象,曝光量需求降低,推荐消耗则较低,在推荐列表中的位置靠后,被推荐的可能性降低。

举例来说,如图4所示,针对任一用户,获取该用户的历史操作获取到第一推荐对象列表,以图4中用户为例,该用户在历史过程中查看、评论、下载过《开心拼图》、《宠宠大冒险》和《成语大挑战》等游戏,并将这些游戏作为该用户对应的第一推荐对象,并获取这些游戏对象的表达向量(第一推荐对象的表达向量)。然后,分别利用其余候选对象的表达向量计算与第一推荐对象之间的欧式距离,当其余候选对象的表达向量与任一第一推荐对象的表达向量之间的欧式距离小于预设距离时,确定该候选对象为第二推荐对象,遍历其余候选对象形成第二推荐列表。在本实施例中,第二推荐对象包括游戏《开心拼一拼》、《昆虫大冒险》和《成语中状元》等。然后,获取第二推荐列表中各游戏对象的推荐消耗,再将第二推荐对象列表中的多个第二推荐对象按照推荐消耗进行降序排列,并将TopN作为最终的推荐对象。在本实施例中,选取Top2进行推荐,推荐的推荐对象为《昆虫大冒险》和《成语中状元》。

一种可能的实现方式中,在获取到达到候选对象推荐的用户标识(目标对象)时,向用户发送第二推荐对象以向用户推荐第二推荐对象。示例性的,当服务器接收到客户端发送的、携带有对应用户标识的触发信息时,则确定该用户达到候选推荐的条件,通过解析用户的历史操作确定用户的第一推荐对象,然后根据第一推荐对象的表达向量与其余候选对象的表达向量的相似度,从其余候选对象中确定用户的第二推荐对象。

以游戏推荐为例,在用户打开应用商城或登录应用商城的用户账户时,产生携带有用户标识的触发信息并发送至服务器,服务器从接收到的触发信息中解析出用户标识,并根据用户标识获取该用户对应的第二推荐对象。

本申请实施例提出的对象推荐方法,通过基于候选对象和关联对象之间的关联关系和候选对象之间的关联关系,确定候选对象的表达向量,使得到的候选对象的表达向量内容更丰富,不仅使候选对象的表达向量中包含了关联对象的内容信息,还通过候选对象之间的关联关系,有效解决了候选对象的表达向量缺乏候选对象之间关联关系的问题。

在针对目标对象进行关联推荐时,首先根据目标对象的历史操作数据确定第一推荐对象(例如,选择目标对象高频操作的对象为第一操作对象),进一步还可以根据第一操作对象和其余候选对象的表达向量的相似度,确定目标对象的第二推荐对象。由于本申请实施例中候选对象的表达向量更为丰富,不仅仅包含候选对象和关联对象之间的关系,还包含了不同候选对象之间的关系,依赖候选对象的表达向量之间的相似度进行关联推荐,能够有效解决关联推荐参考的信息较为单一、推荐结果存在倾向性(例如,频繁推荐高频操作的对象),推荐结果准确度较低的问题,基于特征表达更充分的表达向量筛选出更符合实际相似性的推荐对象,提高个性化推送的精准度。

在本申请的另一实施例中,在确定了候选对象和关联关系以及候选对象之间的关联关系之后,可利用各对象之间的关联关系进行对各候选对象进行描述,以使缺乏用户使用信息的候选对象能够充分利用相似候选对象的关联信息,提高各候选对象的信息丰富程度。

示例性的,上述“基于候选对象和关联对象之间的关联关系以及候选对象之间的关联关系,确定每一候选对象的表达向量”的具体实现方式,可包括:基于候选对象和关联对象之间的关联关系以及候选对象之间的关联关系,构建异构信息网络,基于异构信息网络,确定多个对象组,基于多个对象组训练表达模型,将每一候选对象输入表达,获得每一候选对象的表达向量。

其中,异构信息网络(Heterogeneous Information Network,HIK),网络节点的类型大于1或者网络节点之间的链接关系大于1的网络图。在本申请实施例中,如图5所示,异构信息网络包括至少三种节点类型,用户、候选对象和候选对象的属性标签,关联关系至少包括用户和候选对象之间的关联关系、候选对象和候选对象之间的关联关系以及候选对象与属性标签之间的关联关系。对象组包括存在关联关系的候选对象和关联对象,以及存在关联关系的候选对象。

也就是说,异构信息网络中包括用户节点、游戏节点和标签节点,用户节点与游戏节点之间的连线、游戏节点与游戏节点之间的连线、游戏节点与标签节点之间的连线。用户节点表示一个用户,可以是用户的ID名称、设备ID或网络地址等,游戏节点表示一个游戏对象,可以是游戏名称、游戏ID或游戏封面等,标签节点表示一个属性特征,用户节点与游戏节点之间的连线表示用户在历史时间操作过游戏节点对应的游戏对象,游戏节点与游戏节点之间的连线表示游戏对象之间的相似度满足相似度要求,游戏节点与标签节点之间连线表示游戏对象具有该标签。

应当理解的是,对象组中通过对象序列中各对象的排列顺序,有效描述出各对象之间的关联关系,再通过对象组训练表达模型,能够通过表达向量有效表达出各候选对象和相似候选对象、关联对象之间的关联关系,即,使得候选对象的表达向量能够表达相似候选对象的操作用户和属性标签上的共性信息。从而使历史数据缺失的游戏对象,可以有效提高关联信息的表达效果。也就是说,对于历史数据确实的游戏对象,可以利用相似候选对象的关联对象进行关联信息补偿,提高游戏对象的信息丰富度,为后续的推荐对象选取,提供可靠数据支持。

一种可能的实现方式中,为了使得对象组表达的关联关系为对推荐对象有益的关联关系,或者满足对候选对象表达的需求,还可提前预设获取对象组的关联顺序,即,按照预设关联顺序从异构信息网络中获取对象组。

需要说明的是,由于异构信息网络中的关联关系是有限的,因此,用于从异构信息网络中确定对象组的关联顺序可以是对一段预设关联顺序的重复执行,该预设关联顺序可作为元路径(Meta Path)进行循环执行,直至对象组中的对象节点达到预设数量时结束。

示例性的,预设关联顺序依次为第一操作对象(用户)与第一候选对象之间的关联关系、第一候选对象与第二候选对象之间的关联关系、第二候选对象与第一属性标签之间的关联关系、第一属性标签与第三候选对象之间的关联关系以及第三候选对象与第二操作对象之间的关联关系。

也就是说,在获取对象组时,从异构信息网络中选取任一用户作为第一操作对象(即,对象组的初始对象节点),然后基于第一操作对象与候选对象之间的关联关系(例如查看、评论和下载等),选取下一跳的对象节点,从第一操作对象对应的至少一个候选对象中选取任一个对象节点作为对象组中的第二节点,此时对象组为[第一操作对象,第一候选对象],基于选取出的候选对象,从与该候选对象具有关联关系的相似候选对象中,选取任一候选对象作为对象组中的第三节点,此时对象组为[第一操作对象,第一候选对象,第二候选对象]。然后再获取作为第三节点的候选对象的属性标签,将该属性标签作为对象组的第四节点,此时对象组为[第一操作对象,第一候选对象,第二候选对象,第一属性标签]。获取该属性标签中包含的多个其他候选对象,从其他候选对象中选取任一作为对象组中的第五节点,此时对象组为[第一操作对象,第一候选对象,第二候选对象,第一属性标签,第三候选对象]。然后,基于作为第五节点的候选对象的历史操作信息,获取至少一个第二操作对象,并从至少一个第二操作对象中选取任一第二操作对象作为对象组中的第六节点,此时对象组为[第一操作对象,第一候选对象,第二候选对象,第一属性标签,第三候选对象,第二操作对象],至此完成一组元路径的随机游走。

为了获取足够量的样本信息,在完成一组元路径的随机游走之后,还可以继续将第二操作对象视作为第一操作对象(即,对象中组中的第一节点),按照预设关联顺序继续随机游走,以获取包含更多对象节点的对象组,例如[第一操作对象,第一候选对象,第二候选对象、第一属性标签、第三候选对象,第二操作对象,第四候选对象,第五候选对象,第二属性标签,第六候选对象,…],直至对象组中的对象节点的达到设置的最大值,结束随机游走,获得最终的对象组。

举例来说,以图5为例,异构信息网络中至少包括用户A、用户B、用户C和用户D,与用户A具有关联关系的候选对象为“游戏1“,“游戏1”对应的属性标签为“标签1”和“标签2”;与用户B具有关联关系的候选对象为“游戏1”和“游戏2”,“游戏2”对应的属性标签为“标签1”,与用户C具有关联关系的候选对象为“游戏3”,“游戏3”对应的属性标签为“标签3”和“标签4”;与用户D具有关联关系的候选对象为“游戏4”,“游戏4”对应的属性标签为“标签3”。“游戏2”和“游戏3”是通过表达向量确定相似,具有关联关系的候选对象。

在基于如图5所示的异构信息网络获取对象组时,假设将用户B作为第一操作对象,此时,基于作为预设关联关系中的第一个关系,即,第一操作对象与第一候选对象之间的关联关系,可将用户B操作过的“游戏2”作为第一候选对象,即,将“游戏2”作为对象组中的第二节点,得到对象组[用户B,游戏2];然后基于预设关联关系中的第二个关系,即,第一候选对象与第二候选对象之间的关联关系,可以将与“游戏2”具有相似关系的“游戏3”作为第二候选对象,即,对象组中的第三节点,得到对象组[用户B,游戏2,游戏3];基于预设关联关系中的第三个关系,即,第二候选对象与第一属性标签之间的关联关系,可以将“游戏3”的属性标签“标签3”作为第一属性标签,即,对象组中的第四节点,得到对象组[用户B,游戏2,游戏3,标签1];基于预设关联关系中的第四个关系,即,第一属性标签与第三候选对象之间的关联关系,可以将第一属性标签“标签1”对应另一游戏对象“游戏4”作为第三候选对象,即,对象组中的第五节点,得到对象组[用户B,游戏2,游戏3,标签1,游戏4];然后,基于预设关联顺序中的最后一个关系(第五个关系),即,第三候选对象与第二操作对象之间的关联关系,可以将对“游戏4”进行过操作的用户D作为第二操作对象,即,对象组中的第六节点,得到对象组[用户B,游戏2,游戏3,标签1,游戏4,用户D],然后再将作为第六节点的用户D,作为新一轮随机游走的起始节点(第一操作对象)进行随机游走,直至对象组中包含的节点数量达到预设数量,结束随机游走。

一种可能的实现方式中,在从异构信息网络中获取下一跳的对象节点时,还需要考虑各节点的采样概率。示例性的,根据预设的采样概率从候选下一跳节点中确定当前节点的下一跳节点。

也就是说,在预设关联顺序的指导下,当前节点的下一跳节点需要根据关联关系的属性信息确定。示例性的,根据可根据两个节点的关联紧密程度,例如距离等,还可根据下一跳节点的频率特性,例如关联的节点数量等。

一种可能的实现方式中,若当前节点为操作对象、候选下一跳节点为候选对象,则候选下一跳节点的采样概率与候选对象的操作对象的数量负相关。

也就是说,在根据操作对象与候选对象之间的关联关系选取下一跳节点时,先获取操作对象与候选对象之间的关联类型,即,操作关联,然后再获取与上一操作对象关联的每个候选对象关联的至少一个操作对象,统计每个候选对象关联的操作对象的数量,按照关联的操作对象数量的负相关关系确定每个候选对象在当前采样环节的概率。

应当理解的是,由于高频操作对象(即,关联有较多操作对象的候选对象)在基于不同操作对象的采样时,具有更高的采样几率,即,被采样的频率高于低频操作对象(即,关联有较少操作对象的候选对象)。因此,根据操作对象与候选对象之间的关联关系进行采样时,通过降低高频操作对象的采样概率,并提高低频操作对象的采样概率的方式平衡候选对象的采样概率。换言之,对于高频操作对象,由于其采样频率较高,则通过降低单次采样概率来降低整体的采样概率,对于低频操作对象,由于其采样频率较低,则通过提高单次采样概率来提高整体的采样概率。

示例性的,如图5所示,候选对象“游戏1”对应有两个操作对象“用户A”和“用户B”,候选对象“游戏2”对应有一个操作对象“用户B”。也就是说,在将“用户B”作为当前节点,并基于操作对象和候选对象之间的关联关系确定候选对象时,当前节点“用户B”对应的候选下一跳节点包括“游戏1”和“游戏2”,分别统计“游戏1”和“游戏2”对应的操作对象的数量,其中,“游戏1”对应有2个操作对象,“游戏2”对应有1个操作对象,因此,可以配置由“用户B”采样候选对象“游戏1”的概率为1/3,采样候选对象“游戏2”的概率为2/3。

一种可能的实现方式中,设置采样概率与被确定候选节点的频率负相关的设置方式还可应用于基于候选对象和属性标签之间的关联关系确定候选对象,以及基于属性标签和候选对象之间的关联关系确定属性标签的采样过程。

也就是说,在当前节点为候选对象、候选下一跳节点为属性标签时,则可先确定作为当前节点的候选对象对应的各属性标签,然后针对每个属性标签,获取属性标签对应的候选对象的数量,最后将每个属性标签的采样概率设置为与统计的数量负相关。

同理,在当前节点为属性标签、候选下一跳节点为候选对象时,则可先确定作为当前节点的属性标签包含的候选对象,然后针对每个候选对象,获取各候选对象对应的属性标签的数量,最后将每个候选对象的采样概率设置为与统计的数量负相关。

示例性的,如图5所示,候选对象“游戏3”对应的属性标签为“标签3”和“标签4”,候选对象“游戏4”对应的属性标签为“标签3”。在将“游戏3”作为当前节点,并基于候选对象和属性标签之间的关联关系确定属性标签时,当前节点“游戏3”对应的候选下一跳节点包括“标签3”和“标签4”,分别统计“标签3”和“标签4”对应的候选的数量,其中,“标签3”对应有2个操作对象,“标签4”对应有1个操作对象,因此,可以配置由“游戏3”采样候选对象“标签3”的概率为1/3,采样候选对象“标签4”的概率为2/3。

一种可能的实现方式中,若当前节点和候选下一跳节点为候选对象,则候选下一跳节点的采样概率与候选下一跳节点为与当前节点之间的相似度负相关。

也就是说,为了提高新类型游戏的采样率,避免采样对象集中在同类游戏中,尤其在构建对象组的策略中还包括候选对象和属性标签的情况下,在基于候选对象之间的关联关系确定采样概率时,设置采样概率与相似度负相关,即,提高相似度较低的候选对象的采样概率,并降低相似度较高的候选对象的概率。

一种可能的实现方式中,由于预设关联关系中包含相同类型节点之间的反复采样,例如在一个元路径中,作为第三跳关联关系的基于候选对象和属性标签之间的关联关系,和作为第四跳关联关系的基于属性标签和候选对象之间的关联关系,以及在相邻两个元路径中,前一元路径中作为最后一跳关联关系基于候选对象和操作对象之间的关联关系,和下一元路径中作为第一跳关联关系的基于操作操作对象和候选对象之间的关联关系。

因此,为了避免采样过程在这些采样过程中反复横跳,即,在向一跳采样时返回到上一跳节点,还可以增加例如采样阈值的设置,即,控制同一节点在同一对象组中进行多次重复采样。

应当理解的是,在本申请实施例提出的概率设置可以在构建异构信息网络时设置表达各关联关系的边的采样概率,也可根据采样时根据当前的节点更新情况重新计算实时的采样概率。

一种可能的实现方式中,为了确保每个候选对象都能够得到充分的训练,即,具有充足的训练素材,需要确保用于训练的对象组中每个候选对象的数量满足训练需求,例如,设置每个候选对象的最低数量,示例性的,每个候选对象的最低数量可以为10,即,用于训练的对象组中,每个候选对象的节点数量不少于10。

一种可能的实现方式中,表达模型可以为词向量模型。也就是说,在得到对象组之后,可以基于对象组对预设的词向量模型进行训练,得到训练后的词向量模型、用户节点的词向量(即用户节点的表达向量)、游戏节点的词向量(即游戏对象的表达向量)等。

其中,词向量模型可以为用于生成词向量的模型,也即将一个词表示为一个向量,例如,对词向量模型输入一个词,该词向量模型便可以输出该词的向量表达(即,表达向量),是自然语言处理中的重要技术。该词向量可以为基于神经网络的词向量模型,例如,该词向量模型可以包括Word2vec等。

其中,Word2vec可以将词映射到一个低维的向量空间中,通过计算两个词之间的距离来得到词之间的相似度。Word2vec模型类型可以有多种,比如,可以包括CBoW(Continuous Bag of Words,词袋)模型、skip-gram模型等。

示例性的,skip-gram模型用于对输入词进行上下位预测,如图6所示,skip-gram模型的输入是一个单词wi,它的输出是wi的上下文wi-c、……wi-2、wi-1、wi+1、wi+2、……wi+c;其中,上下文的窗口大小为c可以根据实际需求设定。举个例子,采用句子“I drivemy car to the store”进行训练后,如果把“car”作为输入数据,单词组{“I”“,drive”“,my”“,to”“,the”“,store”}就是输出。

一种可能的实现方式中,对多个对象组分别进行语料转化处理,获得多个训练样本后,将多个训练样本输入skip-gram模型进行训练,获得表达模型。

也就是说,skip-gram模型的训练过程是通过将对象组进行语料转换,即,获取对象组中某个对象节点周围的对象节点与当前对象节点组成正样本和负样本。然后,将该对象的正样本和负样本作为该节点对象的训练标签,对skip-gram模型进行训练。在skip-gram模型训练收敛后,再次将该对象输入至skip-模型时,模型输出则为预测到的该对象的上下位对象(即,具有关联关系的对象节点)。在模型训练过程中,可以根据损失函数对模型参数进行迭代训练,直至损失函数收敛,损失函数可以包括softmax函数。

其中,skip-gram模型所能输出的上下位预测的数量可以根据窗口大小(skip-window)决定。示例性的,skip-window=1,则代表输出的节点为当前节点的前一和后一的关联对象,例如,[第一操作对象,第一候选对象,第二候选对象]中当前节点为[第一候选对象],当前节点的前一节点为[第一操作对象],后一节点为[第二候选对象],以此类推,skip-window=2,则代表输出的节点为当前节点的前二和后二的关联对象,例如,[第一操作对象,第一候选对象,第二候选对象、第一属性标签、第三候选对象]中当前节点为[第二候选对象],前二节点为[第一操作对象,第一候选对象],后二节点为[第一属性标签、第三候选对象]。

还应当理解的是,skip-gram模型具有输入层、隐藏层和输出层,其中,输入层用于输入待预测的对象节点,隐藏层用于输出待预测的对象节点的表达向量,输出层用于输出待预测的对象节点的相邻对象节点。因此,在本申请实施例中,通过对象组对skip-gram模型进行训练,能够得到对象组中每个节点在隐藏层的表达向量,以便于在进行候选对象推荐时进行特征相似度比较。

也就是说,在利用异构信息网络获取到对象组后,针对对象组中的每个候选对象,利用窗口从对象组中获取候选对象对应的正样本和负样本,将候选对象及其对应的正样本和负样本作为一组训练样本输入至skip-gram模型以对模型进行训练,在损失模型的损失函数收敛时,确定skip-gram模型训练结束。然后,将各候选对象分别输入至输入层,并获取隐藏层输出的表达向量,得到候选对象的表达向量词典。在根据目标对象(用户)的历史操作获取到第一推荐对象之后,根据候选对象的表达向量词典,获取第一推荐对象的表达向量,并利用其余候选对象的表达向量计算于第一推荐对象的表达向量,以获取欧式距离小于预设距离的表达向量,并将该表达向量对应的候选对象作为第二候选对象。

其中,对候选对象的表达向量的训练过程可以定期根据获取到的用户历史操作进行训练更新,也可在每次推荐前更新异构关系网络以重新训练并进行推荐,本申请对此不做具体限定。

应当理解的是,本申请实施例的使用对象不仅仅是游戏对象,还可以是其他媒体内容,例如,歌曲对象、新闻对象等。当候选对象为歌曲对象时,属性标签可以为歌手、曲风等属性标签,当候选对象为新闻对象时,属性标签可以为新闻类型等属性标签。

综上所述,本申请实施例提出的对象推荐方法,通过基于候选对象和关联对象之间的关联关系和候选对象之间的关联关系,确定候选对象的表达向量,使得到的候选对象的表达向量内容更丰富,不仅使候选对象的表达向量中包含了关联对象的内容信息,还通过候选对象之间的关联关系,有效解决了候选对象的表达向量缺乏候选对象之间关联关系的问题。

在针对目标对象进行关联推荐时,首先根据目标对象的历史操作数据确定第一推荐对象(例如,选择目标对象高频操作的对象为第一操作对象),进一步还可以根据第一操作对象和其余候选对象的表达向量的相似度,确定目标对象的第二推荐对象。由于本申请实施例中候选对象的表达向量更为丰富,不仅仅包含候选对象和关联对象之间的关系,还包含了不同候选对象之间的关系,依赖候选对象的表达向量之间的相似度进行关联推荐,能够有效解决关联推荐参考的信息较为单一、推荐结果存在倾向性(例如,频繁推荐高频操作的对象),推荐结果准确度较低的问题,基于特征表达更充分的表达向量筛选出更符合实际相似性的推荐对象,提高个性化推送的精准度。

应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。

图7示出了本申请一实施例提供的对象推荐装置的方框示意图。

如图7所示,对象推荐装置10,包括:

第一获取模块11,用于获取多个候选对象的关联对象,基于所述候选对象和所述关联对象之间的关联关系以及所述候选对象之间的关联关系,确定每一所述候选对象的表达向量,所述表达向量用于表征所述候选对象与所述关联对象之间的关联关系以及所述候选对象之间的关联关系;

第二获取模块12,用于获取目标对象的历史操作数据,根据所述历史操作数据从所述多个候选对象中确定所述目标对象的第一推荐对象;

推荐模块13,用于根据所述第一推荐对象的表达向量与其余所述候选对象的表达向量之间的相似度,从其余所述候选对象中确定所述目标对象的第二推荐对象。

在一些实施例中,第一获取模块11,用于基于所述候选对象和所述关联对象之间的关联关系以及所述候选对象之间的关联关系,构建异构信息网络;

基于所述异构信息网络,确定多个对象组,所述对象组包括存在关联关系的所述候选对象和所述关联对象,以及存在关联关系的所述候选对象;

基于所述多个对象组训练表达模型,将每一所述候选对象输入所述表达模型,获得每一所述候选对象的表达向量。

在一些实施例中,第一获取模块11,用于针对所述异构关系网路中的当前节点,基于预设关联顺序确定所述当前节点的候选下一跳节点;

根据预设的采样概率从所述候选下一跳节点中确定所述当前节点的下一跳节点;

当节点数量达到所述预设关联顺序限定的预设数量时,得到所述对象组。

在一些实施例中,所述关联对象包括所述候选对象的操作对象、所述候选对象的属性标签,所述预设关联顺序依次为第一操作对象与第一候选对象之间的关联关系、所述第一候选对象与第二候选对象之间的关联关系、所述第二候选对象与第一属性标签之间的关联关系,所述第一属性标签与第三候选对象之间的关联关系以及所述第三候选对象与第二操作对象之间的关联关系。

在一些实施例中,若所述当前节点为操作对象、所述候选下一跳节点为所述候选对象,则所述候选下一跳节点的采样概率与所述候选对象对应的所述操作对象的数量负相关。

若所述当前节点和所述候选下一跳节点为所述候选对象,则所述候选下一跳节点的采样概率与所述候选下一跳节点为与所述当前节点之间的相似度负相关。

在一些实施例中,第一获取模块11,用于对所述多个对象组分别进行语料转化处理,获得多个训练样本;

将所述多个训练样本输入skip-gram模型进行训练,获得所述表达模型。

在一些实施例中,第一获取模块11,还用于:

根据所述候选对象的特征表示向量,确定所述候选对象之间的相似度;

基于所述候选对象之间的相似度确定候选对象之间的关联关系。

在一些实施例中,第一获取模块11,用于:

分别获取所述候选对象的文本特征和图像特征,所述文本特征包括描述文本特征和属性文本特征;

分别将所述描述文本特征和所述属性文本特征输入至文本语义提取网络,得到描述文本特征向量和属性文本特征向量;将所述图像特征输入至图像语义提取网络得到图像特征向量;

分别将所述描述文本特征向量、属性文本特征向量和所述图像特征向量输入至映射层后,进行拼接,得到所述候选对象对应的所述特征表示向量。

在一些实施例中,推荐模块13,用于分别获取所述第一推荐对象的表达向量与其余所述候选对象的表达向量之间的欧式距离;

将与所述第一推荐对象的表达向量之间的所述欧式距离小于预设距离的所述候选对象,确定为所述目标对象的第二推荐对象。

在一些实施例中,推荐模块13,还用于:

获取每个所述目标对象的第二推荐对象对应的推荐消耗;

将所述目标对象的第二推荐对象按照推荐消耗递减规则进行排序,并向所述目标对象推荐预设数量的所述第二推荐对象。

应当理解,装置10中记载的诸单元或模块与参考图2描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于装置10及其中包含的单元,在此不再赘述。装置10可以预先实现在电子设备的浏览器或其他安全应用中,也可以通过下载等方式而加载到电子设备的浏览器或其安全应用中。装置10中的相应单元可以与电子设备中的单元相互配合以实现本申请实施例的方案。

在上文详细描述中提及的若干模块或者单元,这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

本申请实施例提出的对象推荐装置,通过基于候选对象和关联对象之间的关联关系和候选对象之间的关联关系,确定候选对象的表达向量,使得到的候选对象的表达向量内容更丰富,不仅使候选对象的表达向量中包含了关联对象的内容信息,还通过候选对象之间的关联关系,有效解决了候选对象的表达向量缺乏候选对象之间关联关系的问题。

在针对目标对象进行关联推荐时,首先根据目标对象的历史操作数据确定第一推荐对象(例如,选择目标对象高频操作的对象为第一操作对象),进一步还可以根据第一操作对象和其余候选对象的表达向量的相似度,确定目标对象的第二推荐对象。由于本申请实施例中候选对象的表达向量更为丰富,不仅仅包含候选对象和关联对象之间的关系,还包含了不同候选对象之间的关系,依赖候选对象的表达向量之间的相似度进行关联推荐,能够有效解决关联推荐参考的信息较为单一、推荐结果存在倾向性(例如,频繁推荐高频操作的对象),推荐结果准确度较低的问题,基于特征表达更充分的表达向量筛选出更符合实际相似性的推荐对象,提高个性化推送的精准度。

下面参考图8,图8示出了适于用来实现本申请实施例的电子设备或服务器的计算机系统的结构示意图,

如图8所示,计算机系统包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM803中,还存储有系统的操作指令所需的各种程序和数据。CPU801、ROM802以及RAM803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。

以下部件连接至I/O接口805;包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。

特别地,根据本申请的实施例,上文参考流程图图2描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的系统中限定的上述功能。

需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以为的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作指令。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以不同于附图中所标注的顺序发生。例如,两个连接表示的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作指令的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一获取模块、第二获取模块和推荐模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,第一获取模块,还可以被描述为“获取多个候选对象的关联对象,基于所述候选对象和所述关联对象之间的关联关系以及所述候选对象之间的关联关系,确定每一所述候选对象的表达向量,所述表达向量用于表征所述候选对象与所述关联对象之间的关联关系以及所述候选对象之间的关联关系”。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中的。上述计算机可读存储介质存储有一个或多个程序,当上述程序被一个或者一个以上的处理器用来执行描述于本申请的对象推荐方法。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其他技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

技术分类

06120116513154