CN109389447A - 项目推荐方法、项目推荐系统以及计算机可读介质 - Google Patents

项目推荐方法、项目推荐系统以及计算机可读介质 Download PDF

Info

Publication number
CN109389447A
CN109389447A CN201710665265.7A CN201710665265A CN109389447A CN 109389447 A CN109389447 A CN 109389447A CN 201710665265 A CN201710665265 A CN 201710665265A CN 109389447 A CN109389447 A CN 109389447A
Authority
CN
China
Prior art keywords
project
user
item
scoring
matrix
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
Application number
CN201710665265.7A
Other languages
English (en)
Inventor
唐德荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710665265.7A priority Critical patent/CN109389447A/zh
Publication of CN109389447A publication Critical patent/CN109389447A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了一种项目推荐方法、项目推荐系统以及计算机可读介质。项目推荐方法针对给定用户来推荐项目,包括:关联矩阵构建操作,基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户‑项目关联矩阵;相似度计算操作,根据所述用户‑项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高;候选推荐项目提取操作,针对所述给定用户,根据所述用户‑项目关联矩阵和所述相似度,提取针对所述给定用户的候选推荐项目;以及推荐项目选出操作,利用ALS‑CF算法预测所述给定用户对所述候选推荐项目的评分,根据该评分从所述候选推荐项目中选出针对所述给定用户的推荐项目。

Description

