基于支持向量机回归的协同过滤相似度优化方法

时间:2022-09-15 07:30:19

基于支持向量机回归的协同过滤相似度优化方法

[摘 要] 在基于属性相似性的协同过滤算法中,项目属性之间相似性的度量是整个算法的关键。现有算法在计算项目属性相似度时忽略了项目属性之间的非线性关系,导致相似性度量不准确,无法保证项目推荐精度。针对这一问题,本文提出一种基于支持向量机回归的协同过滤相似度优化方法,该方法利用支持向量机回归算法来构建项目属性相似度模型,解决项目属性的非线性关联问题,改善项目属性相似度计算。实验结果表明,优化方法计算出的项目相似性更准确,显著提高了系统的推荐质量。

[关键词] 支持向量机回归;项目属性相似性;协同过滤

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2015. 05. 109

[中图分类号] TP311 [文献标识码] A [文章编号] 1673 - 0194(2015)05- 0227- 04

0 引 言

协同过滤推荐是当前最成功的推荐技术之一[1],根据过滤操作对象的不同,协同过滤算法可以分为基于用户(User-based)[2]和基于项目(Item-based)[3]的算法。User-based协同过滤算法随着数据的不断增多,要从大量用户中寻找最近邻居用户的问题成为推荐系统发展的瓶颈,而Item-based协同过滤算法通过将计算用户之间的相似性转换为计算项之间的相似性的方法,有效地解决了这一问题。在Item-Based协同过滤算法中,项目之间相似性的度量是否准确,直接关系到整个推荐系统的推荐质量。而实际上,由于系统用户评分数据的极端稀疏性,传统的相似性度量方法存在着一定的弊端,系统的推荐精度往往会很低。为了提高系统推荐精度,一些研究者们对项目相似性计算方法进行了改进。根据项目属性相似度和用户评价相似度,计算项目之间的综合相似度,但项目属性相似度的计算公式只简单考虑两个项目间相同的属性数,未考虑项目属性的重要性差异。因此将项目属性相似度和项目评分相似度的线性组合作为最终邻居相似度,在计算项目属性向量的相似度时,使用加权计算来解决项目属性的重要性差异问题。以上算法的核心就是用基于项目属性的相似性来改进传统Item-Based协同过滤中目标项目的最近邻居项目集的查找,项目属性相似度的计算是这类改进方法的关键。但是,目前基于属性相似性的Item-Based协同过滤算法将项目属性之间的复杂关系进行了简单的线性化处理,忽略了项目属性的非线性关系,在一定程度上影响了算法的效能。

Vapnik 等人根据统计学习理论提出的支持向量机(Support Vector Machine,SVM) [7] 方法具有诸多的优良特性,近年来引起了广泛的关注,SVM方法最早是针对模式识别问题提出的,Vapnik通过引入不敏感损失函数,得到了用于回归估计的SVM方法,称为支持向量机回归 (Support Vector Regression,SVR) [8],SVR方法被引入非线性回归领域,显示了其巨大威力[9,10]。本文利用支持向量机回归算法的回归能力,解决项目属性的非线性关联问题。实验结果表明,本文所提的算法大幅提高了推荐算法的精确度。

1 支持向量机回归

一般的回归问题可表述为:给定l个训练样本,学习机从中学习出输入、输出变量之间的关系(依赖关系、映射关系、函数关系) f(x)。考虑一个训练样本数据集{(x1,y1),…,(xl,yl)}。对于i=1,…,l其中xi∈Rn每个代表了样本的输入空间,存在一个目标值yi∈R与其相对应。回归问题的思想就是从中学习出一个函数,能够精确地估计未来值。

在公式(5)中,点积可以用核函数k(xi,x)来代替。核函数能够在不知道变换具体函数的情况下,使用低维空间的数据输入来计算高维特征空间中的点积。通常使用的核函数包括线性函数、多项式函数以及RBF等。

2 基于支持向量机回归的相似度优化方法

2.1 项目的特征属性

一般来说,推荐系统至少存在3个基本数据表,一个用来记录注册用户信息, 一个用来记录项目信息, 还有一个记录用户的评分信息(记为用户评分表)。通过对记录项目信息表的整理可以得到项目特征属性矩阵A。假定接受评分的项目数是n, 每个项目挑选k个具有代表性的属性描述, 在此将其抽象为{ Attr1, Attr2,…, Attrk}。见表1,项目属性矩阵A(其中1表示某个项目具有某项属性,0表示某个项目不具有某项属性) ,项目特征属性的抽取可以从项目的简介网页中提取,或者从推荐系统中用来记录项目信息的表中整理得到。

