基于项目评分预测的大学生考研资料推荐

2018-02-11 13:14王磊陆瑞雪
神州·下旬刊 2018年12期
关键词:协同过滤

王磊 陆瑞雪

摘要:针对电商平台考研资料推荐问题,提出采用项目评分预测的协同过滤推荐方法,即采用余弦相似度计算项目的相似度,在此基础上通過TOP-N方法确定相似的图书资料集合,最终预测未知图书的评分,产生推荐。基于Movielens数据集的数据实验验证了本文方法的有效性。

关键词:项目评分;协同过滤;考研资料;推荐

1 引言

随着考研热的到来,各类电商平台考研复习资料的种类日益庞大,相同种类的复习资料也有多种不同作者编写的版本,考生们在面临如此繁多的考研复习资料时,通常很难选择[1]。

本文在个性化推荐的研究背景下,运用目前最为流行的协同过滤推荐技术开展考研资料推荐研究[2]。在一个考研资料电商平台,系统中的用户数量会不断增长,使得评分矩阵更加稀疏,但是考研资料数量相对稳定,因此本文基于项目评分预测,采用基于项目(物品)的协同过滤算法,以应对考研资料推荐问题,为考生在考研的各个阶段提供较为可靠的考研资料的选择的参考。

2 推荐方法

基于项目的协同过滤算法是于2001年被提出,其基本思想是根据用户的历史兴趣偏好记录向用户推荐与用户所偏好的物品相似的物品。该算法的一个假设前提是:用户一般情况下都会更喜欢与他之前所购买物品相似的物品[3]。

在一个考研资料推荐系统中,用户数量不断增长。如果采用基于相似用户的推荐方法,将导致系统在每次推荐时需要重新在线的计算用户之间的相似度,这样就使得推荐方法的时间复杂度和计算复杂度变高。而物品的变化相比较而言是比较稳定的,所以在实际的应用中,基于项目的协同过滤中项目间相似度的计算可以离线进行,节省了产生推荐的时间,提高了推荐效率[4-5]。

用户对于考研资料的类型有非常明确的要求,由于基于项目的协同过滤会为用户推荐同类型的物品,因此,基于项目的协同过滤算法在考研资料推荐系统中会有较好的推荐效果。基于项目的协同过滤在本系统中的原理是:根据用户的评分记录建立评分矩阵,计算目标图书(考研资料)与其他图书之间的相似度,找到目标图书的最近邻居集合,最后根据目标用户对最近邻居集合中的图书的历史评分数据,预测目标用户对目标图书的评分。最后,将预测值进行降序排列,并将对应的图书推荐给目标用户。

设i和j分别表示图书i和图书j在对象空间上的评分向量,在考研资料推荐系统中,本文采用余弦相似度方法进行项目间的相似度计算:

(1)

公式(1)中,分子为两种图书的评分向量的内积,分母为向量的模的乘积。

在此基础上,采用Top-N法,将得到的图书的相似度数据进行从大到小的降序排列后选择前N个图书作为目标图书的邻居参与后续的推荐工作。

获取目标图书的邻居后,将目标图书i的邻居集合设为NBSi,目标用户为用户a。则用户a根据目标图书的邻居的评分记录计算预测评分,最后将得出的预测结果按照从高到低的降序排列把对应的图书(考研资料)推荐给用户a。预测评分的计算如下:

(2)

在公式(2)中,Pa,i为用户a对于目标图书i的预测评分,n为图书i的邻居,、分别为目标图书i和邻居n的评分的算数平均值,为图书i与邻居n的相似度,Ra,n为目标用户a对于目标图书n的评分。

3 实验分析

本文对传统的基于用户的协同过滤与基于项目评分预测的协同过滤的推荐质量进行实验对比。其中传统的基于用户的协同过滤中用户间相似度计算方法选择了余弦相似度和Pearson相关系数作为对照组,基于项目评分预测的协同过滤方法作为实验组,本实验的目的是调查不同推荐方法的性能。本实验开发环境的硬件配置的CPU为Intel(R)Core(TM)i5 2.40GHZ,内存为4.00GB,软件配置中操作系统为Windows10,编程语言为Java。

本实验采用公开可用的Movielens数据集。本文从MovieLens数据集中随机选择部分数据,开展实验,其中包括100个用户和100部电影。在评分矩阵中非零元素为2691个,零元素为7309个,数据集的稀疏度为26.91%。为了方便进行实验,将矩阵中用户未评分电影的分值预设为零。将整个数据集的90%用作训练集,10%用作测试集。

本文采用平均绝对误差MAE(Mean Absolute Error)和均方根误差RMSE(Root Mean Square Error)来考虑推荐精度。平均绝对偏差公式如下:

(3)

其中,pi为预测出的用户评分,qi为用户的实际评分,N为实际值和预测值的数量。

均方根误差的计算方法为:

(4)

其中,pi为预测出的用户评分,qi为用户的实际评分,N为实际值和预测值的数量。

本文与传统的基于用户的协同过滤中的余弦相似度和Pearson相关系数方法进行比较,其中,本文的方法邻居数量N值设定为40。计算三种算法的平均绝对偏差MAE,RMSE,邻居个数从4增加至20,间隔为4,并对结果进行比较。

由图1可见,在各个邻居数量的实验条件下,与传统的协同过滤推荐算法相比,基于项目评分预测的协同过滤算法均具有最小的MAE和RMSE值,即推荐结果更准确。

4 总结

本文基于协同过滤方法,采用余弦相似度计算物品的相似度,在此技术上,设计了基于项目项目评分预测的推荐方法。实验结果验证了本文方法的有效性。本文所提出的方法能够拓展个性化推荐技术的运用范围,对图书销售类电商网站具有参考价值。

参考文献:

[1]章伟.基于协同过渡算法的学习资源个性化推荐系统设计与实现[D].天津师范大学,2017.

[2]Tewari A S,Barman A G.Collaborative book recommendation system using trust based social network and association rule mining[C]//International Conference on Contemporary Computing and Informatics.IEEE,2017:85-88.

[3]邓爱林,朱扬勇,施伯乐.基于项目评分预测的协同过滤推荐算法[J].软件学报,2003,14 (9):1621-1628.

[4]刘玲.基于Topsis思想的内容推荐算法研究[J].数学的实践与认识,2012,42 (16):113-119.

[5]李娜.基于混合协同过滤的用户在线学习资源系统个性化推荐方法研究[J].计算机光盘软件与应用,2015,18 (02):1-2.

猜你喜欢
协同过滤
基于用户评分和项目类偏好的协同过滤推荐算法
基于用户相似度加权的Slope One算法
图书推荐算法综述
改进的协同过滤推荐算法
基于链式存储结构的协同过滤推荐算法设计与实现
基于相似传播和情景聚类的网络协同过滤推荐算法研究
基于协同过滤算法的个性化图书推荐系统研究
混合推荐算法在电影推荐中的研究与评述
关于协同过滤推荐算法的研究文献综述
基于混合信任模型的协同过滤推荐算法