项目推荐方法、项目推荐系统以及计算机可读介质
技术领域
本公开涉及互联网技术领域,更具体地,涉及一种针对给定用户来推荐项目的项目推荐方法、项目推荐系统以及计算机可读介质。
背景技术
随着互联网数据的不断增加,如何快速而高效地为用户找到其真正感兴趣和需要的信息变得越来越重要和紧迫。近年来,作为解决这一课题的重要手段,个性化推荐系统得到了广泛应用。个性化推荐系统根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户。目前,个性化推荐系统正在被越来越多地应用于电子商务(包括各种购物网站,例如京东、当当网等)和各类社会化站点(包括音乐、电影和图书分享,例如豆瓣等)。
协同过滤(CF:Collaborative Filterling)是目前推荐系统中广泛应用的算法,其核心思想是:分析用户兴趣,在用户群中找到给定用户的相似(兴趣)用户,综合这些相似用户对某一信息、产品等的评价,形成系统对该给定用户对此信息、产品等的喜好程度预测。协同过滤算法可分为三类:基于相似度的协同过滤、基于矩阵分解的协同过滤、和基于图的协同过滤。
其中,基于相似度的协同过滤又包括基于项目的协同过滤和基于用户的协同过滤。基于项目的协同过滤(itemCF)的基本思想在于,给用户推荐与他们之前喜欢的项目相似的项目,即基于项目之间的相似度对用户推荐项目。与之相对,基于用户的协同过滤(userCF)的基本思想在于,给用户推荐与他们有相似喜好的用户所喜欢的项目,即基于用户之间的相似度对用户推荐项目。
此外,基于交替最小二乘法(ALS:Alternating Least Squares)的协同过滤算法(又称为ALS协同过滤算法或ALS算法,以下简记为ALS-CF算法)是基于矩阵分解的协同过滤算法中的一种典型算法。不同于上述那样通过计算相似度来进行推荐的itemCF算法或userCF算法,ALS-CF算法通过将用户-项目关联矩阵近似分解为两个低维矩阵的乘积,从而利用这个乘积来预测用户对项目的评分,然后基于预测出的评分来对用户推荐项目。
在实现本公开过程中,发明人发现现有技术中至少存在如下问题。
当ALS-CF算法基于Spark这一大数据分布式处理框架来实现时,在小数据集上的计算效率是可以接受的,但是当超过10亿数据量后,ALS-CF算法的计算量变得非常巨大,计算效率变得很低,严重影响了该算法的可行性。因此,如何有效降低ALS-CF算法的计算量,并在提高推荐效率的同时提高推荐的准确度,成为本领域技术人员的一个重要研究课题。
此外,从实测效果看,在推荐系统中,单一算法的准确度往往低于将多种算法相融合所能达到的准确度。因此,如何将各种推荐算法融合起来以达到更好的推荐效果也是本领域技术人员的一个重要研究课题。
发明内容
有鉴于此,本公开的目的至少部分地在于提供一种能够在以相对小的计算量高效率地实现ALS-CF算法的同时以相对高的准确度进行项目推荐的项目推荐方法、项目推荐系统以及计算机可读介质。
本公开的一个方面提供了一种项目推荐方法,针对给定用户来推荐项目,所述方法包括:关联矩阵构建操作,基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵;相似度计算操作,根据所述用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高;候选推荐项目提取操作,针对所述给定用户,根据所述用户-项目关联矩阵和所述相似度,提取针对所述给定用户的候选推荐项目;以及推荐项目选出操作,利用ALS-CF算法预测所述给定用户对所述候选推荐项目的评分,根据该评分从所述候选推荐项目中选出针对所述给定用户的推荐项目。
根据本公开的一个方面的项目推荐方法,在所述候选推荐项目提取操作中,在所述给定用户没有评分的项目之中,提取与所述给定用户有评分的项目之间的相似度高的至少一个项目,作为针对所述给定用户的所述候选推荐项目。
根据本公开的一个方面的项目推荐方法,所述推荐项目选出操作包括:关联矩阵分解操作,将所述用户-项目关联矩阵分解为用户特征向量矩阵与项目特征向量矩阵的转置矩阵的乘积;预测评分操作,利用所述用户特征向量矩阵与所述项目特征向量矩阵,预测所述给定用户对所述候选推荐项目的评分;以及项目选出操作,选出评分高的至少一个所述候选推荐项目,作为针对所述给定用户的所述推荐项目。
根据本公开的一个方面的项目推荐方法,所述项目是商品,所述用户的所述行为包括:浏览行为、点击行为、加购物车行为、下订单行为、和加关注行为。
根据本公开的一个方面的项目推荐方法,在某一用户对某一项目有行为的情况下,该用户对该项目的评分r基于以下公式计算:
其中,act是所述用户的行为,wact是所述用户的行为act的权重,T是当前时间,tact是所述用户的行为act的产生时间。
根据本公开的一个方面的项目推荐方法,任意两个项目Itemi、Itemj之间的相似度SIM(Itemi,Itemj)基于以下公式计算:
其中,|Ni|是对项目Itemi有评分的用户的数目,|Nj|是对项目Itemj有评分的用户的数目,|Ni∩Nj|是同时对项目Itemi和项目Itemj有评分的用户的数目。
根据本公开的一个方面的项目推荐方法,关于用户的行为act的权重wact,下订单行为的权重最高,点击行为的权重最低。
本公开的另一个方面提供了一种项目推荐系统,针对给定用户来推荐项目,所述项目推荐系统包括:关联矩阵构建模块,用于基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵;相似度计算模块,用于根据所述用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高;候选推荐项目提取模块,用于针对所述给定用户,根据所述用户-项目关联矩阵和所述相似度,提取针对所述给定用户的候选推荐项目;以及推荐项目选出模块,用于利用ALS-CF算法预测所述给定用户对所述候选推荐项目的评分,根据该评分从所述候选推荐项目中选出针对所述给定用户的推荐项目。
本公开的另一个方面提供了一种项目推荐系统,针对给定用户推荐项目,所述项目推荐系统包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行本公开的上述一个方面的项目推荐方法。
本公开的另一个方面提供了一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行本公开的上述一个方面的项目推荐方法。
根据本公开的实施例,通过根据用户-项目关联矩阵和项目之间的相似度来提取针对给定用户的候选推荐项目,在利用ALS-CF算法预测出给定用户对候选推荐项目的评分后,再根据该评分从候选推荐项目中选出针对给定用户的推荐项目,从而将需要预测出评分的项目从用户没有评分的所有项目缩小到候选推荐项目,即仅需要对候选推荐项目预测出评分即可,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量,至少部分地解决了当超过10亿数据量后ALS-CF算法变得不可行的技术问题。同时,通过将不同算法进行融合,能够在提高效率的同时有效提高推荐的准确度。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了推荐算法中使用的用户-项目关联矩阵;
图2示意性示出了itemCF算法的基本推荐原理,其中,图2(a)为一个用户-项目关联矩阵的示意图,图2(b)为基于图2(a)的用户-项目矩阵进行推荐的示意图;
图3示意性示出了ALS-CF算法中的矩阵分解;
图4示意性示出了本公开实施例的项目推荐方法的流程图;
图5示意性示出了本公开实施例的项目推荐方法的推荐项目选出操作的流程图;
图6示意性示出了本公开的另一方面的实施例的与上述项目推荐方法对应的项目推荐系统的框图;
图7示意性示出了本公开的另一方面的实施例的与上述项目推荐方法对应的项目推荐系统的推荐项目选出模块的框图。
图8示意性示出了本公开的另一方面的实施例的项目推荐系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。这里使用的词语“一”、“一个(种)”和“该”等也应包括“多个”、“多种”的意思,除非上下文另外明确指出。此外,在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。
因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
本公开的实施例提供了一种项目推荐方法,针对给定用户来推荐项目。
首先,利用图1来简单说明用户-项目关联矩阵。
图1示意性地示出了推荐算法中使用的用户-项目关联矩阵。
如图1所示,用户-项目关联矩阵是一个m×n的矩阵R,其中,m是用户的数目,n是项目的数目,矩阵R的第i行第j列的元素R(i,j)是第i个用户Useri对第j个项目Itemj的评分rij
用户对项目的评分表征了用户对项目的喜好程度(或偏好程度),一般根据用户在站点上的行为来计算。例如,若以购物网站为应用场景,则用户的行为主要有浏览、点击、加购物车、下订单、和加关注等。此时,可将“项目”简单理解为“商品”。
一般情况下,用户的各种行为所反映出的用户对项目的喜好程度是不同的。比如,若用户仅仅浏览了项目的网页,而并未将项目添加到自己的关注商品列表中,也没有将其加入自己的购物车,则可以推测该用户对该项目的喜好程度较低。若用户对项目下了订单即购买了该项目,则基本可以确定该用户对该项目有相当的偏好。由此,在基于用户的行为计算用户对项目的评分时,可以对用户的各种行为赋予不同的权重。例如,可以将下订单行为的权重设为最高,将点击行为的权重设为最低。
在对用户的各种行为赋予了不同的权重后,就可以综合一个用户以往对一个项目所产生的各种行为来计算该用户对该项目的评分。这里,给出以下公式来计算用户对项目的评分r:
[数学表达式1]
其中,act是用户的行为,wact是用户的行为act的权重,T是当前时间,tact是用户的行为act的产生时间。这里,用户的行为的重要程度是随着时间在衰减的,即认为用户的行为所产生的时间距离当前时间越近则该行为对评分r的贡献越大。
在此,需要说明的是,在用户-项目关联矩阵中,并不是每个用户都对每个项目有评分。这是因为,并不是每个用户都对每个项目产生过行为。例如,在购物网站中,商品数量众多,对于一个用户来说,他并不会对每个商品都有过浏览、点击、加购物车、下订单、和加关注等行为。因此,用户-项目关联矩阵往往是稀疏的,即有若干元素的值缺失(不存在用户对项目的评分)。
下面,简要说明itemCF算法。
首先,说明相似度的概念。
相似度是itemCF算法和userCF算法中用到的基本概念。关于相似度的计算,现有的几种基本方法都是基于向量的。
在用户-项目关联矩阵中,我们可以将所有用户对一个项目的评分作为一个向量(即用户-项目关联矩阵的列向量,以下也称为项目向量),利用项目向量来计算项目之间的相似度,也可以将一个用户对所有项目的评分作为一个向量(即用户-项目关联矩阵的行向量,以下也称为用户向量),利用用户向量来计算用户之间的相似度。
在实际的应用中,相似度可以使用表征向量间距离的欧几里得距离、用于描述两个随机变量间相关程度的皮尔森相关系数、以及被广泛应用于文档数据的Cosine相似度等来计算。
本公开中采用基于频次来计算项目之间的相似度的方法。例如,对于任意两个项目Itemi、Itemj,根据用户-项目关联矩阵分别统计出对项目Itemi有评分的用户的数目|Ni|和对项目Itemj有评分的用户的数目|Nj|,并且统计出同时对项目Itemi和项目Itemj有评分的用户的数目|Ni∩Nj|。其中,Ni是对项目Itemi有评分的用户的集合,可以看做是偏好项目Itemi的用户的集合,Nj是对项目Itemj有评分的用户的集合,可以看做是偏好项目Itemj的用户的集合,Ni∩Nj是同时对项目Itemi和项目Itemj有评分的用户的集合,可以看做是同时偏好项目Itemi和项目Itemj的用户的集合。
在此基础上,任意两个项目Itemi和Itemj之间的相似度SIM(Itemi,Itemj)根据如下公式来计算:
[数学表达式2]
基于该公式的相似度计算的基本思想在于,如果两个项目Itemi和Itemj经常被同一个用户所偏好,则认为项目Itemi和Itemj存在较高的相似性,这相当于,如果两个项目Itemi和Itemj经常由同一个用户给出评分,则认为它们的相似度比较高。换句话来说就是,同时偏好两个项目Itemi和Itemj的用户越多则该两个项目Itemi和Itemj之间的相似性就越大,即同时对两个项目Itemi和Itemj有评分的用户越多则该两个项目Itemi和Itemj之间的相似度就越高。
接着,使用附图2说明itemCF算法的基本推荐原理。
图2示意性示出了itemCF算法的基本推荐原理,其中,图2(a)为一个用户-项目关联矩阵的示意图,图2(b)为基于图2(a)的用户-项目矩阵进行推荐的示意图。
简单来说,itemCF算法利用项目之间的相似度进行推荐,即给用户推荐与他们之前喜欢的项目相似的项目。
假设用户User1喜欢项目Item1和项目Item3,用户User2喜欢项目Item1、项目Item2、和项目Item3,用户User3喜欢项目Item1。如图2(a)所示,构建出用户-项目关联矩阵(这里省略具体的评分而以“√”表征用户对项目有偏好)。根据图2(a)所示的用户-项目关联矩阵,可以分析出项目Item1和项目Item3比较相似,因为喜欢项目Item1的用户都喜欢项目Item3。由此,可以推断喜欢项目Item1的用户User3很有可能也会喜欢项目Item3,因此如图2(b)所示将项目Item3推荐给用户User3
以上说明了itemCF算法的基本推荐原理。userCF算法与itemCF算法相类似,但不同的是,userCF算法是利用用户之间的相似度进行推荐的,即给用户推荐与他们有相似喜好的用户所喜欢的项目。具体推荐方法这里不再赘述。
需要说明的是,这里以将itemCF算法和ALS-CF算法相融合为例来进行说明,当然还可以基于后述的本公开的基本思想将userCF算法和ALS-CF算法相融合。具体实施例这里不再赘述。
下面,简要说明ALS-CF算法。
首先,简要说明ALS-CF算法的基本思想。
如上所述,用户-项目关联矩阵往往是稀疏的,有若干元素的值缺失(不存在用户对项目的评分)。在推荐算法中,通过利用现有的评分预测出缺失的评分,将该稀疏的用户-项目关联矩阵填满,从而得到任意用户对任意项目的评分。其中,预测出的评分也被称为用户对项目的预测评分,该预测评分可以用于针对给定用户的项目推荐当中。
作为一种基于矩阵分解的协同过滤算法,ALS-CF算法首先将用户-项目关联矩阵近似分解为用户特征向量矩阵和产品特征向量矩阵的转置矩阵的乘积,利用该乘积预测出用户-项目关联矩阵中缺失的评分,然后根据预测出的评分选出针对给定用户的推荐项目。
接着,说明ALS-CF算法中的矩阵分解。
ALS-CF算法利用交替最小二乘法来实现矩阵分解。具体来说,将m行n列的用户-项目关联矩阵R近似分解为两个低维的矩阵的乘积,即分解为用户特征向量矩阵U和项目特征向量矩阵V的转置矩阵VT的乘积,即R≈U×VT。其中,U是m行d列的矩阵,V是n行d列的矩阵,且d小于m和n。可以将d理解为用户的特征值的数目和项目的特征值的数目。这样,用户特征向量矩阵U就是由m个用户特征向量组成的,其中,每一个用户特征向量由d个用户特征值组成。与之相对,项目特征向量矩阵V是由n个项目特征向量组成的,其中,每一个项目特征向量由d个项目特征值组成。
在将用户-项目关联矩阵近似分解为用户特征向量矩阵U和项目特征向量矩阵V的转置矩阵VT的乘积的情况下,第i个用户对第j个项目的评分rij就可以通过将用户特征向量矩阵U的第i行与项目特征向量矩阵V的转置矩阵VT的第j列相乘来得到。
这里,关键的问题在于如何根据已有的稀疏的用户-项目关联矩阵来找到用户特征值和项目特征值,从而确定用户特征量矩阵和项目特征量矩阵。交替最小二乘法可以很好的解决这个问题,具体求解的过程这里不再赘述。
为了使如上所述的矩阵分解更容易理解,我们参照图3来给出具体例子。
图3示意性示出了ALS-CF算法中的矩阵分解。
如图3所示,例如将4行5列的用户-项目关联矩阵R近似分解为4行3列的用户特征向量矩阵U与5行3列的项目特征向量矩阵V的转置矩阵VT的乘积。这里,用户的数目m是4,项目的数目n是5,用户和项目的特征值C的数目d是3。
这样,例如用户-项目关联矩阵R中第2个用户对第3个项目的评分就可以通过将用户特征量矩阵U的第2行与项目特征量矩阵V的转置矩阵VT的第3列(即项目特征量矩阵V的第3行)相乘来得到。即,r23=u21×v31+u22×v32+u23×v33
由此,在确定出用户特征量矩阵和项目特征量矩阵的情况下,任意用户对任意项目的评分都可以根据用户特征向量矩阵和项目特征量矩阵利用向量的乘积来得到。于是,可以利用用户特征向量矩阵和项目特征量矩阵来得到用户-项目关联矩阵中缺失的评分。
在利用了ALS-CF算法的推荐技术中,传统的做法是在将用户-项目关联矩阵近似分解为用户特征向量矩阵和项目特征量矩阵后,利用向量相乘预测出用户-项目关联矩阵中所有缺失的评分,然后排序找出评分最靠前的N个项目推荐给用户。其中,N为根据需要而预先设定的正整数。
对于利用向量相乘预测出用户-项目关联矩阵中所有缺失的评分这一过程来说,在小数据集上实现问题不大,但是在10亿~100亿数据集上实现这个过程时,计算量会变得非常巨大,因而会非常耗时而且占用内存,严重影响推荐的效率,从而使得ALS-CF算法不可行。
为了解决ALS-CF算法在10亿~100亿数据集上评分预测过程的计算量太大这一问题,并且在提高ALS-CF算法的推荐效率的同时提高推荐的准确度,本发明者给出了一种将itemCF算法与ALS-CF算法相融合的项目推荐方法。该方法的基本思想是,针对给定用户,首先利用itemCF算法提取出候选推荐项目,然后利用ALS-CF算法预测出候选推荐项目的评分,再根据候选推荐项目的评分例如利用排序而选出针对给定用户的推荐项目。
下面,结合附图来详细说明本公开实施例的项目推荐方法。
图4示意性示出了本公开实施例的项目推荐方法的流程图。
首先,在关联矩阵构建操作S1中,基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵。例如,可以基于用户Useri的行为利用前述的数学表达式1计算表征该用户Useri对项目Itemj的喜好程度的评分rij,构建用户-项目关联矩阵R。
接着,在相似度计算操作S2中,根据用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高。例如,可以根据上述用户-项目关联矩阵R,利用前述的数学表达式2计算任意两个项目Itemi和Itemj之间的相似度SIM(Itemi,Itemj)。具体来说,根据用户-项目关联矩阵,对于任意两个项目Itemi和Itemj,分别统计出对项目Itemi有评分的用户的数目、对项目Itemj有评分的用户的数目、以及同时对项目Itemi和Itemj有评分的用户的数目,然后利用数学表达式2计算出项目Itemi和Itemj之间的相似度SIM(Itemi,Itemj)。
然后,在候选推荐项目提取操作S3中,针对给定用户,根据用户-项目关联矩阵和相似度,提取针对给定用户的候选推荐项目。具体的操作在后面叙述。
最后,在推荐项目选出操作S4中,利用ALS-CF算法预测给定用户对候选推荐项目的评分,根据该评分从候选推荐项目中选出针对给定用户的推荐项目。具体的操作在后面叙述。
由此,通过根据用户-项目关联矩阵和项目之间的相似度来提取针对给定用户的候选推荐项目,在利用ALS-CF算法预测出给定用户对候选推荐项目的评分后,再根据该评分从候选推荐项目中选出针对给定用户的推荐项目,从而将需要预测出评分的项目从用户没有评分的所有项目缩小到候选推荐项目,仅需要对候选推荐项目预测出评分即可,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量,至少部分地解决了当超过10亿数据量后ALS-CF算法变得不可行的技术问题。同时,通过将不同算法进行融合,能够在提高效率的同时有效提高推荐的准确度。
此外,在上述候选推荐项目提取操作S3中,在给定用户没有评分的项目之中,提取与给定用户有评分的项目之间的相似度高的至少一个项目,作为针对给定用户的候选推荐项目。
具体来说,根据给定用户没有评分的项目与给定用户有评分的项目之间的相似度SIM(Itemi,Itemj),在给定用户没有评分的项目之中,提取相似度高的至少一个项目,作为针对给定用户的候选推荐项目。这里,可以对相似度进行排序来找出相似度最靠前的若干个如2N个项目作为候选推荐项目。其中,N是正整数,是预先设定的要推荐给给定用户的推荐项目的数目。此外,2N是例示,诸如3N、4N、...或者其他整数数目也可以。另外,也可以设定阈值来找出相似度高于阈值的若干项目作为候选推荐项目。该阈值可以根据推荐系统所应用的场景和推荐的效果等来设定。
由此,通过提取与给定用户所喜欢的项目之间的相似度高的项目,作为针对给定用户的候选推荐项目,从而将后续需要预测出的评分项目从用户没有评分的所有项目缩小到候选推荐项目,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量。
下面,利用图5对上述推荐项目选出操作进行具体说明。
图5示意性示出了本公开实施例的项目推荐方法的推荐项目选出操作的流程图。
如图5所示,首先,在关联矩阵分解操作S4-1中,利用交替最小二乘法将上述用户-项目关联矩阵R分解为用户特征向量矩阵U与项目特征向量矩阵V的转置矩阵VT的乘积。
接着,在预测评分操作S4-2中,利用用户特征向量矩阵U与项目特征向量矩阵V,预测给定用户对候选推荐项目的评分。具体来说,假设给定用户是第i个用户Useri,第j个项目Itemj是在候选推荐项目提取操作中提取到的针对给定用户即Useri的候选推荐项目。将用户特征向量矩阵U的第i个行向量即给定用户的用户向量与项目特征向量矩阵V的转置矩阵VT的第j个列向量相乘,得到用户-项目关联矩阵中缺失的第i行第j列的元素rij。由此,可以预测出给定用户对候选推荐项目Itemj的评分。
然后,在项目选出操作S4-3中,选出评分高的至少一个候选推荐项目,作为针对给定用户的上述推荐项目。具体来说,根据预测出的候选推荐项目的评分,从候选推荐项目之中,选出评分最靠前的N个项目作为针对给定用户的推荐项目。另外,也可以设定阈值来找出评分高于阈值的若干项目作为推荐项目。该阈值可以根据推荐系统所应用的场景和推荐的效果等来设定。
由此,仅对针对给定用户的候选推荐项目来预测评分即可,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量,至少部分地解决了当超过10亿数据量后ALS-CF算法变得不可行的技术问题。同时,通过将不同算法进行融合,能够在提高效率的同时有效提高推荐的准确度。
以上的详细描述通过使用方框图、流程图和/或示例,已经阐述了本公开的项目推荐方法的实施例。在这种方框图、流程图和/或示例包含一个或多个功能和/或操作的情况下,本领域技术人员应理解,这种方框图、流程图或示例中的每一功能和/或操作可以通过各种硬件、软件、固件或实质上它们的任意组合来单独和/或共同实现。在一个实施例中,本公开的实施例所述主题的若干部分可以通过专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、或其他集成格式来实现。然而,本领域技术人员应认识到,这里所公开的实施例的一些方面在整体上或部分地可以等同地实现在集成电路中,实现为在一台或多台计算机上运行的一个或多个计算机程序(例如,实现为在一台或多台计算机系统上运行的一个或多个程序),实现为在一个或多个处理器上运行的一个或多个程序(例如,实现为在一个或多个微处理器上运行的一个或多个程序),实现为固件,或者实质上实现为上述方式的任意组合,并且本领域技术人员根据本公开,将具备设计电路和/或写入软件和/或固件代码的能力。此外,本领域技术人员将认识到,本公开所述主题的机制能够作为多种形式的程序产品进行分发,并且无论实际用来执行分发的信号承载介质的具体类型如何,本公开所述主题的示例性实施例均适用。信号承载介质的示例包括但不限于:可记录型介质,如软盘、硬盘驱动器、紧致盘(CD)、数字通用盘(DVD)、数字磁带、计算机存储器等;以及传输型介质,如数字和/或模拟通信介质(例如,光纤光缆、波导、有线通信链路、无线通信链路等)。
下面,以图6为例,说明一种以硬件方式实现了上述项目推荐方法的项目推荐系统。
图6示意性示出了本公开的另一方面的实施例的与上述项目推荐方法对应的项目推荐系统的框图。
如图6所示,项目推荐系统600包括关联矩阵构建模块610、相似度计算模块620、候选推荐项目提取模块630、和推荐项目选出模块640。
关联矩阵构建模块610,基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵。例如,可以基于用户Useri的行为利用前述的数学表达式1计算表征该用户Useri对项目Itemj的喜好程度的评分rij,构建用户-项目关联矩阵R。
相似度计算模块620,根据用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高。例如,可以根据上述用户-项目关联矩阵R,利用前述的数学表达式2计算任意两个项目Itemi和Itemj之间的相似度SIM(Itemi,Itemj)。具体来说,根据用户-项目关联矩阵,对于任意两个项目Itemi和Itemj,分别统计出对项目Itemi有评分的用户的数目、对项目Itemj有评分的用户的数目、以及同时对项目Itemi和Itemj有评分的用户的数目,然后利用数学表达式2计算出项目Itemi和Itemj之间的相似度SIM(Itemi,Itemj)。
候选推荐项目提取模块630,针对给定用户,根据用户-项目关联矩阵和相似度,提取针对给定用户的候选推荐项目。具体的操作在后面叙述。
推荐项目选出模块640,利用ALS-CF算法预测给定用户对候选推荐项目的评分,根据该评分从候选推荐项目中选出针对给定用户的推荐项目。具体的操作在后面叙述。
由此,通过根据用户-项目关联矩阵和项目之间的相似度来提取针对给定用户的候选推荐项目,在利用ALS-CF算法预测出给定用户对候选推荐项目的评分后,再根据该评分从候选推荐项目中选出针对给定用户的推荐项目,从而将需要预测出评分的项目从用户没有评分的所有项目缩小到候选推荐项目,仅需要对候选推荐项目预测出评分即可,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量,至少部分地解决了当超过10亿数据量后ALS-CF算法变得不可行的技术问题。同时,通过将不同算法进行融合,能够在提高效率的同时有效提高推荐的准确度。
此外,上述候选推荐项目提取模块630,在给定用户没有评分的项目之中,提取与给定用户有评分的项目之间的相似度高的至少一个项目,作为针对给定用户的候选推荐项目。
具体来说,根据给定用户没有评分的项目与给定用户有评分的项目之间的相似度SIM(Itemi,Itemj),在给定用户没有评分的项目之中,提取相似度高的至少一个项目,作为针对给定用户的候选推荐项目。这里,可以对相似度进行排序来找出相似度最靠前的若干个如2N个项目作为候选推荐项目。其中,N是正整数,是预先设定的要推荐给给定用户的推荐项目的数目。此外,2N是例示,诸如3N、4N、...或者其他整数数目也可以。另外,也可以设定阈值来找出相似度高于阈值的若干项目作为候选推荐项目。该阈值可以根据推荐系统所应用的场景和推荐的效果等来设定。
由此,通过提取与给定用户所喜欢的项目之间的相似度高的项目,作为针对给定用户的候选推荐项目,从而将后续需要预测出的评分项目从用户没有评分的所有项目缩小到候选推荐项目,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量。
下面,对上述推荐项目选出模块640进行具体说明。
图7示意性示出了本公开的另一方面的实施例的与上述项目推荐方法对应的项目推荐系统的推荐项目选出模块的框图。
如图7所示,推荐项目选出模块640包括关联矩阵分解模块641、预测评分模块642、和项目选出模块643。
关联矩阵分解模块641,利用交替最小二乘法将上述用户-项目关联矩阵R分解为用户特征向量矩阵U与项目特征向量矩阵V的转置矩阵VT的乘积。
预测评分模块642,利用用户特征向量矩阵U与项目特征向量矩阵V,预测给定用户对候选推荐项目的评分。具体来说,假设给定用户是第i个用户Useri,第j个项目Itemj是在候选推荐项目提取操作中提取到的针对给定用户即Useri的候选推荐项目。将用户特征向量矩阵U的第i个行向量即给定用户的用户向量与项目特征向量矩阵V的转置矩阵VT的第j个列向量相乘,得到用户-项目关联矩阵中缺失的第i行第j列的元素rij。由此,可以预测出给定用户对候选推荐项目Itemj的评分。
项目选出模块643,选出评分高的至少一个候选推荐项目,作为针对给定用户的上述推荐项目。具体来说,根据预测出的候选推荐项目的评分,从候选推荐项目之中,选出评分最靠前的N个项目作为针对给定用户的推荐项目。另外,也可以设定阈值来找出评分高于阈值的若干项目作为推荐项目。该阈值可以根据推荐系统所应用的场景和推荐的效果等来设定。
由此,仅对针对给定用户的候选推荐项目来预测评分即可,大大减少了ALS-CF算法中需要预测出评分的项目的数量,降低了ALS-CF算法的计算量,至少部分地解决了当超过10亿数据量后ALS-CF算法变得不可行的技术问题。同时,通过将不同算法进行融合,能够在提高效率的同时有效提高推荐的准确度。
下面,以图8为例,说明另一种以硬件方式实现了上述项目推荐方法的项目推荐系统。
图8示意性示出了本公开的另一方面的实施例的项目推荐系统的方框图。
如图8所示,项目推荐系统800可以包括输入设备801(例如,键盘、鼠标、操作杆等)、输出设备802(例如,显示器等)、处理器803(例如,CPU等)、和存储器804(例如,硬盘HDD、只读存储器ROM等)。此外,还可以包括用虚线表示的记录介质805(例如,磁盘、光盘CD-ROM、USB等)。
此外,该图8仅是一个示例,并不限定本公开的技术方案。其中,项目推荐系统800中的各个部分均可以是一个或多个,例如,处理器803既可以是一个也可以是多个处理器。
这样,不言而喻,本公开实施例的上述项目推荐方法的上文参考流程图(图4、图5等)描述的过程可以被实现为计算机软件程序。在此,该计算机软件程序也可以为一个或多个。
于是,例如,上述计算机软件程序存储于上述项目推荐系统800的作为存储装置的存储器803中,通过执行该计算机软件程序,从而使上述项目推荐系统800的一个或多个处理器803执行本公开的图4、图5等流程图所示的上述项目推荐方法,以针对给定用户来推荐项目。
此外,作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的项目推荐系统800中所包含的(例如图8中的记录介质805);也可以是单独存在,而未装配入该项目推荐系统800中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该系统执行时,使得该系统执行上述图4、5等所示的上述项目推荐方法。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
此外,本公开是以将itemCF算法和ALS-CF算法相融合为例来进行说明的,作为本公开的变形例,还可以考虑将userCF算法和ALS-CF算法相融合。本领域技术人员当然可以根据推荐系统要应用的场景的不同而灵活加以选择。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (10)

