CN111310046B - 对象推荐方法及装置 - Google Patents
对象推荐方法及装置 Download PDFInfo
- Publication number
- CN111310046B CN111310046B CN202010097745.XA CN202010097745A CN111310046B CN 111310046 B CN111310046 B CN 111310046B CN 202010097745 A CN202010097745 A CN 202010097745A CN 111310046 B CN111310046 B CN 111310046B
- Authority
- CN
- China
- Prior art keywords
- time
- historical
- objects
- real
- scoring
- 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.)
- Active
Links
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
Abstract
本申请涉及一种对象推荐方法及装置,属于计算机技术领域,该方法包括:获取目标用户对对象的历史评分数据、历史评分时间和对象的属性信息;基于历史评分数据、历史评分时间和属性信息,确定各个对象之间的对象相似度矩阵;获取目标用户历史关注的历史目标对象和目标用户当前关注的实时目标对象;基于对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到目标用户的第一推荐列表;向目标用户推送第一推荐列表;可以解决现有的协同过滤算法的对象推荐准确性较低的问题;由于能够充分挖掘用户‑对象评分矩阵的潜在信息,并且能够利用对象属性信息确定对象相似度矩阵,因此可以提高推荐结果的准确度。
Description
技术领域
本申请涉及对象推荐方法及装置,属于计算机技术领域。
背景技术
随着互联网技术的发展,数据信息以指数级别的速度爆炸增长,人们面临严重的“信息过载”问题。搜索引擎和推荐系统是解决“信息过载”的两种常用工具。用户如果有明确的目标或需求,利用搜索引擎检索数据是比较方便有效的方式。用户在浏览新闻、网上购物和观看电影等场景下往往更希望“被动”地了解自己感兴趣的内容,推荐系统提供的个性化推荐能较好的满足用户这一需求。
推荐引擎的核心是推荐算法。传统的个性化推荐方法包括协同过滤推荐。协同过滤算法通过收集用户行为数据,分析用户偏好,从而为用户推荐潜在感兴趣的物品。
然而,传统的协同过滤算法存在数据稀疏性问题,即在用户-物品评分矩阵中,用户对物品评分的数据很少,导致用户之间或物品之间的相似度计算不准确,从而导致推荐的准确度不高。
发明内容
本申请提供了一种对象推荐方法及装置,可以解决现有的协同过滤算法的对象推荐准确性较低的问题。本申请提供如下技术方案:
第一方面,提供了一种对象推荐方法,所述方法包括:
获取目标用户对对象的历史评分数据、历史评分时间和所述对象的属性信息;
基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵;
获取所述目标用户历史关注的历史目标对象和所述目标用户当前关注的实时目标对象;
基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表;
向所述目标用户推送所述第一推荐列表。
可选地,所述方法还包括:
确定是否向所述目标用户推荐目标对象的第二推荐列表;
在确定向所述目标用户推荐目标对象的第二推荐列表时,基于所述目标对象的对象标识和所述对象相似度矩阵确定所述目标对象的相似对象,得到所述目标用户的第二推荐列表;
向所述目标用户推送所述第二推荐列表。
可选地,所述基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵,包括:
基于预设的评分偏好转换模型将所述历史评分数据转换为所述目标用户对所述对象的历史偏好数据;
基于所述历史评分时间、所述历史偏好数据和预设的评分相似度公式,计算各个对象之间的评分相似度;
基于所述属性信息确定各个对象之间的属性相似度;
结合所述评分相似度和所述属性相似度得到所述对象相似度矩阵。
可选地,所述基于所述历史评分时间、所述历史偏好数据和预设的评分相似度公式,计算各个对象之间的评分相似度,包括:
对于任意两个对象,基于所述两个对象的历史评分时间计算所述两个对象的时间权重因子;
将所述时间权重因子、所述两个对象的历史偏好数据、所述两个对象的偏好数据平均值、分别给所述两个对象评分的第一用户集合和同时给所述两个对象评分的第二用户集合输入所述评分相似度公式,得到所述各个对象之间的评分相似度。
可选地,所述评分相似度公式通过下式表示:
其中,r_simi,j表示对象i和j之间的评分相似度,ti,j为对象i和j的时间权重因子,tu,i,tu,j分别表示目标用户u对对象i和j的历史评分时间,ru,i、ru,j分别表示目标用户u对对象i和j的历史偏好数据,分别表示对象i和k的历史偏好数据平均值,Ui,Uj分别表示给对象i和j评分的第一用户集合,Ui,j表示同时给对象i和j评分的第二用户集合。
可选地,所述评分偏好转换模型通过下式表示:
其中,pref(u,Ci)表示用户u对评分类别Ci的偏好得分;pref>(Ci,Cj)表示用户u评分为Cj的数量,其中Cj<Ci;|Ru|表示用户u的评分数量;pref=(Ci)表示用户u评分为Ci的数量;和β为常数。
可选地,所述基于所述属性信息确定各个对象之间的属性相似度通过下式表示:
其中,|Ni|、|Nj|分别表示对象i和对象j的属性信息个数,|Ni∩Nj|表示对象i和对象j都具有的属性信息个数。
可选地,所述基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表,包括:
对于每个历史目标对象,在所述对象相似度矩阵中确定与所述历史目标对象相似的k个历史相似对象,所述k为正整数;
对于每个历史相似对象,计算所述历史目标对象与所述历史相似对象之间的相似度乘以所述目标用户对所述历史相似对象的历史偏好数据的积,得到所述目标用户对每个历史相似对象的第一偏好数据;
在各个历史目标对象对应的历史相似对象的第一偏好数据中,将排列在前x位的第一偏好数据所对应的历史相似对象确定为推荐历史对象,所述x为正整数;
对于每个实时目标对象,在所述对象相似度矩阵中确定与所述实时目标对象相似的l个实时相似对象,所述l为正整数;
对于每个实时相似对象,计算所述实时目标对象与所述实时相似对象之间的相似度乘以所述目标用户对所述实时相似对象的实时偏好数据的积,得到所述目标用户对每个实时相似对象的第二偏好数据;
在各个实时目标对象对应的实时相似对象的第二偏好数据中,将排列在前y位的第二偏好数据所对应的实时相似对象确定为推荐实时对象,所述第一推荐列表包括所述推荐历史对象和所述推荐实时对象;所述y为正整数。
可选地,所述方法还包括:
获取所述目标用户的历史行为数据;
将所述历史行为数据转换为所述历史评分数据。
第二方面,提供了一种对象推荐装置,所述装置包括:
数据获取模块,用于获取目标用户对对象的历史评分数据、历史评分时间和所述对象的属性信息;
矩阵确定模块,用于基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵;
对象获取模块,用于获取所述目标用户历史关注的历史目标对象和所述目标用户当前关注的实时目标对象;
列表获取模块,用于基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表;
列表推荐模块,用于向所述目标用户推送所述第一推荐列表。
第三方面,提供一种对象推荐装置,所述装置包括处理器和存储器;所述存储器中存储有程序,所述程序由所述处理器加载并执行以实现第一方面所述的对象推荐方法。
第四方面,提供一种计算机可读存储介质,所述存储介质中存储有程序,所述程序由所述处理器加载并执行以实现第一方面所述的对象推荐方法。
本申请的有益效果在于:通过获取目标用户对对象的历史评分数据、历史评分时间和对象的属性信息;基于历史评分数据、历史评分时间和属性信息,确定各个对象之间的对象相似度矩阵;获取目标用户历史关注的历史目标对象和目标用户当前关注的实时目标对象;基于对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到目标用户的第一推荐列表;向目标用户推送第一推荐列表;可以解决现有的协同过滤算法的对象推荐准确性较低的问题;由于能够充分挖掘用户-对象评分矩阵的潜在信息,并且能够利用对象属性信息确定对象相似度矩阵,因此可以提高推荐结果的准确度。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
附图说明
图1是本申请一个实施例提供的传统协同过滤算法的流程图;
图2是本申请一个实施例提供的对象推荐方法的流程图;
图3是本申请一个实施例提供的推荐历史对象和推荐实时对象的确定过程的示意图;
图4是本申请另一个实施例提供的对象推荐方法的流程图;
图5是本申请一个实施例提供的对象推荐装置的框图。
具体实施方式
下面结合附图和实施例,对本申请的具体实施方式作进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
首先,对本申请涉及的名词进行介绍。
协同过滤算法:是一种推荐算法,它基于对用户历史行为数据的挖掘发现用户的喜好偏向,并预测用户可能喜好的产品进行推荐。也就是常见的“猜你喜欢”,和“购买了该商品的人也喜欢”等功能。
参考图1,传统的协同滤波算法至少包括以下几个步骤:
步骤1,构建用户-对象评分矩阵。
其中,矩阵元素的值可以是具体的评分值,也可以是0或1。在矩阵元素的值为具体评分值时,代表用户对该对象的实际评分。在矩阵元素的值为1或0时,代表用户是否对该对象有历史行为,如是否购买过某商品,是否看过某部电影等。
步骤2,计算对象间的相似度。
可选地,对象之间相似度度量方法有余弦相似度、皮尔逊相似度和修正余弦相似度,具体公式如下:
在上述公式中,u表示用户,i和j表示对象,ru,i,ru,j分别表示用户u对对象i和j的评分,Ui,j表示同时给对象i和j评分的用户集合,分别表示对象i和j的平均评分,/>表示用户u的平均评分。
步骤3,找出每个对象的最近邻对象,预测用户偏好。
遍历用户所有的历史对象,找出与每个历史对象最相似的k个对象作为候选集,预测用户对候选对象(排除用户历史对象)的偏好。k为正整数。
步骤4,生成推荐列表。
候选集按照用户偏好得分进行排序,获取用户对候选集偏好最高的n个对象将其推荐给用户。n为正整数,且n≤k。
然而,偏好预测不同于评分预测,偏好预测的目的是计算用户对候选对象的偏好程度,并不代表用户对该对象的预测评分。另外,传统的协同过滤算法仅根据用户评分来进行对象推荐,推荐结果的准确性较低。
本申请对传统的协同过滤算法进行改进,基于改进后的协同过滤算法提供了一种对象推荐方法,下面对该对象推荐方法进行介绍。
可选地,本申请以各个实施例的执行主体为电子设备为例进行说明。电子设备可以为终端或者服务器。其中,终端可以是手机、计算机、平板电脑或者可穿戴式设备等具有处理能力的设备。
图2是本申请一个实施例提供的对象推荐方法的流程图。该方法至少包括以下几个步骤:
步骤201,获取目标用户对对象的历史评分数据、历史评分时间和对象的属性信息。
可选地,历史评分数据包括:目标用户对对象进行打分得到的;和/或,对目标用户的历史行为数据进行转换得到的。此时,电子设备还获取目标用户的历史行为数据;将历史行为数据转换为历史评分数据。
其中,电子设备中存储有行为数据与评分数据之间的转换关系,基于该转换关系可以将历史行为数据转换为历史评分数据。
具体地,若目标用户对对象有评分,则将该评分作为目标用户对该对象的评分数据。否则将基于历史行为数据转换得到的评分数据作为目标用户对该对象的历史评分数据。当然,下述的实时评分数据也可以是基于目标用户的实时行为数据得到的。
比如:转换关系如下表一所示。表一中消费行为指的是一类行为,如对于电影推荐,消费行为指用户观看了某部电影;对于电商推荐,消费行为指用户购买了某个物品。行为数据转换为评分数据时,不能超过预设的评分范围。若超过,则取相应的上限或下限。
行为数据 | 评分数据 |
收藏 | 5 |
取消收藏 | -3 |
搜索 | 3 |
浏览 | 2 |
不喜欢 | -5 |
消费 | 3 |
需要补充说明的是,表一中的转换关系仅是示意性地,在实际实现时,转换关系可以包括更多或更少的内容,本实施例不对转换关系的设置方式作限定。
历史评分时间是指目标用户对对象打分时的时间;或者,是目标用户
步骤202,基于历史评分数据、历史评分时间和属性信息,确定各个对象之间的对象相似度矩阵。
可选地,电子设备确定各个对象之间的对象相似度矩阵的过程至少包括如下几个步骤:
1、基于预设的评分偏好转换模型将历史评分数据转换为目标用户对对象的历史偏好数据。
评分偏好转换模型通过下式表示:
其中,pref(u,Ci)表示用户u对评分类别Ci的偏好得分;pref>(Ci,Cj)表示用户u评分为Cj的数量,其中Cj<Ci;|Ru|表示用户u的评分数量;pref=(Ci)表示用户u评分为Ci的数量;和β为常数。示意性地,/>取值为1,β取值为0.5。
2、基于历史评分时间、历史偏好数据和预设的评分相似度公式,计算各个对象之间的评分相似度。
对于任意两个对象,基于两个对象的历史评分时间计算两个对象的时间权重因子;将时间权重因子、两个对象的历史偏好数据、两个对象的偏好数据平均值、分别给两个对象评分的第一用户集合和同时给两个对象评分的第二用户集合输入评分相似度公式,得到各个对象之间的评分相似度。
评分相似度公式通过下式表示:
其中,r_simi,j表示对象i和j之间的评分相似度,ti,j为对象i和j的时间权重因子,tu,i,tu,j分别表示目标用户u对对象i和j的历史评分时间,ru,i、ru,j分别表示目标用户u对对象i和j的历史偏好数据,分别表示对象i和j的历史偏好数据平均值,Ui,Uj分别表示给对象i和j评分的第一用户集合,Ui,j表示同时给对象i和j评分的第二用户集合。
3、基于属性信息确定各个对象之间的属性相似度。
属性信息可以是对象的布尔属性信息。假设属性信息为对象的标签,标签集合为T={t1,t2,t3……tk},k为标签总个数。对象的属性信息可以用一个n×k的矩阵来表示,n为对象个数,k为标签个数。例如,电影标签,标签可以为是否爱情片、是否恐怖片、是否古装片等。
基于属性信息确定各个对象之间的属性相似度p_simi,j通过下式表示:
其中,|Ni|、|Nj|分别表示对象i和对象j的属性信息个数,|Ni∩Nj|表示对象i和对象j都具有的属性信息个数。
4、结合评分相似度和属性相似度得到对象相似度矩阵。
可选地,电子设备基于评分相似度和属性相似度之间的加权平均值确定对象相似度矩阵。
示意性地,对象相似度矩阵通过下式计算得到:
simi,j=δ·p_simi,j+(1-δ)·r_simi,j
其中,simi,j为对象相似度矩阵;δ为平衡因子,取值为[0,1]中的任意数值,本实施例不对δ的取值作限定。
可选地,电子设备获取到对象相似度矩阵之后,还可以对该对象相似度矩阵进行归一化,归一化过程通过下式表示:
其中,simij表示对象i和对象j之间的相似度,max表示相似度矩阵的最大值。
可选地,电子设备也可以对评分相似度和属性相似度进行归一化。
步骤203,获取目标用户历史关注的历史目标对象和目标用户当前关注的实时目标对象。
步骤204,基于对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到目标用户的第一推荐列表。
第一推荐列表包括推荐历史对象和推荐实时对象。
第一、参考图3,推荐历史对象的确定过程至少包括以下几个步骤:
1、对于每个历史目标对象,在对象相似度矩阵中确定与历史目标对象相似的k个历史相似对象,k为正整数。
2、对于每个历史相似对象,计算历史目标对象与历史相似对象之间的相似度乘以目标用户对历史相似对象的历史偏好数据的积,得到目标用户对每个历史相似对象的第一偏好数据。
第一偏好数据通过下式计算:
其中,pu,j表示目标用户u对对象j的第一偏好数据,Nu表示目标用户u的历史目标对象的集合,Si,k表示与对象i相似的k个历史相似对象的集合,simj,i表示对象i和j之间的相似度,ru,i表示目标用户u对对象i的历史偏好数据。
3、在各个历史目标对象对应的历史相似对象的第一偏好数据中,将排列在前x位的第一偏好数据所对应的历史相似对象确定为推荐历史对象,x为正整数。
第二、参考图3,推荐实时对象的确定过程至少包括以下几个步骤:
1、对于每个实时目标对象,在对象相似度矩阵中确定与实时目标对象相似的l个实时相似对象,l为正整数。
2、对于每个实时相似对象,计算实时目标对象与实时相似对象之间的相似度乘以目标用户对实时相似对象的实时偏好数据的积,得到目标用户对每个实时相似对象的第二偏好数据。
第二偏好数据通过下式计算:
其中,pu,j表示目标用户u对对象j的第一偏好数据,Nu表示目标用户u的实时目标对象的集合,Si,l表示与对象i相似的l个实时相似对象的集合,simj,i表示对象i和j之间的相似度,ru,i表示目标用户u对对象i的实时偏好数据。实时练好数据可以通过使用评分偏好转换模型对实时评分数据进行转换得到。
3、在各个实时目标对象对应的实时相似对象的第二偏好数据中,将排列在前y位的第二偏好数据所对应的实时相似对象确定为推荐实时对象;y为正整数。
可选地,在生成第一推荐列表时,电子设备可以将推荐历史对象和推荐实时对象进行融合。融合方案包括但不限于以下几种:
第一种:假设一次获取推荐对象的数量为a,历史推荐结果与实时推荐结果的比例为x:y,则第一推荐列表中包含a*x/(x+y)个历史推荐对象,a*(1-
x/(x+y))个实时推荐对象。
第二种:假设一次获取推荐对象的数量为a,历史推荐结果为x,实时推荐结果为y,则第一推荐列表中包含y个实时推荐对象、a-y个历史推荐对象。
当然,融合方案也可以是其它方案,本实施例在此不再一一列举。
步骤205,向目标用户推送第一推荐列表。
综上所述,本实施例提供的对象推荐方法,通过获取目标用户对对象的历史评分数据、历史评分时间和对象的属性信息;基于历史评分数据、历史评分时间和属性信息,确定各个对象之间的对象相似度矩阵;获取目标用户历史关注的历史目标对象和目标用户当前关注的实时目标对象;基于对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到目标用户的第一推荐列表;向目标用户推送第一推荐列表;可以解决现有的协同过滤算法的对象推荐准确性较低的问题;由于能够充分挖掘用户-对象评分矩阵的潜在信息,并且能够利用对象属性信息确定对象相似度矩阵,因此可以提高推荐结果的准确度。
另外,通过基于传统的协同过滤算法来确定推荐结果,不涉及复杂的模型计算,可以更好的保证推荐的实时性,并且容易实现。
另外,通过基于实时目标对象确定推荐实时对象,可以提高推荐结果的实时性。
另外,通过将用户的行为数据转换为评分数据,可以保证评分数据的丰富度,提高计算对象相似度矩阵的准确性,从而提高推荐结果的准确性。
可选地,基于上述实施例,在步骤202之后,电子设备还用于确定是否向目标用户推荐目标对象的第二推荐列表;在确定向目标用户推荐目标对象的第二推荐列表时,基于目标对象的对象标识和对象相似度矩阵确定目标对象的相似对象,得到目标用户的第二推荐列表;向目标用户推送第二推荐列表。
其中,对象标识用于唯一地标识对象,该对象标识可以是编码或者名称,本实施例不对对象标识的设置方式作限定。
在一个示例中,电子设备中设置有第一推荐方式和第二推荐方式,第一推荐方式用于向用户推荐第一推荐列表;第二推荐方式用于向用户推荐第一推荐列表和第二推荐列表。此时,电子设备确定是否向目标用户推荐目标对象的第二推荐列表,包括:确定向目标用户的推荐方式是否为第二推荐方式;在向目标用户的推荐方式是第二推荐方式时,确定向目标用户推荐第二推荐列表;在向目标用户的推荐方式不是第二推荐方式时,确定不向目标用户推荐第二推荐列表。
比如:参考图4,第一推荐方式为首页推荐,第二推荐方式为详情页推荐。此时,电子设备向用户推荐对象的过程至少包括如下几个步骤:
1、确定推荐方式为首页推荐还是详情页推荐。若为首页推荐,则执行步骤2;若为详情页推荐,则执行步骤3。
可选地,电子设备通过页面接口携带的参数确定推荐方式为首页推荐还是详情页推荐。比如:在页面接口携带对象标识时确定为详情页推荐,在页面接口未携带对象标识时确定为首页推荐。
2、查询目标用户的第一推荐列表;若第一推荐列表为空,则执行用户冷启动推荐。否则,将第一推荐列表发送至目标用户。
其中,冷启动推荐包括但不限于以下几种方式中的至少一种:
第一种:将对象按照热度排序,将热度排序后的对象推送至目标用户。
第二种:根据目标用户的用户信息推荐相关性较高的对象。
比如:根据用户注册账号时填写的性别、年龄、地址等信息,推荐相关性高的内容或者商品。
第三种:根据目标用户的设备信息推荐相关性较高的对象。
比如:根据手机定位推荐附近的对象、根据通讯录中的联系人推好友喜欢过的内容或商品等。
第四种:根据目标用户选择的标签推荐具有相同标签的对象。
当然,冷启动推荐还可以是其它推荐方式,本实施例在此不再一一列举。
第一推荐列表包括历史推荐对象和实时推荐对象。
3、根据对象标识和对象相似度矩阵计算目标对象的相似对象,得到第二推荐列表。若相似对象为空,说明目标对象可能是新对象,此时详情页推荐等同于首页推荐。否则,将第一推荐列表和第二推荐列表融合推送至目标用户。
可选地,电子设备在向目标用户推送第一推荐列表和第二推荐列表时,可以将第一推荐列表和第二推荐列表融合。融合包括但不限于以下几种:
第一种:假设一次获取推荐对象的数量为b,推荐历史对象、推荐实时对象和相似对象的比例为x:y:z,则最终推荐结果包含个历史推荐对象,/>个实时推荐对象和/>个相似对象。
第二种:假设一次获取推荐对象的数量为b,推荐历史对象的数量为x、推荐实时对象的数量为y、相似对象的数量为z;则最终推荐结果包含z个相似对象、y个推荐实时对象和b-z-y个推荐历史对象。
本实施例中,通过按照不同的推荐方式推送不同内容,可以提高推送对象的灵活性。
图5是本申请一个实施例提供的对象推荐装置的框图。该装置至少包括以下几个模块:数据获取模块510、矩阵确定模块520、对象获取模块530、列表获取模块540和列表推荐模块550。
数据获取模块510,用于获取目标用户对对象的历史评分数据、历史评分时间和所述对象的属性信息;
矩阵确定模块520,用于基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵;
对象获取模块530,用于获取所述目标用户历史关注的历史目标对象和所述目标用户当前关注的实时目标对象;
列表获取模块540,用于基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表;
列表推荐模块550,用于向所述目标用户推送所述第一推荐列表。
相关细节参考上述方法实施例。
需要说明的是:上述实施例中提供的对象推荐装置在进行对象推荐时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将对象推荐装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的对象推荐装置与对象推荐方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
可选地,本申请还提供有一种计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的对象推荐方法。
可选地,本申请还提供有一种计算机产品,该计算机产品包括计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的对象推荐方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种对象推荐方法,其特征在于,所述方法包括:
获取目标用户对对象的历史评分数据、历史评分时间和所述对象的属性信息;
基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵;
获取所述目标用户历史关注的历史目标对象和所述目标用户当前关注的实时目标对象;
基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表;
向所述目标用户推送所述第一推荐列表;
所述基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表,包括:
对于每个历史目标对象,在所述对象相似度矩阵中确定与所述历史目标对象相似的k个历史相似对象,所述k为正整数;
对于每个历史相似对象,计算所述历史目标对象与所述历史相似对象之间的相似度乘以所述目标用户对所述历史相似对象的历史偏好数据的积,得到所述目标用户对每个历史相似对象的第一偏好数据;
在各个历史目标对象对应的历史相似对象的第一偏好数据中,将排列在前x位的第一偏好数据所对应的历史相似对象确定为推荐历史对象,所述x为正整数;
对于每个实时目标对象,在所述对象相似度矩阵中确定与所述实时目标对象相似的l个实时相似对象,所述l为正整数;
对于每个实时相似对象,计算所述实时目标对象与所述实时相似对象之间的相似度乘以所述目标用户对所述实时相似对象的实时偏好数据的积,得到所述目标用户对每个实时相似对象的第二偏好数据;
在各个实时目标对象对应的实时相似对象的第二偏好数据中,将排列在前y位的第二偏好数据所对应的实时相似对象确定为推荐实时对象,所述第一推荐列表包括所述推荐历史对象和所述推荐实时对象;所述y为正整数。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定是否向所述目标用户推荐目标对象的第二推荐列表;
在确定向所述目标用户推荐目标对象的第二推荐列表时,基于所述目标对象的对象标识和所述对象相似度矩阵确定所述目标对象的相似对象,得到所述目标用户的第二推荐列表;
向所述目标用户推送所述第二推荐列表。
3.根据权利要求1所述的方法,其特征在于,所述基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵,包括:
基于预设的评分偏好转换模型将所述历史评分数据转换为所述目标用户对所述对象的历史偏好数据;
基于所述历史评分时间、所述历史偏好数据和预设的评分相似度公式,计算各个对象之间的评分相似度;
基于所述属性信息确定各个对象之间的属性相似度;
结合所述评分相似度和所述属性相似度得到所述对象相似度矩阵。
4.根据权利要求3所述的方法,其特征在于,所述基于所述历史评分时间、所述历史偏好数据和预设的评分相似度公式,计算各个对象之间的评分相似度,包括:
对于任意两个对象,基于所述两个对象的历史评分时间计算所述两个对象的时间权重因子;
将所述时间权重因子、所述两个对象的历史偏好数据、所述两个对象的偏好数据平均值、分别给所述两个对象评分的第一用户集合和同时给所述两个对象评分的第二用户集合输入所述评分相似度公式,得到所述各个对象之间的评分相似度。
5.根据权利要求4所述的方法,其特征在于,所述评分相似度公式通过下式表示:
其中,r_simi,j表示对象i和j之间的评分相似度,ti,j为对象i和j的时间权重因子,tu,i,tu,j分别表示目标用户u对对象i和j的历史评分时间,ru,i、ru,j分别表示目标用户u对对象i和j的历史偏好数据,分别表示对象i和j的历史偏好数据平均值,Ui,Uj分别表示给对象i和j评分的第一用户集合,Ui,j表示同时给对象i和j评分的第二用户集合。
6.根据权利要求3所述的方法,其特征在于,所述评分偏好转换模型通过下式表示:
其中,pref(u,Ci)表示用户u对评分类别Ci的偏好得分;pref>(Ci,Cj)表示用户u评分为Cj的数量,其中Cj<Ci;|Ru|表示用户u的评分数量;pref=(Ci)表示用户u评分为Ci的数量;和β为常数。
7.根据权利要求3所述的方法,其特征在于,所述基于所述属性信息确定各个对象之间的属性相似度通过下式表示:
其中,|Ni|、|Nj|分别表示对象i和对象j的属性信息个数,|Ni∩Nj|表示对象i和对象j都具有的属性信息个数。
8.根据权利要求1至7任一所述的方法,其特征在于,所述方法还包括:
获取所述目标用户的历史行为数据;
将所述历史行为数据转换为所述历史评分数据。
9.一种对象推荐装置,其特征在于,所述装置包括:
数据获取模块,用于获取目标用户对对象的历史评分数据、历史评分时间和所述对象的属性信息;
矩阵确定模块,用于基于所述历史评分数据、所述历史评分时间和所述属性信息,确定所述各个对象之间的对象相似度矩阵;
对象获取模块,用于获取所述目标用户历史关注的历史目标对象和所述目标用户当前关注的实时目标对象;
列表获取模块,用于基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表;
其中,所述基于所述对象相似度矩阵确定每个历史目标对象的历史相似对象和每个实时目标对象的实时相似对象,得到所述目标用户的第一推荐列表,包括:
对于每个历史目标对象,在所述对象相似度矩阵中确定与所述历史目标对象相似的k个历史相似对象,所述k为正整数;
对于每个历史相似对象,计算所述历史目标对象与所述历史相似对象之间的相似度乘以所述目标用户对所述历史相似对象的历史偏好数据的积,得到所述目标用户对每个历史相似对象的第一偏好数据;
在各个历史目标对象对应的历史相似对象的第一偏好数据中,将排列在前x位的第一偏好数据所对应的历史相似对象确定为推荐历史对象,所述x为正整数;
对于每个实时目标对象,在所述对象相似度矩阵中确定与所述实时目标对象相似的l个实时相似对象,所述l为正整数;
对于每个实时相似对象,计算所述实时目标对象与所述实时相似对象之间的相似度乘以所述目标用户对所述实时相似对象的实时偏好数据的积,得到所述目标用户对每个实时相似对象的第二偏好数据;
在各个实时目标对象对应的实时相似对象的第二偏好数据中,将排列在前y位的第二偏好数据所对应的实时相似对象确定为推荐实时对象,所述第一推荐列表包括所述推荐历史对象和所述推荐实时对象;所述y为正整数;
列表推荐模块,用于向所述目标用户推送所述第一推荐列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010097745.XA CN111310046B (zh) | 2020-02-18 | 2020-02-18 | 对象推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010097745.XA CN111310046B (zh) | 2020-02-18 | 2020-02-18 | 对象推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111310046A CN111310046A (zh) | 2020-06-19 |
CN111310046B true CN111310046B (zh) | 2023-10-20 |
Family
ID=71151053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010097745.XA Active CN111310046B (zh) | 2020-02-18 | 2020-02-18 | 对象推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111310046B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381616A (zh) * | 2020-11-28 | 2021-02-19 | 武汉虹信技术服务有限责任公司 | 物品推荐引导方法、装置及计算机设备 |
CN112785372B (zh) * | 2021-01-11 | 2023-09-12 | 北京欧拉认知智能科技有限公司 | 一种基于语义关系的智能推荐方法 |
CN113688314B (zh) * | 2021-08-13 | 2024-03-19 | 今彩慧健康科技(苏州)有限公司 | 一种理疗门店推荐方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574198A (zh) * | 2015-12-28 | 2016-05-11 | 海信集团有限公司 | 一种栏目推荐方法及装置 |
CN109559208A (zh) * | 2019-01-04 | 2019-04-02 | 平安科技(深圳)有限公司 | 一种信息推荐方法、服务器及计算机可读介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150073931A1 (en) * | 2013-09-06 | 2015-03-12 | Microsoft Corporation | Feature selection for recommender systems |
-
2020
- 2020-02-18 CN CN202010097745.XA patent/CN111310046B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574198A (zh) * | 2015-12-28 | 2016-05-11 | 海信集团有限公司 | 一种栏目推荐方法及装置 |
CN109559208A (zh) * | 2019-01-04 | 2019-04-02 | 平安科技(深圳)有限公司 | 一种信息推荐方法、服务器及计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111310046A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dara et al. | A survey on group recommender systems | |
Isinkaye et al. | Recommendation systems: Principles, methods and evaluation | |
Ning et al. | A comprehensive survey of neighborhood-based recommendation methods | |
CN109829775B (zh) | 一种物品推荐方法、装置、设备及可读存储介质 | |
Cami et al. | A content-based movie recommender system based on temporal user preferences | |
Ying et al. | Mining user check-in behavior with a random walk for urban point-of-interest recommendations | |
WO2020048084A1 (zh) | 资源推荐方法、装置、计算机设备及计算机可读存储介质 | |
CN111310046B (zh) | 对象推荐方法及装置 | |
US9691096B1 (en) | Identifying item recommendations through recognized navigational patterns | |
JP5615857B2 (ja) | 分析装置、分析方法及び分析プログラム | |
Zhang et al. | Prediction uncertainty in collaborative filtering: Enhancing personalized online product ranking | |
Bok et al. | Social group recommendation based on dynamic profiles and collaborative filtering | |
KR20100086676A (ko) | 컨텐츠에 대한 선호도 예측 방법 및 장치와, 샘플 컨텐츠 선정 방법 및 장치 | |
CN111310038B (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
CN111914188A (zh) | 推荐目标用户的选择方法、系统、设备及存储介质 | |
Zhang et al. | A random-walk based recommendation algorithm considering item categories | |
CN114581175A (zh) | 商品推送方法、装置、存储介质及电子设备 | |
Neve et al. | Hybrid reciprocal recommender systems: Integrating item-to-user principles in reciprocal recommendation | |
Jamil et al. | Collaborative item recommendations based on friendship strength in social network | |
Jalal | Big data and intelligent software systems | |
Ntalianis et al. | Social relevance feedback based on multimedia content power | |
Hwang et al. | Personalized internet advertisement recommendation service based on keyword similarity | |
CN114841760A (zh) | 一种基于受众行为特征分析的广告推荐管理方法及系统 | |
CN110928920B (zh) | 一种基于改进位置社交的知识推荐方法、系统及存储介质 | |
Ntalianis et al. | Wall-content selection in social media: A revelance feedback scheme based on explicit crowdsourcing |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |