一种基于用户喜好的商品推荐方法及系统的制作方法

文档序号:6354916阅读:301来源:国知局
专利名称:一种基于用户喜好的商品推荐方法及系统的制作方法
技术领域
本发明涉及电子商务系统中信息推荐技术,特别是ー种利用用户喜好建模,解决当前互联网“信息过量”问题的重要手段之一。
背景技术
如今,用户可通过互联网获取庞大的信息。随着信息量与日俱增,信息过滤手段相应地得到了快速发展。根据电子商务推荐系统所采用的推荐技木,电子商务推荐系统主要分为基于内容过滤的推荐系统,基于协同过滤技术的推荐系统,基于知识的推荐,基于Web数据挖掘的推荐系统。例如,搜索引擎通过网页分类和排名向用户呈现最精准的信息,而这些信息都是与用户历史查询条件相关;商品推荐系统则为特定用户识别和推荐其最感兴趣的商品。类似这样的推荐系统可广泛用于电子商务和其它不同的Web应用系统,从而精简展现给用户的信息量。如今,商品推荐系统已经广泛应用到了各个领域,例如音乐、电 影、新闻、餐馆、事件、促销商品等。一些推荐系统是利用特定用户喜好的信息和现有不同商品的描述来推荐,比如基于内容的推荐;而另ー些推荐系统,如协同过滤的推荐系统,是基于收集来自大量用户的喜好信息来给特定用户提供推荐商品。

发明内容
本发明公布的商品推荐提供了一种基于用户喜好的商品推荐方法,用户喜好是来源于用户计算机归类的关于用户的活动(比如浏览网页,听音乐,购买历史等)的信息数据。比如,根据存储在用户电脑上的音乐或者音乐购买历史或者听音乐的历史记录来判断用户的音乐品味,事件网站也可以根据这个用户的音乐品味给这个用户提供个性化的推荐服务。类似的,根据用户在不同网站上的浏览/购买历史,而不单单凭借用户在单个网商的网站上的过去的浏览/购买历史,网站可以提供给这个用户ー些个性化的推荐服务。本例提供一种健壮的分类方法,该归类方法是基于可以对用户信息和商品信息进行直接比较的用户信息框架,这里“商品”这个词可以指任何可能推荐给用户的东西(比如日用品、电影、音乐、新闻等等)。


