推荐信息处理方法、装置、计算机设备及存储介质与流程

文档序号:16693457发布日期:2019-01-22 19:11阅读:153来源:国知局
推荐信息处理方法、装置、计算机设备及存储介质与流程

本申请涉及互联网技术领域,尤其涉及一种推荐信息处理方法、装置、计算机设备及存储介质。



背景技术:

随着智能终端及互联网技术的发展,信息推荐已经成为用户获取信息的主要方式之一。

目前,信息推荐系统进行信息推荐时,多是利用打分模型,对待推荐给用户的多个信息进行打分,然后根据打分结果对待推荐的信息进行排序,选择排序靠前的预设个数的信息组成推荐列表,将推荐列表反馈给用户。

然而,上述信息推荐方式,仅考虑了单个推荐信息的最优化,而忽略了推荐列表内各推荐信息之间的关联性,导致推荐列表中各推荐信息的点击率较低。



技术实现要素:

本申请旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本申请的提出一种推荐信息处理方法、装置、计算机设备及存储介质,用于解决现有技术中根据单一的打分结果确定推荐列表,忽略了推荐信息之间的关联性、推荐信息的点击率低的技术问题。

为达上述目的,本申请第一方面实施例提出了一种推荐信息处理方法,包括:

确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数;

根据所述第一向量,确定前i个推荐信息对应的第二向量;

根据所述第一向量及所述第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率;

根据每个候选推荐信息的点击概率,从所述候选推荐信息集中选取第i+1个推荐信息。

本申请实施例的推荐信息处理方法,通过确定推荐列表中第i个推荐信息对应的第一向量,并根据第一向量确定前i个推荐信息对应的第二向量,进而根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。由此,通过根据前一个推荐信息的向量和已完成排序的所有推荐信息的向量,来确定当前的推荐信息,实现了根据推荐信息之间的关联性来对推荐信息进行排序,有利于提高推荐列表中推荐信息的点击率,提升了用户体验。

为达上述目的,本申请第二方面实施例提出了一种推荐信息处理装置,包括:

第一确定模块,用于确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数;

第二确定模块,用于根据所述第一向量,确定前i个推荐信息对应的第二向量;

概率确定模块,用于根据所述第一向量及所述第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率;

选择模块,用于根据每个候选推荐信息的点击概率,从所述候选推荐信息集中选取第i+1个推荐信息。

本申请实施例的推荐信息处理装置,通过确定推荐列表中第i个推荐信息对应的第一向量,并根据第一向量确定前i个推荐信息对应的第二向量,进而根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。由此,通过根据前一个推荐信息的向量和已完成排序的所有推荐信息的向量,来确定当前的推荐信息,实现了根据推荐信息之间的关联性来对推荐信息进行排序,有利于提高推荐列表中推荐信息的点击率,提升了用户体验。

为达上述目的,本申请第三方面实施例提出了一种计算机设备,包括:处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一方面实施例所述的推荐信息处理方法。

为达上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的推荐信息处理方法。

为达上述目的,本申请第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时实现如第一方面实施例所述的推荐信息处理方法。

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

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本申请实施例所提供的一种推荐信息处理方法的流程示意图;

图2为推荐列表中各推荐信息的位置关系示例图;

图3为本申请实施例所提供的另一种推荐信息处理方法的流程示意图;

图4为本申请实施例所提供的又一种推荐信息处理方法的流程示意图;

图5为本申请实施例所提供的再一种推荐信息处理方法的流程示意图;

图6为实现本申请的推荐信息处理方法的推荐信息排序模型的架构示例图;

图7为本申请实施例所提供的一种推荐信息处理装置的结构示意图;

图8为本申请实施例所提供的另一种推荐信息处理装置的结构示意图;

图9为本申请实施例所提供的又一种推荐信息处理装置的结构示意图;

图10为本申请实施例所提供的再一种推荐信息处理装置的结构示意图;以及

图11为本申请实施例所提供的计算机设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

下面参考附图描述本申请实施例的推荐信息处理方法、装置、计算机设备及存储介质。

图1为本申请实施例所提供的一种推荐信息处理方法的流程示意图。

如图1所示,该推荐信息处理方法可以包括以下步骤:

步骤101,确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数。

其中,推荐列表用于展示已完成排序的推荐信息,在进行推荐信息预测时,每预测出一个推荐信息,便将该推荐信息展示在推荐列表中;第i个推荐信息是推荐列表中最新展示的推荐信息。