1.一种项目推荐方法,针对给定用户来推荐项目,所述方法包括:
关联矩阵构建操作,基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵;
相似度计算操作,根据所述用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高;
候选推荐项目提取操作,针对所述给定用户,根据所述用户-项目关联矩阵和所述相似度,提取针对所述给定用户的候选推荐项目;以及
推荐项目选出操作,利用ALS-CF算法预测所述给定用户对所述候选推荐项目的评分,根据该评分从所述候选推荐项目中选出针对所述给定用户的推荐项目。
2.根据权利要求1所述的项目推荐方法,其中,
在所述候选推荐项目提取操作中,在所述给定用户没有评分的项目之中,提取与所述给定用户有评分的项目之间的相似度高的至少一个项目,作为针对所述给定用户的所述候选推荐项目。
3.根据权利要求1所述的项目推荐方法,其中,
所述推荐项目选出操作包括:
关联矩阵分解操作,将所述用户-项目关联矩阵分解为用户特征向量矩阵与项目特征向量矩阵的转置矩阵的乘积;
预测评分操作,利用所述用户特征向量矩阵与所述项目特征向量矩阵,预测所述给定用户对所述候选推荐项目的评分;以及
项目选出操作,选出评分高的至少一个所述候选推荐项目,作为针对所述给定用户的所述推荐项目。
4.根据权利要求1所述的项目推荐方法,其中,
所述项目是商品,
所述用户的所述行为包括:浏览行为、点击行为、加购物车行为、下订单行为、和加关注行为。
5.根据权利要求1所述的项目推荐方法,其中,
在某一用户对某一项目有行为的情况下,该用户对该项目的评分r基于以下公式计算:
其中,act是所述用户的行为,wact是所述用户的行为act的权重,T是当前时间,tact是所述用户的行为act的产生时间。
6.根据权利要求1所述的项目推荐方法,其中,
任意两个项目Itemi、Itemj之间的相似度SIM(Itemi,Itemj)基于以下公式计算:
其中,|Ni|是对项目Itemi有评分的用户的数目,|Nj|是对项目Itemj有评分的用户的数目,|Ni∩Nj|是同时对项目Itemi和项目Itemj有评分的用户的数目。
7.根据权利要求5所述的项目推荐方法,其中,
关于用户的行为act的权重wact,下订单行为的权重最高,点击行为的权重最低。
8.一种项目推荐系统,针对给定用户来推荐项目,所述项目推荐系统包括:
关联矩阵构建模块,用于基于用户的行为计算表征用户对项目的喜好程度的评分,构建用户-项目关联矩阵;
相似度计算模块,用于根据所述用户-项目关联矩阵,计算任意两个项目之间的相似度,其中,同时对该任意两个项目有评分的用户越多则这两个项目之间的相似度就越高;
候选推荐项目提取模块,用于针对所述给定用户,根据所述用户-项目关联矩阵和所述相似度,提取针对所述给定用户的候选推荐项目;以及
推荐项目选出模块,用于利用ALS-CF算法预测所述给定用户对所述候选推荐项目的评分,根据该评分从所述候选推荐项目中选出针对所述给定用户的推荐项目。
9.一种项目推荐系统,针对给定用户推荐项目,所述项目推荐系统包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行权利要求1-7中任一项所述的项目推荐方法。
10.一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行权利要求1-7中任一项所述的项目推荐方法。
CN201710665265.7A 2017-08-04 2017-08-04 项目推荐方法、项目推荐系统以及计算机可读介质 Pending CN109389447A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710665265.7A CN109389447A (zh) 2017-08-04 2017-08-04 项目推荐方法、项目推荐系统以及计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710665265.7A CN109389447A (zh) 2017-08-04 2017-08-04 项目推荐方法、项目推荐系统以及计算机可读介质