图I表示符合各种具体域的范例推荐系统的框图。图2表示符合各种具体域的三种域商品的范例比较。图3表示符合各种具体域的商品推荐服务器的框图。图4表示符合各种具体域的商品推荐的流程图。
具体实施例方式本发明讨论的主体针对不同的实施案例。此外,本领域技术人员了解下面的说明虽具有广泛的应用,但任何案例的讨论只是针对于特定的案例,可能并不适用于其他案例情況提供给用户个性化内容的系统可能依赖于用户信息,比如包含用户喜好的数据记录,其中用户的喜好信息可能是来源于用户的浏览历史、购买历史、聆听历史或者其他的行为习惯的记录。然而,策划ー个依赖用户信息内容的详细比较的商品推荐方案可能会过分地限制推荐商品的范围。比如,光依赖用户喜好的艺术家来推荐音乐作品会限制可以被推荐的音乐作品的范围,因为可能只推荐了只属于某个特定艺术家的音乐作品。使用归类法来给商品归类以识别不同商品之间的关联,这可以加大不同商品之间的关联从而扩大了商品的推荐范围。然而,由于商品数量庞大,这可能会导致归类法显得比较笨拙。而针对某个领域(比如音乐,电影等)应用归类法将会是ー个更好的选择。类似的,保存每个用户的兴趣范围也更具优势。即使使用保存某个用户兴趣范围和商品分类的方法,依然有种类繁多的归类法可以运用(比如每个网商可以应用他们自己的促销方式选择运用的归类法)。另夕卜,要关联用户信息和归类数据也是ー个难题。图I显示了根据不同案例提炼出来的一种范例推荐系统100。系统100包括用户电脑102,推荐服务器106和通过网络104连接的域服务器110。网络104用来连接电脑系统,可以由任何网络技术部分组成,比如局域网,广域网,城域网,互联网,无线网(比如,IEEE 802. 11,etc.),有线网(比如,IEEE 802.3)。每个用户的计算机102,推荐服务器106和域服务器110都包括不同的组件,比如计算机的处理器,内存,网络适配器,用户界面等。在一些案例中,系统100的某些组件可能设在同一地方。例如,推荐服务器106和域服务器110,可由一台计算机提供。而在另一些实施方案中,系统100的某些组件可以分布在多台电脑。该域服务器110包括域数据112,其中域数据112包括代表某个分支或者给定域商品的数据集。例如,在音乐域数据112可能包括与音乐流派有关的音乐艺术家信息。在一些案例中,域数据112提供推荐系统ー些最新的个性化信息。域数据112可以以任何方式组织,只要取得商品之间的联系。比如,域数据112可以以树的方式组织,而音乐艺术家作为其中一个分支上面的叶子,这个树上的分支作为ー个音乐流派,或者域数据112可以以文本字符串的形式组织表示艺术家和音乐流派之间的关系。域服务器110把域数据112传给推荐服务器106。由域服务器110给出的域数据112的组织有时不允许数据112被推荐系统100直接使用。例如,域数据112可能包括过量的冗余,冗余的一个类别被列入了许多类似的域数据112,并且缺乏类别间相似性信息。冗余类别导致的结果是,相似的类别(比如爵士和重金属音乐)可能被视为不同的类别。域数据112也可能出现其他的缺陷,比如大量的标签不一致问题。推荐服务器106包含推荐软件系统108。推荐软件系统108具有很多与用户推荐相关的不同功能,这些推荐功能都是基于用户信息和商品信息之间的相似性,从域数据112中分析得来。在一些案例中,推荐软件系统可以作为另外一个系统的ー个部件,比如捜索引擎部件或者作为软件的一个单独的部件。商品推荐软件系统108接受来自通过网络104连接的域服务器110的域数据112,并处理域数据112,最終生成这个域的精简稳健的另ー种表示。商品推荐软件系统108提取域数据112的商品与类别之间的映射,并且构造ー个NXM的ニ进制值组成的矩阵A,A表示商品和类别之间的关联。比如,域矩阵A可以解释如下N是商品编号M是商品所属的类别的编号,并且A(i, j) = I表示第I个商品属于第J个类别。因此,举个例子,如果音乐艺术家是ー个商品,那么根据音乐的类别、流派归类,域数据112音乐艺术家可能属于其中一个或者多个音乐类别、流派。推荐软件系统108对矩阵A应用低秩的逼近算法,低秩逼近是作为矩阵A (通过减小维数)的更精简的另ー种表示,并减小信息的流失。因此,矩阵A的低秩逼近算法是用更低的维数来逼近矩阵A,ー些案例应用不同的低秩逼近算法,比如奇异值分解,加权低秩逼近或者在这个领域内的任意其它的低秩逼近算法。给矩阵A应用低秩逼近算法,结果会给每个类别ー个K维的矢量表示,这里K可能比N或M小很多。用户电脑102包含用户信息代理114。用户电脑102,比如说,可以是一台个人电脑,用户用来进行电脑活动如浏览网页、收集音乐、购物等。用户信息代理114跟踪开记录用户的活动,来构建ー个或者多个用户的信息数据,这些信息数据被用来做商品推荐。比如,无论用户是以何种方式获得这些音乐,可以是通过互联网下载的或者通过搜索引擎搜索的,或者通过访问艺术家的网站获得的,电脑102上存储的不同艺术家们的音乐都可以被用户信息代理114归类从而构建电脑102用户的音乐信息。类似的,无论用户是通过何种方式获得电影,可以是通过网页的或者搜索电影或者访问电影网站的方式,用户信息代理114都可以把这些存储在用户电脑上的电影信息进行归类,从而构建出属于这台电脑上的用户的电影信息。不同的案例中可能搜集用户的任何ー个领域内的信息来构建这个用户在特定领域内的用户信息。在一些案例中,用户信息代理114可以从推荐软件系统108下载到用户电脑102的本地环境中。在另外ー些案例中,用户信息代理114可以通过推荐软件系统的第三方代理或者以其他方式下载到用户电脑102的本地环境中。还有ー些案例中,用户信息代理114可能是网页的扩展组件,或者作为软件的単独细件运行在用户电脑102后台。在一些案例中,用户信息代理114可以把用户的新数据传输给推荐软件系统108。因此,以音乐领域为例,取自用户电脑中108的艺术家的信息和歌曲的信息等等,可能由用户信息代理114传输给推荐软件系统108。在这样的案例中,用户信息在推荐软件服务器106中,被用来构建用户信息。相应的,推荐软件系统108通过域数据112可以从用户数据中解析商品和类别的信息。应用用户喜好和域矩阵的低秩逼近算法可以构建出更精确的用户信息。用户信息可以构成域矩阵低秩逼近方法中的一个相关类别矢量。在一些案例中,如果用户信息代理114不把新的用户信息传输给推荐软件系统108,在这样的案例中,用户信息代理114就可以包含ー个矢量决定模块116。矢量决定模块116以类别,商品和域矩阵和矩阵域低秩逼近项的形式确定ー个用户信息,并且把这个用户信息(比如一组用户信息矢量)传输给推荐软件系统108。在上面的案例中,基于用户喜好而系统100给出商品推荐并导出用户信息时,允许把用户信息,例如浏览历史,播放清单 等,保存为私有数据。类似的,推荐软件系统108可以为域中的每ー个商品生成关于商品信息,每个商品信息都是基于商品所属的类别和商品属于这个类别的程度来标识这个商品。例如,ー个音乐作家的2/3的作品属于流派1,其余1/3作品属于流派2,那么生成的属于这个音乐作家的商品信息将会反应这个音乐作家的作品所属类别的权重。而且,推荐软件系统可以生成由好几个低秩的商品共同构成的商品信息。例如,一份由很多不同的音乐作品组成的音乐商品信息(比如音乐会或者唱片)可以基于所有音乐作品的商品信息和这些选择的作品所在的类别共同产生ー份商品信息。推荐软件系统108比较用户信息矢量和域商品信息矢量,然后根据用户信息和商品信息之间的相似度把域中的所有商品进行排名。用户的推荐可以基于相对相似度上。用户商品信息矢量和商品信息矢量可以由业界所知的任何ー种方法决定,比如,计算两个矢量的内积。图2表示符合各种具体域的三种域 商品的范例比较。图2的例子中阐述了三种音乐艺术家202,204,206,其中每种艺术家都对应着由域数据112決定的不同的音乐流派并且没有ー种流派是其中两种艺术家共同拥有的。如上解释,域数据112已经被重组并且已经运用了低秩逼近算法,以生成每个类别的短向量表示(例如,一个音乐流派)。每ー种艺术家产生的商品信息都基于艺术家所属的类别。一些推荐软件系统的实施,通过计算两个商品的属性的相似度来决定ー个商品和另外ー个商品的相似度。在这里,被比较的这些艺术家的每种音乐流派之间的相似性都是可以计算的。例如,在一些实例中,欧洲经典音乐和重金属音乐计算出来的相似度为负值(如,-0. 1987),而另类金属和重金属音乐计算出来的相似度为正值(如,0. 0657),并且另类摇滚和硬摇滚音乐计算出来的相似度也为正值(如,0. 1356)。为不同类别矢量计算出来的聚集相似度度量也是ー种计算商品相似度的方式。因此,如图2所示,艺术家A 202和艺术家B 204比艺术家A 202和艺术家C 206或者艺术家B 204和艺术家C 206展现出更大的相似度。因此,如果ー个用户信息包含对应于艺术家A 202的类别矢量,那么相对于艺术家C 206,艺术家B 204将是ー个更好的推荐。图3表示符合各种具体域的商品推荐服务器106的框图。计算机的处理器302执行来自电脑可读媒介发出的程序指令。计算机的处理器302的实施方案可能包含不同的执行単位(比如整数,固定点小数,浮点型小数等等),指令解码器,存储单元(比如内存寄存器),输入/输出子-系统(例如,总线接ロ),外设(如定时器中断控制器的直接内存访问控制器等),连接总线等。内存304为计算机的处理器104和服务器106的其他子系统范例存储技术包括半导体随机存取存储器“内存”),如动态RAM,静态RAM,快闪记忆体等,提供数据和程序存储。服务器106可以包括其他各种子系统。例如,ニ级存储设备(例如,硬盘光盘等),输入/输出设备(显示器,键盘等),通信接ロ(网络适配器,通用串行总线等),扩展总线
坐寸o如上所述,软件编程,通过计算机可读介质提供给计算机的处理器302。范例计算机可读介质包括半导体存储器,磁存储设备,光存储设备和其他可存储可执行软件程序的有形的存储介质。内存304配置为存储推荐软件系统108。推荐软件系统108,包括矩阵构造模块306和低秩逼近模块308。矩阵构造模块306构建NxM ニ进制域矩阵,该域矩阵定义了域商品和域类别之间的关系。低秩逼近模块308从域矩阵A和逼近矩阵A的较低的k阶域矩阵得出。这种低秩矩阵提供了ー种更精简的表示,同时减少在域矩阵A中存在的噪音。低秩逼近模块生成的K维矢量存储在域矢量310中。域矢量310也包括每个域的商品和基于每个商品在各个域类目下的加权的商品信息。在一些实施方案中,用户信息文件存储在表彰服务器中作为用户信息矢量312。用户信息文件是ー个k维的向量,它可能是在推荐服务器106中基于从用户电脑102传输过来的用户数据生成,或者是在用户电脑102中计算的然后再传输给推荐服务器106.用户信息矢量312通过取自用户的识别信息来与特定的用户联系,比如,媒体访问控制器的地址或其他与用户电脑102有关的识别硬体,用户提供的资料名称,独ー无ニ的用户代理识别标志等等。无论如何,用户信息矢量和域矢量进行比较,以确定一组最适合推荐给用户、和用户信息最相关的域商品。图4显示了ー个在不同实施方案中的提供用户商品推荐方法的流程图。为方便起 见,虽然是按顺序描绘的,但是图中的ー些操作是按不同顺序执行的或并行的。此外,ー些实施例可能只执行所显示的其中部分操作。如图4所示,有些操作可由计算机的处理器执行或由软件程序执行,而这些软件程序可存储在电脑可读介质中。在模块402中,选择代表给定域的商品和商品间关系的数据集112(比如域数据)。数据集112是从域服务器110传输给推荐服务器106。在商品推荐服务器106上运行推荐软件系统108接受来自域服务器110的数据集112。在模块404中,推荐软件系统108构建代表数据集112的NXM的ニ进制域矩阵。这个域矩阵中,数据集112中的商品被分类到商品所属的类别中。在模块406中,选定维数K。这个预选定的数字K指定了从域矩阵变换得到的低秩逼近矩阵的维数。在模块408中,商品推荐服务器108对域矩阵应用低秩逼近算法,从而得到ー个接近域矩阵的秩为K的矩阵,并且这个新生成的矩阵在原来域矩阵的基础上有着更精确的格式并减少了干扰项。推荐服务器108根据每个商品所属的类别的短矢量代表生成这个域商品的信息。在模块410中,用户信息代理114提供给用户电脑102。在一些实施方案中,推荐软件系统108提供用户信息代理114。在其它ー些实施方案中,用户信息代理114以其他地方提供给用户电脑102。用户信息代理114记录代表用户电脑102上的用户的喜好,包括浏览网页,购买商品,听音乐,或者查看历史,或存储在电脑上的相关记录比如播放列表。在模块412中,根据包含在域矩阵中的域类别,把用户信息代理114记录的用户喜好信息进行归类。对域矩阵应用低秩逼近算法生成的域矢量310,把所有的域矢量组合在一起生成给定域的用户信息(比如一组用户信息矢量312).在一些实施方案中,用户信息代理114把用户喜欢信息传输给商品推荐软件系统108,并且由商品推荐软件系统108构建用户信息。在一些其它的实施方案中,用户代理114构建用户信息然后把用户信息矢量312传输给商品推荐软件系统108.在模块414中,商品推荐系统108确定用户信息矢量312和域矢量310 (比如商品信息矢量)之间的相似度。最后,把与用户信息矢量312最接近的域矢量310对应的商品推荐给用户。
权利要求
1.一种个性化的系统,所述系统包括以下部分一台域服务器、一台商品推荐服务器、一台用户计算机、连接这些硬件的网络和一套用于提供商品推荐的软件系统,该软件系统用来为用户推荐商品,推荐结果依赖于用户信息和域矩阵低秩逼近的对比结果,并且用户信息部分依赖于矩阵域的低秩逼近。
2.根据权利要求I所述的系统,其特征在于在软件系统中构造域存储系统的数据集的域矩阵,其中域矩阵包括域数据集中的商品,并根据域数据集的指定,域矩阵把域商品归类。
3.根据权利要求I所述的系统,其特征在于所述软件系统给出在用户电脑中执行的代理,这个代理会把存储在这个用户电脑上运行的操作和信息形成用户信息传输给软件系统,其中用户信息与域矩阵的商品域相关联。
4.根据权利要求3所述的代理,其特征在于所述代理把从软件系统构建的域矩阵得出的用户喜好信息进行归类,并且用户代理部分依赖于域矩阵的低秩逼近算法来构建用户信息。
5.根据权利要求3所述的软件系统,其特征在于,所述软件系统把软件系统构建的域矩阵对应的用户信息进行归类,并构建部分依赖于低秩逼近算法的用户信息,再确定用户矢量组中的矢量和域矩阵的低秩逼近算法中的矢量组之间的相似度。
6.一种计算机程序,其特征在于在计算机的处理器执行的代表域数据的域矩阵的低秩逼近算法的指令,由计算机的处理器执行的提供基于代表域数据的域矩阵的低秩逼近算法和部分依赖于代表数据集的域矩阵的低秩逼近算法的用户信息得出的商品推荐的指令。
7.根据权利要求6所述的计算机程序,其特征在于在计算机的处理器上执行的指令,它们构建代表域数据集的由ニ进制值组成的域矩阵,开且每个ニ进制值定义了域数据集的商品和域数据集的类别之间的关系。
8.根据权利要求6所述的计算机程序,还包括在计算机的处理器上执行的指令,它们根据代表域数据集的域矩阵得出的用户喜好进行归类,在计算机的处理器上执行的指令,它们构建部分依赖于被归类的用户喜好信息和代表域数据集的矩阵的低秩逼近算法的用户喜好。
9.ー种方法,其特征在于在计算机的处理器上执行的计算代表域数据集的低秩逼近算法方法,其中这个低秩逼近算法有预设维数,在计算机的处理器上执行的提供商品推荐方法,其中这个推荐方法是基于代表域数据集的矩阵的低秩逼近算法和部分依赖于代表域数据集的矩阵的低秩逼近算法的用户信息。
10.根据权利要求9所述的方法,还包括选择域数据集的方法,其中数据集代表商品和在选定域中的商品之间的关系,在计算机的处理器上执行的计算矩阵的方法,其中矩阵代表数据集,包括制定的数据集中的商品和所属的类别之间的关系,选定代表域数据集的矩阵的低秩逼近算法的维数的方法。
全文摘要
本发明阐述了一种个性化的商品推荐方法和系统。该方法采用了基本的低秩逼近算法。该系统包括一台域服务器、一台商品推荐服务器、一台用户计算机、连接这些硬件的网络和一套用于提供商品推荐的软件系统。其中,软件系统运行于商品推荐服务器上,并依赖于用户信息和域矩阵低秩逼近的对比结果,并且用户信息部分依赖于矩阵域的低秩逼近值。这里所述的域指的是商品的领域,例如音乐域、电影域、新闻域等。本发明主要解决了充分利用广义域网络中所有用户浏览历史,从而为特定用户推送建议商品提出了一种新方法和系统。
文档编号G06F17/30GK102650991SQ20111004556
公开日2012年8月29日 申请日期2011年2月25日 优先权日2011年2月25日
发明者吴晓明 申请人:苏州工业园区辰烁软件科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1