本实施例中,预测推荐信息时,可以先确定推荐列表中第i个推荐信息对应的第一向量。

作为一种可能的实现方式,对于文本信息,在确定对应的向量时,可以对候选推荐信息中包含的词进行统计,根据候选推荐信息中包含的不重复的词,构建出词袋列表。

例如,假设候选推荐信息如下:

文本1:mydogatemyhomework.

文本2:mycatatethesandwich.

文本3:adolphinatethehomework.

则根据上述候选推荐信息,可以构建出词袋列表为:[aatecatdolphindoghomeworkmysandwichthe],该词袋列表中共包含9个不重复的词。

进而,可以基于one-hot编码,根据第i个推荐信息以及所构建的词袋列表,确定第i个推荐信息对应的第一向量。其中,第一向量的维度与词袋列表的长度一致。

仍以上述举例为例,假设第i个推荐信息为文本1,则与文本1对应的第一向量为[010011100]。

作为一种可能的实现方式,还可以利用现有模型,比如利用word2vec,将第i个推荐信息转换为对应的向量,得到第一向量。

此处需要说明的是,推荐信息中除了包括文本信息外,有的还好包括图片信息,对于包含的图片信息,可以提取出图片特征,根据提取的图片特征确定对应的图片向量,进而根据文本信息对应的文本向量和图片信息对应的图片向量,得到推荐信息对应的第一向量。比如,可以采用求和的方式,将文本向量和图片向量进行相加,得到第一向量。

步骤102,根据第一向量,确定前i个推荐信息对应的第二向量。

本实施例中,确定了第i个推荐信息的第一向量后,可以进一步根据第一向量,确定推荐列表中前i个推荐信息对应的第二向量。

作为一种可能的实现方式,确定第二向量时,可以先根据推荐列表中每个推荐信息与第i+1个推荐信息在推荐列表中的位置关系,确定每个推荐信息对应的权值。比如,根据推荐列表的展现样式,先确定第i+1个推荐信息在推荐列表中的位置,进而根据前i个推荐信息与第i+1个推荐信息之间的位置关系,确定前i个推荐信息对应的权值。其中,与第i+1个推荐信息的距离越近,对应的权值越大。

举例而言,假设推荐列表的容量为8,能够展示8个推荐信息,8个推荐信息在推荐列表中的位置关系如图2所示。假设i=3,即当前待预测第4个推荐信息,从图2中可以看出,第2个推荐信息和第3个推荐信息与展示第4个推荐信息的区域相邻,第1个推荐信息与展示第4个推荐信息的区域之间的距离较远,则可以为第1个推荐信息分配较小的权值,为第2个推荐信息和第3个推荐信息分配较大的权值,比如,第1个推荐信息对应的权值为0.2,第2个推荐信息和第3个推荐信息对应的权值均为0.4。

进而,根据每个推荐信息对应的权值及向量,确定前i个推荐信息对应的第二向量。其中,推荐列表中每个推荐信息对应的向量,可以采用与确定第i个推荐信息对应的第一向量相同的方式来确定,对于第i个推荐信息,其对应的向量即为第一向量。对于前i个推荐信息,可以先计算每个推荐信息对应的向量与权值的乘积,再将所得的i个结果进行相加,得到第二向量。

作为一种可能的实现方式,确定前i个推荐信息中,每个推荐信息分别对应的权值时,还可以根据各推荐信息的顺序,为各推荐信息分配不同的权值。比如,推荐信息的顺序越靠前,对应的权值越小。例如,假设i=3,则对于第1个推荐信息,对应的权值可以为0.2,对于第2个推荐信息,对应的权值可以为0.3,对于第3个推荐信息,对应的权值可以为0.5。进而,根据每个推荐信息对应的权值和向量,通过加权求和的方式,计算得到第二向量。

步骤103,根据第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

其中,候选推荐信息集,可以根据用户输入的搜索词确定,将根据搜索词召回的搜索结果作为候选推荐信息集;或者,也可以根据用户的历史浏览记录确定,比如根据用户对前一推荐列表、历史推荐列表的操作确定多个相关的信息,构成候选推荐信息集。需要说明的是,候选推荐信息集中不包括已展示在推荐列表中的推荐信息。

本实施例中,确定了第一向量和第二向量之后,即可根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

