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

一种信息推荐方法及装置

文献发布时间:2023-06-19 11:11:32


一种信息推荐方法及装置

技术领域

本发明涉及信息推荐技术领域,具体涉及一种信息推荐方法及装置。

背景技术

在信息推荐的实际应用中,通常利用深度因子机(DeepFM)模型作为预测信息点击率的点击率预估模型。

在使用深度因子机模型预测信息的点击概率的过程中,为了提高点击概率的预测精度,需要加大深度因子机模型的维度,此种方式会导致深度因子机模型所消耗的计算资源较大,且需要较长时间才能预测得到信息的点击概率,预测点击概率所占用的计算资源较大且预测点击概率的时延较高。

发明内容

有鉴于此,本发明实施例提供一种信息推荐方法及装置,以解决目前预测点击概率方式存在的占用计算资源较大且预测点击概率的时延较高等问题。

为实现上述目的,本发明实施例提供如下技术方案:

本发明实施例第一方面公开一种信息推荐方法,所述方法包括:

接收目标用户发送的至少包含用户特征的推荐请求;

获取所述目标用户的历史操作数据,并根据所述历史操作数据和所述用户特征,对信息库中的信息进行召回处理,得到不同类别的多个目标信息;

针对每一目标信息,将所述目标信息的物品特征、所述用户特征和上下文特征进行拼接,得到所述目标信息对应的拼接特征,所述上下文特征根据所述目标用户的当前操作信息确定;

针对每一目标信息,从所有预先确定并缓存的所述信息库中每一信息对应的拼接特征的缓存向量中,获取所述目标信息对应的拼接特征的缓存向量,所述缓存向量为中间向量与预设的推荐模型中深度神经网络DNN的第一层结构对应的权重之间的乘积,所述中间向量为利用所述推荐模型中的嵌入层处理所述信息对应的拼接特征得到的,所述DNN的第一层结构为全连接层,所述推荐模型为深度因子机模型且由因子机和所述DNN构成;

将所有所述目标信息对应的拼接特征和缓存向量输入所述推荐模型进行点击率预测,得到每一所述目标信息的预测点击概率;

将所述预测点击概率大于等于点击率阈值的所述目标信息反馈给所述目标用户。

优选的,确定并缓存所述信息库中每一信息对应的拼接特征的缓存向量的过程,包括:

利用推荐模型中的嵌入层处理所述信息库中每一信息对应的拼接特征,得到每一所述信息对应的中间向量,每一所述信息的中间向量的维度为d;

针对信息库中每一信息,将所述信息对应的中间向量乘以所述推荐模型中DNN的第一层结构与所述信息的类别对应的权重,得到所述信息对应的拼接特征的缓存向量,所述DNN的第一层结构与所述信息的类别对应的权重的维度为d*D,所述信息对应的拼接特征的缓存向量的维度为D;

根据每一所述信息的类别,分别将每一所述信息对应的拼接特征的缓存向量进行缓存。

优选的,所述将所有所述目标信息对应的拼接特征和缓存向量输入所述推荐模型进行点击率预测,得到每一所述目标信息的预测点击概率,包括:

将所有所述目标信息对应的拼接特征输入所述推荐模型的因子机中进行点击率预测,得到每一所述目标信息的第一预测值;

将所有所述目标信息对应的拼接特征的缓存向量输入所述推荐模型的DNN中进行点击率预测,得到每一所述目标信息的第二预测值;

针对每一目标信息,将所述目标信息的第一预测值和第二预测值进行求和并转换成概率值,得到所述目标信息最终的预测点击概率。

优选的,所述将所有所述目标信息对应的拼接特征的缓存向量输入所述推荐模型的DNN中进行点击率预测,得到每一所述目标信息的第二预测值,包括:

针对每一目标信息,将所述目标信息对应的拼接特征的缓存向量的每一维对应相加,得到所述目标信息对应的结果向量;

利用所述推荐模型的DNN中第二个隐含层至输出层,对所有所述目标信息对应的结果向量进行推理,得到每一所述目标信息的第二预测值。

优选的,利用推荐模型中的嵌入层处理所述信息库中每一信息对应的拼接特征,得到每一所述信息对应的中间向量之前,还包括:

针对所述信息库中的每一信息,将所述信息的物品特征、所述目标用户的用户特征和上下文特征进行拼接,得到所述信息对应的拼接特征。

