基于社会网络的个性化推荐系统研究
2017-12-28丁沂
丁 沂
(武汉软件工程职业学院 计算机学院,湖北 武汉 430205)
基于社会网络的个性化推荐系统研究
丁 沂
(武汉软件工程职业学院 计算机学院,湖北 武汉 430205)
推荐系统是一种帮助人们找到符合自己兴趣的物品或产品的工具。随着互联网的发展,涌现出了Facebook,Twitter等在线社会网络平台,从而产生了大量的社会信息。这些信息能够用来帮助给用户进行产品推荐,从而产生了个性化的推荐系统。文章探讨了个性化推荐系统的重要性、影响个性化推荐系统性能的各种因素以及实现个性化推荐系统的常用方法。
推荐系统;冷启动;超特化;矩阵分解
推荐系统有着广泛的应用,例如,研究论文推荐、社会标签推荐、音乐和电影推荐等等,它能够利用用户的输入以及不同物品之间属性上的差异,给用户推荐满意的物品[1]。调查表明,电子商务网站25%以上的销售额来自推荐系统,50%的用户会购买推荐系统给他们推荐的产品,超过90%的用户普遍认为朋友推荐的商品是有用处的。随着在线社会网络的出现,推荐系统能够利用在线社会网络产生大量社交信息为用户提供更好的产品推荐和服务。冷启动问题是推荐系统中的一个普遍问题,在算法建模过程中,冷启动问题可以看作是数据的缺失,很多推荐算法都不同程度受到冷启动用户的困扰,从而降低了算法的执行效率和推荐的准确性。
基于在线社会网络的个性化推荐系统构成要素主要包括个人的兴趣,人与人之间兴趣的交互以及人与人之间的相互影响[2]。推荐系统主要关注购买者与物品之间的关系,然而社会推荐不仅关注购买者与物品之间的关系,而且关注购买者与购买者之间的社会关系,这样就能够利用用户的兴趣和用户之间的社会关系为用户推荐更加适合的物品。另外,由于社会网络中人们之间兴趣是相互交流的,因此在社会网络信息的帮助下,推荐系统的质量得到了很大的改善,基于社会信任的推荐系统大大提高了推荐系统的准确性,社会网络尤其朋友圈中人与人之间的交互关系以及社会环境在很大程度上帮助推荐系统解决了冷启动以及数据稀疏性等问题。
1 研究挑战
1.1 冷启动问题
冷启动问题发生在新用户或新产品刚刚添加到系统时的时候。随着注册用户数量和产品数量的快速增加,推荐系统中的冷启动问题也随之产生。冷启动问题主要包括3种类型:新用户问题,新产品问题以及新系统问题[3]。在这种情况下,推荐系统无法进行推荐。对于新用户,系统中几乎没有和该用户相关的任何信息;对于新产品,系统中几乎没有用户对它的评分记录。因此,传统的协同过滤方法对于新用户和新产品很难进行推荐。对于新系统,由于系统中几乎没有用户和物品的相关信息,推荐系统无法找到相关的推荐模式。
1.2 数据稀疏性问题
数据稀疏性问题是大多数推荐系统面临的一个重要问题,它极大影响了推荐系统的质量。产生数据稀疏性问题的主要原因是用户通常只会对比较少的物品进行评分,因此能够获得的评分数据集通常都非常稀疏。协同过滤技术通常都会要求更多的用户对某个物品进行过评分。为了解决数据稀疏性问题,推荐系统通常会使用用户的人口统计信息,从而计算用户之间的相似性[4]。利用人口统计信息计算用户之间的相似性通常会用到用户年龄、区域代码、性别、户籍片区等相关信息。解决数据稀疏问题通常使用关联检索技术和相关的扩散激活算法。另外,基于物品的挖掘技术也经常被用来解决数据稀疏问题。
1.3 可扩展性问题
可扩展性是指推荐系统能以一种可靠的方式处理数据的快速增长能力。可扩展性问题的解决方案通常包括数据预处理技术、聚类技术和基于用户的协同过滤技术。预处理技术清除了噪声数据,并将数据转化为推荐算法可以处理的格式;聚类技术通过计算用户或者物品之间的距离把相似的用户或者物品聚集为一个群组;基于用户的协同过滤使用个人相关的人口统计信息。个性化的推荐算法通常使用关联检索来解决推荐系统的可扩展性问题。另外,随着核心推荐技术的进步与成熟,算法可扩展性也成为推荐系统的一个重要问题,它决定如何把核心推荐技术嵌入到真实的系统里,如何处理用户和物品之间的互动(评分、偏好、评论等)所产生的大量动态数据集。有个方法是在相对较小的数据集上进行离线测试,但是这个方法在非常大的数据集上可能失效或者完全不适应,需要进行新方法和大规模评估的研究。
1.4 超特化问题
推荐列表中包含的物品如果具有一定程度的多样性,用户就更有可能找到合适的物品。为受限种类的产品做完美推荐是没有任何意义的,除非用户已经明确表达他的偏好在一个狭窄的范围以内。在推荐过程的早期阶段,用户想要探索新的多样性的方向。因此,推荐的多样性是推荐系统的一个必备特征。然而,超特化却阻止了用户发现新的物品以及更多可选择的物品。可以通过遗传算法解决超特化问题,从而为用户提供不同且更加广泛的可选择的物品。当推荐系统仅给用户推荐那些评分高并且和该用户属性相似性大的物品时就会产生超特化。另外,推荐系统中用户的隐私、整合用户的长期和短期偏好、分布式推荐以及推荐序列的最优化也是推荐系统中面临的挑战。
2 基于社会网络的个性化推荐系统
大多数推荐系统都采用基于用户或基于物品的协同过滤算法。这些系统都难免遭受冷启动以及数据稀疏等问题的困扰。为了解决这些问题,基于社会网络的个性化推荐系统使用人与人之间兴趣的相互影响等社会信息给用户推荐感兴趣的物品。在日常生活中,人们通常倾向于购买朋友推荐的上商品;在电子商务网站上,如果推荐系统为你推荐某个商品,并同时给出的推荐理由是你的某个朋友购买了这个商品,那么你也很有可能会购买这个商品。因此,个性化的推荐系统在某些时候可以帮助人们做出决定。下面,文章将探讨基于社会网络的个性化推荐系统常用的模型和方法[5]。
2.1 基本的矩阵分解模型
推荐系统的主要任务是预测用户对物品的评分,同时使预测值和真实值之间的差异最小化,从而对用户进行推荐。因此,基本的矩阵分解模型构建目标函数,通过训练观测数据,从而最小化目标函数[6]。矩阵分解的基本方法是将一个用户—物品矩阵M分解成两个矩阵的乘积。根据因子将用户和物品映射到一个新的向量空间中,因子个数可以是任意值,通常都小于用户和物品的个数。在新的向量空间下,通过重新对用户和物品进行匹配,从而为用户推荐感兴趣的物品。基本的矩阵分解模型受到广泛欢迎的主要原因是它在可扩展性方面优越的表现,可以将社会网络信息添加到基础的矩阵分解模型中从而对模型进行扩展。
2.2 基于朋友圈的模型
基于朋友圈子的模型在推荐准确性方面优于基本的矩阵分解模型。这个模型关注社会网络中人与人之间的相互信任因素,从而推理出信任圈子。用户与用户之间的信任值通过一个矩阵来描述。更进一步,整个社会网络的信任关系被分解为一些子网,这些子网就是推理出的圈子,每个圈子和某类物品相关联。通过将人与人之间的信任关系加入到基本的矩阵分解模型中,基于朋友圈的模型在大规模真实数据集上的表现非常优异[7]。
3 结语
本文调查了推荐体统中结合社会网络和用户的兴趣进行推荐的各种方法,介绍了推荐系统面临的主要研究挑战。另外还介绍了结合用户的兴趣和用户之间的相互影响,通过基本的矩阵分解和社会矩阵分解技术来实现个性化推荐的方法。
[1]许海玲,吴潇,李晓东,等.互联网推荐系统比较研究[J].软件学报,2009(2):350-362.
[2]赵亮,胡乃静,张守志.个性化推荐算法设计[J].计算机研究与发展,2002(8):986-991.
[3]邢春晓,高凤荣,战思南,等.适应用户兴趣变化的协同过滤推荐算法[J].计算机研究与发展,2007(2):296-301.
[4]邓爱林,左子叶,朱扬勇.基于项目聚类的协同过滤推荐算法[J].小型微型计算机系统,2004(9):1665-1670.
[5]燕存,吉根林.Item-Based并行协同过滤推荐算法的设计与实现[J].南京师范大学学报(自然科学版),2014(1):71-75.
[6]丁少衡,姬东鸿,王路路.基于用户属性和评分的协同过滤推荐算法[J].计算机工程与设计,2015(2):487-491.
[7]江周峰,杨俊,鄂海红.结合社会化标签的基于内容的推荐算法[J].软件,2015(1):1-5.
Personalized recommendation system based on social network
Ding Yi
(Computer College of Wuhan Vocational College of Software and Engineering, Wuhan 430205, China)
The recommending system is a way to help people fnd their own interest in the goods or products tools. With the development of the Internet, Facebook, Twitter and other online social the network platform has emerged, which results in a large number of social information. These information can be used to help users to recommend products, which results in the personalized recommendation system. This paper discussed the importance of personalized recommendation system, various factors affecting the performance of the personalized recommendation system and common methods to achieve personalized recommendation system.
recommendation system; cold boot; super specialization; matrix decomposition
武汉市市属高校产学研项目;项目编号:201310。
丁沂(1978- ),男,湖北武汉,硕士,教师;研究方向:信息检索,推荐系统。