作为一种可能的实现方式,可以采用预先训练好的深度神经网络模型(deepneuralnetworks,dnn),将第一向量和第二向量输入至dnn模型中,并逐个输入候选推荐信息集中的每个候选推荐信息对应的向量,以得到候选推荐信息集中每个候选推荐信息分别对应的点击概率。

步骤104,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。

本实施例中,确定了每个候选推荐信息对应的点击概率之后,即可根据每个候选推荐信息对应的点击概率,从候选推荐信息集中选取出第i+1个推荐信息,并将确定的第i+1个推荐信息展示在推荐列表中。比如,将点击概率最高的候选推荐信息,确定为第i+1个推荐信息。

本实施例的推荐信息处理方法,是一个重复执行的过程,确定了第i+1个推荐信息之后,即可重复上述过程,继续确定第i+2个推荐信息,以此类推,直至展示列表中的展示区域均被占用或者候选推荐信息集中不再有候选推荐信息。

需要说明的是,当预测第一个推荐信息时,可以采用不同的方式确定推荐列表中的第一个推荐信息。

作为一种示例,当推荐列表为空(即i=0)时,可以随机生成两个向量,分别作为第一向量和第二向量。以采用词袋列表和one-hot编码的方式确定第一向量为例,可以随机生成第一向量和第二向量,其中,第一向量和第二向量的维度,与词袋列表的长度一致。进而,根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率,进而根据点击概率确定出第一个推荐信息。

作为一种示例,当推荐列表为空(即i=0)时,还可以采用传统的打分模型,对候选推荐信息集中的每个候选推荐信息进行打分,将打分最高的候选推荐信息确定为第一个推荐信息。

本实施例的推荐信息处理方法,通过确定推荐列表中第i个推荐信息对应的第一向量,并根据第一向量确定前i个推荐信息对应的第二向量,进而根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。由此,通过根据前一个推荐信息的向量和已完成排序的所有推荐信息的向量,来确定当前的推荐信息,实现了根据推荐信息之间的关联性来对推荐信息进行排序,有利于提高推荐列表中推荐信息的点击率,提升了用户体验。

实际应用中,用户通常不会在浏览完当前推荐的信息后立即离开,多数情况下,用户在浏览信息时,往往会与产品(比如浏览器)进行多次交互,以获取更多的信息。在一个时间段内,比如半小时、一小时等,从用户进入一个产品到该用户离开该产品,在这期间发生的所有信息浏览行为,可以称之为一个会话。不能理解,会话中包含的信息,能够反映出用户短时间内的兴趣,有利于有针对性的向用户推荐信息。基于此,本申请还提出了另一种推荐信息处理方法。图3为本申请实施例所提供的另一种推荐信息处理方法的流程示意图。

如图3所示,该推荐信息处理方法,可以包括以下步骤:

步骤201,确定推荐列表中第i个推荐信息对应的第一向量,其中,推荐列表为与推荐对象对应的第j个推荐列表,i和j均为正整数。

其中,推荐对象为使用推荐列表所对应终端的用户。

步骤202,根据第一向量,确定前i个推荐信息对应的第二向量。

本实施例中,对步骤201-步骤202的描述,可以参见前述实施例中对步骤101-步骤102的描述,此处不再赘述。

步骤203,确定推荐对象当前对应的会话向量。

会话是指推荐对象在某一时间段内发生的所有信息浏览行为,能够反映出推荐对象短期内的兴趣。会话中包括推荐对象点击、浏览过的信息,可以确定推荐对象点击、浏览过的信息对应的向量,进而根据所确定的向量确定会话向量。

作为一种可能的实现方式,在确定推荐对象当前对应的会话向量时,可以采用预先训练好的循环神经网络(recurrentneuralnetworks,rnn)模型,将会话过程中用户对每个推荐列表中的推荐信息的点击、浏览信息输入至rnn模型中,以得到每个推荐列表的向量,根据各推荐列表的向量,即可确定推荐对象当前对应的会话向量。其中,rnn模型可以采用单向rnn模型,以描述会话中各信息之间的时序关系,从而更好地刻画推荐对象短期内的兴趣和阅读模式。