本发明实施例第二方面公开一种信息推荐装置,所述装置包括:

接收单元,用于接收目标用户发送的至少包含用户特征的推荐请求;

处理单元,用于获取所述目标用户的历史操作数据,并根据所述历史操作数据和所述用户特征,对信息库中的信息进行召回处理,得到不同类别的多个目标信息;

拼接单元,用于针对每一目标信息,将所述目标信息的物品特征、所述用户特征和上下文特征进行拼接,得到所述目标信息对应的拼接特征,所述上下文特征根据所述目标用户的当前操作信息确定;

获取单元,用于针对每一目标信息,从所有预先确定并缓存的所述信息库中每一信息对应的拼接特征的缓存向量中,获取所述目标信息对应的拼接特征的缓存向量,所述缓存向量为中间向量与预设的推荐模型中深度神经网络DNN的第一层结构对应的权重之间的乘积,所述中间向量为利用所述推荐模型中的嵌入层处理所述信息对应的拼接特征得到的,所述DNN的第一层结构为全连接层,所述推荐模型为深度因子机模型且由因子机和所述DNN构成;

预测单元,用于将所有所述目标信息对应的拼接特征和缓存向量输入所述推荐模型进行点击率预测,得到每一所述目标信息的预测点击概率;

反馈单元,用于将所述预测点击概率大于等于点击率阈值的所述目标信息反馈给所述目标用户。

优选的,用于确定并缓存所述信息库中每一信息对应的拼接特征的缓存向量的所述获取单元,包括:

处理模块,用于利用推荐模型中的嵌入层处理所述信息库中每一信息对应的拼接特征,得到每一所述信息对应的中间向量,每一所述信息的中间向量的维度为d;

运算模块,用于针对信息库中每一信息,将所述信息对应的中间向量乘以所述推荐模型中DNN的第一层结构与所述信息的类别对应的权重,得到所述信息对应的拼接特征的缓存向量,所述DNN的第一层结构与所述信息的类别对应的权重的维度为d*D,所述信息对应的拼接特征的缓存向量的维度为D;

缓存模块,用于根据每一所述信息的类别,分别将每一所述信息对应的拼接特征的缓存向量进行缓存。

优选的,所述预测单元包括:

第一预测模块,用于将所有所述目标信息对应的拼接特征输入所述推荐模型的因子机中进行点击率预测,得到每一所述目标信息的第一预测值;

第二预测模块,用于将所有所述目标信息对应的拼接特征的缓存向量输入所述推荐模型的DNN中进行点击率预测,得到每一所述目标信息的第二预测值;

运算模块,用于针对每一目标信息,将所述目标信息的第一预测值和第二预测值进行求和并转换成概率值,得到所述目标信息最终的预测点击概率。

优选的,所述第二预测模块具体用于:针对每一目标信息,将所述目标信息对应的拼接特征的缓存向量的每一维对应相加,得到所述目标信息对应的结果向量;利用所述推荐模型的DNN中第二个隐含层至输出层,对所有所述目标信息对应的结果向量进行推理,得到每一所述目标信息的第二预测值。

优选的,所述处理模块还用于:针对所述信息库中的每一信息,将所述信息的物品特征、所述目标用户的用户特征和上下文特征进行拼接,得到所述信息对应的拼接特征。

基于上述本发明实施例提供的一种信息推荐方法及装置,该方法为:接收目标用户发送的至少包含用户特征的推荐请求;获取目标用户的历史操作数据,并根据历史操作数据和用户特征,对信息库中的信息进行召回处理,得到不同类别的多个目标信息;针对每一目标信息,将目标信息的物品特征、用户特征和上下文特征进行拼接,得到目标信息对应的拼接特征;针对每一目标信息,从所有预先确定并缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取目标信息对应的拼接特征的缓存向量;将所有目标信息对应的拼接特征和缓存向量输入推荐模型进行点击率预测,得到每一目标信息的预测点击概率;将预测点击概率大于等于点击率阈值的目标信息反馈给目标用户。通过预先确定并缓存信息库中每一信息对应的拼接特征的缓存向量,在利用深度因子机模型进行点击率预测时,直接从缓存中查找相应的缓存向量进行点击率预测,在保证深度因子机模型的预测精度的同时,减少运算量,降低所占用的计算资源和降低预测点击概率的时延。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的深度因子机模型的架构示意图;

