面向社交网络基于张量分解的上下文感知推荐系统及方法技术领域
本发明属于数据挖掘和信息检索领域,涉及推荐系统的个性化推荐,是一种面向
社交网络基于张量分解的上下文感知推荐方法。
背景技术
随着互联网的快速发展,人们逐渐步入信息过载时代。为解决信息过载问题,人们
不断采用新的措施,如强化搜索引擎,优化推荐系统等来解决海量信息带来的难题。
近年来,推荐系统受到物联网巨头和电商越来越多的青睐,尤其个性化推荐技术
的发展,对改善用户体验和提高服务质量起到了重要的作用。当前主要的推荐方法包括:基
于内容推荐、协同过滤推荐、基于关联规则推荐以及组合推荐。基于内容的推荐系统首先提
取推荐对象的内容特征,其次将产品特征与用户兴趣偏好匹配,将匹配度较高的产品向用
户实施推荐,由于多媒体资源目前还没有有效的特征提取方法,因此基于内容的推荐系统
会受推荐对象特征提取能力的限制;关于协同过滤推荐,首先找到与目标用户兴趣偏好相
似的最近邻居集,然后根据这个最近邻居集对项目的评分来预测目标用户未评分项目的评
分,选择预测评分最高的N个项目作为推荐结果反馈给用户,该推荐算法能够发现用户尚未
发现且潜在的兴趣偏好,尽管如此,协同过滤推荐算法仍然面临着冷启动、稀疏性、精确性、
扩展性等问题;基于关联规则的推荐以项目之间的关联规则为基础,通过数据挖掘发现项
目之间的潜在关联以实施连带推荐,但是当数据量非常大的时候,此推荐算法的计算复杂
度将会随之升高;混合推荐系统即通过组合不同的推荐策略,达到扬长避短的目的,从而产
生更符合用户需求的推荐,可是混合推荐系统在实际应用中面临着许多困难,它需要解决
不同推荐技术的难题进行有机推荐。
综上所述,随着用户和项目(物品)数量的急剧上升,传统的推荐系统面临着巨大
的挑战,包括冷启动问题、评分矩阵稀疏性问题等,尤其是原始用户-项目评分矩阵较高的
稀疏性严重的影响了推荐质量。与此同时,传统的推荐算法大都只考虑了评分这项单一因
素,并未结合社交网络分析理论的知识,忽略了用户社交关系、项目关联属性以及一些上下
文信息(地理位置、情感因素),这在一定程度上降低了推荐的准确度、新颖度和覆盖度。因
此,引入社交网络信息和上下文信息来解决评分矩阵稀疏的问题对提高推荐质量十分重
要。
发明内容
本发明从已有的协同过滤方法相关研究背景出发,结合现有基于用户的最近邻推
荐、基于项目的最近邻推荐以及基于模型和预处理的方法,将用户对项目评分的多个上下
文信息关联起来建立用户-项目-上下文N维矩阵,将社交网络中用户的朋友对象、用户自身
关联起来建立用户-用户相似度矩阵,在此基础上,利用张量分解填充稀疏评分矩阵,并且
考虑用户-用户相似度矩阵稀疏性,采用矩阵分解填充相似度矩阵,在此基础上根据用户相
似度矩阵,进一步优化评分矩阵。包含如下内容:获取数据源信息模块、构建包含上下文信
息的稀疏评分矩阵模块、预测评分填充矩阵模块、预测用户相似度矩阵模块、优化评分填充
矩阵模块。其中预测评分填充矩阵是为了解决原始用户-项目-上下文评分矩阵的稀疏性问
题而实施的;预测用户相似度矩阵是为了解决矩阵稀疏性问题而实施的,而优化评分矩阵
是预测评分关键的一步,目的是解决社交网络中用户关系对评分的影响;推荐系统的最终
目的是为目标用户产生其未关注的可能最感兴趣的N个项目列表。
为了实现以上发明,提出一种面向社交网络基于张量分解的上下文感知推荐方
法,具体包含以下三个实施步骤:
第一步:预测评分填充矩阵。采用预测填充的方法降低原始用户-项目-上下文评
分矩阵的稀疏性,具体方法张量分解法,也就是将矩阵张量分解为一个核心张量和多个因
子矩阵乘积形式,填充缺失值。
第二步:预测用户相似度矩阵。首先根据用户关系和用户对项目的评分信息得到
稀疏用户相似度矩阵,采用矩阵分解方法,填充缺失值。
第三步:优化评分填充矩阵。首先构建加入社交正则化项的张量分解目标函数,再
采用梯度下降法优化目标函数,得到最终的预测评分矩阵。
本发明的有益效果:
本发明首先通过预测填充的方法降低了原始评分矩阵的稀疏性,为得到准确的推
荐结果奠定了基础,并且采用张量分解法对带有上下文信息的评分矩阵分解,不仅考虑了
用户对项目的偏好,而且还考虑了上下文信息对用户打分的影响。其次在构建基于主题的
用户-用户-项目信息关系矩阵时,采用张量分解法对用户-用户-项目信息关系矩阵分解,
不仅考虑用户原始存在的好友关系,而且还考虑主题对用户关系的影响。最后,在优化填充
后的评分矩阵上,加入社交正则化项,不仅考虑了上下文对用户打分影响,而且考虑用户关
系对用户打分影响,进而优化填充后的评分矩阵。采用上诉方法改善了传统预测评分填充
矩阵存在的弊端,提高了推荐的准确性。
说明书附图:
图1是本发明的实施方式流程图。
图2是本发明使用张量分解填充稀疏评分矩阵的流程示意图。
图3是本发明使用矩阵分解填充用户相似度矩阵的流程示意图。
图4是本发明优化稠密评分矩阵的流程示意图。
具体实施方式:
为使本发明的目的、技术方案以及优点更加清晰明了,以下参照说明书附图,对发
明具体实施做进一步的详细阐述。
如图1是本发明总体的流程图,包括数据获取,填充稀疏评分矩阵,填充用户关系
矩阵,优化稠密评分矩阵四大模块,其中,数据获取可以直接从基于web研究型的推荐系统
下载或利用成熟的社交平台的API获取。
本发明的实施主要包括以下步骤:
S1:获取数据源并获取用户信息集合,关注列表集合,项目信息集合,上下文信息
集合。
S2:根据用户、项目、上下文信息构建用户-项目-上下文评分矩阵,在评分矩阵的
基础上,使用张量分解法填充稀疏评分矩阵,得到稠密评分矩阵。根据用户、好友、项目信息
构建用户相似度矩阵,采用矩阵分解法填充用户相似度矩阵,得到稠密用户关系矩阵。
S3:加入社交正则化项优化稠密评分矩阵。
上述步骤S2中的填充稀疏评分矩阵的流程如图2所示,具体可以分为以下2个步
骤。
S21:根据数据源提供的用户信息、项目信息、上下文信息构建用户-项目-上下文N
层模型。
S22:采用张量分解法,将用户-项目-上下文N阶张量分解为一个核心张量和N个因
子矩阵乘积,计算公式为:
X≈C×1U(1)×2U(2)...×NU(N) (1)
其中,
核心张量![]()
上述步骤S2中使用矩阵分解填充用户关系矩阵的流程如图3所示,具体可分为两
个步骤:
S23:根据项目评分信息,用户信息,朋友信息,采用皮尔森系数计算用户间相似
度,计算公式为:
![]()
其中,
核心张量![]()
S24:采用矩阵分解法,填充S23计算得到的用户-用户相似度矩阵S,用户i和用户j
的预测相似度为:
![]()
在最终的优化目标中,希望预测的相似度与真实的相似度越接近,并且为了防止
出现过拟合,需要添加正则化项,计算公式如下:
![]()
其中η为经验参数,优化函数采用梯度下降法求解,计算公式如下:
![]()
![]()
其中,α是学习速率。
上述步骤S3中优化稠密评分矩阵的流程图如图4所示,具体可分为两个步骤:
S31:根据填充后的稠密评分矩阵和用户关系矩阵,在构建优化稠密评分矩阵的目
标函数时,加入社交正则化项目,目标函数如下:
![]()
S32:通过对图中目标函数采用剃度下降算法迭代更新稠密评分矩阵,得到最优的
预测评分矩阵,迭代公式如下:
![]()
![]()
本发明所述的一种面向社交网络基于张量分解的上下文感知推荐方法,其特点在
于,传统预测评分矩阵预测没有考虑上下文信息和用户关系对评分的影响,为了克服矩阵
稀疏性,以及预测评分矩阵时考虑上下文信息和用户关系,本文引进张量分解法,解决了包
含上下文信息的评分矩阵的稀疏性问题,采用矩阵分解法解决用户相似度矩阵的问题,引
进社交正则化项优化评分矩阵,解决用户关系对评分影响的问题,提高了预测评分的准确
度。两者结合,大大提升预测的准确性。
应当指出上述的流程图,可以使本领域的技术人员和读者更全面地理解本发明创
造的实施方法,尽管本发明说明书参照附图对本发明创造已进行了详细的说明,但是,本领
域的技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换,总之,一切不脱离
本发明创造的精神和范围的技术方案及其改进,其均应涵盖在本发明创造专利的保护范围
当中。