作为一种可能的实现方式,在确定推荐对象当前对应的会话向量时,可以先根据前j个推荐列表中每个推荐信息对应的点击信息,确定前j个推荐列表中每个推荐列表对应的点击向量,进而根据前j个推荐列表中每个推荐列表对应的点击向量及前j个推荐列表的推荐顺序,确定当前对应的会话向量。例如,针对每个推荐列表,可以采用前述实施例所述的词袋列表和one-hot编码的方式,确定推荐列表中用户点击过的每个推荐信息对应的向量,进而对所得的向量进行求和,得到该推荐列表对应的点击向量。接着,根据前j个推荐列表的推荐顺序,为每个推荐列表分配对应的权值,进而采用加权求和的方式,确定当前对应的会话向量。

作为一种可能的实现方式,在确定推荐对象当前对应的会话向量时,可以先确定前j个推荐列表中,用户所有点击过的推荐信息对应的向量,进而将所得的所有向量进行求和,得到推荐对象当前对应的会话向量。

步骤204,根据当前对应的会话向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

本实施例中,确定了推荐对象当前对应的会话向量之后,即可根据当前对应的会话向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

例如,可以将会话向量、第一向量和第二向量输入至dnn模型中,并逐个输入候选推荐信息集中的每个候选推荐信息对应的向量,得到候选推荐信息集中每个候选推荐信息分别对应的点击概率。

步骤205,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。

例如,可以将候选推荐信息集中点击概率最高的候选推荐信息,确定为第i+1个推荐信息。

本实施例的推荐信息处理方法,通过确定推荐列表中第i个推荐信息对应的第一向量、前i个推荐信息对应的第二向量,以及确定推荐对象当前对应的会话向量,进而根据会话向量、第一向量和第二向量确定候选推荐信息及中每个候选推荐信息的点击概率,根据点击概率从候选推荐信息集中选取第i+1个推荐信息,由此,不仅考虑了推荐信息之间的关联性,还考虑了用户短时间内的兴趣,使得推荐列表中的推荐信息更能满足用户当前的需求,进一步提升了用户体验。

用户处于不同的场景时,浏览的信息内容有所差别。比如,在晚上休闲时间,用户对视频资源的浏览较多,而在室外网络条件较差的条件下,用户对图文信息的浏览会更多一些。因此,在进行信息推荐时,结合用户所处的场景,能够进一步满足用户在不同场景下的个性化需求。基于此,本申请提出了另一种推荐信息处理方法,图4为本申请实施例所提供的又一种推荐信息处理方法的流程示意图。

如图4所示,该推荐信息处理方法,可以包括一种步骤:

步骤301,确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数。

步骤302,根据第一向量,确定前i个推荐信息对应的第二向量。

本实施例中,对步骤301-步骤302的描述,可以参见前述实施例中对步骤101-步骤102的描述,此处不再赘述。

步骤303,确定推荐列表对应的场景向量。

其中,场景信息包括但不限于时间信息、终端设备的属性信息、网络状态、位置信息、刷新频率等。

当推荐对象处于不同的场景下时,用户所浏览的信息有所不同。例如,推荐对象所使用的终端设备的网络状态较差时,推荐对象倾向于浏览文本信息;当终端设备的网络状态较好且推荐对象处于休闲状态时,推荐对象倾向于浏览视频信息。从而,本实施例中,可以结合当前的场景信息来预测推荐信息,以使推荐信息与当前的场景匹配。具体地,可以获取当前的场景信息,进而确定推荐列表对应的场景向量。

在本申请实施例一种可能的实现方式中,确定推荐列表对应的场景向量时,可以根据推荐列表对应的时间信息、刷新频率、终端设备的属性、终端设备的位置、及终端设备的网络状态中的至少一个,确定推荐列表对应的场景向量。

作为一种示例,可以根据确定第一向量和第二向量时使用的词袋列表,确定推荐列表对应的场景向量。当场景信息为多个时,可以分别确定每个场景信息对应的向量,再对多个向量进行求和或求平均,以得到场景向量。

作为一种示例,可以预先统计可能的场景信息,并针对每个场景信息设置对应的向量,存储每个场景信息与对应向量之间的映射关系,进而,在确定推荐列表对应的场景向量时,根据场景信息,通过查询映射关系,确定对应的场景向量。当场景信息为多个时,可以分别确定每个场景信息对应的向量,再对多个向量进行求和或求平均,以得到场景向量。

步骤304,根据场景向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

本实施例中,确定了第一向量、第二向量和场景向量之后,即可根据第一向量、第二向量和场景向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

