一种基于动态增量更新的上下文推荐方法
【技术领域】
[0001] 本发明设及一种上下文推荐方法,特别是关于一种基于动态增量更新的上下文推 荐方法。
【背景技术】
[0002] 进入21世纪后,各种电子商务网站迅猛发展,同时随着各种无线技术的发展,使 得移动互联网、物联网、社交网络的发展也非常迅速,全人类已经进入了 "大数据"时代。在 "大数据时代""信息过载"的问题更加严重,推荐系统的研究与发展很好的解决了信息过载 的问题。随着社交网络等"大数据"的发展,数据的种类越来越多,作为大数据特点之一的 "种类(Variety)"越来越成为推荐系统数据的一个特点。面对如此多种类的数据类型,基于 上下文感知的推荐方法可W融合用户的多种上下文信息而有利于推荐方法的准确度提升。 因此,基于上下文感知的推荐方法在目前的产业界和学术界都有着不断的研究与发展。
[0003] 根据中国互联网信息中屯、(CNNIC)发布的《第35次中国互联网络发展状况统计 报告》(W下简称《报告》)显示,截至2014年12月,我国网民规模达6. 49亿,全年共计新 增网民3117万人。同时,《报告》中还显示,截至2014年12月,我国手机网民规模达5. 57 亿,较2013年增加5672万人。截至2014年12月,我国网络购物用户规模达到3. 61亿,较 2013年底增加5953万人。我国的网民数量有了很大的提高,同时,电子商务网站中的用户 也发生了很大的数量提升,越来越多的人使用电子商务网站购买东西。根据淘宝天猫的统 计,2014年11月11日,"天猫双十一"购物狂欢节单日成交额达到571亿元,其中无线客户 端成交243亿,在2013年的"双^^一"购物狂欢节,单日的成交额为350亿,在2012年,单 日成交额为191亿。通过上述数据可W看出,互联网中的用户和商品数量在2014年取得了 较快的增长,面对如此庞大的用户群体和商品,大数据的另一个特点"速度(Velocity)"对 于互联网中的应用也是一个非常重要的特征。互联网中的产品越来越重视数据实时性的需 求。例如,在新闻推荐系统中,数据的实时性是推荐方法最重要的要求。
[0004]目前越来越多的学者投入到推荐系统的研究中,取得了丰硕的成果,推动了推荐 方法准确度的提升。现有技术公开了采用主题模型LDA(Latent Dirichlet Allocation)的 方法学习用户的偏好矩阵,同时将物品的内容信息融入到LDA模型的训练中,提高了算法 的精确度;另外,现有技术还公开了在基于位置信息的推荐中,将"用户一物品一地点"立者 之间的关系抽象成=阶张量,采用张量分解的算法实现推荐方法,给定一个查询的地点,系 统根据当前地点的事件实体与用户的位置属性进行个性化的信息推荐。在社会化推荐中, 现有技术还公开一种基于信任关系的协同过滤算法,算法在计算用户相似度的时候考虑将 用户的信任关系加入到相似度的计算中,将用户之间的信任程度代替协同过滤算法中的相 似用户的计算,提升了算法在社会网络应用中的推荐准确度。
[0005]尽管目前越来越多的推荐算法的发展提高了推荐系统的推荐准确性,但是现有 该些方法具有W下的不足;现有研究工作是基于一个假设:用户和物品的数量不变。在传 统的推荐系统中,研究人员假设用户和物品的二维关系构成一个效用矩阵,采用矩阵分解 或者其他方法对矩阵进行运算,然后对用户进行推荐。该种模型中,假设用户的数量是固 定的,但是在实际的网站中,我们知道网站上的用户和物品的数量是不断在增加的,例如: Mee化P目前已经拥有九百万的用户,但是仍然W每个月二十八万的用户数量在增长;截止 2014年四季度末,微博月活跃用户达到1. 76亿,全年净增4700万。在该种现实世界中的推 荐网站中,当用户的数量发生增长的时候,传统的静态推荐方法需要对网站中所有用户的 历史数据矩阵进行重新计算,该样会增加系统的负担,造成计算资源的浪费,该种推荐模型 已经不能满足实际需求。
[0006] 在传统的推荐算法研究中,学者们采用矩阵分解的方法取得了准确度方面的提 升。但是大多数的算法都是静态算法,当用户或者物品数量增加的时候,不能动态的进行更 新计算,算法需要对整个数据集进行重新计算。Brien等人在文章中将SVD方法用户隐含语 义索引(Latent Semantic Indexing,LSI)的研究中,针对"单词一文档"矩阵中,文档数量 增加的时候,采用增量SVD分解的方法避免矩阵的重新计算问题;Ba化ul在文章中针对大 数据规模的挑战,提出了基于增量SVD分解运算的推荐算法,将原始的"用户一物品"矩阵 做SVD分解得到特征矩阵,然后将特征矩阵与新用户的数据进行更新计算得到新的特征矩 阵,提高了算法的运行效率。目前基于张量分解的应用中,学者们采用张量分解对数据集进 行分解计算,但是当数据集内的数据发生变化的时候,原来的分解结果就不能用了,需要对 变化后的数据重新进行张量分解。Sunjimeng等人提出了动态的流式主成分分析方法来处 理网络流数据,发掘网络数据流中的异常点,LiXi等人提出了基于动态张量子空间的图像 跟踪技术。在推荐系统的研究中,基于册SVD分解的研究工作取得了不错的进展。但是该 些算法都是基于静态数据的,不适于目前的推荐系统中用户和信息迅速扩张的背景。
【发明内容】
[0007] 针对上述问题,本发明的目的是提供一种能够降低推荐算法的处理时间,提高推 荐系统实时性的基于动态增量更新的上下文推荐方法。
[0008] 为实现上述目的,本发明采取W下技术方案;一种基于动态增量更新的上下文推 荐方法,其特征在于包括W下步骤:
[000引 1)根据电子商务网站的历史记录提取用户信息,根据用户信息构建成张量;并对 构建的张量进行张量分解运算,得到四类特征因子;
[0010] 2)当张量的规模发生变化时,根据新加入的用户数据构成的新张量对步骤1)得 到的四类特征因子进行动态增量更新,得到新的四类特征因子;
[0011] 3)当对用户进行物品推荐的时候,根据更新后的特征因子,计算用户与物品之间 的评分值,将评分值较高的物品作为用户可能会喜欢的物品推荐给用户。
[0012] 所述步骤1)根据电子商务网站的历史记录提取用户信息,根据用户信息构建成 张量;并对构建的张量进行张量分解运算,得到四类特征因子,具体实现过程为:
[0013] 1. 1)在某一电子商务网站通过历史记录提取用户信息,并根据用户信息进行 建模,构建张量A,采用数学表达式表示张量^ e吸,代表张量A为N阶张量,张量 第1阶表示用户,即包含Ii个用户,张量第2阶表示物品,即包含I2个物品,张量第n阶 nG[3,...,闲表示上下文信息,即n个上下文信息包含I。个不同属性;其中,用户信息包 括S类,分别为用户名称、物品名称和用户上下文信息,用户上下文信息是指用户的上网时 间和用户IP;
[0014] 1. 2)对张量A进行张量分解运算,得到四类特征因子,即;用户特征矩阵巧11,物品 特征矩阵巧:i,上下特征矩阵巧">,W及特征核张量gt;同时,记录对张量A的展开矩阵A W 进行矩阵奇异值分解的特征矩阵方及右奇异值矩阵巧">,t表示推荐系统当前的时刻。
[0015] 所述步骤2)采用ITF算法实时更新数据变化后的四类特征因子,具体过程为:
[0016] 2. 1)对用户数量