图2为本发明实施例提供的一种信息推荐方法的流程图;

图3为本发明实施例提供的确定并缓存信息库中信息对应的拼接特征的缓存向量的流程图;

图4为本发明实施例提供的一种信息推荐装置的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

由背景技术可知,目前通常利用深度因子机模型作为预测信息点击概率的点击率预估模型,为了提高点击概率的预测精度,需要加大深度因子机模型的维度,但此种方式会导致深度因子机模型所消耗的计算资源较大且预测点击概率的时延较高。

因此,本发明实施例提供一种信息推荐方法及装置,预先确定信息库中每一信息对应的拼接特征的缓存向量,并将缓存向量存储至缓存中。当需要利用深度因子机模型进行点击率预测时,直接从缓存中查找相应的缓存向量进行点击率预测,在保证深度因子机模型的预测精度的同时,减少不必要的运算量,以降低所占用的计算资源和降低预测点击概率的时延。

需要说明的是,在本发明实施例中,用于预测点击概率的推荐模型为深度因子机模型(DeepFM),该深度因子机模型主要由两部分构成,分别是深度神经网络(Deep NeuralNetworks,DNN)部分和因子机(FM)部分,即本发明实施例中的推荐模型由DNN和因子机两部分构成。

为更好解释说明上述提及的深度因子机模型,通过图1示出的深度因子机模型的架构示意图进行解释说明。

如图1示出的架构示意图可知,深度因子机模型的结构包括DNN和因子机两部分,其中FM component为因子机部分,DNN component为DNN部分,Embedding Layer为嵌入层,sparse features为输入特征。

发明人经研究发现,在利用深度因子机模型进行实际的数据处理过程中,其因子机部分的计算量相对较小,因子机部分的计算量可以忽略不计;而在深度因子机模型的DNN部分中,在一般情况下,由于DNN的维度是递减的(也可能存在前几层结构的维度是相等或稍有增长的情况),故DNN中计算量最大的结构为DNN的第一层结构,该DNN的第一层结构即为将输入的多个特征嵌入向量映射到隐含层向量的全连接层,即DNN的第一层结构为全连接层,由于无论是特征嵌入向量的数量较多,还是特征嵌入向量的维度较高,又或者是映射的目标向量维度较高,均会导致DNN的第一层结构的计算量较大;因为DNN的第一层结构没有经过非线性映射,因此经过DNN第一层结构所处理的中间结果数据可以被缓存起来,后续DNN利用被缓存起来的中间结果数据进行运算不会影响计算结果。

本发明实施例中所涉及的信息推荐方法,正是基于上述发明人的研究结果来预测信息的点击概率的,具体如何预测信息的点击概率详见以下各个实施例所示出的内容。

可以理解的是,在本发明实施例中所涉及的信息,可以是文本信息,也可以视频信息,在此不做具体限定。

参见图2,示出了本发明实施例提供的一种信息推荐方法的流程图,该信息推荐方法包括:

步骤S201:接收目标用户发送的至少包含用户特征的推荐请求。

在具体实现步骤S201的过程中,在信息推荐(例如视频推荐)过程中,目标用户通过客户端发送推荐请求,该推荐请求至少携带该目标用户的用户特征,此时可接收到该推荐请求。

步骤S202:获取目标用户的历史操作数据,并根据历史操作数据和用户特征,对信息库中的信息进行召回处理,得到不同类别的多个目标信息。

在具体实现步骤S202的过程中,在接收到目标用户发送的推荐请求时,获取该目标用户的历史操作数据(例如历史消费情况)。根据所获取的目标用户的历史操作数据和用户特征(例如用户画像),对信息库(例如视频库)中的信息进行召回处理,得到不同类别的多个目标信息。

可以理解的是,从信息库中召回得到目标用户可能会点击的信息,召回得到的信息即为属于不同类别的目标信息。

例如:对视频库中百万量级的视频进行召回处理,得到数百个目标用户可能会点击的视频,所召回的数百个视频即为不同类别的目标信息。

需要说明的是,信息的类别可称为特征域,比如:假设某视频为音乐主题类别,则音乐主题类别即为一个特征域。