作为一种可能的实现方式,确定候选推荐信息集中每个候选推荐信息的点击概率时,可以将场景向量、第一向量和第二向量输入至预先训练好的dnn模型中,并逐个输入候选推荐信息集中的每个候选推荐信息对应的向量,得到候选推荐信息集中每个候选推荐信息分别对应的点击概率。

进一步地,在本申请实施例一种可能的实现方式中,预先训练好的dnn模型可以设置有两个预测层,在确定候选推荐信息集中每个候选推荐信息的点击概率时,可以先根据每个推荐信息对应的第三向量、第一向量及第二向量,确定每个候选推荐信息对应的初级描述向量,其中,每个推荐信息对应的第三向量,可以采用与确定第一向量相同的方式获得。接着,根据初级描述向量及场景向量,确定候选推荐信息集中每个候选推荐信息的点击概率。由此,使得在最终确定候选推荐信息的点击概率时才结合当前的场景信息,从而提高了场景信息对预测结果的影响程度,使推荐信息更加符合当前的场景。

步骤305,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。

本实施例中,确定了每个候选推荐信息的点击概率后,即可根据每个候选推荐信息的点击概率,从候选推荐信息集中确定出第i+1个推荐信息。

本实施例的推荐信息处理方法,通过确定推荐列表中第i个推荐信息对应的第一向量、前i个推荐信息对应的第二向量,以及确定推荐列表对应的场景向量,进而根据场景向量、第一向量和第二向量确定候选推荐信息及中每个候选推荐信息的点击概率,根据点击概率从候选推荐信息集中选取第i+1个推荐信息,由此,不仅考虑了推荐信息之间的关联性,还考虑了当前的场景信息,使得推荐列表中的推荐信息更能满足用户当前的需求,使用户获取的推荐列表符合当前的使用场景,进一步提升了用户体验。

不同用户浏览信息的偏好不同,比如,有的用户喜欢浏览军事类的信息,有的用户喜欢浏览汽车相关的资讯。为了实现有针对性地向用户推荐信息,满足不同用户的个性化需要,在本申请实施例一种可能的实现方式中,还可以结合用户的相关信息,向用户进行信息推荐。从而,本申请提出了另一种推荐信息处理方法,图5为本申请实施例所提供的再一种推荐信息处理方法的流程示意图。

如图5所示,该推荐信息处理方法,可以包括以下步骤:

步骤401,确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数。

步骤402,根据第一向量,确定前i个推荐信息对应的第二向量。

本实施例中,对步骤401-步骤402的描述,可以参见前述实施例中对步骤101-步骤102的描述,此处不再赘述。

步骤403,确定推荐列表对应的推荐对象的画像向量。

因推荐对象的职业、兴趣爱好不同,不同的推荐对象所关注的信息也不同。为了针对不同的推荐对象实现个性化的信息推荐,本实施例中,还可以根据推荐对象的信息确定推荐列表。其中,推荐对象的信息包括但不限于推荐对象的年龄、性别、职业等基本信息,以及推荐对象的历史浏览信息等。

本实施例中,可以先获取推荐对象的信息,进而根据推荐对象的信息确定推荐列表对应的推荐对象的画像向量。

作为一种示例,可以预先确定推荐对象的性别、年龄、兴趣爱好等基本信息对应的向量,并建立各个基本信息与对应的向量之间的映射关系,当推荐对象的信息中包括推荐对象的基本信息时,通过查询映射关系,确定基本信息对应的向量。当推荐对象的信息中包括推荐对象的历史浏览信息时,可以采用与确定第一向量相同的方式,确定历史浏览信息对应的向量。进而,将基本信息对应的向量以及历史浏览信息对应的向量,共同作为推荐对象的画像向量。

步骤404,根据推荐对象的画像向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

例如,确定候选推荐信息集中每个候选推荐信息的点击概率时,可以将推荐对象的画像向量、第一向量和第二向量输入至预先训练好的dnn模型中,并逐个输入候选推荐信息集中的每个候选推荐信息对应的向量,得到候选推荐信息集中每个候选推荐信息分别对应的点击概率。

步骤405,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。

例如,可以将候选推荐信息集中,点击概率最高的候选推荐信息,确定为第i+1个推荐信息。

