向用户推荐项目的制作方法

文档序号:11456449阅读:237来源:国知局
向用户推荐项目的制造方法与工艺

背景技术
:随着在万维网上生成的信息的指数增长,推荐者系统最近作为热门研究课题中的一个出现。推荐者系统形成特定类型的信息过滤技术,其尝试建议可能使用户感兴趣的信息项目(博客、新闻、音乐、旅行计划、web页面、图像、标签等)。推荐者系统已经在学术方面和产业方面二者被研究和开发。最常用且成功部署的推荐方法中的一个是协作式过滤。广泛地研究了两种类型的此类方法。它们是基于邻居的方法和基于模型的方法。基于邻居的方法主要集中在找到类似用户或项目以用于推荐上。基于模型的方法使用观察到的用户-项目评级来训练解释给定数据的紧凑模型,使得评级可以经由模型来预测而不是像基于邻居的方法那样直接地操纵原始评级数据库。然而,用户一般期望对其反馈的快速推荐响应。而且,用户还希望所推荐的信息或项目非常接近于他们所期望的事物,并且因此更高质量的推荐是所期望的。附图说明在以下描述中结合图详细地描述本公开。通过非限制性示例的方式来说明本公开的特征,其中:图1是用于向用户推荐有趣的项目的示例推荐者系统的图;图2是用于实时地向用户在线推荐有趣的项目的示例方法的流程图;图3是示出了概率矩阵分解(factorization)(pmf)推荐算法的模型的图;图4是用于利用社会和/或位置信息向用户在线推荐有趣的项目的示例方法的流程图;图5是具有权重的社会信任或朋友网络的图;图6是用于使用集体矩阵分解算法的基于信任的推荐者系统的模型的图;图7是用于使用社会信任整体(ensemble)算法的基于信任的推荐者系统的模型的图;以及图8是用于实现本公开的示例的计算机系统的图。贯穿图,相同的参考号码指定类似但不一定相同的元素。具体实施方式在本公开的示例的以下详细描述中,阐述了许多特定细节以便提供对本公开的更彻底理解。然而,本公开可以在没有这些特定细节的情况下被实践将对本领域普通技术人员是显而易见的。在其他实例中,尚未详细描述公知的特征以避免使描述不必要地复杂化。一般地,本公开的示例提供用于向用户推荐有趣的项目的系统和方法。图1示出了用于向用户推荐有趣的项目的示例推荐者系统100的图。推荐者系统100可以包括用户数据模块101、推荐引擎102、知识仓库103和项目模块104。用户数据模块101存储用户的信息,诸如用户的年龄、性别、爱好、兴趣、最喜爱的运动、最喜爱的小说、歌曲以及用户对项目的评级。用户的信息被用作用于推荐可能使用户感兴趣的那些项目的参考基础。通过推荐者系统从由用户使用或操作的一个或多个终端105接收用户的信息。终端105可以是任何类型的使能web的设备,诸如服务器、计算机、平板、智能电话等。在示例中,用户可以以线缆或无线方式经由诸如因特网之类的网络将终端105连接到推荐者系统100的web站点以便访问它来获得对项目的推荐或者给出其对他们正在查看或购买或意图购买的项目的评级或反馈。在另一个示例中,推荐者系统100可以装备有其客户端应用,所述客户端应用可能已经被针对各种类型的终端105而开发。终端105的用户可以将客户端应用下载和安装到终端105中以获得对项目的推荐。在示例中,客户端应用可以嵌入到可以使用如由推荐者系统提供的推荐服务来向用户推荐项目的任何其他应用中。推荐引擎102从终端105接收如上面描述的用户的信息或用户的反馈并且然后生成用户矩阵。用户矩阵是包括若干用户向量的矩阵。对于每个用户,存在被称作用户向量的l维潜在(latent)特征向量。推荐引擎102基于用户的信息或反馈或其他用户针对相同项目的评级值来预测用于用户可能感兴趣的项目中的任一个的评级值。在另一个示例中,推荐引擎102可以合并用户的社会信息与用户-项目评级矩阵以生成向终端105的用户所推荐的项目,所述用户的社会信息诸如他/她的朋友关于相同项目或类似项目的信息、他/她的亲戚的信息、他/她的同学的信息。用户-项目评级矩阵包括用户对相应项目的若干评级。在又一个示例中,推荐引擎102可以合并用户的位置信息与用户-项目评级矩阵。位置信息可以涉及背景信息、位置、时间、天气和来自移动设备的用户请求。位置信息可以用于推荐更好的优选项目,例如包括服务,其接近于用户那时停留的地理位置。知识仓库103存储用户矩阵、用户-项目评级矩阵和项目矩阵中的任一个。所有矩阵可以存储在推荐者系统外部或内部的任何其他储存器中。用户-项目评级矩阵包括用户对相应项目的若干评级。项目矩阵是包括若干项目向量的矩阵。对于每个项目,存在表示该项目的潜在特征向量的向量,其被称作项目向量。用户-项目评级矩阵在本文中具有如用户-项目矩阵的对应短术语,并且在本文中它们可以与彼此交换。知识仓库103中的所存储的用户矩阵、用户-项目评级矩阵和项目矩阵用于进一步预测评级值,作为通过推荐引擎102预测的结果。仓库103还存储来自推荐引擎102的所预测的结果。项目模块104基本上存储要推荐给用户的项目的所有属性,例如项目的名称、项目的分类(诸如音乐、歌曲、小说、书籍、衣服、运动装备、视频、音频、学习材料等)、项目的年龄(诸如创建项目的时间)、项目的语言,诸如英语、中文、法语等。在示例中,推荐引擎102基于诸如服务器访问日志文件之类的历史数据例如通过分析历史数据以找到用户的信息和/或用户曾经提供的反馈和/或要推荐的项目的信息来生成初始用户-项目矩阵,并且然后将初始用户-项目矩阵存储到仓库103中。历史数据记录用户的旧信息以及用户对项目的旧反馈。用户的过去的信息或者反馈在其对web站点的浏览期间将由用户更新或者将不由用户更新,所述web站点示出项目或者为用户提供接口以编辑其信息或修改其反馈。在另一个示例中,推荐引擎102基于所接收的来自用户的终端105的用户的信息而生成初始用户-项目矩阵。在示例中,推荐引擎102响应于对用户对项目的反馈的接收而立即更新仓库103中的用户向量和项目向量(即,用户和项目向量二者)使得给予用户即时在线推荐。所期望的是,在线更新仓库的与来自用户的新到来数据对应的相关用户和项目向量。在另一个示例中,推荐系统100可以由一个或多个服务器实现,所述一个或多个服务器可以通过网络与彼此连接。推荐者系统中的所有模块可以被包括在相同服务器或计算机中或者可以分布在不同服务器中。例如,推荐引擎102位于服务器中,而用户数据模块101、仓库103和项目模块104一起位于一个服务器中或者分别位于不同的服务器中。推荐者系统100的所有组件的不同配置可以取决于不同要求而变化。在又一个示例中,推荐者系统100的所有组件可以集成到一个组件中,所述组件诸如推荐引擎102。图2是向用户在线推荐有趣的项目的示例方法的流程图。可以在硬件、软件或固件或其任何组合中实现方法。方法在框201处开始。在示例中,方法例如在实现方法的推荐者系统启动之后开始。系统向用户推荐项目,所述项目例如被示出在web站点页面或应用页面或搜索引擎页面上。项目可以被示出在用户可以观看的任何地方(例如,在显示器的不同部分上)。在框202中,用户使用由推荐者系统提供的推荐服务而在推荐者系统的web站点或者任何web站点上注册(signin)。用户输入他/她的个人信息,诸如他/她的姓名、昵称、可访问电子邮件地址、账户名、密码,他/她的最喜爱的偏好,诸如他/她的最喜爱的歌曲、歌手、电影类型、男演员或女演员、报纸、书籍、衣服品牌等。作为结果,接收用户的信息。如果用户不愿意提供这样类型的信息,则将基于他/她对项目的反馈或者他/她对该项目的评级而为他/她推荐可能有趣的项目。在框203中,来自用户对项目的立即反馈(诸如他/她对项目的观看时间或者他/她对项目的评级)被接收并且存储在存储构件中,例如存储在用户数据模块中。反馈可以包括但不限于例如用户的评论、用户的喜欢或讨厌、用户对项目的关注或不关注、用户是否已经将项目推荐给他/她的朋友或者反映用户对项目的态度或偏好的任何其他表示。在框204中,在接收到用户对项目的反馈时,方法开始仅更新或预测针对刚刚提供反馈的用户的用户向量和项目向量。等待来自所有用户的反馈是不必要的。例如,推荐引擎102将用户的反馈存储到用户数据模块中并且向用户矩阵添加反映用户的反馈或偏好的更新的新行。推荐引擎102或类似设备处理所接收的来自用户的反馈,即来自用户的新数据。实时地以在线模式完成更新。在线模式在本文中指在线推荐方式,根据所述在线模式响应于对用户对项目的反馈的接收而立即更新用户和项目向量。以在线推荐方式,可以给予用户即时在线推荐。利用该示例,用户可以在他/她的反馈被完成之后很快获得所推荐的项目。将如下详细地描述由推荐引擎使用的作为推荐算法的在线更新或预测算法。接下来,将介绍推荐算法。所提出的如由推荐者系统在框204处使用的推荐算法的示例是基于分解的集体过滤方法。这里,在基于分解的集体过滤方法中使用的概率矩阵分解(pmf)可以被当作经典的基于分解的模型以示出推荐者系统或方法如何基于新到来的数据来预测用户向量和项目向量。将领会到,在本文中,在本公开的精神和原理的范围内,也可以应用其他推荐算法。通过参考示出pmf的概率图的图3,假设存在m个用户和n个项目。对于每个用户和项目,存在l维潜在特征向量。表1(用户矩阵)表1示出了被表示为u∈r1+m的示例用户矩阵,其中存在如由相应列表示的总共6个用户并且每列表示用户向量。用户矩阵u的维度l是5。ui是列向量并且表示用户ui的潜在特征向量,其中i=1、2、3……m。基于所接收的来自用户的信息而生成针对用户的所有向量。信息可以是来自用户的新数据或者已经被存储在用户数据模块中。表2(项目矩阵)表2示出了包括针对要推荐给用户的项目的项目向量的项目矩阵的示例,其被表示为v∈r1+n,其中存在如由相应列表示的总共8个项目。特征向量v的维度l为5。vj是列向量,即项目向量,并且表示项目vj的潜在特征向量,其中j=1、2、3……n。基于项目的信息而生成所有项目向量。项目信息可以被新接收或者已经存储在项目模块中。例如,项目信息可以包括项目的类型、项目的发行时间、项目的友好性、项目的价格、项目的产生地点、项目的语言、项目的流行度等。表3(初始用户-项目评级矩阵)i1i2i3i4i5i6i7i8u15234u2435u34224u4u551243u6432435表3表示例如初始用户-项目评级矩阵。在示例中,从如在框203处从用户接收的反馈获得用户对相应项目的初始评级。在另一个示例中,可以基于历史数据(例如通过分析诸如访问日志之类的历史数据)而获得初始评级。例如,表3中的单元(u1,i1)指示用户1对项目1给出评级5。在表1中存在某些空单元,用户对于其没有给出任何评级。表4(所预测的用户-项目评级矩阵)i1i2i3i4i5i6i7i8u1522.534.842.24.8u2432.42.954.12.64.7u341.723.23.93.024u44.82.12.72.64.73.82.44.9u55123.4431.54.6u6432.9243.435表4示出了由推荐者引擎使用算法预测的用户-项目评级矩阵的示例。在表4中,为空单元添加所预测的评级值。接下来,描述缺失评级值的预测。假定rij表示由用户i给出的对项目j的评级(例如,如在表3和表4中所示),其中评级由评级值表示;并且所提出的推荐者系统可以使用从1到k的整数评级值,其中k在表3和表4中可以等于5。评级值的其他范围取决于特定要求而是可选的。评级值表示用户对项目的判定。评级1……k可以借助于归一化而映射到间隔[0,1]。在图3的图中,rij的分布被限定为其中n(x|u,σ2)是具有均值u和方差σ2的高斯分布。g(x)是逻辑函数g(x)=1/(1+exp(-x))以将转换成[0,1]标度。iij是描述用户i是否已经对项目j评级的指示符。接下来,方法使用来预测(例如在表3中的)用户-项目评级矩阵中的缺失评级值。在预测之前,可能首先要求使用某逻辑函数g(x)来转变的值。因此,可以使用矩阵u和v预测所有评级缺失值。请注意,尽管用户u4没有对表3中的任何项目评级,其中他/她的整行空白,但是所提出的在线预测算法也可以用于预测针对如表4中所示的那些缺失单元的合理评级。在线预测算法指由推荐者系统用来以在线模式预测用户的评级值的算法。接下来,将介绍在线预测算法。为了预测评级值,可能要求使用pmf的目标函数。目标函数一般指要考虑到某些约束并且利用变量优化的等式。pmf的目标函数是通过最小化回归损失和正则化之和来找到u、v,如等式(2)用于最小化回归损失和正则化之和。等式(2)是数学优化方法,其中λ是正则化因子并且可以取决于特定要求而改变。为了以在线模式预测用户的评级值,等式(2)中的预测算法需要被如下改变。所提出的图2的方法优化局部目标函数。局部目标函数是损失函数或其否定式。损失函数是将事件(例如,事件预测用户-项目评级矩阵中的评级)或一个或多个变量的值映射到直观地表示与事件相关联的某“成本”的实数上的函数。所提出的局部目标函数仅是一种损失函数。例如,在来自用户的新到来的数据为rij的情况下,用于在线模式的局部目标函数是这里,是具有要最小化的二次正则化项的局部目标函数。通过比较等式(3)与等式(2)可以看出,依照等式(3)的预测算法没有处置所有用户和项目,而是仅处置刚刚提供其反馈的用户。这将进一步减少在更新用户-项目矩阵上花费的时间,同时减少对用户的反馈的响应时间。在等式(3)中,仅需要调整两个向量(ui和vj)使得计算复杂性进一步减少。考虑作为在线预测算法的pmf的目标函数的上面定义,特征向量,即ui和vj,可以被更新为其中r是更新或预测速率。在示例中,在接收到用户的反馈时仅动态地更新两个向量(ui和vj)。等式(4)和(5)可以通过诸如梯度下降、牛顿迭代等的不同的数学优化方法而获得。通过等式(4)和(5),迭代并更新ui和vj二者以获得最佳。作为局部目标函数的pmf中所使用的损失函数是均方根函数。依照等式(3)的局部目标函数的通用函数为请注意,等式(6)是等式(3)的通用版本并且等式(3)是等式(6)的特定版本。除等式(3)之外,在本公开的精神和原理的范围内,还可以使用其他目标函数以仅更新针对用户和项目的两个向量。所提出的类似的局部目标函数可以被表达为对于等式(7)中的局部目标函数,也可以使用相同的等式(4)和(5)来更新用户向量ui和项目向量vj。等式(4)和(5)是数学优化方法中的非常通用的迭代等式。继续参考图2,在更新两个向量之后,方法转到框205。在框205中,可以基于所预测的用户和项目向量而向用户推荐有趣的项目。例如,推荐者系统基于所预测的用户和项目向量来更新用户-项目矩阵,并且然后基于所预测的用户-项目评级矩阵中的评级值的排名来向例如刚才发送关于类似项目的反馈或评级值或者已经向系统提供他/她的信息的用户推荐可接受的项目。等式(1)限定用户-项目评级矩阵r的分布。请注意,在该等式中,r与用户矩阵u和项目矩阵v相关。在(例如经由等式(4)和等式(5))优化u和v以(例如,经由等式(3))最小化局部目标函数之后,用户-项目评级矩阵r可以经由等式(1)而更新。在另一个示例中,当要向用户推荐可接受的项目时,可以进一步考虑用户的偏好。例如,在将有趣的项目发送给用户之前,可以做出检查有趣的项目是否接近于偏好的确定。然后,方法返回到框202,其中将等待输入用户的进一步反馈或者现有用户可以更新或修改他/她的信息或者新的用户输入他/她的信息。图4是利用社会和/或位置信息向用户在线推荐有趣的项目的示例方法的流程图。方法包括用户之间的社会关系以及与用户的物理位置相关的信息和服务。用户的社会关系可以涉及用户的社会信息,诸如与他/她的朋友、他/她的信任群体或人或他/她的亲戚等相关的信息,并且可以在向用户推荐有趣的项目时被考虑。用户的位置信息可以涉及背景信息、位置、时间、天气以及来自移动设备的用户请求,并且可以用于推断最偏好的项目以向用户提供适当服务。在框401中,方法与框201基本上类似地操作。此外,例如,请求用户授权推荐者系统访问可以他/她的从其获得他/她的朋友或信任人或群体的联系人列表,或者访问他/她的与他/她停留的位置相关的信息。在框402中,用户使用由推荐者系统提供的推荐服务在推荐者系统的web站点或任何web站点上注册。用户输入他/她的个人信息,诸如他/她的姓名、昵称、可访问电子邮件地址、账户名、密码,他/她的最喜爱的偏好,诸如他/她的最喜爱的歌曲、歌手、电影类型、男演员或女演员、报纸、书籍、衣服品牌等。作为结果,接收用户的信息。如果用户不愿意提供这样类型的信息,则将基于他/她对项目的反馈或者他/她对该项目的评级而为他/她推荐可能有趣的项目。在框403中,方法与框203基本上类似地操作,其中接收用户对项目的立即反馈。在框404中,为了向用户推荐更准确的项目,方法考虑用户的社会信息,诸如他/她的朋友的或他/她的亲戚的信息,因为他/她的社会信息将提供某些有帮助的信息作为推荐基础。在框404中,例如,基于如由用户在他/她注册时所输入的或者如从他/她在社会媒体web站点中的其他社会账户所获得的用户自己的信息来确定用户具有任何社会信息。如果这样,则方法转到框405。在框405中,将分析用户的社会信息以找到他/她的朋友的或亲戚的偏好并且将其与用户-项目评级矩阵合并。推荐者系统的用户不是单独的。他们在社会网络中。信任或朋友关系由web上的用户发出。框405组合(如在示出社会信任或朋友网络的表5中所示的)社会信息与如表5中示出的用户-项目评级矩阵以便改进推荐质量。表5(用户-项目评级矩阵)在示例中,用户社会网络矩阵和用户-项目评级矩阵可以在相同时间通过共享相同的用户潜在空间而被分解,如图6中所示,图6示出了用于使用集体矩阵分解算法的基于信任的推荐者系统的模型。针对模型的后验概率可以被下面表达:其中u、v和c是用户矩阵、项目矩阵和社会网络矩阵。示例社会网络图在图5中示出。在该图中存在总共5个用户(节点,从u1到u5)以及用户之间的9个关系(边),并且每个关系与范围[0,1]中的权重wij相关联以指定用户ui知道或信任用户uj到什么程度。作为结果,c是5x5社会网络矩阵,并且c中的每个权重wij(wij在[0,1]中)表示与从ui到uj的边相关联的权重。表6(社会网络矩阵)u1u2u3u4u5u10.61.0u20.91.0u30.20.8u40.80.50.6u5表6示出了反映在图5中示出的图的社会网络矩阵。在等式(8)中,z是具有表示因子特定的潜在特征向量的列向量zk的潜在因子(factor)特征矩阵,其中k=1、2、3……m。潜在因子特征矩阵z类似于表1中的用户矩阵u和表2中的项目矩阵v。z的示例如下:每个列向量表示针对用户的因子特定的潜在社会特征向量。根据等式(8),z与用户矩阵u和社会网络矩阵c相关。等式(8)等同于以下目标函数的最小化:通过分解社会信任图而将用户的社会信任网络集成到推荐者系统中。该模型的挑战在于真实世界推荐过程没有反映在模型中。该挑战不仅引起模型中的可解释性的缺少,而且影响推荐质量。因此,基于真实世界推荐过程的观察,可以如下做出三个假设:·用户具有他们自己的特性,并且他们对不同项目具有不同品味,所述不同项目诸如电影、书籍、音乐、文章、食品等。·用户可以容易地被他们信任的朋友影响,并且优选其朋友的推荐。·一个用户的最终决定是他/她自己的品味与他/她的信任的朋友的喜爱之间的平衡。基于这三个动机,问题可以再用形式表示为社会信任整体问题并且被绘制如图7中的图模型,其示出了针对使用社会信任整体的基于信任的推荐者系统的模型。这将导致最小化以下目标函数:通过参数α(α在[0,1]中)使用户的喜爱和所信任的朋友的喜爱平滑,所述参数α将适当量的真实世界推荐过程自然地融合到推荐者系统中。参数α控制用户信任他们本身或他们信任的朋友到什么程度。s是社会信任矩阵。s非常类似于c,但是在c中,关系可以是任何社会关系。在社会信任矩阵s中,仅可以考虑信任关系。社会信任矩阵s的示例如下:表8(社会信任矩阵s)u1u2u3u4u5u10.6u2u30.2u40.80.50.6u5请注意,该矩阵类似于表6。差异在于,在s中仅可以考虑信任关系。在s中,每个权重(例如,0.5)指定用户信任另一个用户(例如,他/她的朋友)到什么程度。继续参考图4,如果在框404处确定不存在针对用户的社会信息,则方法分支到框406。在框406中,方法确定用户是否具有任何位置信息,诸如国家、城市、购物、图书馆、电影院、学校、街道、用户停留或旅行或访问的有趣地点、时间、天气,或者来自移动设备或其他使能web的设备的用户请求。位置信息可以是任何其他类型的位置信息。如果这样,则方法继续到框407。在框407中,分析用户的位置信息并且然后将其与用户-项目矩阵合并作为推荐参考。随着无线通信进步,对使用移动设备的基于位置的服务(lbs)的研究已经引起兴趣,其提供与用户的物理位置相关的信息和服务。示例收集丰富的信息,诸如背景信息、位置、时间、天气和来自移动设备的用户请求。上面提及的集体矩阵分解框架可以被容易地扩展以合并用户-项目评级矩阵与用户的位置信息矩阵。鉴于用户的评级信息和用户的位置信息二者可以反映其关于web内容的观点的事实,可以通过同时利用用户的评级信息和位置信息二者来使用类似的因子分析方法。具体地,一方面,可以通过共享的用户潜在特征空间将用户的评级信息与用户的位置信息连接。另一方面,可以通过共享的项目潜在特征空间将所接收的关于项目的评级信息与位置信息连接。假定g=(v,∈)是无方向网络图,其中顶点集合表示社会网络中的所有用户,并且边集合表示位置信息(距离,例如从0km到tkm)。距离0km……tkm可以被映射到用户之间的间隔[0,1]。假定l={lik}是g的位置网络矩阵。对于一对顶点,假定[0,1]中的lik表示与它们相关联的位置权重。表7(位置网络矩阵)u1u2u3u4u5u101u2100.5u30.500.8u40.800.7u50.70表7示出了示例位置网络矩阵。位置权重的物理含义可以解释为两个用户多么接近。位置权重越低,两个用户就越接近。请注意,l是对称矩阵。假定y是潜在位置因子特征矩阵,其中列yk表示位置因子特定的潜在特征向量,则要最小化的目标函数如下:除位置信息之外,还存在在线推荐者系统中所生成的某些其他用户隐式数据或临时数据,诸如用户的购买数据、点击数据等。此外,如果在框406中确定不存在位置信息,则方法转到框408。在框408中,推荐引擎或类似设备预测用户向量和项目向量。首先,将在下面介绍通过考虑用户的社会信息的对用户向量和项目向量的预测。如在示例中描述的那样,通过并入社会信息,与pmf模型的主要差异在于用于目标函数的损失函数改变。因此,可以利用(如在等式7、等式4和等式5中所示的)相同的在线推荐框架来将这些批量社会推荐算法转换成在线社会推荐算法。由等式(10)给定的目标函数l的局部最小值可以通过如下执行ui和vj中的梯度下降而找到:更新等式类似于等式(4)和(5)。使用社会信任关系,推荐结果(或所预测的用户-项目评级矩阵)还类似于如在表4中所示的所预测的用户-项目评级矩阵,但是由于考虑到用户的社会信息,所预测的结果将变得不同。实际上,对于本公开中的所有推荐模型,推荐结果类似于如在表4中所示的所预测的用户-项目评级矩阵。在本公开中,将信任关系和朋友关系分类成相同的种类,但是它们也可以以与上面解释方式类似的方式而单独地并入到用户-项目矩阵中。接下来,将在下面介绍通过考虑用户的位置信息的对用户向量和项目向量的预测。由等式(11)给定的目标函数l的局部最小值可以通过执行如下面的ui,vj和yk中的梯度下降来找到其中g’(x)是逻辑函数g’(x)=exp(x)/(1+exp(x))的导数。在另一个示例中,为了降低模型复杂性,所提出的设置方式可以为λu=λv=λy。使用位置网络矩阵,推荐结果(或所预测的用户-项目评级矩阵)也类似于如在表4中所示的所预测的用户-项目评级矩阵。实际上,对于本公开中的所有推荐模型,推荐结果类似于如在表4中示出的所预测的用户-项目评级矩阵。继续参考在图4中描述的方法,在框409中,向用户推荐具有最高评级值的有趣的项目,其通过合并用户的社会信息和/或位置信息而生成。然后,方法返回到框402,其中将等待以输入用户的进一步反馈或者旧用户可以更新或修改他/她的信息或新用户输入他/她的信息。这里的信息还可以包括用户的社会信息和/或位置信息。图8是实现本公开的示例的计算机系统800的图。本公开的示例可以在实际上任何类型的计算机上实现而不管所使用的平台如何。例如,如图8中所示,计算机系统800包括一个或多个处理器cpu801、相关联的存储器802(例如,随机访问存储器(ram)、高速缓冲存储器、闪存等)、存储设备803(例如,硬盘、诸如压缩盘驱动或数字视频盘(dvd)驱动之类的光学驱动、闪存棒等)、i/o设备804,诸如键盘、鼠标、麦克风(没有示出)或监控器,以及网络接口805,其利用总线806与彼此耦合。除其他之外,存储器802还包括存储机器可读指令的推荐者模块807,所述机器可读指令在由处理器801执行时使处理器实行以下操作。存储器802可以包括非暂时性机器可读存储介质或任何其他类型的存储器。在示例中,操作包括执行如关于图2解释的方法。在另一个示例中,操作包括执行如关于图4解释的方法。在又一个示例中,如图1中所示的推荐者系统可以实现为推荐者模块807。推荐者模块807的另一个示例包括指令,所述指令使得一个或多个处理器801实现图1中的推荐者系统100以及在图2和图4中图示的方法。推荐者模块807的另一个示例可以实现为图1中的推荐者系统100的推荐引擎102,并且在该情况下,在图1中描绘的用户数据模块101、仓库103和项目模块104中的至少一个可以实现为推荐者模块807的部分。虽然已经关于有限数目的示例描述了本公开,但是已经获益于本公开的本领域技术人员将领会到,可以设计出其他示例实施例,其不脱离如在本文中公开的本公开的范围。相应地,本公开的范围应当仅由随附权利要求书来限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1