步骤S203:针对每一目标信息,将目标信息的物品特征、用户特征和上下文特征进行拼接,得到目标信息对应的拼接特征。

需要说明的是,上下文特征是指用户访问推荐系统的时间、地点和心情等信息,也就是说,上下文特征根据目标用户的当前操作信息确定的。

在具体实现步骤S203的过程中,对于所获取的每一个目标信息,将该目标信息的物品特征、用户特征和上下文特征进行拼接,得到该目标信息对应的拼接特征。

例如:按照用户特征+物品特征+上下文特征这一方式,拼接得到各个目标信息对应的拼接特征。

但需要说明的是,物品特征、用户特征和上下文特征的拼接顺序,在本发明实施例中不做具体限定。

可以理解的是,在由所有目标信息对应的拼接特征所构成的数据中,存在固定个数的特征域(即目标信息的类别),用于表示拼接特征的类别,该数据中每个特征域上的取值可以用来区分目标用户的喜好、兴趣和历史等内容与目标信息的匹配程度。

步骤S204:针对每一目标信息,从所有预先确定并缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取目标信息对应的拼接特征的缓存向量。

需要说明的是,缓存向量为中间向量与预设的推荐模型中DNN的第一层结构对应的权重之间的乘积,中间向量为利用推荐模型中的嵌入层处理信息库中的信息对应的拼接特征得到的,DNN的第一层结构为全连接层,推荐模型为深度因子机模型且由因子机和DNN构成。

在具体实现步骤S204的过程中,预先利用样本数据训练得到推荐模型。对于信息库中的信息,预先利用推荐模型中的嵌入层,处理信息库中各信息的拼接特征(拼接特征的确定方式可参见步骤S203),得到信息库中每一信息对应的中间向量。对于信息库中的每一信息,将该信息的中间向量乘以推荐模型中DNN的全连接层与该信息的类别对应的权重,将所得到的乘积作为该信息对应的缓存向量,并将该信息对应的缓存向量进行缓存。

可以理解的是,对于推荐模型(也就是深度因子机模型),推荐模型的嵌入层的输出向量为Nd维,N(正整数)表示信息库中各信息的类别的总数量,d(正整数)为信息库中的信息的中间向量的维度。即经过嵌入层处理后的信息对应的拼接特征,可得到一个固定维数(d维)的中间向量。

例如:对于一个体育类别的视频,该视频对应的拼接特征经过嵌入层处理后,可得到对应的d维中间向量。

推荐模型的DNN的第一层结构(全连接层)的维度为D(正整数),那么该DNN的第一层结构的权重的维度为Nd*D维,此时可将其拆分为对应N个类别对应的d*D维的权重矩阵。

也就是说,对于某个类别的信息,将该信息的中间向量(d维),乘以与该信息的类别(即特征域)对应的DNN的第一层结构的权重的维度(d*D),可以得到维度为D维的该信息对应的缓存向量。

可以理解的是,上述获取信息库中各信息的缓存向量并将其存储在缓存中,是一个预先准备工作,在实际的信息推荐过程中,针对每一目标信息,从预先缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取该目标信息对应的拼接特征的缓存向量,即按照拼接特征与缓存向量的对应关系,可获取得到该目标信息对应的拼接特征的缓存向量。

需要说明的是,在缓存信息库中各信息的缓存向量时,可按照信息的类别信息存储。相应的,在获取目标信息对应的拼接特征的缓存向量时,按照该目标信息的类别,从该类别所对应的所有缓存向量中,获取该目标信息对应的拼接特征的缓存向量。

综上,由上述内容可知,DNN的第一层结构的计算量较大,在实际的信息推荐过程中,可直接从缓存中获取目标信息对应的拼接特征的缓存向量(相当于直接获取D维的缓存向量),不需要再利用推荐模型的DNN的第一层结构处理目标信息对应的拼接特征,可节约较大的计算量。

步骤S205:将所有目标信息对应的拼接特征和缓存向量输入推荐模型进行点击率预测,得到每一目标信息的预测点击概率。

可以理解的是,深度因子机模型在进行点击率预测时,数据处理流程包括两条通路,一条为因子机分支,另外一条为DNN分支。