3 实验及分析

3.1 数据集

数据集取自MovieLens数据集[11],该数据集由明尼苏达大学GroupLens研究小组通过MovieLens网站(http://movielens.umn.edu)收集,包含了943位用户对1 682部电影的100 000条评分数据,每位用户至少对20部电影进行了评分,所有电影分属于19种电影类别。为了分析实验数据稀疏性对算法性能的影响,本文从MovieLens数据集上随机抽取100、200、300位用户的评分数据组成3个数据集,分别记为TDS100、TDS200、TDS300。

3.2 评价标准

评价推荐系统推荐质量的度量标准采用统计度量方法中的平均绝对偏差MAE(Mean Absolute Error)进行度量。MAE通过计算预测的用户评分与实际的用户评分之间的偏差来度量预测的准确性,MAE越小,推荐质量越高。

3.3 实验结果及分析

实验以传统Item-based协同过滤(Item-based CF)、基于属性相似性的Item-based协同过滤(Item feature-based CF)[3]以及基于属性线性加权的Item-based协同过滤(Item feature weighted -based CF)[4]为对照,检验本文提出的算法的有效性,计算各种推荐算法的MAE。实验中最近邻居个数k取30, 推荐集元素个数r取10,项目相似性平衡参数α取0.6,实验结果见表2。

由表2可知,Item feature-based CF方法优于Item-based CF方法,说明在计算项目相似性的过程中考虑项目属性相似性,可以有效改善传统协同过滤算法中面临的“稀疏性”问题,提高推荐算法的推荐质量。Item feature weighted -based CF方法优于Item feature-based CF方法的性能,说明通过加权计算可以解决项目属性重要性不同的问题,能有效改善推荐方法的性能,而本文提出的方法的MAE值较Item feature weighted -based CF方法的MAE值有大幅度的降低,说明加入支持向量机后明显优于线性组合的特征加权,通过支持向量机回归方法改善项目属性相似性的计算,能使得项目的相似性计算更加准确,进一步提高方法的性能。

4 结束语

本文提出了一种基于支持向量机回归的协同过滤相似度优化方法,该方法在计算项目属性相似性时考虑了项目属性之间的非线性关联问题,使得项目属性的计算更加合理。实验结果表明,本文提出的优化方法能够获得更准确的项目相似性,在一定程度上提高了系统的推荐质量。

主要参考文献

[1] D Goldberg, D Nichols, B M Oki, et al. Using Collaborative Filtering to

Weave an Information Tapestry[J]. Communications of the ACM,1992,35

(12):61-70.

[2]P Resnick, N Iacovou, M Suchak, et al. GroupLens: An Open Architecture

for Collaborative Filtering of Netnews[C]. Proc. of the ACM CSCW′94

Conference on Computer Supported Cooperative Work, ACM,1994:

175-186.

[3]B Sarwar, G Karypis, J Konstan, et al. Item-based Collaborative Filtering

Recommendation Algorithms[C]//Proceedings of the 10th International

World Wide Web Conference, 2001.

[4] 彭玉,程小平.基于属性相似性的Item-based协同过滤算法[J].计算

机工程与应用,2007,43(14):144-147.

[5] 庄永龙.基于项目特征模型的协同过滤推荐算法[J].计算机应用与软

件,2009,26(5):244-246.

[6] 张忠平,郭献丽.一种优化的基于项目评分预测的协同过滤推荐算法

[J].计算机应用研究,2008,25(9): 2659-2683.

[7] V N Vapnik.Statistical Learning Theory[M].NeuYork,NY:Wiley,1998:35-

53.

[8] V Vapnik. An Overview of Statistical Learning Theory[J].IEEE Transactions

on Neural Networks,1999,10(5):988-999.

[9] Smola, Scholkopf. Learning with Kernels[M].Cambridge,MA: MIT Press,

2002.

[10] Smola,Scholkopf. A Tutorial on Support Vector Regression [J]. Statistics

and Computing, 2004(14): 199-222.

[10] Miller B N,Albert I,et al. Movie Lens Unplugged: Experiences with an

Occasionally Connected Recommender System[C]//Proceedings of the

International Conference on Intelligent User Interfaces,2003.

上一篇:浅析我国“农超对接”的发展现状与对策 下一篇:大学生电子商务创业的关键因素分析