本实施例的推荐信息处理方法,通过确定推荐列表中第i个推荐信息对应的第一向量、前i个推荐信息对应的第二向量,以及确定推荐对象的画像向量,进而根据画像向量、第一向量和第二向量确定候选推荐信息及中每个候选推荐信息的点击概率,根据点击概率从候选推荐信息集中选取第i+1个推荐信息,由此,不仅考虑了推荐信息之间的关联性,还考虑了用户自身的信息,实现了有针对性地信息推荐,提高了信息推荐的个性化,进一步提升了用户体验。

需要说明的是,前述实施例的推荐信息处理方法,可以单独实施,也可以组合实施,比如,结合用户的信息和场景信息进行信息推荐,或者,结合会话信息和场景信息进行信息推荐。前述各实施例仅作为示例,而不能作为对本申请的限制。

图6为实现本申请的推荐信息处理方法的推荐信息排序模型的架构示例图。如图6所示,该推荐信息排序模型包括两个全连接层和两个全卷积网络(fullyconvolutionalnetworkslayer,fcn)层,其中,fcn层用于对推荐信息进行预测,可以接收任意尺寸的输入,从而避免了输入尺寸的限制,提高了灵活性。从图6可以看出,在进行推荐信息预测时,首先将用户信息向量、候选推荐信息向量、第i个推荐信息向量、前i个推荐信息向量以及会话向量输入至第一个全连接层,并将第一个全连接层的输出结果输入至第一个fcn层,以确定初始推荐信息。其中,会话向量可以根据用户短时间内的会话信息,采用单向rnn模型来确定。经过第一个全连接层,可以学习到会话信息中包含的兴趣点分布、资源类型、展现样式等信息,以及学习到用户的个性化信息。接着,将确定的初始推荐信息和场景向量输入至第二个全连接层,并将第二个全连接层的输出结果输入至第二个fcn层,可以得到第i+1个推荐信息的点击概率。如图6中所示,在第二个全连接层处结合场景信息进行推荐信息预测,增强了场景信息对预测结果的影响,以更加体现用户在不同场景下的个性化需求。采用该推荐信息排序模型对推荐信息进行排序时,既考虑了推荐信息之间的关联性,又考虑了用户的个性化需求、不同场景下的需求以及短期的兴趣,提高了推荐信息预测的准确性和点击率,提升了用户体验。

为了实现上述实施例,本申请还提出一种推荐信息处理装置。

图7为本申请实施例所提供的一种推荐信息处理装置的结构示意图。

如图7所示,该推荐信息处理装置50包括:第一确定模块510、第二确定模块520、概率确定模块530,以及选择模块540。其中,

第一确定模块510,用于确定推荐列表中第i个推荐信息对应的第一向量,其中,i为正整数。

第二确定模块520,用于根据第一向量,确定前i个推荐信息对应的第二向量。

在本申请实施例一种可能的实现方式中,第二确定模块520具体用于根据每个推荐信息与第i+1个推荐信息在推荐列表中的位置关系,确定每个推荐信息对应的权值;根据每个推荐信息对应的权值及向量,确定前i个推荐信息对应的第二向量。

概率确定模块530,用于根据第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

选择模块540,用于根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。

在本申请实施例一种可能的实现方式中,推荐列表为与推荐对象对应的第j个推荐列表,其中,j为正整数。如图8所示,在如图7所示实施例的基础上,该推荐信息处理装置50还可以包括:

会话向量确定模块550,用于确定推荐对象当前对应的会话向量。

具体地,会话向量确定模块550用于根据前j个推荐列表中每个推荐信息对应的点击信息,确定前j个推荐列表中每个推荐列表对应的点击向量;根据前j个推荐列表中每个推荐列表对应的点击向量及前j个推荐列表的推荐顺序,确定当前对应的会话向量。

从而,本实施例中,概率确定模块530还用于根据当前对应的会话向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

通过在确定第i+1个推荐信息时,结合会话向量来确定候选推荐信息的点击概率,进而根据点击概率确定第i+1个推荐信息,不仅考虑了推荐信息之间的关联性,还考虑了用户短时间内的兴趣,使得推荐列表中的推荐信息更能满足用户当前的需求,进一步提升了用户体验。

在本申请实施例一种可能的实现方式中,如图9所示,在如图7所示实施例的基础上,该推荐信息处理装置50还可以包括:

场景向量确定模块560,用于确定推荐列表对应的场景向量。

具体地,场景向量确定模块560用于根据推荐列表对应的时间信息、刷新频率、终端设备的属性、终端设备的位置、及终端设备的网络状态中的至少一个,确定推荐列表对应的场景向量。