Publications (1)

Publication Number Publication Date
CN109389447A true CN109389447A (zh) 2019-02-26

Family

ID=65413369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710665265.7A Pending CN109389447A (zh) 2017-08-04 2017-08-04 项目推荐方法、项目推荐系统以及计算机可读介质

Country Status (1)

Country Link
CN (1) CN109389447A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109933741A (zh) * 2019-02-27 2019-06-25 京东数字科技控股有限公司 用户网络行为特征提取方法、装置及存储介质
CN110688582A (zh) * 2019-11-12 2020-01-14 广东小天才科技有限公司 一种应用推荐方法、应用推荐装置及终端设备
CN111144978A (zh) * 2019-12-10 2020-05-12 支付宝(杭州)信息技术有限公司 一种融合推荐的方法、系统和设备
CN111831889A (zh) * 2019-04-15 2020-10-27 泰康保险集团股份有限公司 基于区块链的虚拟健身应用推荐方法及装置
CN111949883A (zh) * 2020-08-24 2020-11-17 贝壳技术有限公司 房源推荐方法、装置、计算机可读存储介质及电子设备
CN111966703A (zh) * 2020-06-30 2020-11-20 广州迈安信息科技有限公司 工程造价数据查询方法、装置、服务器和存储介质
CN112000266A (zh) * 2020-08-21 2020-11-27 北京达佳互联信息技术有限公司 页面展示方法、装置、电子设备及存储介质
CN112395499A (zh) * 2020-11-03 2021-02-23 腾讯科技(深圳)有限公司 信息推荐方法及装置、电子设备、存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320461A (zh) * 2008-07-01 2008-12-10 浙江大学 基于电阻网络和稀疏数据预测的协同过滤方法
US20090299996A1 (en) * 2008-06-03 2009-12-03 Nec Laboratories America, Inc. Recommender system with fast matrix factorization using infinite dimensions
CN103093376A (zh) * 2013-01-16 2013-05-08 北京邮电大学 基于奇异值分解算法的聚类协同过滤推荐系统
CN103246672A (zh) * 2012-02-09 2013-08-14 中国科学技术大学 对用户进行个性化推荐的方法和装置
CN103942298A (zh) * 2014-04-14 2014-07-23 清华大学 基于线性回归的推荐方法及系统
US20150052003A1 (en) * 2013-08-19 2015-02-19 Wal-Mart Stores, Inc. Providing Personalized Item Recommendations Using Scalable Matrix Factorization With Randomness
CN105282616A (zh) * 2015-11-13 2016-01-27 云南大学 一种组合协同过滤iptv节目推荐方法
CN105630742A (zh) * 2015-12-28 2016-06-01 广州酷狗计算机科技有限公司 特征向量计算方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090299996A1 (en) * 2008-06-03 2009-12-03 Nec Laboratories America, Inc. Recommender system with fast matrix factorization using infinite dimensions
CN101320461A (zh) * 2008-07-01 2008-12-10 浙江大学 基于电阻网络和稀疏数据预测的协同过滤方法
CN103246672A (zh) * 2012-02-09 2013-08-14 中国科学技术大学 对用户进行个性化推荐的方法和装置
CN103093376A (zh) * 2013-01-16 2013-05-08 北京邮电大学 基于奇异值分解算法的聚类协同过滤推荐系统
US20150052003A1 (en) * 2013-08-19 2015-02-19 Wal-Mart Stores, Inc. Providing Personalized Item Recommendations Using Scalable Matrix Factorization With Randomness
CN103942298A (zh) * 2014-04-14 2014-07-23 清华大学 基于线性回归的推荐方法及系统
CN105282616A (zh) * 2015-11-13 2016-01-27 云南大学 一种组合协同过滤iptv节目推荐方法
CN105630742A (zh) * 2015-12-28 2016-06-01 广州酷狗计算机科技有限公司 特征向量计算方法及装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109933741A (zh) * 2019-02-27 2019-06-25 京东数字科技控股有限公司 用户网络行为特征提取方法、装置及存储介质
CN109933741B (zh) * 2019-02-27 2020-06-23 京东数字科技控股有限公司 用户网络行为特征提取方法、装置及存储介质
CN111831889A (zh) * 2019-04-15 2020-10-27 泰康保险集团股份有限公司 基于区块链的虚拟健身应用推荐方法及装置
CN110688582A (zh) * 2019-11-12 2020-01-14 广东小天才科技有限公司 一种应用推荐方法、应用推荐装置及终端设备
CN111144978A (zh) * 2019-12-10 2020-05-12 支付宝(杭州)信息技术有限公司 一种融合推荐的方法、系统和设备
CN111966703A (zh) * 2020-06-30 2020-11-20 广州迈安信息科技有限公司 工程造价数据查询方法、装置、服务器和存储介质
CN111966703B (zh) * 2020-06-30 2023-11-03 广州迈安信息科技有限公司 工程造价数据查询方法、装置、服务器和存储介质
CN112000266A (zh) * 2020-08-21 2020-11-27 北京达佳互联信息技术有限公司 页面展示方法、装置、电子设备及存储介质
CN112000266B (zh) * 2020-08-21 2022-02-08 北京达佳互联信息技术有限公司 页面展示方法、装置、电子设备及存储介质
CN111949883A (zh) * 2020-08-24 2020-11-17 贝壳技术有限公司 房源推荐方法、装置、计算机可读存储介质及电子设备
CN112395499A (zh) * 2020-11-03 2021-02-23 腾讯科技(深圳)有限公司 信息推荐方法及装置、电子设备、存储介质
CN112395499B (zh) * 2020-11-03 2022-08-12 腾讯科技(深圳)有限公司 信息推荐方法及装置、电子设备、存储介质