在具体实现步骤S205的过程中,将所有目标信息对应的拼接特征输入推荐模型的因子机中进行点击率预测,得到每一目标信息的第一预测值。也就是说,将所有目标信息对应的拼接特征输入推荐模型的因子机中,将对应每个类别的目标信息对应的拼接特征直接相加,按照因子机推理算法对所有目标信息对应的拼接特征进行推理,得到每一目标信息的第一预测值。

将所有目标信息对应的拼接特征的缓存向量输入推荐模型的DNN中进行点击率预测,得到每一目标信息的第二预测值。

利用DNN进行点击率预测的具体过程为:针对每一目标信息,将目标信息对应的拼接特征的缓存向量的每一维对应相加,得到目标信息对应的结果向量(其维度为D),相当于将“[W1,W2,W3,…]*(V1,V2,V3…)”,修改为“W1*V1+W2*V2+W3*V3+…”,其计算结果相同。利用推荐模型的DNN中第二个隐含层至输出层,对所有目标信息对应的结果向量进行推理,得到每一目标信息的第二预测值。

针对每一目标信息,将该目标信息的第一预测值和第二预测值进行求和并转换成概率值,即将该目标信息的第一预测值与第二预测值之和转换成概率值,得到该目标信息最终的预测点击概率。即获取一目标信息的最终的预测点击概率的方式为:对因子机部分计算得到的第一预测值和DNN部分计算得到的第二预测值进行求和,并将和值(此时的和值还没有明确的概率意义)转换为概率值,即可得到目标信息的最终的预测点击概率。

需要说明的是,经发明人反复研究和验证发现,采用上述各个步骤示出的方案之后,推荐模型的DNN所获取的数据,从d维的经过嵌入层处理的特征向量(现有技术的方案)变成D维的缓存向量(本发明实施例中的方案),在一定程度上会导致数据读取量的增加,但是由于缓存向量可以载入内存中,而内存的读取速度非常快,因此本发明实施例中DNN读取数据所耗费的时间并不会明显增加,此处可通过以下关于读取时间的示例内容进行举例说明。

关于读取时间的示例内容:假设存在10万维拼接特征,且假定D=1024维,将拼接特征的缓存向量全部载入内存中需要耗费400M的内存,400M对于内存的存储能力来说并不会造成任何存储压力。此时假设由固定个(比如N=150个)类别的目标信息需要获取相应的缓存向量,则读取该缓存向量的数据量为N*D*300*4B=184MB。由于服务器内存每秒的读取速度约为40-60GB/s,因此读取184MB的缓存向量仅需要耗费3ms-5ms。

与此同时,由于在推荐系统中,拼接特征是由用户特征、物品特征和上下文特征构成的,在一次推荐请求中,用户特征是不变的,且用户特征对应的特征数占总特征数的50%左右,此时还能将读取184MB的缓存向量所耗费的时间缩短至1ms-2ms。此外,还可以将缓存向量的表示从32位浮点数修改为8位定点数,此时读取184MB的缓存向量所耗费的时间还能缩短1/4,即读取184MB的缓存向量所耗费的时间缩短为0.5ms以下。

通过上述内容可知,推荐模型中的DNN读取缓存向量所耗费的时间并不会提高点击率预测的时延。

综上,由上述内容可知,可直接从缓存中获取目标信息对应的拼接特征的缓存向量,不需要再利用推荐模型的DNN的第一层结构处理目标信息对应的拼接特征,可大幅度降低推荐模型进行点击率预测时的计算量,此处可通过以下关于计算量的示例内容进行举例说明。

关于计算量的示例内容:假设目标信息的类别(特征域)的个数为N=150个,拼接特征的维度为32维,推荐模型的DNN各隐含层的维度分别是1024维、512维和256维,推荐模型的输出层维度为2。

则采用现有技术中的推荐模型进行点击率预测所需要耗费的计算量为:150*(32*1024)+1024*512+512*256+256*2=5.57M。

而采用上述本发明实施例各步骤示出的内容,进行点击率预测所需要耗费的计算量为:150*1024+1024*512+512*256+256*2=0.81M。

由上述示例内容可知,采用本发明实施例示出的内容进行点击率预测所需要耗费的计算量,远小于采用现有技术中的推荐模型进行点击率预测所需要耗费的计算量。

步骤S206:将预测点击概率大于等于点击率阈值的目标信息反馈给目标用户。

