CN105630880A - 一种评分数据预测方法及装置 - Google Patents
一种评分数据预测方法及装置 Download PDFInfo
- Publication number
- CN105630880A CN105630880A CN201510955732.0A CN201510955732A CN105630880A CN 105630880 A CN105630880 A CN 105630880A CN 201510955732 A CN201510955732 A CN 201510955732A CN 105630880 A CN105630880 A CN 105630880A
- Authority
- CN
- China
- Prior art keywords
- label
- article
- score value
- user
- value
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种评分数据预测方法及装置。所述方法包括:获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。如此方案,有助于解决新增物品冷启动问题。
Description
技术领域
本发明涉及数据处理领域,具体地,涉及一种评分数据预测方法及装置。
背景技术
随着信息技术的不断发展,为了更好的服务于用户,个性化推荐技术应运而生,用于为用户提供符合其需求的个性化推荐内容。通常,个性化推荐技术以用户行为数据为基础,再结合一定的数据分析方法,为用户生成个性化推荐内容。举例来说,用户行为数据可以体现为用户对物品做出的评价,或者用户对物品执行的操作,如浏览、购买、收藏、转发等等,结合实际应用,可以根据用户行为数据获得图1所示用户物品喜好矩阵,该矩阵可用于表示m个用户对n个物品的评分值,其中,xij表示用户i对物品j的评分值,1≤i≤m,1≤j≤n。
基于最近邻的协同过滤算法进行个性化推荐时,可以先利用物品评分值计算用户之间的相似度,确定出与目标用户有相同或相似兴趣偏好的邻居用户,再根据邻居用户对物品的评分值来预测目标用户对待推物品的评分值,并将预测评分值较高的待推物品作为推荐内容,发送给目标用户。其中,预测评分值较高可以理解为超过了预设值。
由上述过程可知,个性化推荐方案较为依赖于由用户交互过程中产生的评价数据所构建的用户物品喜好矩阵,也就是说,用户物品喜好矩阵越完善,即用户评分值越多,协同过滤算法的推荐质量就越高。但是,对于矩阵中不存在的新增物品来说,如新上架的物品,矩阵中没有该新增物品的任何评分数据,这就导致基于喜好矩阵实现的个性化推荐方案,无法对新增物品进行推荐,即存在新增物品冷启动问题。
发明内容
本发明的目的是提供一种评分数据预测方法及装置,结合待测用户已有评分值,确定新增物品的预测评分值如此,有助于解决新增物品冷启动问题。
本发明实施例提供了一种评分数据预测方法,所述方法包括:
获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;
获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;
获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;
利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
可选地,所述获取待测用户对每个标签的标签评分值,包括:
从用户物品喜好矩阵中,确定出所述待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值;
获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签;
获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值;
利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
可选地,通过以下公式获得每个标签的第二权重值:
其中,表示标签tn在第一物品i中的第二权重值;表示标签tn在第一物品i中出现的次数;表示标签tn在第一物品集合R1包括的所有物品中出现的次数;具体为:
通过以下公式获得所述标签评分值:
其中,表示待测用户u对标签tn的标签评分值;Xuj表示待测用户u对第一物品j的第一评分值。
可选地,通过以下公式获得每个标签的第一权重值:
其中,表示标签tn在新增物品z中的第一权重值;表示标签tn在新增物品z中出现的次数;表示标签tn在第二物品集合R2包括的所有物品中出现的次数,第二物品集合R2包括第一物品集合R1和新增物品z;具体为:
可选地,通过以下公式获得所述预测评分值:
其中,表示标签tn在新增物品z中的第一权重值;表示待测用户u对标签tn的标签评分值。
可选地,所述第一评分数据还包括第一评分值的置信度,所述方法还包括:
利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度;
利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
可选地,通过以下公式获得所述标签评分值的置信度:
其中,表示待测用户u对第一物品j的第一评分值的置信度;表示标签tn在第一物品j中的第二权重值;
通过以下公式获得所述预测评分值的置信度:
可选地,将所述预测评分数据补入用户物品喜好矩阵中,基于所述用户物品喜好矩阵进行矩阵分解时,所述方法还包括:
调整每次迭代过程使用的更新步伐γ=e-pF,
其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
本发明实施例还提供了一种评分数据预测装置,所述装置包括:
新增物品元数据获取单元,用于获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;
标签评分值获取单元,用于获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;
第一权重值获取单元,用于获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;
预测评分值获得单元,用于利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
可选地,所述标签评分值获取单元包括:
物品集合确定单元,用于从用户物品喜好矩阵中,确定出所述待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值;
第一物品元数据获取单元,用于获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签;
第二权重值获得单元,用于获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值;
标签评分值获得单元,用于利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
可选地,所述第一评分数据还包括第一评分值的置信度,所述装置还包括:
标签评分值置信度获得单元,用于利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度;
预测评分值置信度获得单元,用于利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
可选地,将所述预测评分数据补入用户物品喜好矩阵中,基于所述用户物品喜好矩阵进行矩阵分解时,所述装置还包括:
更新步伐调整单元,用于调整每次迭代过程使用的更新步伐γ=e-pF,
其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
本发明技术方案中,利用待测用户对第一物品的第一评分值,获得该用户对第一物品具有的标签的标签评分值,然后获取新增物品的标签,并计算获得新增物品的每个标签的第一权重值,利用标签评分值和第一权重值,确定出待测用户对新增物品的预测评分值,并补入喜好矩阵中。如此,便可解决新增物品冷启动问题,从而在基于喜好矩阵实现的个性化推荐方案中,实现对新增物品的推荐。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是用户物品喜好矩阵的一种示意图;
图2是本发明获得标签评分值的流程图;
图3是用户物品喜好矩阵的另一种示意图;
图4是本发明评分数据预测方法的流程图;
图5是矩阵分解的一种示意图;
图6是本发明评分数据预测装置的结构示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
为了解决新增物品冷启动问题,本发明提供一种利用用户物品喜好矩阵中已有评分数据,预估新增物品评分值的方案,以便在基于喜好矩阵实现的个性化推荐方案中,实现对新增物品的推荐。
首先,可分析每个用户的已有评分数据,获得该用户对物品所具标签的喜好程度,即标签评分值;然后获取新增物品的每个标签的第一权重值,并利用标签评分值和第一权重值,计算获得用户对新增物品的预测评分值。
下面先对本发明中获得标签评分值的方案做解释说明。具体可参见图2所示流程图,可包括:
S101,从用户物品喜好矩阵中,确定出待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值。
为实现新增物品的评分值预测,可先从喜好矩阵中确定出包括至少一个第一物品的第一物品集合,第一物品指的是待测用户已评分的物品。举例来说,可以将待测用户已评分的所有物品确定为第一物品,或者,也可将待测用户已评分的部分物品确定为第一物品,具体可结合实际应用而定,本发明实施例对此可不作具体限定。
举例来说,参见图3所示喜好矩阵,T5为新增物品,即,在矩阵中,不存在任何用户对T5的评分值,也就是说,T5所对应的一整行全部为空值。以利用本发明方案获得X15的预测评分值为例,用户U1即可称为待测用户,为待测用户U1确定出的第一物品集合R1中包括如下第一物品:T1、T2和T4,对应的第一评分值依次为X11、X12、X14。
具体地,获得待测用户对第一物品的第一评分值的方案,此处暂不详述,具体可参见下文所做介绍。
S102,获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签。
S103,获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值。
本发明方案中,为每个物品配置有对应的元数据,具体地,元数据可以体现为至少一个表示物品属性的标签。举例来说,第一物品T1为联想品牌的手机,T1的元数据可包括如下标签:数码产品、智能终端、手机、联想,标签可定义为tn,1≤n≤4。
具体地,可通过以下公式计算获得每个标签的第二权重值:
其中,表示标签tn在第一物品i中的第二权重值;表示标签tn在第一物品i中出现的次数;表示标签tn在第一物品集合R1包括的所有物品中出现的次数;可具体体现为:
上文所举T1为联想品牌手机的示例中,根据上述公式,可计算获得4个第二权重值和
同理,还可计算得到T2的元数据所包括的每个标签的第二权重值,以及T4的元数据所包括的每个标签的第二权重值,具体过程可参见上文所作介绍,此处不再举例说明。
S104,利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
获得第一物品具有的标签以及每个标签的第二权重值后,便可通过以下公式获得所述标签评分值:
其中,表示待测用户u对标签tn的标签评分值;Xuj表示待测用户u对第一物品j的第一评分值。
上文所举T1为联想品牌手机的示例中,根据上述公式,可计算获得4个标签评分值和
同理,还可计算得到U1对T2的元数据所包括的每个标签的标签评分值,以及U1对T4的元数据所包括的每个标签的标签评分值,具体过程可参见上文所作介绍,此处不再举例说明。
如此,按照图2所示方案,还可计算得到U2对T1、T3的元数据所包括的每个标签的标签评分值,U3对T2、T4的元数据所包括的每个标签的标签评分值,U4对T1、T2、T3的元数据所包括的每个标签的标签评分值,此处亦不再举例说明。
根据上述方案获得矩阵中所含物品的标签评分值,便可按照图4所示评分数据预测方法,对新增物品进行评分值预测,具体可包括:
S201,获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签。
S202,获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得。
需要预测待测用户对新增物品的评分值时,可先通过新增物品的元数据获得表示新增物品属性的标签,进而再结合按照图2所示方案获得的标签评分值,获得新增物品的预测评分值。
举例来说,新增物品T5为联想品牌的电脑,T5的元数据可包括如下3个标签:数码产品、电脑、联想,可分别定义为tA、tB和tC。以获得X15的预测评分值为例,可获得U1对每个标签的标签评分值,如和
S203,获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值。
通常,在利用新增物品的标签确定新增物品的预测评分值时,每个标签对于预测评分值的影响可以相同,即上述示例中的tA、tB和tC在确定预测评分值时的权重值相同;或者,还可确定出每个标签对于预测评分值的影响程度,即为tA、tB和tC确定出各自的第一权重值。
具体地,可以通过以下公式获得每个标签的第一权重值:
其中,表示标签tn在新增物品z中的第一权重值;表示标签tn在新增物品z中出现的次数;表示标签tn在第二物品集合R2包括的所有物品中出现的次数,第二物品集合R2包括第一物品集合R1和新增物品z;具体为:
上文所举T5为联想品牌电脑的示例中,根据上述公式,可计算获得3个标签的第一权重值和
S204,利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
获得新增物品的每个标签的第一权重值以及标签评分值后,便可据此获得待测用户对新增物品的预测评分值。具体地,可通过以下公式获得所述预测评分值:
其中,表示待测用户u对新增物品z的预测评分值;表示标签tn在新增物品z中的第一权重值;表示待测用户u对标签tn的标签评分值。
上文所举示例中,U1对T5的预测评分值为体现为:
同理,还可计算得到U2对T5的预测评分值U3对T5的预测评分值U4对T5的预测评分值具体过程可参见上文所作介绍,此处不再举例说明。
可选地,待测用户对第一物品的第一评分数据中,除了第一评分值之外,还可包括第一评分值的置信度,置信度可用来表示对应评分值的可信程度。通常,置信度的取值为0到1范围内的数值,且越趋近于1代表该评分值越可信,也即评分值越准确。
对应于此,本发明还提供一种确定待测用户对新增物品的预测评分值的置信度的方案,具体可包括:
首先,利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度。
作为一种示例,可通过以下公式获得所述标签评分值的置信度:
其中,表示待测用户u对标签tn的标签评分值的置信度;表示标签tn在第一物品j中的第二权重值。
其次,利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
作为一种示例,可通过以下公式获得所述预测评分值的置信度:
其中,表示待测用户u对新增物品z的预测评分值的置信度;表示标签tn在新增物品z中的第一权重值。
具体地,S101处所提待测用户对第一物品的第一评分值,至少可通过以下三种方案获得,下面分别做解释说明。
方式一,用户行为为显性行为。如待测用户直接为第一物品打了分。
本方式中,可以直接抓取待测用户对第一物品的评分值,作为所述第一评分值。具体地,可以通过网站应用的功能设计直接从待测用户的客户端采集第一评分值,如在物品介绍页面上向用户提供评分选项,待测用户可以通过评分选项对第一物品进行评分。举例来说,评分选项可以为1~5分,若待测用户点击了3分,则表示待测用户对第一物品的评分为3分;或者,评分选项还可以为用户喜爱程度,如喜欢表示1分、不喜欢表示0分,若待测用户点击了喜欢,则表示待测用户对第一物品的评分值为1分。本发明实施例对评分选项的具体表现形式可不做具体限定。
通常,对于直接抓取到的第一评分值,可以认为其为待测用户对第一物品的真实评分情况,故可将置信度设置为1。
可选地,在实际应用中,所抓取的评分值中也可能会存在噪音,如,待测用户误操作时打的分,则此时抓取到的第一评分值并非待测用户对第一物品的真实评分情况,对应于此,可以结合与待测用户具有相同或相似行为习惯的第二用户,来确定待测用户对第一物品所打第一评分值的置信度。
具体地,本发明方案提供一种获得第一评分值的置信度的方案,可包括:
首先,根据所述第一物品,从所述用户物品喜好矩阵中确定出第一用户集合,所述第一用户集合包括至少一个第二用户,所述第二用户对所述第一物品有第二评分值,且除所述第一物品之外,所述第二用户与所述待测用户还具有共同评价的第二物品。
仍以图3所示喜好矩阵为例,若第一评分值为X11,即待测用户U1对第一物品T1的评分值,为了获得X11的置信度,可以先从矩阵中确定出第一用户集合。
具体地,可根据如下两个条件选取第二用户,形成第一用户集合:除第一物品之外,是否还与待测用户具有共同评价的第二物品;是否对第一物品有第二评分数据。由图3可知,除第一物品T1之外,U1和U4有共同评价的物品T2,且对T1有评价数据的用户为U1、U2和U4,由此,便可获得第一用户集合包括的第二用户为U4,本发明方案中可将第一用户集合定义为U。另外,U1和U4共同评价的第二物品为T2,可定义T14来表示U1和U4共同评价物品的集合。
其次,利用所述第二物品,获得每个第二用户用于确定所述第一评分值的置信度时的权重值。
通常,在利用第一用户集合中已知的数据,确定X11的置信度时,每个第二用户对于置信度的影响可以相同;或者,还可利用待测用户与第二用户共同评价的第二物品,确定出每个第二用户对于置信度的影响程度。举例来说,可以利用第二物品获得待测用户与第二用户之间的紧密程度,并根据该紧密程度确定第二用户的权重值。
具体地,可通过下述计算用户相似度的公式获得待测用户与第二用户间的紧密程度:
其中,sim(u,h)表示待测用户u与第二用户h之间的相似度;Xhg表示第二用户h对物品g的评分值;表示第二用户h所评过物品的评分均值;Xug表示待测用户u对物品g的评分值;表示待测用户u所评过物品的评分均值;Tuh表示待测用户u和第二用户h共同评价物品的集合。
结合上述公式,便可获得U1和U4的相似度sim(1,4)。举例来说,可直接将相似度作为第二用户的权重值;或者,也可在相似度的基础上进一步处理,获得第二用户的权重值,本发明实施例对此可不做具体限定。
最后,利用所述待测用户的第一评分值、所述第二用户的第二评分值以及该第二用户的权重值,获得所述第一评分值的置信度。
具体地,以相似度作为第二用户的权重值为例,可通过下述公式获得第一评分值的置信度:
其中,Fui表示待测用户u对第一物品i的第一评分值的置信度;Norm2是一个常量,用来对第一评分值的置信度进行归一化,可通过下述公式获得:
综上,便实现了在显性行为下,获得待测用户对第一物品的第一评分数据的方案。
方式二,用户行为为隐性行为。如待测用户未给第一物品打分,但却对第一物品存在操作行为,举例来说,操作行为可以体现为浏览、购买、评价、收藏、转发、点赞、下载等等,本发明实施例对此可不做具体限定。
本方式中,可以对样本数据进行机器学习,预先建立操作行为与评分值间的映射关系,然后再基于映射关系确定待测用户对第一物品的第一评分数据。具体地,所述样本数据可以包括样本用户对样本物品的评分值以及样本用户对样本物品执行的操作行为。
本发明方案中的映射关系可包括每种操作行为对应的第一概率,所述第一概率用于表示该操作行为下产生每种评分值的概率。举例来说,样本用户对样本物品执行的操作行为包括评论、收藏和购买,可定义为tp,1≤p≤3;样本用户对样本物品的评分值可包括1~5五个评分等级,可定义为Cq,1≤q≤5,则根据该样本数据建立的映射关系可包括15个第一概率P(Cq|tp)。举例来说,P(C5|t1)表示操作行为为评论时产生评分值5的概率,P(C1|t2)表示操作行为为收藏时产生评分值1的概率。
具体地,针对每种操作行为,可按照如下方式获得本发明方案中的第一概率P(Cq|tp):
首先,统计样本数据,获得该操作行为在每种评分值下出现的次数,并根据所述次数,确定该操作行为对应于每种评分值的权重值。具体可体现为下述公式:
其中,表示样本用户a对样本物品b的第tp种操作行为的次数;Sab表示样本用户a对样本物品b的评分值;表示操作行为tp在评分值Cq下出现的次数;表示操作行为tp在所有评分等级下出现的次数。
根据上述公式,可计算获得15个权重值举例来说,表示评论这一操作行为对应于评分值5的权重值,表示收藏这一操作行为对应于评分值1的权重值。
其次,利用该操作行为对应于每种评分值的权重值,获得第二概率,所述第二概率用于表示每种评分值下产生该操作行为的概率。具体可体现为下述公式:
其中,表示所有操作行为对应于评分值Cq的权重值之和。
根据上述公式,可计算获得15个第二概率P(tp|Cq),举例来说,P(t1|C5)表示评分值为5时产生评论这一操作行为的概率,P(t2|C1)表示评分值为1时产生收藏这一操作行为的概率。
最后,利用所述第二概率和贝叶斯公式,获得所述第一概率。具体可体现为下述公式:
其中, 表示样本用户对样本物品评分值为Cq的条数;N表示样本用户对样本物品评分值的总条数。
至此,就获得了上文提及的15个第一概率P(Cq|tp),得到本发明方案中的映射关系。
得到映射关系后,便可在抓取到用户对物品执行的隐形行为时,利用该映射关系,确定出隐形行为对应的评分数据。
本发明方案中,获得待测用户对第一物品的第一评分值的方式可以为:抓取所述待测用户对所述第一物品执行的当前操作行为,并利用所述映射关系,获得所述当前操作行为下产生每种评分值的概率;将最大概率对应的评分值作为所述第一评分值。具体可体现为下述公式:
其中,Xui表示待测用户u对第一物品i的第一评分值。
相应地,获得待测用户对第一物品的第一评分值的置信度的方式可以为:将所述最大概率作为所述第一评分值的置信度。具体可体现为下述公式:
综上,结合待测用户的具体行为,通过上文所介绍方案,便可获得本发明方案中待测用户对第一物品的第一评分数据,以备后续对新增物品的评分值进行预测补入时使用。
方式三,结合喜好矩阵中已有的评分数据,预测得到待测用户对第一物品的第一评分数据。
首先,根据第一物品,从用户物品喜好矩阵中确定出第二用户集合,所述第二用户集合包括至少一个第三用户,所述第三用户与所述待测用户具有共同评价的第三物品,且所述第三用户对所述第一物品有第三评分数据,所述第三评分数据包括第三评分值以及所述第三评分值的置信度。
具体地,可根据如下两个条件选取第三用户,形成第二用户集合:是否与待测用户具有共同评价的第三物品;是否对第一物品有第三评分数据。举例来说,参见图3所示喜好矩阵,若第一评分值X11为预测获得,且U1和U4有共同评价的物品T2,且对T1有评价数据的用户为U2和U4,由此便可获得第二用户集合包括的第三用户为U4,该第二用户集合用于预测U1对T1的评分数据,故可将其定义为M11。另外,U1和U4共同评价的第三物品为T2,可定义T14来表示U1和U4共同评价物品的集合。
其次,利用所述第三物品,获得每个第三用户用于预测所述待测用户的第一评分值时的权重值。
通常,在利用第二用户集合中已知的数据,确定U1对T1的第一评分数据时,每个第三用户对于预测第一评分数据的影响可以相同;或者,还可利用待测用户与第三用户共同评价的第三物品,确定出每个第三用户对于预测第一评分数据的影响程度。举例来说,可以利用第三物品获得第三用户与待测用户之间的紧密程度,并根据该紧密程度确定第三用户的权重值。
具体地,可通过下述计算用户相似度的公式获得第三用户与待测用户间的紧密程度:
其中,sim(u,k)表示待测用户u与第三用户k之间的相似度;Xkj表示第三用户k对物品j的评分值;表示第三用户k所评过物品的评分均值;Xuj表示待测用户u对物品j的评分值;表示待测用户u所评过物品的评分均值;Tuk表示待测用户u和第三用户k共同评价物品的集合。
结合上述公式,便可获得U1和U4的相似度sim(1,4)。举例来说,可直接将相似度作为第三用户的权重值;或者,也可在相似度的基础上进一步处理,获得第三用户的权重值,本发明实施例对此可不做具体限定。
接着,利用所述第三用户的第三评分值以及该第三用户的权重值,获得所述待测用户对所述第一物品的第一评分值。
具体地,以相似度作为第三用户的权重值为例,可通过下述公式获得待测用户对第一物品的第一评分值:
其中,表示待测用户u对第一物品i的第一评分值;Mui表示获得待测用户u对第一物品i的第一评分数据时使用的第二用户集合;Xki表示第三用户k对第一物品i的第三评分值;Norm1是一个常量,用来对预测第一评分值进行归一化,可通过下述公式获得Norm1:
最后,根据所述第三用户的第三评分值的置信度,确定所述第一评分值的置信度,得到所述待测用户对所述第一物品的第一评分数据,补入所述用户物品喜好矩阵中。
具体地,可通过下述公式获得第一评分值的置信度:
其中,Fui表示待测用户u对第一物品i的第一评分值的置信度;Fki表示第三用户k对第一物品i的第三评分值的置信度。
综上,便可利用喜好矩阵中已有评分数据,实现对矩阵中空值的合理预测,本发明预测方案结合与待测用户具有相同或相似行为习惯的第三用户,对第一物品的评分情况,推导出待测用户对第一物品的评分情况,预测过程较为合理客观,有助于保证所得预测评分数据的合理性和可靠性。
可选地,本发明方案还可预先设置一个迭代停止条件,并据此判断是否还需要继续更新完善用户物品喜好矩阵。举例来说,迭代停止条件可以为达到预设迭代次数、用户物品喜好矩阵不含空值、用户物品喜好矩阵的矩阵误差小于预设阈值,等等,具体可结合实际应用而定,本发明实施例对此可不做具体限定。具体地,可在执行方式三所示方案之前,先判断当前评分数据预测是否已满足预设迭代停止条件,如果是,则停止迭代过程;如果否,则继续执行方式三所示方案。
需要说明的是,按照方式三所示方案,每对矩阵中的空值做一次预测补入,即可视为完成了一次矩阵迭代。本发明方案中,当前评分数据预测可以为当前矩阵迭代次数,对应于此,预设迭代停止条件可体现为预设迭代次数,即,如果当前矩阵迭代次数未达到所述预设迭代次数,则可继续执行方式三所示方案。或者,当前评分数据预测可以为当前矩阵包括的空值数目,对应于此,预设迭代停止条件可体现为矩阵中不含空值,即,如果当前矩阵包括的空值数目表示矩阵中还有空值,则可继续执行方式三所示方案。或者,当前评分数据预测可以为当前的矩阵误差,对应于此,预设迭代停止条件可体现为矩阵误差小于预设阈值,即当前的矩阵误差如果不小于预设阈值,则可继续执行方式三所示方案。本发明方案中的矩阵误差可以理解为,上次迭代过程开始时的矩阵与上次迭代过程结束后的矩阵,二者之间的差值。举例来说,可以计算矩阵的平方差,获得矩阵误差。
通常,利用用户物品喜好矩阵实现的个性化推荐方案中,大多是利用评分值计算两个用户之间的相似度,没有考虑物品之间的相似度。为了获得物品相似度,目前出现一种基于主题的个性化推荐方案。
基于主题的个性化推荐方案可以理解为,在基于用户相似度实现的个性化推荐方案的基础上增加了一层隐藏层,该隐藏层对应着用户到隐藏主题、物品到隐藏主题的映射关系。举例来说,可以通过奇异值分解(英文:singularvaluedecomposition,简称:SVD)或者随机梯度下降(英文:stochasticgradientdescent,简称:SGD)对用户物品喜好矩阵进行分解,转换为用户主题矩阵与物品主题矩阵乘积的形式,具体可参见图5所示示例。其中,矩阵X为用户物品喜好矩阵,该矩阵包括m个用户对n个物品的评分值;矩阵U为用户主题矩阵,矩阵V为物品主题矩阵,包括T个隐藏主题。
举例来说,可以通过SGD方法对矩阵U以及矩阵V进行迭代更新,直到下述损失函数L(LossFunction)收敛小于预设阀值或者矩阵分解迭代次数达到指定上限时,可转换得到图5所示两个矩阵。
其中,表示用户主题矩阵转置后的第i列向量,Vj表示物品主题矩阵的第j列向量,λu与λv分别为避免函数过拟合问题而设置的用户因子以及物品因子的权重,||V||表示向量V的2-范数,其计算公式如下:
||V||=(|V1|+|V2|+|V3|+…+|Vt|)1/2
其中,|V1|表示向量V的第一列大小的绝对值。
SGD方法的核心思想是随机选取一个(i,j)值,即用户i对物品j的评分值,然后通过目标函数计算其对应的梯度,最后让向量Ui与向量Vj沿着对应的负梯度方向移动,直到移动到极小值点。目标函数可以通过上述的损失函数转化而得:
利用上述目标函数,可分别对Ui以及Vj进行偏导数求解,求出对应的斜率,然后对应的Ui以及Vj可以按照负斜率进行更新,对应的更新公式为:
Ui←Ui-γ(eijVj+λuUi)
Vj←Vj-γ(eijUj+λuVi)
其中,γ表示更新步伐,eij为用户物品喜好矩阵中的真实值、根据本次迭代过程中矩阵U以及矩阵V得到的预测值,二者之间的偏差,可通过下述公式计算获得:
通过上述更新公式,反复迭代更新向量Ui以及Vj,直至预测值与真实值之间的平均误差小于预设阀值,或者矩阵分解达到指定迭代次数时,便可获得由用户物品喜好矩阵转换出的用户主题矩阵以及物品主题矩阵。
可选地,利用本发明方案获得待测用户对新增物品的预测评分数据后,可将预测评分数据补入用户物品喜好矩阵中,利用完善后的用户物品喜好矩阵,进行矩阵分解时,还可利用矩阵所含评分值的置信度,确定每次迭代过程使用的更新步伐γ,具体地,γ=e-pF。其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
传统的矩阵分解方案中,更新步伐γ由人为根据经验设置,取值大小往往没有明确的指标,需要反复多次尝试,如果γ值设置的过小,则整个函数的收敛速度过慢,如果γ值设置的过大,则每次迭代后的损失函数不一定会减小,导致迭代次数增多甚至无法收敛。本发明方案根据置信度,动态调整每次迭代过程使用的更新步伐,γ值的设置过程不需要人为因素参数,使其更具客观性和合理性。
与图4所示方法相对应,本发明实施例还提供一种评分数据预测装置300,参见图6所示示意图,所述装置可包括:
新增物品元数据获取单元301,用于获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;
标签评分值获取单元302,用于获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;
第一权重值获取单元303,用于获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;
预测评分值获得单元304,用于利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
可选地,所述标签评分值获取单元包括:
物品集合确定单元,用于从用户物品喜好矩阵中,确定出所述待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值;
第一物品元数据获取单元,用于获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签;
第二权重值获得单元,用于获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值;
标签评分值获得单元,用于利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
可选地,第二权重值获得单元,具体用于通过以下公式获得每个标签的第二权重值:
其中,表示标签tn在第一物品i中的第二权重值;表示标签tn在第一物品i中出现的次数;表示标签tn在第一物品集合R1包括的所有物品中出现的次数;具体为:
标签评分值获得单元,具体用于通过以下公式获得所述标签评分值:
其中,表示待测用户u对标签tn的标签评分值;Xuj表示待测用户u对第一物品j的第一评分值。
可选地,第一权重值获取单元,具体用于通过以下公式获得每个标签的第一权重值:
其中,表示标签tn在新增物品z中的第一权重值;表示标签tn在新增物品z中出现的次数;表示标签tn在第二物品集合R2包括的所有物品中出现的次数,第二物品集合R2包括第一物品集合R1和新增物品z;具体为:
可选地,预测评分值获得单元,具体用于通过以下公式获得所述预测评分值:
其中,表示待测用户u对新增物品z的预测评分值;表示标签tn在新增物品z中的第一权重值;表示待测用户u对标签tn的标签评分值。
可选地,所述第一评分数据还包括第一评分值的置信度,所述装置还包括:
标签评分值置信度获得单元,用于利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度;
预测评分值置信度获得单元,用于利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
可选地,标签评分值置信度获得单元,具体用于通过以下公式获得所述标签评分值的置信度:
其中,表示待测用户u对第一物品j的第一评分值的置信度;表示标签tn在第一物品j中的第二权重值;
预测评分值置信度获得单元,具体用于通过以下公式获得所述预测评分值的置信度:
其中,表示待测用户u对新增物品z的预测评分值的置信度;表示标签tn在新增物品z中的第一权重值。
可选地,将所述预测评分数据补入用户物品喜好矩阵中,基于所述用户物品喜好矩阵进行矩阵分解时,所述装置还包括:
更新步伐调整单元,用于调整每次迭代过程使用的更新步伐γ=e-pF,
其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (12)
1.一种评分数据预测方法,其特征在于,所述方法包括:
获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;
获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;
获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;
利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
2.根据权利要求1所述的方法,其特征在于,所述获取待测用户对每个标签的标签评分值,包括:
从用户物品喜好矩阵中,确定出所述待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值;
获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签;
获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值;
利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
3.根据权利要求2所述的方法,其特征在于,
通过以下公式获得每个标签的第二权重值:
其中,表示标签tn在第一物品i中的第二权重值;表示标签tn在第一物品i中出现的次数;表示标签tn在第一物品集合R1包括的所有物品中出现的次数;具体为:
通过以下公式获得所述标签评分值:
其中,表示待测用户u对标签tn的标签评分值;Xuj表示待测用户u对第一物品j的第一评分值。
4.根据权利要求1所述的方法,其特征在于,通过以下公式获得每个标签的第一权重值:
其中,表示标签tn在新增物品z中的第一权重值;表示标签tn在新增物品z中出现的次数;表示标签tn在第二物品集合R2包括的所有物品中出现的次数,第二物品集合R2包括第一物品集合R1和新增物品z;具体为:
5.根据权利要求1所述的方法,其特征在于,通过以下公式获得所述预测评分值:
其中,表示待测用户u对新增物品z的预测评分值;表示标签tn在新增物品z中的第一权重值;表示待测用户u对标签tn的标签评分值。
6.根据权利要求2所述的方法,其特征在于,所述第一评分数据还包括第一评分值的置信度,所述方法还包括:
利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度;
利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
7.根据权利要求6所述的方法,其特征在于,
通过以下公式获得所述标签评分值的置信度:
其中,表示待测用户u对第一物品j的第一评分值的置信度;表示标签tn在第一物品j中的第二权重值;
通过以下公式获得所述预测评分值的置信度:
其中,表示待测用户u对新增物品z的预测评分值的置信度;表示标签tn在新增物品z中的第一权重值。
8.根据权利要求1至7任一项所述的方法,其特征在于,将所述预测评分数据补入用户物品喜好矩阵中,基于所述用户物品喜好矩阵进行矩阵分解时,所述方法还包括:
调整每次迭代过程使用的更新步伐γ=e-pF,
其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
9.一种评分数据预测装置,其特征在于,所述装置包括:
新增物品元数据获取单元,用于获取新增物品的元数据,所述新增物品的元数据包括至少一个用于表示所述新增物品属性的标签;
标签评分值获取单元,用于获取待测用户对每个标签的标签评分值,所述标签评分值根据所述待测用户已评分的第一物品的标签获得;
第一权重值获取单元,用于获取每个标签用于预测所述待测用户对所述新增物品的评分值时的第一权重值;
预测评分值获得单元,用于利用所述每个标签的第一权重值和该标签的标签评分值,获得所述待测用户对所述新增物品的预测评分值。
10.根据权利要求9所述的装置,其特征在于,所述标签评分值获取单元包括:
物品集合确定单元,用于从用户物品喜好矩阵中,确定出所述待测用户已评分的第一物品集合,所述第一物品集合包括至少一个所述第一物品,所述待测用户对所述第一物品有第一评分数据,所述第一评分数据包括第一评分值;
第一物品元数据获取单元,用于获取所述第一物品的元数据,所述第一物品的元数据包括至少一个用于表示所述第一物品属性的标签;
第二权重值获得单元,用于获得所述第一物品的元数据中的每个标签在所述第一物品中的第二权重值;
标签评分值获得单元,用于利用所述第一物品的第一评分值和每个标签的第二权重值,获得所述待测用户对每个标签的标签评分值。
11.根据权利要求10所述的装置,其特征在于,所述第一评分数据还包括第一评分值的置信度,所述装置还包括:
标签评分值置信度获得单元,用于利用所述第一评分值的置信度和每个标签的第二权重值,获得所述标签评分值的置信度;
预测评分值置信度获得单元,用于利用所述标签评分值的置信度和每个标签的第一权重值,获得所述预测评分值的置信度。
12.根据权利要求9至11任一项所述的装置,其特征在于,将所述预测评分数据补入用户物品喜好矩阵中,基于所述用户物品喜好矩阵进行矩阵分解时,所述装置还包括:
更新步伐调整单元,用于调整每次迭代过程使用的更新步伐γ=e-pF,
其中,P表示矩阵分解过程中的迭代次数,e-p表示迭代衰减函数,F表示评分值的置信度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510955732.0A CN105630880A (zh) | 2015-12-17 | 2015-12-17 | 一种评分数据预测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510955732.0A CN105630880A (zh) | 2015-12-17 | 2015-12-17 | 一种评分数据预测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105630880A true CN105630880A (zh) | 2016-06-01 |
Family
ID=56045813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510955732.0A Pending CN105630880A (zh) | 2015-12-17 | 2015-12-17 | 一种评分数据预测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105630880A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239993A (zh) * | 2017-05-24 | 2017-10-10 | 海南大学 | 一种基于拓展标签的矩阵分解推荐方法及系统 |
CN109656433A (zh) * | 2017-10-11 | 2019-04-19 | 腾讯科技(深圳)有限公司 | 类目信息处理方法、装置、计算机设备和存储介质 |
CN110222219A (zh) * | 2019-04-30 | 2019-09-10 | 厦门一品威客网络科技股份有限公司 | 一种互动式图像推荐方法、装置、计算机设备及存储介质 |
CN110263188A (zh) * | 2019-05-29 | 2019-09-20 | 深圳市元征科技股份有限公司 | 媒体数据评分方法、装置及设备 |
CN110532479A (zh) * | 2019-09-05 | 2019-12-03 | 北京思维造物信息科技股份有限公司 | 一种信息推荐方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508870A (zh) * | 2011-10-10 | 2012-06-20 | 南京大学 | 一种结合评分数据与标签数据的个性化推荐方法 |
CN103530416A (zh) * | 2013-10-28 | 2014-01-22 | 海南大学 | 项目数据预测评分库的生成、项目数据的推送方法和系统 |
CN104615741A (zh) * | 2015-02-12 | 2015-05-13 | 福建金科信息技术股份有限公司 | 一种基于云计算的冷启动项目推荐的方法及装置 |
-
2015
- 2015-12-17 CN CN201510955732.0A patent/CN105630880A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508870A (zh) * | 2011-10-10 | 2012-06-20 | 南京大学 | 一种结合评分数据与标签数据的个性化推荐方法 |
CN103530416A (zh) * | 2013-10-28 | 2014-01-22 | 海南大学 | 项目数据预测评分库的生成、项目数据的推送方法和系统 |
CN104615741A (zh) * | 2015-02-12 | 2015-05-13 | 福建金科信息技术股份有限公司 | 一种基于云计算的冷启动项目推荐的方法及装置 |
Non-Patent Citations (1)
Title |
---|
刘海浪: "《基于标签的推荐系统的研究与实现》", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239993A (zh) * | 2017-05-24 | 2017-10-10 | 海南大学 | 一种基于拓展标签的矩阵分解推荐方法及系统 |
CN107239993B (zh) * | 2017-05-24 | 2020-11-24 | 海南大学 | 一种基于拓展标签的矩阵分解推荐方法及系统 |
CN109656433A (zh) * | 2017-10-11 | 2019-04-19 | 腾讯科技(深圳)有限公司 | 类目信息处理方法、装置、计算机设备和存储介质 |
CN109656433B (zh) * | 2017-10-11 | 2021-07-06 | 腾讯科技(深圳)有限公司 | 类目信息处理方法、装置、计算机设备和存储介质 |
CN110222219A (zh) * | 2019-04-30 | 2019-09-10 | 厦门一品威客网络科技股份有限公司 | 一种互动式图像推荐方法、装置、计算机设备及存储介质 |
CN110263188A (zh) * | 2019-05-29 | 2019-09-20 | 深圳市元征科技股份有限公司 | 媒体数据评分方法、装置及设备 |
CN110263188B (zh) * | 2019-05-29 | 2023-03-28 | 深圳市元征科技股份有限公司 | 媒体数据评分方法、装置及设备 |
CN110532479A (zh) * | 2019-09-05 | 2019-12-03 | 北京思维造物信息科技股份有限公司 | 一种信息推荐方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105630880A (zh) | 一种评分数据预测方法及装置 | |
CN111797321B (zh) | 一种面向不同场景的个性化知识推荐方法及系统 | |
CN105631535A (zh) | 一种评分数据预测方法及装置 | |
CN102866992B (zh) | 一种在网页中显示产品信息的方法及装置 | |
CN105224959B (zh) | 排序模型的训练方法和装置 | |
CN103209342B (zh) | 一种引入视频流行度和用户兴趣变化的协作过滤推荐方法 | |
US8935303B2 (en) | Method and system of optimizing a ranked list of recommended items | |
CN109408731A (zh) | 一种多目标推荐方法、多目标推荐模型生成方法以及装置 | |
CN106649657A (zh) | 面向社交网络基于张量分解的上下文感知推荐系统及方法 | |
CN109284417A (zh) | 视频推送方法、装置、计算机设备和存储介质 | |
CN103106535B (zh) | 一种基于神经网络解决协同过滤推荐数据稀疏性的方法 | |
CN103744917B (zh) | 混合推荐方法及系统 | |
CN106471491A (zh) | 一种时变的协同过滤推荐方法 | |
CN105653683A (zh) | 一种个性化推荐方法及装置 | |
CN110851699A (zh) | 基于深度强化学习的信息流推荐方法、装置、设备及介质 | |
CN106682121A (zh) | 一种基于用户兴趣变化的时效推荐方法 | |
CN103020846A (zh) | 一种移动应用的推送方法及系统 | |
CN105608121A (zh) | 一种个性化推荐方法及装置 | |
CN105430100A (zh) | 一种用户价值的评估方法、装置及其应用方法和系统 | |
CN111159570B (zh) | 一种信息推荐方法及服务器 | |
CN103886486A (zh) | 一种基于支持向量机svm的电子商务推荐方法 | |
CN110188268A (zh) | 一种基于标签和时间信息的个性化推荐方法 | |
CN105184400A (zh) | 一种烟田土壤水分预测方法 | |
CN104182518B (zh) | 一种协同过滤推荐方法及装置 | |
CN103812671A (zh) | 一种通信业务用户感知度评估方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160601 |
|
RJ01 | Rejection of invention patent application after publication |