CN115129980A - 信息推荐方法、装置、设备和介质 - Google Patents
信息推荐方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN115129980A CN115129980A CN202210628181.7A CN202210628181A CN115129980A CN 115129980 A CN115129980 A CN 115129980A CN 202210628181 A CN202210628181 A CN 202210628181A CN 115129980 A CN115129980 A CN 115129980A
- Authority
- CN
- China
- Prior art keywords
- neighbor
- target
- real
- sampling
- storage block
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种信息推荐方法、装置、设备和介质,属于人工智能技术领域。所述方法包括:从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;至少一个实时邻居对象存储块,用于存储目标用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标用户对象的实时交互数据确定得到;对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;查找与目标标识对应的邻居对象属性信息,并根据邻居对象属性信息和目标用户对象的用户对象属性信息,生成用户对象融合特征;基于用户对象融合特征向目标用户对象进行信息推荐。采用本方法能够提升推荐准确率。
Description
技术领域
本申请涉及图神经网络技术,更涉及信息推荐领域,特别是涉及一种信息推荐方法、装置、设备和介质。
背景技术
在机器学习领域,神经网络是一种模仿生物神经网络的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。图神经网络是一种基于图结构的深度学习方法。图神经网络主要由两部分组成,即“图”和“神经网络”。其中,“图”是图论中的图数据结构,“神经网络”是深度学习神经网络结构。
随着人工智能技术的发展,图神经网络已经广泛应用于信息推荐场景中。传统技术中,通常会预先构建一个关系网络图,以及在后续推荐过程中都是基于该预先构建的关系网络图进行信息推荐,从而导致推荐准确率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升推荐准确率的信息推荐方法、装置、设备和介质。
第一方面,本申请提供了一种信息推荐方法,所述方法包括:
从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;所述至少一个实时邻居对象存储块,用于存储所述目标用户对象在实时关系网络图中的邻居对象的标识;所述实时关系网络图,是基于所述目标用户对象的实时交互数据确定得到;
对所述目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;
查找与所述目标标识对应的邻居对象属性信息,并根据所述邻居对象属性信息和所述目标用户对象的用户对象属性信息,生成用户对象融合特征;
基于所述用户对象融合特征向所述目标用户对象进行信息推荐。
第二方面,本申请提供了一种信息推荐装置,所述装置包括:
确定模块,用于从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;所述至少一个实时邻居对象存储块,用于存储所述目标用户对象在实时关系网络图中的邻居对象的标识;所述实时关系网络图,是基于所述目标用户对象的实时交互数据确定得到;
采样模块,用于对所述目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;
生成模块,用于查找与所述目标标识对应的邻居对象属性信息,并根据所述邻居对象属性信息和所述目标用户对象的用户对象属性信息,生成用户对象融合特征;
推荐模块,用于基于所述用户对象融合特征向所述目标用户对象进行信息推荐。
在一个实施例中,每个所述实时邻居对象存储块中还记录有块采样参照参数;所述确定模块还用于根据所述至少一个实时邻居对象存储块中记录的块采样参照参数,从所述至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
在一个实施例中,所述确定模块还用于从第一权重取值区间对应的数值中确定块采样随机参数;根据所述块采样参照参数和所述块采样随机参数之间的大小关系,从所述至少一个实时邻居对象存储块中,确定目标邻居对象存储块;其中,所述第一权重取值区间,是所述目标用户对象的综合采样权重对应的权重取值区间;所述综合采样权重,是各所述实时邻居对象存储块分别对应的块采样权重之和;所述块采样权重,是同一实时邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
在一个实施例中,所述确定模块还用于根据各所述实时邻居对象存储块分别对应的块采样权重,将所述目标用户对象的综合采样权重对应的第一权重取值区间,划分为各所述实时邻居对象存储块分别对应的块权重区间;针对每一个实时邻居对象存储块,根据在先块权重区间对应的实时邻居对象存储块的块采样权重和所述实时邻居对象存储块对应的块采样权重,确定所述实时邻居对象存储块对应的块采样参照参数,并将所述块采样参照参数存储至所述实时邻居对象存储块中;其中,所述在先块权重区间是所述第一权重取值区间中的、且在所述实时邻居对象存储块的块权重区间之前的块权重区间。
在一个实施例中,所述目标邻居对象存储块中还记录有所存储的邻居对象的标识对应的邻居采样参照参数;所述采样模块还用于根据所述目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对所述目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,所述采样模块还用于从第二权重取值区间对应的数值中确定邻居采样随机参数;根据所述邻居采样参照参数和所述邻居采样随机参数之间的大小关系,对所述目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;其中,所述第二权重取值区间,是所述目标邻居对象存储块的块采样权重对应的权重取值区间;所述块采样权重,是所述目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
在一个实施例中,所述采样模块还用于根据所述目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重,将所述目标邻居对象存储块的块采样权重对应的第二权重取值区间,划分为所述各邻居对象的标识分别对应的对象权重区间;针对所述各邻居对象的标识中的每一个邻居对象的标识,根据在先对象采样权重和所述邻居对象的标识对应的对象采样权重,确定所述邻居对象的标识对应的邻居采样参照参数,并将所述邻居采样参照参数与所述邻居对象的标识关联存储至所述目标邻居对象存储块中;其中,所述在先对象采样权重,是在先对象权重区间对应的邻居对象的对象采样权重;所述在先对象权重区间,是所述第二权重取值区间中的、且在所述邻居对象的标识对应的对象权重区间之前的对象权重区间。
在一个实施例中,所述邻居对象属性信息和所述目标标识是预先以键值对的形式存储在内存中;所述目标标识为键值对中的键,所述邻居对象属性信息为所述键值对中的值;所述生成模块还用于以所述目标标识为键,从内存中查找与所述目标标识对应的邻居对象属性信息。
在一个实施例中,所述邻居对象属性信息包括所述目标邻居对象在至少一个稀疏属性项下的稀疏属性信息;所述键值对中的值包括所述至少一个稀疏属性项下的稀疏属性信息;所述生成模块还用于以所述目标标识为键,从内存中查找与所述目标标识对应的所述至少一个稀疏属性项下的稀疏属性信息。
在一个实施例中,所述邻居对象属性信息包括所述目标邻居对象在稠密属性项下的稠密属性信息;所述键值对中的键还包括所述稠密属性项的稠密属性标识;所述键值对中的值包括所述稠密属性项下的稠密属性信息;所述生成模块还用于以所述目标标识和所述稠密属性标识为键,从内存中查找与所述目标标识和所述稠密属性标识对应的稠密属性信息。
在一个实施例中,所述用户对象融合特征是通过已训练的信息推荐模型生成得到;所述信息推荐模型包括依次相连的多个网络层;所述生成模块还用于根据所述邻居对象属性信息和所述用户对象属性信息,生成所述目标用户对象在所述信息推荐模型中第一层网络层的用户对象特征;将所述第一层网络层之后的每一层网络层分别作为当前网络层,根据所述目标用户对象在所述当前网络层的上一层网络层的用户对象特征、以及所述目标邻居对象在所述当前网络层的上一层网络层的邻居对象特征,生成所述目标用户对象在所述当前网络层的用户对象特征,直至得到所述目标用户对象在最后一层网络层的用户对象特征;将所述目标用户对象在所述最后一层网络层的用户对象特征作为所述目标用户对象的用户对象融合特征。
在一个实施例中,所述用户对象融合特征是通过已训练的信息推荐模型生成得到;所述装置还包括:
训练模块,用于根据样本用户对象的实时交互数据,确定与所述样本用户对象存在交互关系的样本交互对象;将所述样本用户对象和所述样本交互对象中的每一个分别作为样本目标对象,从所述样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对所述目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与所述训练邻居对象的标识对应的邻居对象属性信息,并根据所述训练邻居对象的标识对应的邻居对象属性信息和所述样本目标对象的目标对象属性信息,生成所述样本目标对象对应的对象融合特征;根据各所述样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
第三方面,本申请提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现本申请各方法实施例中的步骤。
第四方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现本申请各方法实施例中的步骤。
第五方面,本申请提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请各方法实施例中的步骤。
上述信息推荐方法、装置、设备、介质和计算机程序产品,通过目标用户对象在发生交互行为时所产生实时交互数据,可以确定得到实时关系网络图。由于目标用户对象在实时关系网络图中的邻居对象的标识,可以预先存储至目标用户对象对应的至少一个实时邻居对象存储块中,因此,在接收到针对目标用户对象的信息推荐请求的情况下,可以从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。通过对目标邻居对象存储块所存储的邻居对象的标识进行采样,可以得到至少一个目标邻居对象的目标标识。由于目标邻居对象存储块所存储的邻居对象的标识是基于目标用户对象的实时交互数据进行实时更新过的,因此,查找到的目标邻居对象的目标标识也是与目标用户对象的实时交互行为紧密相关的邻居对象的标识。进而通过查找与目标标识对应的邻居对象属性信息,根据邻居对象属性信息和目标用户对象的用户对象属性信息,可以生成表征目标用户对象最新的兴趣偏好的用户对象融合特征,并基于用户对象融合特征向目标用户对象进行信息推荐。相较于传统基于静态关系网络图进行信息推荐的方式,本申请基于实时关系网络图进行信息推荐的方法可以捕捉到目标用户对象最新的兴趣偏好,基于目标用户对象最新的兴趣偏好向目标用户对象进行信息推荐,可以提升推荐准确率。
附图说明
图1为一个实施例中信息推荐方法的应用环境图;
图2为一个实施例中信息推荐方法的流程示意图;
图3为一个实施例中实时关系网络图的示意图;
图4为一个实施例中基于存储块的拓扑存储结构示意图;
图5为一个实施例中索引存储结构示意图;
图6A为另一个实施例中基于存储块的拓扑存储结构示意图;
图6B为一个实施例中块采样参照参数的计算原理示意图;
图7A为又一个实施例中基于存储块的拓扑存储结构示意图;
图7B为一个实施例中邻居采样参照参数的计算原理示意图;
图8为一个实施例中稀疏属性项的存储结构示意图;
图9为一个实施例中稠密属性项的存储结构示意图;
图10为一个实施例中的信息推荐框架示意图;
图11为一个实施例中信息推荐的原理示意图;
图12为一个实施例中在线模型和离线模型的召回率对比示意图;
图13为一个实施例中图查询和实时推理的各项性能示意图;
图14为另一个实施例中信息推荐方法的流程示意图;
图15为一个实施例中信息推荐装置的示意图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的信息推荐方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端102以及服务器104可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
服务器104可从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。其中,至少一个实时邻居对象存储块,用于存储目标用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标用户对象的实时交互数据确定得到。服务器104可对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。服务器104可查找与目标标识对应的邻居对象属性信息,并根据邻居对象属性信息和目标用户对象的用户对象属性信息,生成用户对象融合特征。服务器104可基于用户对象融合特征向目标用户对象进行信息推荐。
可以理解,终端102可以向服务器104发送携带目标用户对象的标识的信息推荐请求,服务器104可接收信息推荐请求,并从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。还可以理解,服务器104可基于用户对象融合特征确定待推荐的目标信息对象,并将确定的目标信息对象推荐给目标用户对象对应的终端102。本实施例对此不做限定,可以理解,图1中的应用场景仅为示意说明,并不限定于此。
需要说明的是,本申请一些实施例中的信息推荐方法使用到了人工智能技术。比如,目标邻居对象存储块和目标邻居对象的目标标识属于使用人工智能技术确定得到,以及用户对象融合特征也属于使用人工智能技术预测得到的特征。
在一个实施例中,如图2所示,提供了一种信息推荐方法,该方法可应用于计算机设备,计算机设备可以是终端或服务器,由终端或服务器自身单独执行,也可以通过终端和服务器之间的交互来实现。本实施例以该方法应用于计算机设备为例进行说明,包括以下步骤:
步骤202,从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;至少一个实时邻居对象存储块,用于存储目标用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标用户对象的实时交互数据确定得到。
其中,目标用户对象是进行信息推荐的用户对象。实时邻居对象存储块,是用于存储目标用户对象在实时关系网络图中的邻居对象的标识的存储块。可以理解,目标用户对象的各个邻居对象的标识可分块存储,即目标用户对象的各个邻居对象的标识可分别存储于至少一个实时邻居对象存储块中,每个实时邻居对象存储块可存储一部分目标用户对象的邻居对象的标识。实时关系网络图,是基于目标用户对象的实时交互数据确定得到的关系网络图。在实时关系网络图中,具有关联关系的两个对象具有边相连。目标用户对象在实时关系网络图中的邻居对象,是指在实时关系网络图中与目标用户对象具有关联关系的对象,即与目标用户对象具有边相连的对象。实时交互数据,是目标用户对象在进行交互操作时所产生的实时数据。
具体地,目标用户对象在实时关系网络图中的邻居对象的标识,可以预先存储至目标用户对象对应的至少一个实时邻居对象存储块中。在接收到针对目标用户对象的信息推荐请求的情况下,计算机设备可从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
在一个实施例中,目标用户对象对应的至少一个实时邻居对象存储块可分别对应有块采样权重。计算机设备可根据各个实时邻居对象存储块分别对应的块采样权重,从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。其中,块采样权重,是对目标用户对象对应的至少一个实时邻居对象存储块进行采样的权重。可以理解,实时邻居对象存储块对应的块采样权重越大,其被采样到的概率就越大。
在一个实施例中,如图3所示,实时关系网络图为一个异构网络图,即网络图中的各个对象的类型可以不同。比如,对象1、对象3和对象7为用户对象,对象2、对象4和对象6为文章对象,对象5和对象8为视频对象。目标用户对象与对象1至对象7均有边相连,可以理解,对象1至对象7为目标用户对象的邻居对象。
在一个实施例中,如图4所示,实时关系网络图中可包括多个对象,具有关联关系的对象之间具有边相连。各个对象的相关信息可以键值对的形式进行存储,其中,对象的标识(即对象1、对象2,…,对象n)、键的类型、边的类型和对象对应的是谁邻居对象存储块的标识可作为键值对中的键。键值对中的值可包括头部和单元两个部分。头部中可包括该邻居对象存储块中邻居对象的总数、该邻居对象存储块的块采样权重和块采样参照参数。单元中可包括各个邻居对象(即邻居对象1,…,邻居对象m)、以及各个邻居对象分别对应的邻居采样参照参数。可以理解,各个对象可分别对应的至少一个实时邻居对象存储块。比如,对象1除了与实时邻居对象存储块1对应之外,对象1的邻居对象还可存储在其他实时邻居对象存储块中。可以理解,实时邻居对象存储块1负责存储对象1的一部分邻居对象的标识,对象1的其他邻居对象的标识可存储于其他实时邻居对象存储块中。
在一个实施例中,如图5所示,本申请提出的索引存储结构中,各个对象的相关信息可以键值对的形式进行存储。对象的标识、键的类型和对象类型作为键值对中的键,键值对中的值可包括头部和单元两个部分。针对每一个对象,头部中可包括该对象的邻居对象的总数和综合采样权重。单元中可包括该对象对应的各个实时邻居对象存储块(即实时邻居对象存储块1,…,实时邻居对象存储块n)、以及各个实时邻居对象存储块分别对应的块采样参照参数(即,块采样参照参数1,…,块采样参照参数n)。计算机设备可通过索引存储结构中各个实时邻居对象存储块分别对应的块采样参照参数,对图4中的相应实时邻居对象存储块进行查询,以采样得到目标邻居对象存储块。
步骤204,对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
其中,目标邻居对象,是从目标邻居对象存储块所存储的各个邻居对象中采样得到的邻居对象。
具体地,目标邻居对象存储块中可预先存储有目标用户对象的邻居对象的标识。计算机设备可对目标邻居对象存储块所存储的各个邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,目标用户对象的各个邻居对象的标识可分别对应有对象采样权重。计算机设备可根据各个邻居对象的标识分别对应的对象采样权重,对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。其中,对象采样权重,是对目标邻居对象存储块所存储的邻居对象的标识进行采样的权重。可以理解,邻居对象的标识对应的对象采样权重越大,其被采样到的概率就越大。
在一个实施例中,针对目标用户对象,计算机设备可进行多次采样,每次可采样一个目标邻居对象的目标标识。具体地,计算机设备可从目标用户对象对应的至少一个实时邻居对象存储块中,确定一个目标邻居对象存储块,并对该目标邻居对象存储块所存储的邻居对象的标识进行采样,得到一个目标邻居对象的目标标识。可以理解,针对目标用户对象,在经过多次采样之后,可获得多个目标邻居对象的目标标识。
步骤206,查找与目标标识对应的邻居对象属性信息,并根据邻居对象属性信息和目标用户对象的用户对象属性信息,生成用户对象融合特征。
其中,邻居对象属性信息,是目标邻居对象自身所固有的属性信息。用户对象属性信息,是目标用户对象自身所固有的属性信息。用户对象融合特征,是可表征目标用户对象的兴趣偏好的特征。
具体地,目标用户对象的用户标识与目标用户对象的用户对象属性信息可预先关联存储至用户对象属性库中。计算机设备可根据目标用户对象的用户标识,从用户对象属性库中获取目标用户对象的用户对象属性信息。进而,计算机设备可查找与目标标识对应的邻居对象属性信息,并根据目标邻居对象的邻居对象属性信息和目标用户对象的用户对象属性信息,生成目标用户对象的用户对象融合特征。
在一个实施例中,目标邻居对象的目标标识与目标邻居对象的邻居对象属性信息可预先关联存储至内存中。计算机设备可根据目标邻居对象的目标标识,从内存中查找与目标标识对应的邻居对象属性信息。
在一个实施例中,计算机设备可将目标邻居对象的邻居对象属性信息和目标用户对象的用户对象属性信息输入至已训练的信息推荐模型,以通过已训练的信息推荐模型基于目标邻居对象的邻居对象属性信息和目标用户对象的用户对象属性信息,生成目标用户对象的用户对象融合特征。
步骤208,基于用户对象融合特征向目标用户对象进行信息推荐。
具体地,计算机设备可获取各个待推荐对象分别对应的对象融合特征,并将各个待推荐对象各自对应的对象融合特征分别与用户对象融合特征进行相似度计算,得到相似度计算的结果。进而,计算机设备可根据相似度计算的结果向目标用户对象进行信息推荐。比如,计算机设备可将相似度排名前10的对象推荐给目标用户对象。
在一个实施例中,目标用户对象在实时关系网络图中的邻居对象,具体可包括好友用户、直播、视频、图像、文章和商品等中的至少一种。可以理解,向目标用户对象进行信息推荐,具体可以是向目标用户对象进行好友用户推荐、直播推荐、视频推荐、图像推荐、文章推荐和商品推荐等中的至少一种。
上述信息推荐方法中,通过目标用户对象在发生交互行为时所产生实时交互数据,可以确定得到实时关系网络图。由于目标用户对象在实时关系网络图中的邻居对象的标识,可以实时存储至目标用户对象对应的至少一个实时邻居对象存储块中,因此,在接收到针对目标用户对象的信息推荐请求的情况下,可以从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。通过对目标邻居对象存储块所存储的邻居对象的标识进行采样,可以得到至少一个目标邻居对象的目标标识。由于目标邻居对象存储块所存储的邻居对象的标识是基于目标用户对象的实时交互数据进行实时更新过的,因此,查找到的目标邻居对象的目标标识也是与目标用户对象的实时交互行为紧密相关的邻居对象的标识。进而通过查找与目标标识对应的邻居对象属性信息,根据邻居对象属性信息和目标用户对象的用户对象属性信息,可以生成表征目标用户对象最新的兴趣偏好的用户对象融合特征,并基于用户对象融合特征向目标用户对象进行信息推荐。相较于传统基于静态关系网络图进行信息推荐的方式,本申请基于实时关系网络图进行信息推荐的方法可以捕捉到目标用户对象最新的兴趣偏好,基于目标用户对象最新的兴趣偏好向目标用户对象进行信息推荐,可以提升推荐准确率。
此外,由于目标用户对象的邻居对象可分别存储于至少一个实时邻居对象存储块中,在目标用户对象的邻居对象的数量较多的情况下,以及在进行图更新时,可分别将相应实时邻居对象存储块中的邻居对象,即目标用户对象的一部分邻居对象加载至内存中,从而避免由于将目标用户对象的所有邻居对象加载至内存中所导致的内存爆炸,提升了存储的稳定性。同时,将目标用户对象的邻居对象分别存储于至少一个实时邻居对象存储块中,也可提升关系网络图的更新速度,降低信息推荐时延,从而提升信息推荐效率。
在一个实施例中,每个实时邻居对象存储块中还记录有块采样参照参数;从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块,包括:根据至少一个实时邻居对象存储块中记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
其中,块采样参照参数,是从至少一个实时邻居对象存储块中采样得到目标邻居对象存储块所依据的参数。
具体地,每个实时邻居对象存储块中还预先记录有块采样参照参数。计算机设备可从各实时邻居对象存储块中分别读取预先记录的块采样参照参数,并根据块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
在一个实施例中,计算机设备可获取一个用于采样目标邻居对象存储块的随机数,并根据各实时邻居对象存储块中记录的块采样参照参数、以及这个用于采样目标邻居对象存储块的随机数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
上述实施例中,由于每个实时邻居对象存储块中预先还记录有块采样参照参数,因此,在接收到针对目标用户对象的信息推荐请求的情况下,可以直接根据至少一个实时邻居对象存储块中记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块,提升目标邻居对象存储块的查找速度,从而可减少信息推荐的时间延迟,提升信息推荐效率。
在一个实施例中,根据至少一个实时邻居对象存储块中记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块,包括:从第一权重取值区间对应的数值中确定块采样随机参数;根据块采样参照参数和块采样随机参数之间的大小关系,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块;其中,第一权重取值区间,是目标用户对象的综合采样权重对应的权重取值区间;综合采样权重,是各实时邻居对象存储块分别对应的块采样权重之和;块采样权重,是同一实时邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
其中,块采样随机参数,是从第一权重取值区间对应的数值中随机确定得到的、且用于采样目标邻居对象存储块的随机数。
具体地,计算机设备可从第一权重取值区间对应的数值中随机确定一个块采样随机参数。可以理解,块采样随机参数位于第一权重取值区间的范围之内。计算机设备可将块采样参照参数和块采样随机参数进行大小比对,并根据大小比对结果,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
在一个实施例中,计算机设备可将实时关系网络图中连接目标用户对象和实时邻居对象的边的权重,作为对象采样权重。可以理解,连接目标用户对象和实时邻居对象的边的权重,是在构建实时关系网络图时预先设置得到的。
在一个实施例中,计算机设备可将大于块采样随机参数的块采样参照参数所对应的实时邻居对象存储块、且块标识最小的实时邻居对象存储块,确定为目标邻居对象存储块。
上述实施例中,根据块采样参照参数和块采样随机参数之间的大小关系,直接从至少一个实时邻居对象存储块中,直接确定目标邻居对象存储块,可以进一步提升目标邻居对象存储块的查找速度,从而可进一步减少信息推荐的时间延迟,进一步提升信息推荐效率。
在一个实施例中,信息推荐方法还包括:根据各实时邻居对象存储块分别对应的块采样权重,将目标用户对象的综合采样权重对应的第一权重取值区间,划分为各实时邻居对象存储块分别对应的块权重区间;针对每一个实时邻居对象存储块,根据在先块权重区间对应的实时邻居对象存储块的块采样权重和实时邻居对象存储块对应的块采样权重,确定实时邻居对象存储块对应的块采样参照参数,并将块采样参照参数存储至实时邻居对象存储块中;其中,在先块权重区间是第一权重取值区间中的、且在实时邻居对象存储块的块权重区间之前的块权重区间。
其中,块权重区间,是第一权重取值区间中的、且与各实时邻居对象存储块分别对应的各个子区间。同一实时邻居对象存储块所对应的块权重区间的大小与块采样权重的大小正相关。可以理解,针对同一实时邻居对象存储块,该实时邻居对象存储块的块采样权重越大,其所对应的块权重区间就越大,反之越小。
具体地,计算机设备可根据各实时邻居对象存储块分别对应的块采样权重,将目标用户对象的综合采样权重对应的第一权重取值区间,划分为各实时邻居对象存储块分别对应的块权重区间。可以理解,实时邻居对象存储块的数量与划分得到的块权重区间的数量一致,各实时邻居对象存储块分别与相应的块权重区间一一对应。针对每一个实时邻居对象存储块,计算机设备可根据各个在先块权重区间分别对应的实时邻居对象存储块的块采样权重和实时邻居对象存储块对应的块采样权重,确定实时邻居对象存储块对应的块采样参照参数,并将块采样参照参数存储至实时邻居对象存储块中。
在一个实施例中,计算机设备可将各个在先块权重区间分别对应的实时邻居对象存储块的块采样权重与实时邻居对象存储块对应的块采样权重之和,作为实时邻居对象存储块对应的块采样参照参数。
在一个实施例中,如图6A所示,对象s可对应两个实时邻居对象存储块,即实时邻居对象存储块1和实时邻居对象存储块2。可以理解,对象s的4个邻居对象的标识(即,邻居对象1至邻居对象4)可分别存储在实时邻居对象存储块1和实时邻居对象存储块2中。其中,实时邻居对象存储块1中可存储邻居对象1和邻居对象2这两个邻居对象的标识,实时邻居对象存储块1对应的块采样权重为0.2,实时邻居对象存储块1对应的块采样参照参数为0.2。实时邻居对象存储块2中可存储邻居对象3和邻居对象4这两个邻居对象的标识,实时邻居对象存储块2对应的块采样权重为0.3,实时邻居对象存储块2对应的块采样参照参数为0.5(即,实时邻居对象存储块1对应的块采样权重0.2和实时邻居对象存储块2对应的块采样权重0.3之和)。
在一个实施例中,如图6B所示,从第一权重取值区间(即,[0,0.5])对应的数值中确定块采样随机参数,比如,块采样随机参数为0.35。而实时邻居对象存储块1对应的块采样参照参数0.2(即,B(1))和实时邻居对象存储块2对应的块采样参照参数0.5(即,B(2))中,由于只有B(2)的值大于块采样随机参数为0.35,因此,确定实时邻居对象存储块2为目标邻居对象存储块。从图6B中可以知,实时邻居对象存储块1对应的块权重区间为[0,0.2],实时邻居对象存储块2对应的块权重区间为[0.2,0.5],块采样随机参数为0.35刚好落在实时邻居对象存储块2对应的块权重区间,即[0.2,0.5]区间中。可以理解,一个实时邻居对象存储块对应的块采样权重越大,块采样随机参数落在该实时邻居对象存储块对应的块权重区间的概率就越大。
上述实施例中,由于各实时邻居对象存储块分别对应的块权重区间,是根据各实时邻居对象存储块分别对应的块采样权重划分得到的,实时邻居对象存储块的块采样权重越大,其划分得到的块权重区间就越大,进而其被采样的概率也越大。针对每一个实时邻居对象存储块,根据在先块权重区间对应的实时邻居对象存储块的块采样权重和实时邻居对象存储块对应的块采样权重,确定实时邻居对象存储块对应的块采样参照参数,可以提升块采样参照参数的计算准确率,从而进一步提升信息推荐准确率。
在一个实施例中,目标邻居对象存储块中还记录有所存储的邻居对象的标识对应的邻居采样参照参数;对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,包括:根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
其中,邻居采样参照参数,是对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识所依据的参数。
具体地,目标邻居对象存储块中还预先记录有各个邻居对象的标识对应的邻居采样参照参数。计算机设备可从目标邻居对象存储块中读取预先记录的邻居采样参照参数,并根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,计算机设备可获取一个用于采样目标邻居对象的目标标识的随机数,并根据目标邻居对象存储块中记录的邻居采样参照参数、以及这个用于采样目标邻居对象的目标标识的随机数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,计算机设备可查询缓存中是否存在目标邻居对象的目标标识,若缓存中存在目标邻居对象的目标标识,则计算机设备可直接从缓存中获取目标邻居对象的目标标识。若缓存中不存在目标邻居对象的目标标识,则计算机设备可执行从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块,对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识的步骤。这样,可进一步提升目标邻居对象的目标标识的采样效率,从而进一步提升信息推荐的效率。
上述实施例中,由于目标邻居对象存储块中还预先记录有所存储的邻居对象的标识对应的邻居采样参照参数,因此,在接收到针对目标用户对象的信息推荐请求的情况下,可以直接根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,可以提升目标邻居对象的目标标识的采样速度,从而可减少信息推荐的时间延迟,提升信息推荐效率。
在一个实施例中,根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,包括:从第二权重取值区间对应的数值中确定邻居采样随机参数;根据邻居采样参照参数和邻居采样随机参数之间的大小关系,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;其中,第二权重取值区间,是目标邻居对象存储块的块采样权重对应的权重取值区间;块采样权重,是目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
其中,邻居采样随机参数,是从第二权重取值区间对应的数值中随机确定得到的、且用于采样目标邻居对象的目标标识的随机数。
具体地,计算机设备可从第二权重取值区间对应的数值中随机确定邻居采样随机参数。可以理解,邻居采样随机参数位于第二权重取值区间的范围之内。计算机设备可将邻居采样参照参数和邻居采样随机参数进行大小比对,并根据大小比对结果对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,计算机设备可获取一个用于采样目标邻居对象的目标标识的随机数,并根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数、以及这个用于采样目标邻居对象的目标标识的随机数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
上述实施例中,根据邻居采样参照参数和邻居采样随机参数之间的大小关系,直接对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,可以进一步提升目标邻居对象的目标标识的采样速度,从而可进一步减少信息推荐的时间延迟,进一步提升信息推荐效率。
在一个实施例中,方法还包括:根据目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重,将目标邻居对象存储块的块采样权重对应的第二权重取值区间,划分为各邻居对象的标识分别对应的对象权重区间;针对各邻居对象的标识中的每一个邻居对象的标识,根据在先对象采样权重和邻居对象的标识对应的对象采样权重,确定邻居对象的标识对应的邻居采样参照参数,并将邻居采样参照参数与邻居对象的标识关联存储至目标邻居对象存储块中;其中,在先对象采样权重,是在先对象权重区间对应的邻居对象的对象采样权重;在先对象权重区间,是第二权重取值区间中的、且在邻居对象的标识对应的对象权重区间之前的对象权重区间。
其中,对象权重区间,是第二权重取值区间中的、且与各邻居对象的标识分别对应的各个子区间。同一邻居对象的标识所对应的对象权重区间的大小与对象采样权重的大小正相关。可以理解,针对同一邻居对象的标识,该邻居对象的标识的对象采样权重越大,其所对应的对象权重区间就越大,反之越小。
具体地,计算机设备可根据目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重,将目标邻居对象存储块的块采样权重对应的第二权重取值区间,划分为各邻居对象的标识分别对应的对象权重区间。可以理解,邻居对象的标识的数量与划分得到的对象权重区间的数量一致,各邻居对象的标识分别与相应的对象权重区间一一对应。针对各邻居对象的标识中的每一个邻居对象的标识,计算机设备可根据在先对象采样权重和邻居对象的标识对应的对象采样权重,确定邻居对象的标识对应的邻居采样参照参数,并将邻居采样参照参数与邻居对象的标识关联存储至目标邻居对象存储块中。
在一个实施例中,计算机设备可将各个在先对象采样权重和邻居对象的标识对应的对象采样权重之和,作为邻居对象的标识对应的邻居采样参照参数。
在一个实施例中,如图7A所示,对象s的一部分邻居对象可存储于实时邻居对象存储块b中。比如,实时邻居对象存储块b中可存储对象s的4个邻居对象的标识(即,邻居对象1至邻居对象4分别对象的标识)。其中。邻居对象1的对象采样权重为0.2,邻居对象2的对象采样权重为0.1,邻居对象3的对象采样权重为0.13,邻居对象4的对象采样权重为0.2。实时邻居对象存储块b的块采样权重为0.63(即,邻居对象1至邻居对象4分别对应的对象采样权重之和)。
在一个实施例中,如图7B所示,从第二权重取值区间(即,[0,0.63])对应的数值中确定邻居采样随机参数,比如,邻居采样随机参数为0.53。而邻居对象1对应的邻居采样参照参数0.2(即,C(1))、邻居对象2对应的邻居采样参照参数0.3(即,C(2))、邻居对象3对应的邻居采样参照参数0.43(即,C(3))和邻居对象4对应的邻居采样参照参数0.63(即,C(4))中,由于只有C(4)的值大于邻居采样随机参数为0.53,因此,确定邻居对象4为目标邻居对象。从图7B中可以知,邻居对象1对应的对象权重区间为[0,0.2],邻居对象2对应的对象权重区间为[0.2,0.3]、邻居对象3对应的对象权重区间为[0.3,0.43]、以及邻居对象4对应的对象权重区间为[0.43,0.63],邻居采样随机参数为0.53刚好落在邻居对象4对应的对象权重区间,即[0.43,0.63]区间中。可以理解,一个邻居对象对应的对象采样权重越大,邻居采样随机参数落在该邻居对象对应的对象权重区间的概率就越大。需要说明的是,若邻居采样随机参数为0.4,则满足大于邻居采样随机参数的邻居采样参照参数所对应的邻居对象、且标识最小的邻居对象为邻居对象3。可以理解,邻居采样随机参数为0.4刚好落在邻居对象3对应的对象权重区间[0.3,0.43]中,计算机设备可将邻居对象3确定为目标邻居对象。
上述实施例中,由于各邻居对象的标识分别对应的对象权重区间,是根据各邻居对象的标识分别对应的对象采样权重划分得到的,邻居对象的标识分别对应的对象采样权重越大,其划分得到的对象权重区间就越大,进而其被采样的概率也越大。针对各邻居对象的标识中的每一个邻居对象的标识,根据在先对象采样权重和邻居对象的标识对应的对象采样权重,确定邻居对象的标识对应的邻居采样参照参数,可以提升邻居采样参照参数的计算准确率,从而进一步提升信息推荐准确率。
在一个实施例中,邻居对象属性信息和目标标识是预先以键值对的形式存储在内存中;目标标识为键值对中的键,邻居对象属性信息为键值对中的值;查找与目标标识对应的邻居对象属性信息,包括:以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息。
具体地,目标邻居对象的邻居对象属性信息和目标邻居对象的目标标识是预先以键值对的形式存储在内存中。其中,目标邻居对象的目标标识为键值对中的键,目标邻居对象的邻居对象属性信息为键值对中的值。在进行邻居对象属性信息查找的情况下,计算机设备可将目标邻居对象的目标标识作为键,从内存中查找与目标邻居对象的目标标识对应的值,即邻居对象属性信息。
在一个实施例中,计算机设备可查询缓存中是否存在与目标标识对应的邻居对象属性信息,若缓存中存在与目标标识对应的邻居对象属性信息,则计算机设备可直接从缓存中获取与目标标识对应的邻居对象属性信息。若缓存中不存在与目标标识对应的邻居对象属性信息,则计算机设备可执行从内存中查找与所述目标标识对应的邻居对象属性信息的步骤。这样,可进一步提升邻居对象属性信息的查询效率,从而进一步提升信息推荐的效率。
上述实施例中,由于邻居对象属性信息和目标标识已预先以键值对的形式存储在内存中,因此,在进行邻居对象属性信息查询的过程中,直接以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息,可以提升邻居对象属性信息的查询速度。
在一个实施例中,邻居对象属性信息包括目标邻居对象在至少一个稀疏属性项下的稀疏属性信息;键值对中的值包括至少一个稀疏属性项下的稀疏属性信息;以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息,包括:以目标标识为键,从内存中查找与目标标识对应的至少一个稀疏属性项下的稀疏属性信息。
其中,稀疏属性项是满足低维度条件的属性项。比如,某个属性项下的属性信息可通过一个多维向量表示,若该多维向量中只有一个位置是非零值,其他位置都是零,则该属性项为稀疏属性项。
具体地,目标邻居对象的邻居对象属性信息和目标邻居对象的目标标识是预先以键值对的形式存储在内存中。邻居对象属性信息包括目标邻居对象在至少一个稀疏属性项下的稀疏属性信息。其中,键值对中的键包括目标邻居对象的目标标识,键值对中的值包括至少一个稀疏属性项下的稀疏属性信息。计算机设备可将目标邻居对象的目标标识为键,从内存中查找与目标邻居对象的目标标识对应的至少一个稀疏属性项下的稀疏属性信息。
在一个实施例中,如图8所示,键值对中的键可包括目标邻居对象的目标标识、键的类型和对象类型。键值对中的值可包括各个稀疏属性项的稀疏属性标识(即,稀疏属性标识1、稀疏属性标识2、…、稀疏属性标识n)和相应稀疏属性信息中的非0值。
上述实施例中,通过将目标邻居对象在各个稀疏属性项下的稀疏属性信息作为同一个键值对中的值存储至内存中,相较于将不同稀疏属性项下的稀疏属性信息分别作为不同键值对中的值进行存储的方式,本申请的存储方式可以节省内存开销。
在一个实施例中,邻居对象属性信息包括目标邻居对象在稠密属性项下的稠密属性信息;键值对中的键还包括稠密属性项的稠密属性标识;键值对中的值包括稠密属性项下的稠密属性信息;以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息,包括:以目标标识和稠密属性标识为键,从内存中查找与目标标识和稠密属性标识对应的稠密属性信息。
其中,稠密属性项是满足高维度条件的属性项。比如,某个属性项下的属性信息可通过一个多维向量表示,若该多维向量中存在多个位置是非零值,则该属性项为稠密属性项。
具体地,目标邻居对象的邻居对象属性信息和目标邻居对象的目标标识是预先以键值对的形式存储在内存中。邻居对象属性信息包括目标邻居对象在稠密属性项下的稠密属性信息。其中,键值对中的键包括目标邻居对象的目标标识和稠密属性项的稠密属性标识,键值对中的值包括稠密属性项下的稠密属性信息。计算机设备可将目标邻居对象的目标标识和稠密属性项的稠密属性标识为键,从内存中查找与目标标识和稠密属性标识对应的稠密属性信息。
在一个实施例中,如图9所示,键值对中的键可包括目标邻居对象的目标标识、键的类型、对象类型和稠密属性项的稠密属性标识。键值对中的值可包括头部和单元两个部分,其中,头部中包括该稠密属性项下的稠密属性信息中非0值的数量、以及该稠密属性项的稠密属性类型。单元中包括该稠密属性项下的稠密属性信息中各个非0值。
上述实施例中,由于键值对中的键还包括稠密属性项的稠密属性标识,键值对中的值包括稠密属性项下的稠密属性信息,因此,在进行邻居对象属性信息查询的过程中,可以直接根据稠密属性标识快速查询到相应的稠密属性信息,提升了稠密属性信息查询效率。
在一个实施例中,用户对象融合特征是通过已训练的信息推荐模型生成得到;信息推荐模型包括依次相连的多个网络层;根据邻居对象属性信息和目标用户对象的用户对象属性信息,生成用户对象融合特征,包括:根据邻居对象属性信息和用户对象属性信息,生成目标用户对象在信息推荐模型中第一层网络层的用户对象特征;将第一层网络层之后的每一层网络层分别作为当前网络层,根据目标用户对象在当前网络层的上一层网络层的用户对象特征、以及目标邻居对象在当前网络层的上一层网络层的邻居对象特征,生成目标用户对象在当前网络层的用户对象特征,直至得到目标用户对象在最后一层网络层的用户对象特征;将目标用户对象在最后一层网络层的用户对象特征作为目标用户对象的用户对象融合特征。
具体地,计算机设备可根据邻居对象属性信息和用户对象属性信息,生成目标用户对象在信息推荐模型中第一层网络层的用户对象特征。可以理解,计算机设备可基于邻居对象属性信息和用户对象属性信息进行初始化,得到目标用户对象在信息推荐模型中第一层网络层的用户对象特征。计算机设备可将第一层网络层之后的每一层网络层分别作为当前网络层,并获取目标用户对象在当前网络层的上一层网络层的用户对象特征、以及获取目标邻居对象在当前网络层的上一层网络层的邻居对象特征。计算机设备可根据目标用户对象在当前网络层的上一层网络层的用户对象特征、以及目标邻居对象在当前网络层的上一层网络层的邻居对象特征,生成目标用户对象在当前网络层的用户对象特征,直至得到目标用户对象在最后一层网络层的用户对象特征。计算机设备可将目标用户对象在最后一层网络层的用户对象特征作为目标用户对象的用户对象融合特征。
在一个实施例中,针对每一个目标邻居对象,计算机设备可根据该目标邻居对象在当前网络层的上一层网络层的邻居对象特征,确定该目标邻居对象在当前网络层的上一层网络层传递至目标用户对象的传递特征。进而,计算机设备可将各个目标邻居对象在当前网络层的上一层网络层的传递特征进行聚合,得到聚合特征。计算机设备可根据聚合特征和目标用户对象在当前网络层的上一层网络层的用户对象特征,生成目标用户对象在当前网络层的用户对象特征,直至得到目标用户对象在最后一层网络层的用户对象特征。
在一个实施例中,给定一个实时关系网络图G(V,E),其中,V是对象的集合,E是连接对象的边的集合。针对任一个对象u,可通过以下公式计算对象u在第l层网络层的对象特征:
其中,Nu是对象u的目标邻居对象的集合,是对象u在第(l-1)层网络层的对象特征,是目标邻居对象i在第(l-1)层网络层的对象特征。f(·)函数可用于计算对象u的每一个目标邻居对象的传递特征,函数可用于聚合对象u所有目标邻居对象的传递特征,得到聚合特征,g(·)函数可用于通过对象u在第(l-1)层网络层的对象特征和对象u的所有目标邻居对象的对象特征,即聚合特征,更新对象u在第l层网络层的对象特征
在一个实施例中,对象u为目标用户对象,Nu是目标用户对象u的目标邻居对象的集合,是目标用户对象u在第(l-1)层网络层的用户对象特征,是目标邻居对象i在第(l-1)层网络层的邻居对象特征,是目标用户对象在当前网络层,即l层网络层的用户对象特征。
上述实施例中,通过信息推荐模型中的多个网络层,不断迭代更新目标用户对象的用户对象特征,可以提升最终得到的目标用户对象的用户对象融合特征的准确率,从而进一步提升信息推荐准确率。
在一个实施例中,用户对象融合特征是通过已训练的信息推荐模型生成得到;信息推荐方法还包括模型训练步骤;模型训练步骤包括:根据样本用户对象的实时交互数据,确定与样本用户对象存在交互关系的样本交互对象;将样本用户对象和样本交互对象中的每一个分别作为样本目标对象,从样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与训练邻居对象的标识对应的邻居对象属性信息,并根据训练邻居对象的标识对应的邻居对象属性信息和样本目标对象的目标对象属性信息,生成样本目标对象对应的对象融合特征;根据各样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
其中,样本用户对象,是用于对模型进行实时训练的用户对象。样本交互对象,是与样本用户对象存在交互关系的、且用于对模型进行实时训练的对象。训练邻居对象存储块,是训练模型过程中样本目标对象对应的、且用于存储样本目标对象在训练实时关系网络图中的邻居对象的标识的存储块。训练实时关系网络图,是基于样本用户对象的实时交互数据确定得到。目标训练邻居对象存储块,是训练模型过程中,从至少一个训练邻居对象存储块中采样得到的训练邻居对象存储块。训练邻居对象的标识,是训练模型过程中,从目标训练邻居对象存储块所存储的邻居对象的标识中采样得到的标识。
具体地,计算机设备可获取样本用户对象的实时交互数据,并根据样本用户对象的实时交互数据,确定与样本用户对象存在交互关系的样本交互对象。计算机设备可将样本用户对象和样本交互对象中的每一个分别作为样本目标对象,并从样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块。计算机设备可对目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识。由于样本目标对象的标识已预先与样本目标对象的目标对象属性信息绑定存储于对象属性库中,因此,计算机设备可根据样本目标对象的标识,从对象属性库中获取样本目标对象的目标对象属性信息。计算机设备可查找与训练邻居对象的标识对应的邻居对象属性信息,并可根据训练邻居对象的标识对应的邻居对象属性信息和样本目标对象的目标对象属性信息,生成样本目标对象对应的对象融合特征。计算机设备可根据各样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
上述实施例中,通过样本用户对象的实时交互数据、以及基于实时交互数据更新得到的训练邻居对象存储块,对模型进行实时训练,可以使得模型学习到样本用户对象最新的兴趣偏好特征,进而通过实时训练得到的信息推荐模型,可以捕捉到进行信息推荐的用户对象的实时兴趣,进一步提升信息推荐准确率。
在一个实施例中,如图10所示,本申请的信息推荐架构可包括图存储层、算子层和图神经网络算法层。其中,图存储层包括基于块的拓扑存储(即,图4中涉及的拓扑存储结构)、独立的属性存储(即,图8和图9中涉及的针对对象属性的存储结构)、快速查询的索引结构(即,图5中涉及的索引结构)和缓存机制。算子层是基于通用张流量设计得到,比如,算子层中可包括采样算子、聚合算子和更新算子。其中,采样算子可用于采样得到目标邻居对象的目标标识。聚合算子和更新算子可用于生成目标用户对象的用户对象融合特征。图神经网络算法层可包括多种图神经网络算法。计算机设备可基于信息推荐架构实现本身的信息推荐方法。
在一个实施例中,如图11所示,在针对模型的实时训练阶段,计算机设备可基于样本用户对象的交互行为产生实时交互数据,并将实时交互数据记录与日志中。计算机设备可获取样本用户对象在历史交互过程中产生的离线交互数据,并基于实时交互数据和离线交互数据更新关系网络图,得到实时关系网络图。与此同时,计算机设备可根据实时交互数据确定与样本用户对象存在交互关系的样本交互对象,并将样本用户对象和样本交互对象中的每一个分别作为样本目标对象,基于样本目标对象的属性信息(即,样本用户对象的属性信息和样本交互对象的属性信息),通过函数调用自定义的张流量算子,以对实时关系网络图进行图查询,并基于查询结果对模型进行训练,得到已训练的信息推荐模型。在针对模型的实时推理阶段,在获取到用户请求的情况下,计算机设备可根据请求的目标用户对象的标识查找相应的用户对象属性信息,并将处理获取得到的用户对象属性信息输入至已训练的信息推荐模型,以通过信息推荐模型调用自定义的张流量算子,以对实时关系网络图进行图查询,并基于查询结果进行模型预测,得到目标用户对象的用户对象融合特征。计算机设备可基于用户对象融合特征向目标用户对象进行信息推荐。
如图12所示,采用本申请基于在线信息推荐模型实现的信息推荐方法进行信息推荐,其召回率高于采用传统的基于离线模型的信息推荐方法进行信息推荐的召回率。这表明采用本申请基于在线信息推荐模型实现的信息推荐进行信息推荐,可提升信息推荐准确率。
此外,如图13所示,采用本申请基于在线信息推荐模型实现的信息推荐方法进行信息推荐,其图查询的平均时延、图查询的时延中位数、实时推理的平均时延,均低于采用传统的基于离线模型的信息推荐方法进行信息推荐对应的时延。同时,采用本申请基于在线信息推荐模型实现的信息推荐方法进行信息推荐,其每秒的吞吐量,高于用传统的基于离线模型的信息推荐方法进行信息推荐对应的每秒的吞吐量。这表明采用本申请基于在线信息推荐模型实现的信息推荐进行信息推荐,可减少信息推荐的时延,从而提升信息推荐的效率。
如图14所示,在一个实施例中,提供了一种信息推荐方法,该方法可应用于计算机设备,计算机设备可以是终端或服务器,由终端或服务器自身单独执行,也可以通过终端和服务器之间的交互来实现。该方法具体包括以下步骤:
步骤1402,根据样本用户对象的实时交互数据,确定与样本用户对象存在交互关系的样本交互对象。
步骤1404,将样本用户对象和样本交互对象中的每一个分别作为样本目标对象,从样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与训练邻居对象的标识对应的邻居对象属性信息,并根据训练邻居对象的标识对应的邻居对象属性信息和样本目标对象的目标对象属性信息,生成样本目标对象对应的对象融合特征。
步骤1406,根据各样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
步骤1408,根据目标用户对象对应的至少一个实时邻居对象存储块各自记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块;至少一个实时邻居对象存储块,用于存储目标用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标用户对象的实时交互数据确定得到。
步骤1410,根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;邻居对象属性信息和目标标识是预先以键值对的形式存储在内存中;目标标识为键值对中的键,邻居对象属性信息为键值对中的值。
步骤1412,以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息。
在一个实施例中,邻居对象属性信息包括目标邻居对象在至少一个稀疏属性项下的稀疏属性信息;键值对中的值包括至少一个稀疏属性项下的稀疏属性信息;以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息,包括:以目标标识为键,从内存中查找与目标标识对应的至少一个稀疏属性项下的稀疏属性信息。
在一个实施例中,邻居对象属性信息包括目标邻居对象在稠密属性项下的稠密属性信息;键值对中的键还包括稠密属性项的稠密属性标识;键值对中的值包括稠密属性项下的稠密属性信息;以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息,包括:以目标标识和稠密属性标识为键,从内存中查找与目标标识和稠密属性标识对应的稠密属性信息。
步骤1414,根据邻居对象属性信息和用户对象属性信息,生成目标用户对象在信息推荐模型中第一层网络层的用户对象特征。
步骤1416,将第一层网络层之后的每一层网络层分别作为当前网络层,根据目标用户对象在当前网络层的上一层网络层的用户对象特征、以及目标邻居对象在当前网络层的上一层网络层的邻居对象特征,生成目标用户对象在当前网络层的用户对象特征,直至得到目标用户对象在最后一层网络层的用户对象特征。
步骤1418,将目标用户对象在最后一层网络层的用户对象特征作为目标用户对象的用户对象融合特征。
步骤1420,基于用户对象融合特征向目标用户对象进行信息推荐。
本申请还提供一种应用场景,该应用场景应用上述的信息推荐方法。具体地,该信息推荐方法可应用于直播推荐的场景。计算机设备可根据样本直播观看用户对象的实时交互数据,确定与样本直播观看用户对象存在交互关系的样本直播对象。将样本直播观看用户对象和样本直播对象中的每一个分别作为样本目标对象,从样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与训练邻居对象的标识对应的邻居对象属性信息,并根据训练邻居对象的标识对应的邻居对象属性信息和样本目标对象的目标对象属性信息,生成样本目标对象对应的对象融合特征。根据各样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的直播推荐模型。
计算机设备可根据目标直播观看用户对象对应的至少一个实时邻居对象存储块各自记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块;至少一个实时邻居对象存储块,用于存储目标直播观看用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标直播观看用户对象的实时交互数据确定得到。根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;邻居对象属性信息和目标标识是预先以键值对的形式存储在内存中;目标标识为键值对中的键,邻居对象属性信息为键值对中的值。以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息。
计算机设备可根据邻居对象属性信息和用户对象属性信息,生成目标直播观看用户对象在直播推荐模型中第一层网络层的用户对象特征。将第一层网络层之后的每一层网络层分别作为当前网络层,根据目标直播观看用户对象在当前网络层的上一层网络层的用户对象特征、以及目标邻居对象在当前网络层的上一层网络层的邻居对象特征,生成目标直播观看用户对象在当前网络层的用户对象特征,直至得到目标直播观看用户对象在最后一层网络层的用户对象特征。将目标直播观看用户对象在最后一层网络层的用户对象特征作为目标直播观看用户对象的用户对象融合特征。基于用户对象融合特征向目标直播观看用户对象进行直播推荐。
本申请还另外提供一种应用场景,该应用场景应用上述的信息推荐方法。具体地,该信息推荐方法可应用于文章推荐、商品推荐、视频推荐和图像推荐等场景。比如,在文章推荐场景中,计算机设备可基于目标阅读用户对象的实时交互数据确定得到实时关系网络图,由于目标阅读用户对象在实时关系网络图中的邻居对象的标识可以实时存储至目标阅读用户对象对应的至少一个实时邻居对象存储块中,因此,在接收到针对目标阅读用户对象的文章推荐请求的情况下,计算机设备可从目标阅读用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块,并从目标邻居对象存储块采样得到目标邻居对象的目标标识,以确定可表征目标阅读用户对象最新兴趣偏好的用户对象融合特征,并基于用户对象融合特征向目标阅读用户对象推荐相应的文章,可以提升文章推荐准确率。
应该理解的是,虽然上述各实施例的流程图中的各步骤按照顺序依次显示,但是这些步骤并不是必然按照顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图15所示,提供了一种信息推荐装置1500,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:
确定模块1502,用于从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;至少一个实时邻居对象存储块,用于存储目标用户对象在实时关系网络图中的邻居对象的标识;实时关系网络图,是基于目标用户对象的实时交互数据确定得到。
采样模块1504,用于对目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
生成模块1506,用于查找与目标标识对应的邻居对象属性信息,并根据邻居对象属性信息和目标用户对象的用户对象属性信息,生成用户对象融合特征。
推荐模块1508,用于基于用户对象融合特征向目标用户对象进行信息推荐。
在一个实施例中,每个实时邻居对象存储块中还记录有块采样参照参数;确定模块1502还用于根据至少一个实时邻居对象存储块中记录的块采样参照参数,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
在一个实施例中,确定模块1502还用于从第一权重取值区间对应的数值中确定块采样随机参数;根据块采样参照参数和块采样随机参数之间的大小关系,从至少一个实时邻居对象存储块中,确定目标邻居对象存储块;其中,第一权重取值区间,是目标用户对象的综合采样权重对应的权重取值区间;综合采样权重,是各实时邻居对象存储块分别对应的块采样权重之和;块采样权重,是同一实时邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
在一个实施例中,确定模块1502还用于根据各实时邻居对象存储块分别对应的块采样权重,将目标用户对象的综合采样权重对应的第一权重取值区间,划分为各实时邻居对象存储块分别对应的块权重区间;针对每一个实时邻居对象存储块,根据在先块权重区间对应的实时邻居对象存储块的块采样权重和实时邻居对象存储块对应的块采样权重,确定实时邻居对象存储块对应的块采样参照参数,并将块采样参照参数存储至实时邻居对象存储块中;其中,在先块权重区间是第一权重取值区间中的、且在实时邻居对象存储块的块权重区间之前的块权重区间。
在一个实施例中,目标邻居对象存储块中还记录有所存储的邻居对象的标识对应的邻居采样参照参数;采样模块1504还用于根据目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
在一个实施例中,采样模块1504还用于从第二权重取值区间对应的数值中确定邻居采样随机参数;根据邻居采样参照参数和邻居采样随机参数之间的大小关系,对目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;其中,第二权重取值区间,是目标邻居对象存储块的块采样权重对应的权重取值区间;块采样权重,是目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
在一个实施例中,采样模块1504还用于根据目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重,将目标邻居对象存储块的块采样权重对应的第二权重取值区间,划分为各邻居对象的标识分别对应的对象权重区间;针对各邻居对象的标识中的每一个邻居对象的标识,根据在先对象采样权重和邻居对象的标识对应的对象采样权重,确定邻居对象的标识对应的邻居采样参照参数,并将邻居采样参照参数与邻居对象的标识关联存储至目标邻居对象存储块中;其中,在先对象采样权重,是在先对象权重区间对应的邻居对象的对象采样权重;在先对象权重区间,是第二权重取值区间中的、且在邻居对象的标识对应的对象权重区间之前的对象权重区间。
在一个实施例中,邻居对象属性信息和目标标识是预先以键值对的形式存储在内存中;目标标识为键值对中的键,邻居对象属性信息为键值对中的值;生成模块1506还用于以目标标识为键,从内存中查找与目标标识对应的邻居对象属性信息。
在一个实施例中,邻居对象属性信息包括目标邻居对象在至少一个稀疏属性项下的稀疏属性信息;键值对中的值包括至少一个稀疏属性项下的稀疏属性信息;生成模块1506还用于以目标标识为键,从内存中查找与目标标识对应的至少一个稀疏属性项下的稀疏属性信息。
在一个实施例中,邻居对象属性信息包括目标邻居对象在稠密属性项下的稠密属性信息;键值对中的键还包括稠密属性项的稠密属性标识;键值对中的值包括稠密属性项下的稠密属性信息;生成模块1506还用于以目标标识和稠密属性标识为键,从内存中查找与目标标识和稠密属性标识对应的稠密属性信息。
在一个实施例中,用户对象融合特征是通过已训练的信息推荐模型生成得到;信息推荐模型包括依次相连的多个网络层;生成模块1506还用于根据邻居对象属性信息和用户对象属性信息,生成目标用户对象在信息推荐模型中第一层网络层的用户对象特征;将第一层网络层之后的每一层网络层分别作为当前网络层,根据目标用户对象在当前网络层的上一层网络层的用户对象特征、以及目标邻居对象在当前网络层的上一层网络层的邻居对象特征,生成目标用户对象在当前网络层的用户对象特征,直至得到目标用户对象在最后一层网络层的用户对象特征;将目标用户对象在最后一层网络层的用户对象特征作为目标用户对象的用户对象融合特征。
在一个实施例中,用户对象融合特征是通过已训练的信息推荐模型生成得到;装置还包括:
训练模块,用于根据样本用户对象的实时交互数据,确定与样本用户对象存在交互关系的样本交互对象;将样本用户对象和样本交互对象中的每一个分别作为样本目标对象,从样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与训练邻居对象的标识对应的邻居对象属性信息,并根据训练邻居对象的标识对应的邻居对象属性信息和样本目标对象的目标对象属性信息,生成样本目标对象对应的对象融合特征;根据各样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
上述信息推荐装置,通过目标用户对象在发生交互行为时所产生实时交互数据,可以确定得到实时关系网络图。由于目标用户对象在实时关系网络图中的邻居对象的标识,可以实时存储至目标用户对象对应的至少一个实时邻居对象存储块中,因此,在接收到针对目标用户对象的信息推荐请求的情况下,可以从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块。通过对目标邻居对象存储块所存储的邻居对象的标识进行采样,可以得到至少一个目标邻居对象的目标标识。由于目标邻居对象存储块所存储的邻居对象的标识是基于目标用户对象的实时交互数据进行实时更新过的,因此,查找到的目标邻居对象的目标标识也是与目标用户对象的实时交互行为紧密相关的邻居对象的标识。进而通过查找与目标标识对应的邻居对象属性信息,根据邻居对象属性信息和目标用户对象的用户对象属性信息,可以生成表征目标用户对象最新的兴趣偏好的用户对象融合特征,并基于用户对象融合特征向目标用户对象进行信息推荐。相较于传统基于静态关系网络图进行信息推荐的方式,本申请基于实时关系网络图进行信息推荐的方法可以捕捉到目标用户对象最新的兴趣偏好,基于目标用户对象最新的兴趣偏好向目标用户对象进行信息推荐,可以提升推荐准确率。
上述信息推荐装置中的各模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图16所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种信息推荐方法。
本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (16)
1.一种信息推荐方法,其特征在于,所述方法包括:
从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;所述至少一个实时邻居对象存储块,用于存储所述目标用户对象在实时关系网络图中的邻居对象的标识;所述实时关系网络图,是基于所述目标用户对象的实时交互数据确定得到;
对所述目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;
查找与所述目标标识对应的邻居对象属性信息,并根据所述邻居对象属性信息和所述目标用户对象的用户对象属性信息,生成用户对象融合特征;
基于所述用户对象融合特征向所述目标用户对象进行信息推荐。
2.根据权利要求1所述的方法,其特征在于,每个所述实时邻居对象存储块中还记录有块采样参照参数;
所述从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块,包括:
根据所述至少一个实时邻居对象存储块中记录的块采样参照参数,从所述至少一个实时邻居对象存储块中,确定目标邻居对象存储块。
3.根据权利要求2所述的方法,其特征在于,所述根据所述至少一个实时邻居对象存储块中记录的块采样参照参数,从所述至少一个实时邻居对象存储块中,确定目标邻居对象存储块,包括:
从第一权重取值区间对应的数值中确定块采样随机参数;
根据所述块采样参照参数和所述块采样随机参数之间的大小关系,从所述至少一个实时邻居对象存储块中,确定目标邻居对象存储块;
其中,所述第一权重取值区间,是所述目标用户对象的综合采样权重对应的权重取值区间;所述综合采样权重,是各所述实时邻居对象存储块分别对应的块采样权重之和;所述块采样权重,是同一实时邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
根据各所述实时邻居对象存储块分别对应的块采样权重,将所述目标用户对象的综合采样权重对应的第一权重取值区间,划分为各所述实时邻居对象存储块分别对应的块权重区间;
针对每一个实时邻居对象存储块,根据在先块权重区间对应的实时邻居对象存储块的块采样权重和所述实时邻居对象存储块对应的块采样权重,确定所述实时邻居对象存储块对应的块采样参照参数,并将所述块采样参照参数存储至所述实时邻居对象存储块中;
其中,所述在先块权重区间是所述第一权重取值区间中的、且在所述实时邻居对象存储块的块权重区间之前的块权重区间。
5.根据权利要求1所述的方法,其特征在于,所述目标邻居对象存储块中还记录有所存储的邻居对象的标识对应的邻居采样参照参数;
所述对所述目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,包括:
根据所述目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对所述目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标邻居对象存储块中记录的各邻居对象的标识分别对应的邻居采样参照参数,对所述目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识,包括:
从第二权重取值区间对应的数值中确定邻居采样随机参数;
根据所述邻居采样参照参数和所述邻居采样随机参数之间的大小关系,对所述目标邻居对象存储块中各邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;
其中,所述第二权重取值区间,是所述目标邻居对象存储块的块采样权重对应的权重取值区间;所述块采样权重,是所述目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重之和。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
根据所述目标邻居对象存储块中各邻居对象的标识分别对应的对象采样权重,将所述目标邻居对象存储块的块采样权重对应的第二权重取值区间,划分为所述各邻居对象的标识分别对应的对象权重区间;
针对所述各邻居对象的标识中的每一个邻居对象的标识,根据在先对象采样权重和所述邻居对象的标识对应的对象采样权重,确定所述邻居对象的标识对应的邻居采样参照参数,并将所述邻居采样参照参数与所述邻居对象的标识关联存储至所述目标邻居对象存储块中;
其中,所述在先对象采样权重,是在先对象权重区间对应的邻居对象的对象采样权重;所述在先对象权重区间,是所述第二权重取值区间中的、且在所述邻居对象的标识对应的对象权重区间之前的对象权重区间。
8.根据权利要求1所述的方法,其特征在于,所述邻居对象属性信息和所述目标标识是预先以键值对的形式存储在内存中;所述目标标识为键值对中的键,所述邻居对象属性信息为所述键值对中的值;
所述查找与所述目标标识对应的邻居对象属性信息,包括:
以所述目标标识为键,从内存中查找与所述目标标识对应的邻居对象属性信息。
9.根据权利要求8所述的方法,其特征在于,所述邻居对象属性信息包括所述目标邻居对象在至少一个稀疏属性项下的稀疏属性信息;所述键值对中的值包括所述至少一个稀疏属性项下的稀疏属性信息;
所述以所述目标标识为键,从内存中查找与所述目标标识对应的邻居对象属性信息,包括:
以所述目标标识为键,从内存中查找与所述目标标识对应的所述至少一个稀疏属性项下的稀疏属性信息。
10.根据权利要求8所述的方法,其特征在于,所述邻居对象属性信息包括所述目标邻居对象在稠密属性项下的稠密属性信息;所述键值对中的键还包括所述稠密属性项的稠密属性标识;所述键值对中的值包括所述稠密属性项下的稠密属性信息;
所述以所述目标标识为键,从内存中查找与所述目标标识对应的邻居对象属性信息,包括:
以所述目标标识和所述稠密属性标识为键,从内存中查找与所述目标标识和所述稠密属性标识对应的稠密属性信息。
11.根据权利要求1所述的方法,其特征在于,所述用户对象融合特征是通过已训练的信息推荐模型生成得到;所述信息推荐模型包括依次相连的多个网络层;
所述根据所述邻居对象属性信息和所述目标用户对象的用户对象属性信息,生成用户对象融合特征,包括:
根据所述邻居对象属性信息和所述用户对象属性信息,生成所述目标用户对象在所述信息推荐模型中第一层网络层的用户对象特征;
将所述第一层网络层之后的每一层网络层分别作为当前网络层,根据所述目标用户对象在所述当前网络层的上一层网络层的用户对象特征、以及所述目标邻居对象在所述当前网络层的上一层网络层的邻居对象特征,生成所述目标用户对象在所述当前网络层的用户对象特征,直至得到所述目标用户对象在最后一层网络层的用户对象特征;
将所述目标用户对象在所述最后一层网络层的用户对象特征作为所述目标用户对象的用户对象融合特征。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述用户对象融合特征是通过已训练的信息推荐模型生成得到;所述方法还包括模型训练步骤;所述模型训练步骤包括:
根据样本用户对象的实时交互数据,确定与所述样本用户对象存在交互关系的样本交互对象;
将所述样本用户对象和所述样本交互对象中的每一个分别作为样本目标对象,从所述样本目标对象对应的至少一个训练邻居对象存储块中,确定目标训练邻居对象存储块,对所述目标训练邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个训练邻居对象的标识,查找与所述训练邻居对象的标识对应的邻居对象属性信息,并根据所述训练邻居对象的标识对应的邻居对象属性信息和所述样本目标对象的目标对象属性信息,生成所述样本目标对象对应的对象融合特征;
根据各所述样本目标对象分别对应的对象融合特征进行模型训练,得到已训练的信息推荐模型。
13.一种信息推荐装置,其特征在于,所述装置包括:
确定模块,用于从目标用户对象对应的至少一个实时邻居对象存储块中,确定目标邻居对象存储块;所述至少一个实时邻居对象存储块,用于存储所述目标用户对象在实时关系网络图中的邻居对象的标识;所述实时关系网络图,是基于所述目标用户对象的实时交互数据确定得到;
采样模块,用于对所述目标邻居对象存储块所存储的邻居对象的标识进行采样,得到至少一个目标邻居对象的目标标识;
生成模块,用于查找与所述目标标识对应的邻居对象属性信息,并根据所述邻居对象属性信息和所述目标用户对象的用户对象属性信息,生成用户对象融合特征;
推荐模块,用于基于所述用户对象融合特征向所述目标用户对象进行信息推荐。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
15.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
16.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210628181.7A CN115129980A (zh) | 2022-06-06 | 2022-06-06 | 信息推荐方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210628181.7A CN115129980A (zh) | 2022-06-06 | 2022-06-06 | 信息推荐方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115129980A true CN115129980A (zh) | 2022-09-30 |
Family
ID=83378111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210628181.7A Pending CN115129980A (zh) | 2022-06-06 | 2022-06-06 | 信息推荐方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129980A (zh) |
-
2022
- 2022-06-06 CN CN202210628181.7A patent/CN115129980A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110569437B (zh) | 点击概率预测、页面内容推荐方法和装置 | |
CN111931062B (zh) | 一种信息推荐模型的训练方法和相关装置 | |
CN110909182B (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN109299436B (zh) | 一种满足本地差分隐私的偏好排序数据收集方法 | |
Rathore et al. | DeepCachNet: A proactive caching framework based on deep learning in cellular networks | |
CN108664914B (zh) | 人脸检索方法、装置及服务器 | |
CN108595493B (zh) | 媒体内容的推送方法和装置、存储介质、电子装置 | |
CN112052387B (zh) | 一种内容推荐方法、装置和计算机可读存储介质 | |
US11645585B2 (en) | Method for approximate k-nearest-neighbor search on parallel hardware accelerators | |
CN110334290B (zh) | 一种基于MF-Octree的时空数据快速检索方法 | |
CN110765286A (zh) | 跨媒体检索方法、装置、计算机设备和存储介质 | |
CN111475744B (zh) | 一种基于集成学习的个性化位置推荐方法 | |
CN116109372A (zh) | 基于多层次区块链的冷链物流产品联邦推荐方法及装置 | |
CN110162689B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN116703531B (zh) | 物品数据处理方法、装置、计算机设备和存储介质 | |
CN114329004A (zh) | 数字指纹生成、数据推送方法、装置和存储介质 | |
CN116541592A (zh) | 向量生成方法、信息推荐方法、装置、设备及介质 | |
CN112115354A (zh) | 信息处理方法、装置、服务器及存储介质 | |
CN116861070A (zh) | 推荐模型的处理方法、装置、计算机设备和存储介质 | |
CN115129980A (zh) | 信息推荐方法、装置、设备和介质 | |
Wen et al. | QoS-aware web service recommendation model based on users and services clustering | |
CN111931035B (zh) | 业务推荐方法、装置及设备 | |
CN114564653A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
CN111881352A (zh) | 内容推送方法、装置、计算机设备和存储介质 | |
Chen et al. | Irlm: inductive representation learning model for personalized poi recommendation |
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 |