从而,本实施例中,概率确定模块530还用于根据场景向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

具体地,概率确定模块530用于根据每个推荐信息对应的第三向量、第一向量及第二向量,确定每个候选推荐信息对应的初级描述向量;根据初级描述向量及场景向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

通过结合推荐列表对应的场景向量来确定候选推荐信息的点击概率,进而根据点击概率来确定第i+1个推荐信息,使得在预测推荐信息时,不仅考虑了推荐信息之间的关联性,还考虑了当前的场景信息,使得推荐列表中的推荐信息更能满足用户当前的需求,使用户获取的推荐列表符合当前的使用场景,进一步提升了用户体验。

在本申请实施例一种可能的实现方式中,如图10所示,在如图7所示实施例的基础上,该推荐信息处理装置50还可以包括:

画像向量确定模块570,用于确定推荐列表对应的推荐对象的画像向量。

从而,本实施例中,概率确定模块530还用于根据推荐对象的画像向量、第一向量及第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率。

通过结合推荐对象的画像向量来确定候选推荐信息的点击概率,进而根据点击概率来确定第i+1个推荐信息,使得在预测推荐信息时,不仅考虑了推荐信息之间的关联性,还考虑了用户自身的信息,实现了有针对性地信息推荐,提高了信息推荐的个性化,进一步提升了用户体验。

需要说明的是,前述对推荐信息处理方法实施例的解释说明也适用于该实施例的推荐信息处理装置,其实现原理类似,此处不再赘述。

本申请实施例的推荐信息处理装置,通过确定推荐列表中第i个推荐信息对应的第一向量,并根据第一向量确定前i个推荐信息对应的第二向量,进而根据第一向量和第二向量,确定候选推荐信息集中每个候选推荐信息的点击概率,根据每个候选推荐信息的点击概率,从候选推荐信息集中选取第i+1个推荐信息。由此,通过根据前一个推荐信息的向量和已完成排序的所有推荐信息的向量,来确定当前的推荐信息,实现了根据推荐信息之间的关联性来对推荐信息进行排序,有利于提高推荐列表中推荐信息的点击率,提升了用户体验。

为了实现上述实施例,本申请还提出一种计算机设备,包括:处理器和存储器。其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如前述实施例所述的推荐信息处理方法。

图11为本申请实施例所提供的计算机设备的结构示意图,示出了适于用来实现本申请实施方式的示例性计算机设备90的框图。图11显示的计算机设备90仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图11所示,计算机设备90以通用计算机设备的形式表现。计算机设备90的组件可以包括但不限于:一个或者多个处理器或者处理单元906,系统存储器910,连接不同系统组件(包括系统存储器910和处理单元906)的总线908。

总线908表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrystandardarchitecture;以下简称:isa)总线,微通道体系结构(microchannelarchitecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation;以下简称:vesa)局域总线以及外围组件互连(peripheralcomponentinterconnection;以下简称:pci)总线。

计算机设备90典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备90访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器910可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory;以下简称:ram)911和/或高速缓存存储器912。计算机设备90可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统913可以用于读写不可移动的、非易失性磁介质(图11未显示,通常称为“硬盘驱动器”)。尽管图11中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compactdiscreadonlymemory;以下简称:cd-rom)、数字多功能只读光盘(digitalvideodiscreadonlymemory;以下简称:dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线908相连。系统存储器910可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。

具有一组(至少一个)程序模块9140的程序/实用工具914,可以存储在例如系统存储器910中,这样的程序模块9140包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块9140通常执行本申请所描述的实施例中的功能和/或方法。

计算机设备90也可以与一个或多个外部设备10(例如键盘、指向设备、显示器100等)通信,还可与一个或者多个使得用户能与该终端设备90交互的设备通信,和/或与使得该计算机设备90能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口902进行。并且,计算机设备90还可以通过网络适配器900与一个或者多个网络(例如局域网(localareanetwork;以下简称:lan),广域网(wideareanetwork;以下简称:wan)和/或公共网络,例如因特网)通信。如图11所示,网络适配器900通过总线908与计算机设备90的其它模块通信。应当明白,尽管图11中未示出,可以结合计算机设备90使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理单元906通过运行存储在系统存储器910中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的推荐信息处理方法。

为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如前述实施例所述的推荐信息处理方法。

为了实现上述实施例,本申请还提出一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现如前述实施例所述的推荐信息处理方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

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