在具体实现步骤S206的过程中,在确定得到各个目标信息的预测点击概率之后,将预测点击概率大于等于点击率阈值的目标信息反馈给目标用户。同理,也可按照预测点击概率对各个目标信息进行排序,将预测点击概率最高的部分目标信息反馈给目标用户,对于如何按照预测点击概率将目标信息反馈给目标用户,在本发明实施例中不做具体限定。

也就是说,对于从信息库中召回的目标信息,经过上述步骤S203至步骤S204所示出的内容,对目标信息进行精细的处理,找出部分最有可能被点击的目标信息,将其通过客户端反馈给目标用户。

在本发明实施例中,根据目标用户的历史操作数据和用户特征,从信息库中召回得到不同类别的多个目标信息。将目标信息的物品特征、用户特征和上下文特征进行拼接,得到对应的拼接特征。从所有预先确定并缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取目标信息对应的拼接特征的缓存向量。将所有目标信息对应的拼接特征和缓存向量输入推荐模型进行点击率预测,得到每一目标信息的预测点击概率,并按预测点击概率将目标信息反馈给目标用户。在保证推荐模型的预测精度的同时,减少不必要的运算量,降低所占用的计算资源和降低预测点击概率的时延。

上述本发明实施例图2步骤S204中涉及的确定并缓存信息库中各信息的缓存向量的过程,参见图3,示出了本发明实施例提供的确定并缓存信息库中信息对应的拼接特征的缓存向量的流程图,包括以下步骤:

步骤S301:利用推荐模型中的嵌入层处理信息库中每一信息对应的拼接特征,得到每一信息对应的中间向量。

需要说明的是,每一信息的中间向量的维度为d。

优选的,在执行步骤S301之前,针对信息库中的每一信息,将该信息的物品特征、目标用户的用户特征和上下文特征进行拼接,得到该信息对应的拼接特征。

在具体实现步骤S301的过程中,对于信息库中每一信息,利用推荐模型的嵌入层,处理该信息对应的拼接特征,得到该信息对应的维度为d维的中间向量。

关于中间向量的相关内容,可参见上述本发明实施例图2步骤S204中的内容,在此不再赘述。

步骤S302:针对信息库中每一信息,将信息对应的中间向量乘以推荐模型中DNN的第一层结构与信息的类别对应的权重,得到信息对应的拼接特征的缓存向量。

需要说明的是,针对信息库中每一信息,DNN的第一层结构与该信息的类别(即特征域)对应的权重的维度为d*D,该信息对应的拼接特征的缓存向量的维度为D。

在具体实现步骤S302的过程中,对于信息库中的每一信息,将该信息对应的中间向量,和推荐模型中DNN的第一层结构与该信息的类别对应的权重相乘,即可得到该信息对应的拼接特征的维度为D维的缓存向量。

步骤S303:根据每一信息的类别,分别将每一信息对应的拼接特征的缓存向量进行缓存。

在具体实现步骤S303的过程中,按照每一信息的类别,将各类别的信息对应的拼接特征的缓存向量分别进行缓存。

在查询目标信息对应的拼接特征的缓存向量时,可按照目标信息的类别,从缓存与该目标信息的类别对应的缓存向量中,查找该目标信息对应的拼接特征的缓存向量。

在本发明实施例中,预先确定信息库中每一信息对应的拼接特征的缓存向量,并将缓存向量存储至缓存中。当需要利用推荐模型进行点击率预测时,直接从缓存中查找相应的缓存向量进行点击率预测,在保证推荐模型的预测精度的同时,减少不必要的运算量,降低所占用的计算资源和降低预测点击概率的时延。

与上述本发明实施例提供的一种信息推荐方法相对应,参见图4,本发明实施例还提供了一种信息推荐装置的结构框图,该信息推荐装置包括:接收单元401、处理单元402、拼接单元403、获取单元404、预测单元405和反馈单元406;

接收单元401,用于接收目标用户发送的至少包含用户特征的推荐请求。

处理单元402,用于获取目标用户的历史操作数据,并根据历史操作数据和用户特征,对信息库中的信息进行召回处理,得到不同类别的多个目标信息。

拼接单元403,用于针对每一目标信息,将目标信息的物品特征、用户特征和上下文特征进行拼接,得到目标信息对应的拼接特征,上下文特征根据目标用户的当前操作信息确定。

