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

文档序号:20769729发布日期:2020-05-15 19:30阅读:170来源:国知局
信息推荐方法、装置、存储介质及计算机设备与流程
本申请主要涉及数据处理
技术领域
,更具体地说是涉及一种信息推荐方法、装置、存储介质及计算机设备。
背景技术
:互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但随着网络的迅速发展而带来的网上信息量的大幅增长,使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了。为了解决该问题,提出了根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户的个性化信息推荐系统。以社区网站的信息推荐场景为例,目前通常是基于各帖子的点击属性,从社区存在的多个帖子中,筛除出热门的帖子,如点击量排序靠前的n个帖子,将筛选出的帖子推送给用户,这并未考虑用户真实兴趣,导致所推荐的帖子内容很可能并不是用户感兴趣的内容,同时会埋没大量有价值的帖子,不利于社区网站的运营。对此,现有技术提出了一种基于协同过滤(collaborativefiltering,简称cf)的推荐方法,即通过计算item-item(item可以是一个帖子)相似度的方式,得到与用户访问过的帖子,最相似的k个item作为推荐帖子。但是,对于如技术类社区网站,用户访问时间间隔较长,导致用户访问数据稀疏,降低了推荐效率及准确性,且若不同用户在一段时间内访问帖子item相同,但访问帖子的访问顺序不同,按照这种基于itemcf的推荐方法向不同用户推送的推荐帖子会相同,并不能实现个性化推荐,也降低了推荐准确率。技术实现要素:有鉴于此,本发明提供了一种信息推荐方法,所述方法包括:获取用户访问序列及候选对象的对象标识,所述用户访问序列由用户在应用平台上的历史访问对象的对象标识构成;将所述用户访问序列及所述候选对象的对象标识输入概率预测模型,得到当前用户对所述候选对象的目标感兴趣概率,所述概率预测模型是基于注意力机制和机器学习算法,对长期样本数据和短期样本数据进行训练得到的,所述长期样本数据是指特定时间段内产生的历史访问对象的对象标识,所述短期样本数据是指相邻上一时刻产生的历史访问对象的对象标识;基于所述候选对象的目标感兴趣概率,得到所述候选对象中的推荐对象;输出所述推荐对象。在一些实施例中,所述将所述用户访问序列及所述候选对象的对象标识输入概率预测模型,得到当前用户对所述候选对象的目标感兴趣概率,包括:基于所述用户访问序列及所述候选对象的对象标识,获取当前时刻访问所述候选对象的预测访问概率;利用所述候选对象的预测访问概率,对所述候选对象与特定时间段内产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第一感兴趣概率,对所述候选对象与上一时刻产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第二感兴趣概率;对不同候选对象分别对应的所述第一感兴趣概率和所述第二感兴趣概率进行加权求和,得到当前用户对相应候选对象的目标感兴趣概率。在一些实施例中,所述利用所述候选对象的预测访问概率,对所述候选对象与特定时间段内产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第一感兴趣概率,包括:通过注意力机制对不同用户的第一用户访问序列进行学习,得到当前用户对所述历史访问对象的第一关注度,所述第一用户访问序列由相应用户在特定时间段内访问所述应用平台上的访问对象的对象标识构成;依据所述候选对象的预测访问概率及所述第一关注度,获取相应候选对象与当前用户在所述特定时间段内访问所述应用平台上的访问对象之间的相关性,得到当前用户对相应候选对象的第一感兴趣概率;所述利用所述候选对象的预测访问概率,对所述候选对象与上一时刻产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第二感兴趣概率,包括:对不同用户的第二用户访问序列进行分析,得到当前用户对所述历史访问对象的第二关注度,所述第二用户访问序列由相应用户在上一时刻访问所述应用平台的访问对象的对象标识构成;依据所述候选对象的预测访问概率及所述第二关注度,获取相应候选对象与当前用户在上一时刻访问所述应用平台上的访问对象之间的相关性,得到当前用户对相应候选对象的第二感兴趣概率。在一些实施例中,所述候选对象的数量为多个,所述基于所述候选对象的目标感兴趣概率,得到所述候选对象中的推荐对象,包括:从多个所述候选对象中,选择目标感兴趣概率较大的特定数量个候选对象为待推荐对象;基于注意力机制和贝叶斯个性化排序算法,利用上一时刻在所述应用平台上的访问对象的对象标识,获取当前用户对所述待推荐对象的感兴趣程度排序结果;依据所述感兴趣程度排序结果,从所述待推荐对象中,筛选针对当前用户的推荐对象。在一些实施例中,所述基于所述用户访问序列及所述候选对象的对象标识,获取当前时刻访问所述候选对象的预测访问概率,包括:利用所述用户访问序列及所述候选对象的对象标识,构建概率转移矩阵;通过矩阵分解方式对所述概率转移矩阵进行处理,得到当前用户在当前时刻访问所述候选对象的预测访问概率。本申请还提出了一种信息推荐装置,所述装置包括:数据获取模块,用于获取用户访问序列及候选对象的对象标识,所述用户访问序列由用户在应用平台上的历史访问对象的对象标识构成;预测模块,用于将所述用户访问序列及所述候选对象的对象标识输入概率预测模型,得到当前用户对所述候选对象的目标感兴趣概率,所述概率预测模型是基于注意力机制和机器学习算法,对长期样本数据和短期样本数据进行训练得到的,所述长期样本数据是指特定时间段内产生的历史访问对象的对象标识,所述短期样本数据是指相邻上一时刻产生的历史访问对象的对象标识;推荐对象得到模块,用于基于所述候选对象的目标感兴趣概率,得到所述候选对象中的推荐对象;推荐对象输出模块,用于输出所述推荐对象。在一些实施例中,所述预测模块包括:预测访问概率获取单元,用于基于所述用户访问序列及所述候选对象的对象标识,获取当前时刻访问所述候选对象的预测访问概率;相关性分析单元,用于利用所述候选对象的预测访问概率,对所述候选对象与特定时间段内产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第一感兴趣概率,对所述候选对象与上一时刻产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第二感兴趣概率;目标感兴趣概率得到单元,用于对不同候选对象分别对应的所述第一感兴趣概率和所述第二感兴趣概率进行加权求和,得到当前用户对相应候选对象的目标感兴趣概率。本申请还提出了一种存储介质,其上存储有程序,所述程序被处理器调用并执行,实现如上述的信息推荐方法。本申请还提出了一种计算机设备,所述计算机设备包括:至少一个通信接口、至少一个存储器及至少一个处理器,其中:所述存储器,用于存储实现如上述的信息推荐方法的程序;所述处理器,用于加载并执行所述存储器存储的所述程序,以实现如上述的信息推荐方法的各个步骤。由此可见,与现有技术相比,本申请提供了一种信息推荐方法、装置、存储介质及计算机设备,基于注意力机制和机器学习算法进行建模,以使所构建的概率预测模型能够兼顾用户的长期兴趣和短期兴趣,将获取的用户访问序列及候选对象的对象标识输入该概率预测模型,使其在预测当前用户对各候选对象的目标感兴趣概率时,能够考虑到不同历史访问对象的访问顺序,以便准确定位用户的兴趣变迁和兴趣积累,提高所得各候选对象的目标感兴趣概率的准确性,进而提高基于各候选对象的目标感兴趣概率,得到的推荐对象的准确率,即提高了不同用户的个性化推荐准确率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1示出了本申请提出的信息推荐方法的一可选示例的流程示意图;图2示出了本申请提出的信息推荐方法的一可选示例的场景示意图;图3示出了本申请提出的信息推荐方法的又一可选示例的流程示意图;图4示出了本申请提出的信息推荐方法中,针对当前用户的概率转移矩阵的获取过程示意图;图5示出了本申请提出的信息推荐方法与现有信息方法在一可选场景下的推荐结果的f1值变化曲线示意图;图6示出了本申请提出的信息推荐方法与现有信息方法在又一可选场景下的推荐结果的f1值变化曲线示意图;图7示出了本申请提出的信息推荐装置的一可选示例的结构示意图;图8示出了本申请提出的信息推荐装置的又一可选示例的结构示意图;图9示出了本申请提出的信息推荐装置的又一可选示例的结构示意图;图10示出了本申请实施例提出的一种计算机设备的硬件结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。应当理解,本申请中使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。以下术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。另外,本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。针对
背景技术
部分描述的现有的信息推荐方法,本申请为了实现针对不同用户的个性化推荐,提高推荐准确性及灵活性,提出在获取推荐信息时,考虑用户在应用平台上的访问对象的访问顺序(如在社区网站上对各帖子的点击顺序等),据此精确定位用户自身的兴趣变迁和兴趣积累,同时还希望能够兼顾用户的长期历史兴趣和短期历史兴趣,以达到提高推荐准确性和效率,满足不同用户的个性化推荐需求的目的。基于此,本申请提出利用fpmc(factoringpersonalizedmarkovchains)模型为每一个用户设置马尔科夫链转移矩阵(即概率转移矩阵),获取用户的长期喜好和近期关注,以实现个性化推荐。但在该fpmc模型的预测过程中,通常都是依据前一时刻的访问数据,预测当前时刻的访问对象,依次类推,并未综合考虑一段时间内用户的感兴趣对象,影响了推荐结果的准确性。为了改善上述问题,本申请进一步提出将注意力机制(attentionmechanism)与fpmc算法结合,准确且高效地捕捉用户长期兴趣及短期兴趣,来完成序列推荐,提高了推荐的准确率。其中,注意力机制可以是在计算机设备的计算能力有限的情况下,将计算资源分配给更重要的任务,同时解决信息超载问题的一种资源分配方法。在神经网络学习(即一种机器学习算法)中,一般而言模型的参数越多则模型的表达能力越强,模型所存储的信息量也越大,尤其是在捕捉用户的长期兴趣时,对大量的历史访问数据进行分析,很容易造成信息过载的问题。通过引入注意力机制,在众多的输入信息中聚焦于对当前任务更为关键的信息(即用户更关注的历史访问对象),降低对其他信息的关注度,甚至过滤掉无关信息,就可以解决信息过载问题,提高信息处理效率。本申请对注意力机制的运算原理不做详述。参照图1,示出了本申请提出的信息推荐方法的一可选示例的流程示意图,该方法可以适用于计算机设备,该计算机设备可以是服务器(即推荐服务器),也可以是具有一定数据运算能力的终端设备,如笔记本电脑、台式电脑等,本申请对该计算机设备的产品类型不做限定。如图1所示,本实施例提出的信息推荐方法可以包括:步骤s11,获取用户访问序列及候选对象的对象标识;本实施例中,用户访问序列可以是由用户在应用平台上的历史访问对象的对象标识构成,且这些对象标识是按照历史访问对象的访问时间顺序排列的。该对象标识可以是用于区别不同访问对象的标识信息,具有唯一特性,具体可以是对象id等,本申请对该对象标识的内容不做限定。在实际应用中,用户通过终端设备对应用平台输出的对象进行访问,即用户点击应用平台输出的对象,会产生相应的历史访问数据,该历史访问数据可以存在该终端设备或该应用平台对应的应用服务器中,因此,计算机设备可以从该终端设备或应用服务器中,获取该用户的历史访问数据,该历史访问数据可以包括:各种访问时间对应的历史访问对象的内容及对象标识等信息,之后,计算机设备可以利用该历史范围数据中的历史访问对象的对象标识,生成该用户的用户访问序列。需要说明,关于上述用户访问序列的生成方式并不局限于上文描述的实现方法。而且,基于上文对本申请发明构思的描述,本申请需要捕获用户长期兴趣和短期兴趣,因此,在生成用户访问序列时,需要获取相对较长时间段(记为特定时间段)对应的历史访问数据,按照上述方式,由此生成能够包含该较长时间段内的历史访问对象的对象标识的用户访问序列,保证后续对其进行分析,得到用户的长期兴趣。本申请对上述特定时间段的具体时间不做限定,如从当前时间开始算的过去三个月或6个月等,该特定时间段可以依据具体推荐场景,以及用户对推荐准确率要求等因素确定,还可以根据实际情况进行调整,本申请对预先配置该特定时间段的方法不作详述。基于上述分析,若用xi表示特定时间段内存储的第i个历史访问对象的对象标识,计算机设备获取的用户访问序列可以为[x1,x2,x3,…,xi,…],该用户访问序列包含的元素个数,可以依据该特定时间段内存储的历史访问对象的个数确定。应该理解,由于该用户访问序列是按照访问时间顺序排列,对其进行分析,能够精确定位用户的兴趣变化和兴趣积累。对于步骤s11获取的候选对象可以是从应用平台能够输出的所有对象中,预先筛选出的当前用户未曾访问过的应用平台输出的对象,具体可以是应用平台上访问率较大的对象、最近社区网站中的热门话题相关的对象、最近一段时间访问量较多的对象、或者随机在应用平台输出对象采集到的对象等等,本实施例对选择候选对象的方式不作限定,且对于该候选对象的选择可以由应用服务器、计算机设备或终端设备实现,本申请对该候选对象的来源及其个数不做限定。应该理解的是,由于用户兴趣或热门话题等通常会随着时间变化而改变,所以,按照上述方式预先选择出的候选对象也可能会随着时间推移而不断更新,以提高后续据此确定推荐对象的准确率,本申请对该候选对象的更新方法不做限定。步骤s12,将用户访问序列及候选对象的对象标识输入概率预测模型,得到当前用户对各候选对象的目标感兴趣概率;本实施例中,概率预测模型可以是基于注意力机制和机器学习算法,对长期样本数据和短期样本数据进行训练得到的,本申请对该概率预测模型的训练过程不做详述。其中,长期样本数据可以是指特定时间段内产生的历史访问对象的对象标识,短期样本数据是指相邻上一时刻产生的历史访问对象的对象标识。在一种可能的实现方式中,结合上文对本申请发明构思的描述,训练上述概率预测模型所依据的机器学习算法可以是fpmc算法,所以,本申请可以依据该fpmc算法和注意力机制的运算原理,对长期样本数据和短期样本数据进行不断训练,得到上述概率预测模型。步骤s13,基于各候选对象的目标感兴趣概率,得到候选对象中的推荐对象;步骤s14,输出推荐对象。在本申请实际应用中,由于候选对象的目标感兴趣概率越大,说明用户长期和短期内对该候选对象的越感兴趣,即关注度越高,当前时刻越可能选择其进行访问,因此,本实施例可以依据各候选对象的目标感兴趣概率的大小,从多个候选对象中,选择出特定个数目标感兴趣概率较大的候选对象作为召回对象,之后,计算机设备的推荐系统中的精选逻辑可以从多个召回对象中,筛选出用户可能感兴趣的至少一个推荐对象,发送至用户客户端输出。其中,对于上述推荐系统中的精选逻辑的具体实现过程本申请不做限定,可以参照但并不局限于下文实施例相应部分的描述,另外,结合上文对计算机设备的产品类型的描述,对于不同类型的计算机设备,对步骤s14的具体实现方式可能不同,如将得到的推荐对象发送至其他终端设备显示,将推荐对象保存至预设存储目录,通过显示屏输出推荐对象等等,可以根据实际情况确定,本申请不做一一详述。综上所述,在本实施例中,结合注意力机制和机器学习算法进行建模,以使所构建的概率预测模型能够兼顾用户的长期兴趣和短期兴趣,同时采用序列的方式获得模型输入,即获取用户访问序列及候选对象的对象标识作为模型输入进行预测,考虑到不同历史访问对象的访问顺序,能够更准确定位用户的兴趣变迁和兴趣积累,提高所得各候选对象的目标感兴趣概率的准确性,进而提高基于各候选对象的目标感兴趣概率,得到的推荐对象的准确率,即提高了不同用户的个性化推荐准确率。提高个性化推荐准确率。基于上述分析,以计算机设备为推荐服务器,用户使用终端设备访问社区网站a的应用场景为例,来说明推荐服务器如何为该用户推送其可能感兴趣的推荐帖子。参照图2所示的场景流程示意图,用户可以在终端设备上访问社区网站a,即访问该社区网站对应的应用服务器,访问过程中所产生的历史访问数据可以存储至应用服务器,如用户可以从社区网站a输出的各帖子中,点击一个或多个帖子,产生相应的点击记录,其包括点击时间、点击帖子id等信息,这些信息作为历史访问数据可以存储至应用服务器或终端设备,本申请在此仅以存储至应用服务器为例进行说明。在用户观看社区网络a输出的帖子时,推荐服务器可以按照上述实施例描述的方式,从应用服务器中获取该用户id对应的特定时间段内的历史访问数据,并利用其包含的历史点击帖子的帖子id构成用户访问序列。且,该推荐服务器还可以从应用服务器包含的多个该用户未点击过的帖子中,初步筛选出多个候选帖子,该候选帖子可以随着时间推移不断更新,具体实现过程不做详述。之后,推荐服务器可以将由多个历史点击帖子的帖子id依序构成的用户访问序列,及多个候选帖子的帖子id输入预先训练得到的概率预测模型,可以得到该用户对每一候选帖子感兴趣的目标感兴趣概率,之后,可以依据各候选帖子各自的目标感兴趣概率,从多个候选帖子中确定出针对该用户的推荐帖子,利用该用户id,直接将该推荐帖子发送至该用户的终端设备输出。当然,该终端设备也可以输出相应的提示信息,检测到用户查看推荐帖子的确定指令后,再输出相应的推荐帖子,本申请对推荐帖子的具体输出方式不做限定。当然,如图2所示,推荐服务器得到针对该用户的推荐帖子中,可以通过应用服务器反馈至该用户的终端设备输出,本申请对如何针对用户的至少一个推荐帖子反馈至用户社区网站a输出的具体实现方式不做限定。需要说明,在一些实施例中,上述应用服务器与推荐服务器可以是同一计算机设备,即可以在社区网站a的应用服务器中部署推荐系统,将其作为推荐服务器使用;当然,在又一些实施例中,上述推荐服务器与终端设备可以是同一计算机设备,本申请对此不做限定,可以根据实际需求确定。另外,如图2中,推荐服务器为不同用户推送个性化的推荐帖子的实现过程类似,但由于不同用户对应的用户访问序列不同,即便在特定时间段内,多个用户所点击查看的帖子类型相同,因查看帖子的点击顺序往往不同,按照上述方式,向这多个用户各自推送的推荐帖子也会不同。参照图3,示出了本申请提出的信息推荐方法的又一可选示例的流程示意图,本实施例可以是对上述实施例描述的信息推荐方法的一可选细化实现方式,如图3所示,本实施例提出的信息推荐方法可以包括:步骤s21,获取用户访问序列及候选对象的对象标识;关于用户访问序列的内容及其获取方式,以及候选对象的对象标识的获取方式,可以参照上述实施例相应部分的描述。步骤s22,基于用户访问序列及候选对象的对象标识,获取当前时刻访问候选对象的预测访问概率;结合上文对本申请发明构思的描述,本申请为了实现个性化推荐,将为每一个用户构建一个概率转移矩阵,该概率转移矩阵的组成元素即为该用户当前时刻访问候选对象的预测访问概率,可见,步骤s22实际上是为当前用户构建概率转移矩阵的过程,本申请对该概率转移矩阵的具体构建过程不做详述。假设用户1在t-3时刻对社区网站输出的帖子a、帖子b和帖子c进行了点击访问,在t-2时刻对该社区网站输出的帖子b和帖子c进行了点击访问,在t-1时刻对该社区网站输出的帖子a和帖子b进行了点击访问,本申请需要据此预测该用户在t时刻会对该社区网站输出的哪一个或多个帖子进行点击访问,具体的,本申请可以利用这些历史数据,预测t时刻用户对该社区网站输出的未被点击过的每一个候选帖子进行点击访问的概率。具体的,为了精准定位该用户的兴趣迁移和兴趣积累,如图4所示概率转移矩阵获取过程示意图,本申请可以利用该用户t-3时刻的点击访问帖子,获得t-2时刻该用户点击各候选帖子的概率;利用该用户t-2时刻的点击访问帖子,获得t-1时刻该用户点击各候选帖子的概率,依次类推,最终获得t时刻该用户点击各候选帖子的概率。在实际应用中,如图4所示,所得概率转移矩阵的数据比较稀疏,对此,本申请将通过矩阵分解的方式,将稀疏矩阵拟合成稠密矩阵,以确定如图4中问号所对应位置的预测访问概率,具体实现过程本申请不作详述。基于上述分析,上述步骤s22可以包括:利用用户访问序列及候选对象的对象标识,构建概率转移矩阵,通过矩阵分解方式对概率转移矩阵进行处理,得到当前用户在当前时刻访问候选对象的预测访问概率。在一些实施例中,根据具体应用场景的需求,本申请还可以将注意力机制与传统的矩阵分解方式结合,以提高矩阵分解后所得当前时刻该用户访问候选对象的预测访问概率的准确性。步骤s23,利用候选对象的预测访问概率,对候选对象与特定时间段内产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第一感兴趣概率;结合上述对本申请发明构思的分析,本申请将注意力机制与fpmc算法结合,对针对该用户构建概率转移矩阵进行分析,获得长期以来该用户对社区网站输出的什么对象感兴趣,以及最近对该社区网站输出的什么对象感兴趣。结合上述对注意力机制与fpmc算法的描述,对于该用户长期兴趣的分析,本申请将结合注意力机制实现。在一种可能的实现方式中,可以获取访问该社区网站的不同用户的历史访问数据,按照上述方式,获得不同用户各自对应的用户访问序列,记为第一用户访问序列,可见,该第一用户访问序列由相应用户在特定时间段内访问应用平台(即社区网站所在应用平台)上的访问对象的对象标识构成,具体生成过程不做详述。计算机设备可以通过注意力机制对不同用户的第一用户访问序列进行学习,得到当前用户对其历史访问对象的第一关注度,本申请对如何利用注意力机制学习得到第一关注度的实现过程不做详述,可以结合注意力机制的运算原理确定。其中,当前用户在特定时间段内的历史访问对象通常是多个,按照这种处理方式,可以得到当前用户在特定时间段内对多个历史访问各自的第一关注度,由此生成相应的关注度向量。之后,计算机设备可以利用上述得到的多个候选对象各自的预测访问概率及多个历史访问对象各自的第一关注度,获取相应候选对象与当前用户在特定时间段内访问应用平台上的访问对象之间的相关性,即获取各候选对象与特定时间段内的历史访问对象之间的关联程度,以此可以得到当前用户在特定时间段内的稳定兴趣即长期兴趣,为了方便后续处理,可以依据该相关性分析结果,得到当前用户对相应候选对象的第一感兴趣概率。可选的,在得到多个候选对象各自与当前用户在特定时间段内访问应用平台上的访问对象之间的相关性分析结果后,由于该特定时间段通常是从当前时刻的相邻上一时刻开始确定的一段连续时间,其包含了当前用户近期访问对象,本实施例直接对得到的每一个候选对象与多个历史访问对象之间的多个相关性分析结果取平均,该平均值更能够表明当前用户对该候选对象的稳定兴趣,以使得依据该平均值,得到的该候选对象的第一感兴趣概率更加准确。应该理解的是,候选对象的第一感兴趣概率越大,说明该候选对象与该用户在过去特定时间段内的历史访问对象之间的关联程度越高,即该候选对象与该用户在特定时间段内关注对象越相似,该候选对象越可能是该用户当前时刻感兴趣的对象。本申请对第一感兴趣概率与上述相关性分析结果之间的具体对应关系不做限定,如若相关性分析结果为分数,该第一感兴趣概率也可以是相应的分数,或者是基于该分数按照一定比例关系生成的概率值等等。步骤s24,利用候选对象的预测访问概率,对候选对象与上一时刻产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第二感兴趣概率;参照上述步骤s23相应部分的描述,步骤s24所执行的内容,主要是用来获取当前用户近期兴趣,即当前时刻各候选对象与上一时刻的各历史访问对象的关联程度。在一种可能的实现方式中,可以利用一阶马尔可夫链实现步骤s24的内容,具体的,对不同用户的第二用户访问序列进行分析,得到当前用户对上一时刻的历史访问对象的第二关注度,该第二用户访问序列由相应用户在上一时刻访问应用平台的访问对象的对象标识构成,与上述第一用户访问序列的生成过程类似,不做详述。可见,该第二关注度表明的是当前用户对上一时刻各历史访问对象的感兴趣程序,之后,依据各候选对象的预测访问概率,及上一时刻各历史访问对象对应的第二关注度,获取相应候选对象与当前用户在上一时刻访问应用平台上的访问对象之间的相关性,得到当前用户对相应候选对象的第二感兴趣概率。由于该相关性分析与上述步骤s23相应部分的长期兴趣分析过程类似,本申请对当前用户的短期兴趣的分析过程不再赘述。步骤s25,对不同候选对象分别对应的第一感兴趣概率和第二感兴趣概率进行加权求和,得到当前用户对相应候选对象的目标感兴趣概率;继上述分析,第一感兴趣概率是通过对当前用户的长期兴趣(如特定时间段内的对象访问兴趣)分析得到的,第二感兴趣概率是通过对当前用户的短期兴趣(如上一时刻的对象访问兴趣)分析得到的,所以,本实施例结合该第一感兴趣概率和第二兴趣概率,确定当前用户对相应候选对象的目标感兴趣概率,使得该目标感兴趣概率兼具了当前用户的长期兴趣和短期兴趣,进而使得据此确定出的推荐对此更加准确可靠。其中,在获取某一候选对象的目标感兴趣概率时,对相应候选对象的第一感兴趣概率和第二感兴趣概率各自的权重,可以依据实际需求确定,本申请对权重具体数值不做限定。步骤s26,从多个候选对象中,选择目标感兴趣概率较大的特定数量个候选对象为待推荐对象;通常情况下,社区网站输出的可供用户访问的对象数量非常多,且会随着时间推移而不断增加,本实施例初选的候选对象的数量往往也会很多,需要对其做进一步筛除,以便快速且准确得到针对当前用户的推荐对象。因此,本实施例按照上述方式得到多个候选对象各自的目标感兴趣概率,即结合当前用户的长期兴趣和短期兴趣,预测出当前用户当前时刻对各候选对象感兴趣的概率后,可以据此从多个候选对象中,筛选出长期感兴趣、短期感兴趣的候选对象为待推荐对象,本实施例对步骤s26的具体实现过程不做限定。在一些实施例中,可以按照各候选对象的目标感兴趣概率,可以经过排序后,再选择特定数量个目标感兴趣概率较大的候选对象为待推荐对象,即推荐系统中的召回对象。或者,直接选择目标感兴趣概率大于特定概率阈值的候选对象为待推荐对象等等。步骤s27,基于注意力机制和贝叶斯个性化排序算法,利用上一时刻在应用平台上的访问对象的对象标识,获取当前用户对待推荐对象的感兴趣程度排序结果;在一些实施例中,按照上述方式从大量候选对象中召回当前用户可能感兴趣的待推荐对象后,可以使用贝叶斯个性化排序(bayesianpersonalizedranking,bpr)方式,对待推荐对象进行排序,具体的可以简化上述从多个候选对象中筛选待推荐对象所使用的fpmc算法,以实现对待推荐对象的高效排序,具体实现过程可以依据该贝叶斯个性化排序的运算原理确定。其中,这种贝叶斯个性化排序方式的实现,是在假设每个用户之间的偏好行为相互独立,即用户在访问对象i和访问对象j之间的偏好和其他用户无关;而且,同一用户对不同物品的偏好星湖独立,即用户在访问对象i和访问对象j之间的偏好和其他访问对象无关。本实施例可以在这两个假设条件的基础上,通过贝叶斯个性化排序方式,实现对得到的多个待推荐对象的个性化排序,得到当前用户对多个待推荐对象的排序得分,并按照该排序得分对多个待推荐对象进行排序。该排序得分大小可以表明当前用户对相应待推荐对象感兴趣的概率,排序得分越大,当前用户对相应待推荐对象感兴趣的概率越大,本申请对如何利用贝叶斯个性化排序方式,实现对多个待推荐对象的排序的具体过程不做详述。由于在实际应用中,由于用户当前时刻对访问对象的兴趣偏好并不会突变,通常与上一时刻的兴趣偏好相同,所以,为了提高排序效率,对于召回的待推荐对象,基于注意力机制,仅利用当前用户在上一时刻在应用平台上的访问对象的对象标识,获得当前用户对多个待推荐对象的感兴趣概率,并按照该感兴趣概率,实现对多个待推荐对象的排序,得到当前用户对待推荐对象的感兴趣程度排序结果,具体实现过程不做详述。可以结合上文获取待推荐对象过程中,如何利用注意力机制对用户长期兴趣进行分析,确定本实施例此处利用注意力机制对用户短期兴趣进行分析的过程。基于上述步骤s22至步骤s27的描述的信息推荐处理方法,即将用户访问序列及候选对象的对象标识输入概率预测模型,如何得到当前用户对候选对象的目标感兴趣概率的具体实现方法,本申请可以按照这种方法,对长期样本数据和短期样本数据进行训练,以得到概率预测模型,具体训练过程不再详述。步骤s28,依据感兴趣程度排序结果,从待推荐对象中,筛选针对当前用户的推荐对象;步骤s29,输出该推荐对象。关于步骤s28具体可以是依据感兴趣程度排序结果,从待推荐对象中,筛选出当前用户感兴趣程度较高的一定个数推荐对象,反馈至用户客户端展示,或者,筛选出感兴趣程度达到特定阈值的推荐对象输出,具体实现过程不做详述,可以参照但并不局限于图2所示场景实施例描述的实现方式。综上所述,本实施例中,在推荐系统中的召回阶段,本实施例利用注意力机制,获取当前用户对应用平台输出的历史访问对象的长期兴趣,即对各候选对象与特定时间段内的历史访问对象的相关性进行分析,以获取该长期兴趣;并利用如一阶马尔科夫链来获取当前用户对应用平台输出的历史访问对象的短期兴趣,即对各候选对象与上一时刻的历史访问对象的相关性进行分析,以获取该短期兴趣,之后,对表征长期兴趣的第一感兴趣概率和表征短期兴趣的第二感兴趣概率进行加权求和,得到当前用户对各候选对象的目标感兴趣概率,并据此筛选出推荐系统召回的目标感兴趣概率较大的特定数量的待推荐对象。可见,该待推荐对象兼顾了用户的长期兴趣和短期兴趣,提高了推荐系统所召回的待推荐对象的全面性及准确性。在推荐系统的排序阶段,本实施例结合注意力机制,从召回的待推荐对象中,筛选当前用户短期更感兴趣的推荐对象,反馈至当前用户,由于待推荐对象同时兼顾了用户长期兴趣和短期兴趣,在此基础上,从用户短期兴趣角度考虑,再从中选择用户当前时刻可能感兴趣的推荐对象,极大提高了推荐准确率及可靠性。基于上述各实施例对本申请提出的信息推荐方法,本申请这种信息推荐方法,即兼顾用户长期兴趣和短期兴趣,使用注意力机制和fpmc算法实现的信息推荐方法,记为第一信息推荐方法,与基于传统fpmc算法实现的信息推荐的方法,记为第二信息推荐方法,以及基于用户长期兴趣,使用fpmc算法实现的信息推荐的方法,记为第三信息推荐方法,在一公开的movielens数据集,即关于电影评分的数据集,以及某社区网站登录用户点击数据上进行测量,所得测试结果如下:在movielens数据集上的测试结果:信息推荐方法topn正确率召回率f1值第二信息推荐方法125.251.633.06第一信息推荐方法128.331.923.60第三信息推荐方法128.011.843.45第二信息推荐方法322.144.277.16第一信息推荐方法324.554.667.83第三信息推荐方法324.564.637.79第二信息推荐方法520.516.389.73第一信息推荐方法522.937.0310.76第三信息推荐方法522.796.9310.63表1由上表1可知,对于上述列举的几种信息推荐方法的比较,可以从准确率(即上述正确率)、精确率、召回率、f1值等指标进行分析。准确率可以是预测正确的结果占总样本的百分比;该精准率可以是在被所有预测为正的样本中实际为正样本的概率,即推荐对象中为用户实际访问对象的概率,其表征整体的预测准确程度;召回率可以是实际为正的样本中被预测为正样本的概率,即实际访问对象中为待推荐对象的概率;f1值即f1分数,可以是同时考虑精准率和召回率,让两者同时达到最高,取得平衡时,该平衡点的分数,本申请对这几个指标的获取方法不做详述。基于此,无论最终所得推荐对象的数量(topn)是多少个,基本都是本申请提出的第一信息推荐方法的正确率最高,即便在选取top3的情况下,第三种信息推荐方法的正确率略高于第一种信息推荐方法,但第一种信息推荐方法的召回率和f1值,均高于第三种信息推荐方法的召回率和f1值;且,从f1值这一指标来看,如图5所示的f1值变化曲线图,按照本申请提出的这种信息推荐方法,向用户推送的推荐对象更能够符合用户需求。同理,某社区网站登录用户点击数据(如点击帖子)上的测试结果:信息推荐方法topn正确率召回率f1值第二信息推荐方法118.494.557.30第一信息推荐方法118.764.777.61第三信息推荐方法118.544.687.47第二信息推荐方法314.0910.3511.93第一信息推荐方法314.5610.3612.11第三信息推荐方法314.1510.3811.98第二信息推荐方法511.9314.4313.06第一信息推荐方法512.3314.5713.36第三信息推荐方法512.1114.4613.18表1结合表1内的数据,以及图6所示的不同信息推荐系统对应的社区书记的f1值得变化曲线,可知,按照本申请提出的这种信息推荐方法,向用户推送的推荐社区书记更能够符合用户需求。参照图7,示出了本申请提出的信息推荐装置的一可选示例的结构示意图,该装置可以适用于计算机设备,该装置可以包括:数据获取模块11,用于获取用户访问序列及候选对象的对象标识,所述用户访问序列由用户在应用平台上的历史访问对象的对象标识构成;预测模块12,用于将所述用户访问序列及所述候选对象的对象标识输入概率预测模型,得到当前用户对所述候选对象的目标感兴趣概率;其中,概率预测模型是基于注意力机制和机器学习算法,对长期样本数据和短期样本数据进行训练得到的,所述长期样本数据是指特定时间段内产生的历史访问对象的对象标识,所述短期样本数据是指相邻上一时刻产生的历史访问对象的对象标识;推荐对象得到模块13,用于基于所述候选对象的目标感兴趣概率,得到所述候选对象中的推荐对象;推荐对象输出模块14,用于输出所述推荐对象。在一些实施例中,如图8所示,上述预测模块12可以包括:预测访问概率获取单元121,用于基于所述用户访问序列及所述候选对象的对象标识,获取当前时刻访问所述候选对象的预测访问概率;在一种可能的实现方式中,该预测访问概率获取单元121可以包括:概率转移矩阵构建单元,用于利用所述用户访问序列及所述候选对象的对象标识,构建概率转移矩阵;预测访问概率得到单元,用于通过矩阵分解方式对所述概率转移矩阵进行处理,得到当前用户在当前时刻访问所述候选对象的预测访问概率。相关性分析单元122,用于利用所述候选对象的预测访问概率,对所述候选对象与特定时间段内产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第一感兴趣概率,对所述候选对象与上一时刻产生的历史访问对象进行相关性分析,得到当前用户对所述候选对象的第二感兴趣概率;在一种可能的实现方式中,上述相关性分析单元122可以包括:第一关注度得到单元,用于通过注意力机制对不同用户的第一用户访问序列进行学习,得到当前用户对所述历史访问对象的第一关注度,所述第一用户访问序列由相应用户在特定时间段内访问所述应用平台上的访问对象的对象标识构成;第一相关性获取单元,用于依据所述候选对象的预测访问概率及所述第一关注度,获取相应候选对象与当前用户在所述特定时间段内访问所述应用平台上的访问对象之间的相关性,得到当前用户对相应候选对象的第一感兴趣概率;第二关注度得到单元,用于对不同用户的第二用户访问序列进行分析,得到当前用户对所述历史访问对象的第二关注度,所述第二用户访问序列由相应用户在上一时刻访问所述应用平台的访问对象的对象标识构成;第二相关性获取单元,用于依据所述候选对象的预测访问概率及所述第二关注度,获取相应候选对象与当前用户在上一时刻访问所述应用平台上的访问对象之间的相关性,得到当前用户对相应候选对象的第二感兴趣概率。目标感兴趣概率得到单元123,用于对不同候选对象分别对应的所述第一感兴趣概率和所述第二感兴趣概率进行加权求和,得到当前用户对相应候选对象的目标感兴趣概率。通常情况下,预先筛选得到的候选对象的数量为多个,在这种情况下,如图9所示,上述推荐对象得到模块13可以包括:待推荐对象选择单元131,用于从多个所述候选对象中,选择目标感兴趣概率较大的特定数量个候选对象为待推荐对象;排序单元132,用于基于注意力机制和贝叶斯个性化排序算法,利用上一时刻在所述应用平台上的访问对象的对象标识,获取当前用户对所述待推荐对象的感兴趣程度排序结果;推荐对象筛选单元133,用于依据所述感兴趣程度排序结果,从所述待推荐对象中,筛选针对当前用户的推荐对象。需要说明的是,关于上述各装置实施例中的各种模块、单元等,均可以作为程序模块存储在存储器中,由处理器执行存储在存储器中的上述程序模块,以实现相应的功能,关于各程序模块及其组合所实现的功能,以及达到的技术效果,可以参照上述方法实施例相应部分的描述,本实施例不再赘述。本申请还提供了一种存储介质,其上可以存储程序,该程序可以被处理器调用并加载,以实现上述实施例描述的信息推荐方法的各个步骤。参照图10,示出了本申请实施例提出的一种计算机设备的硬件结构示意图,该计算机设备可以包括:至少一个通信接口21、至少一个存储器22及至少一个处理器23,其中:通信接口21可以为通信模块的接口,如gsm模块、wifi模块、gprs模块等通信模块的接口,可以实现与其他设备的数据交互,还可以包括如usb接口、串/并口等接口,用于实现计算机设备内部组成部件之间的数据交互,可以根据该计算机设备的产品类型确定,本申请不做一一详述。存储器22,用于存储实现上述任一方法实施例描述的信息推荐方法的程序;处理器23,用于加载并执行存储器22存储的程序,以实现上述相应方法实施例描述的信息推荐方法的各个步骤,具体实现过程可以参照上述实施例相应部分的描述。在本申请实施例中,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。处理器23,可以为中央处理器(centralprocessingunit,cpu)、特定应用集成电路(application-specificintegratedcircuit,asic)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件等。在一种可能的实现方式中,存储器22可以包括程序存储区和数据存储区,该程序存储区可以存储操作系统、以及至少一个功能所需的应用程序、实现本申请提出的信息推荐方法的程序等;数据存储区可以存储计算机设备使用过程中所产生的数据,如用户访问社区网站的历史访问数据、候选对象、推荐对象等。应该理解的是,图10所示的计算机设备的结构并不构成对本申请实施例中计算机设备的限定,在实际应用中,计算机设备可以包括比图10所示的更多或更少的部件,或者组合某些部件,本申请在此不做一一列举。最后,需要说明,本说明书中各个实施例采用递进或并列的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法对应,所以描述的比较简单,相关之处参见方法部分说明即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1