Similar Documents

Publication Publication Date Title
CN109389447A (zh) 项目推荐方法、项目推荐系统以及计算机可读介质
US11995564B2 (en) System and method for generating aspect-enhanced explainable description-based recommendations
US11281724B2 (en) Method and system for providing recommendation query using search context
Yin et al. Challenging the long tail recommendation
US9892194B2 (en) Topic identification in lecture videos
CN103823908B (zh) 基于用户偏好的内容推荐方法和服务器
Figueiredo et al. Tribeflow: Mining & predicting user trajectories
Margaris et al. What makes a review a reliable rating in recommender systems?
JP5939588B2 (ja) 関連ノードを探索する方法、並びに、そのコンピュータ、及びコンピュータ・プログラム
CN108540826A (zh) 弹幕推送方法、装置、电子设备及存储介质
CN109361932B (zh) 直播热度预测的方法、装置、设备及介质
Le et al. Modeling sequential preferences with dynamic user and context factors
CN101689285A (zh) 容器名声
Zhang et al. CRATS: An LDA-based model for jointly mining latent communities, regions, activities, topics, and sentiments from geosocial network data
CN111104599B (zh) 用于输出信息的方法和装置
US11250468B2 (en) Prompting web-based user interaction
CN114329200B (zh) 一种个性化自适应捆绑推荐模型及推荐方法
KR101873339B1 (ko) 관심사 및 콘텐츠를 제공하는 방법 및 시스템
Patil et al. Studying the contribution of machine learning and artificial intelligence in the interface design of e-commerce site
Lin et al. A consumer review-driven recommender service for web e-commerce
US9679297B2 (en) Method and apparatus for isolating analytics logic from content creation in a rich internet application
Lessa et al. Filtering graduate courses based on LinkedIn profiles
CN112288516A (zh) 信息推荐方法和装置、存储介质及电子设备
CN107615789A (zh) 基于下游用户参与的通知定向
CN110347916A (zh) 跨场景的项目推荐方法、装置、电子设备及存储介质

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190226