获取单元404,用于针对每一目标信息,从所有预先确定并缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取目标信息对应的拼接特征的缓存向量,缓存向量为中间向量与预设的推荐模型中DNN的第一层结构对应的权重之间的乘积,中间向量为利用推荐模型中的嵌入层处理信息对应的拼接特征得到的,DNN的第一层结构为全连接层,推荐模型为深度因子机模型且由因子机和DNN构成。

预测单元405,用于将所有目标信息对应的拼接特征和缓存向量输入推荐模型进行点击率预测,得到每一目标信息的预测点击概率。

反馈单元406,用于将预测点击概率大于等于点击率阈值的目标信息反馈给目标用户。

在本发明实施例中,根据目标用户的历史操作数据和用户特征,从信息库中召回得到不同类别的多个目标信息。将目标信息的物品特征、用户特征和上下文特征进行拼接,得到对应的拼接特征。从所有预先确定并缓存的信息库中每一信息对应的拼接特征的缓存向量中,获取目标信息对应的拼接特征的缓存向量。将所有目标信息对应的拼接特征和缓存向量输入推荐模型进行点击率预测,得到每一目标信息的预测点击概率,并按预测点击概率将目标信息反馈给目标用户。在保证推荐模型的预测精度的同时,减少不必要的运算量,降低所占用的计算资源和降低预测点击概率的时延。

优选的,结合图4示出的内容,用于确定并缓存信息库中每一信息对应的拼接特征的缓存向量的获取单元404包括:处理模块、运算模块和缓存模块,各个模块的执行原理如下:

处理模块,用于利用推荐模型中的嵌入层处理信息库中每一信息对应的拼接特征,得到每一信息对应的中间向量,每一信息的中间向量的维度为d。

优选的,处理模块在获取得到每一所述信息对应的中间向量之前,该处理模块还用于:针对信息库中的每一信息,将信息的物品特征、目标用户的用户特征和上下文特征进行拼接,得到信息对应的拼接特征。

运算模块,用于针对信息库中每一信息,将信息对应的中间向量乘以推荐模型中DNN的第一层结构与信息的类别对应的权重,得到信息对应的拼接特征的缓存向量,DNN的第一层结构与信息的类别对应的权重的维度为d*D,信息对应的拼接特征的缓存向量的维度为D。

缓存模块,用于根据每一信息的类别,分别将每一信息对应的拼接特征的缓存向量进行缓存。

在本发明实施例中,预先确定信息库中每一信息对应的拼接特征的缓存向量,并将缓存向量存储至缓存中。当需要利用推荐模型进行点击率预测时,直接从缓存中查找相应的缓存向量进行点击率预测,在保证推荐模型的预测精度的同时,减少不必要的运算量,降低所占用的计算资源和降低预测点击概率的时延。

优选的,结合图4示出的内容,预测单元405包括:第一预测模块、第二预测模块和运算模块,各个模块的执行原理如下:

第一预测模块,用于将所有目标信息对应的拼接特征输入推荐模型的因子机中进行点击率预测,得到每一目标信息的第一预测值。

第二预测模块,用于将所有目标信息对应的拼接特征的缓存向量输入推荐模型的DNN中进行点击率预测,得到每一目标信息的第二预测值。

在具体实现中,第二预测模块具体用于:针对每一目标信息,将目标信息对应的拼接特征的缓存向量的每一维对应相加,得到目标信息对应的结果向量;利用推荐模型的DNN中第二个隐含层至输出层,对所有目标信息对应的结果向量进行推理,得到每一目标信息的第二预测值。

运算模块,用于针对每一目标信息,将目标信息的第一预测值和第二预测值进行求和并转换成概率值,得到目标信息最终的预测点击概率。

综上所述,本发明实施例提供一种信息推荐方法及装置,预先确定信息库中每一信息对应的拼接特征的缓存向量,并将缓存向量存储至缓存中。当需要利用深度因子机模型进行点击率预测时,直接从缓存中查找相应的缓存向量进行点击率预测,在保证深度因子机模型的预测精度的同时,减少不必要的运算量,降低所占用的计算资源和降低预测点击概率的时延。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 一种信息推荐方法、装置和用于信息推荐的装置
  • 一种信息推荐方法、装置和用于信息推荐的装置
技术分类

06120112836958