1、基于商品品质特征的推荐算法摘要:个性化推荐算法中应用最广泛的是基于内容的算法和协同过滤算法及它们的组合推荐算法。协同过滤算法面临稀疏性、新项目问题,基于内容的算法不考虑其它用户的评分。本文提出了特征向量,每个特征带有一个权值,用户和商品都有特征向量文件。利用用户的评分记录构建用户的特征向量文件并同时作用于商品的特征向量文件。利于用户和商品的特征向量文件进行推荐。实验结果表明本文提出的算法在推荐准确度和计算效率方面要优于经典的算法。关键字:推荐系统 特征向量 组合推荐1. 引言随着 Internet 上信息的爆炸式增长,用户面临着严峻的信息过载问题123。用户为了找到想要的信息,需要花很多时间和
2、精力去搜索和选择。在这种背景下,个性化推荐系统应运而生,它可以帮助用户从信息的海洋中获取有用的信息和知识。主流的推荐方法基本包括以下几种:基于内容推荐,协同过滤推荐,基于知识推荐和组合推荐。基于内容的推荐源于一般的信息检索方法,对象使用通过特征提取方法得到的对象内容特征来表示,系统基于用户所评价对象的特征,学习用户的兴趣,从而考察用户资料与待预测项目相匹配的程度。协同过滤的基本思想是找到与当前用户相似的其他用户来计算对象对该用户的效用值,利用效用值对所有对象进行排序或加权操作,从而找到最合适的对象。基于知识的推荐利用针对特定领域制定规则来进行基于规则和实例的推理。组合推荐则是通过组合几种不同的
3、推荐方法,用以避免或弥补各自推荐技术的弱点。在已有研究的基础上,本文提出了一种新的基于内容的推荐算法,该算法在考虑商品特征的基础上对用户评分进行统计分析,使推荐的商品更加真实的反映用户的兴趣和商品的品质。实验结果表明,该算法能有效提高推荐质量,具备较好的实时性,产生较好的推荐效果。2. 改进的基于内容的推荐算法基于内容的过滤(content-based filtering)是基于内容抽取项目特征属性的推荐技术,项目或对象通过相关特征的属性来定义,系统通过学习用户已评价过的商品的特征来获得对用户兴趣的描述。像新闻组过滤系统 NewsWeeder 这样的文本推荐系统用它们的文本词汇作为特征。传统的
4、商品特征从商品中的描述中提取出商品的特征,一旦提取完成,便不再改变。通过这种方法提取出来的商品特征无法反映出该商品在同类商品中的品质和口碑,而商品品质是用户关心的属性。消费者对商品的品质具有投票权,因此商品的品质隐藏在它所得到的评价之中。本文通过在商品配置文件中为每个特征词增加流行权值和品质权值的方式来挖掘出这些信息。图 1 基于品质特征的内容过滤算法思路3. 用户兴趣模型建立用户兴趣模型是个性化推荐系统关键的部分,用户兴趣模型是否反映了用户真实的兴趣爱好在很大程度上决定了推荐系统的成功。基于内容的推荐算法通过用户对项目的评价来学习用户的兴趣,最后依据用户兴趣与待预测项目的匹配程度进行推荐。首
5、先对商品分析并生成一个特征集,特征集是一组特征词的集合,如幻想,小说 ,长篇。问题 1 商品原始特征集无法反映两个具备相同特征集的商品的品质优劣和重点特征。商品的原始特征集反映了此商品的属性,但如问题 1 所示,市场上出售的同类商品很多,消费者必然倾向于购买品质更佳的商品。3.1 相关概念和定义定义 1 用户平均评分:用户 i 对所有项目评分的均值称为用户 i 的平均评分iiTjjjRiA1)(,定义 2 用户偏差评分:用户的评分值减去平均评分即为用户的偏差评分 OR)(, iARORjiji定义 3 用户特征评分总和:用户 i 对所有包含特征 k 的项目的偏差评分总和 FRikTFjjOF,
6、),(定义 4 用户特征权值:用户 i 对所有包含特征 k 的项目的评分次数作为权值 FC评分矩阵 商品初始特征集用户兴趣爱好商品品质特征集产生推荐ikTFjiFC1),(本文以特征向量空间来表示用户兴趣,基本思想是一个 n 维特征向量:(,.,),其每一维由特征词、评分总和和特征权值组成。3.2 商品特征品质度量公式用户对商品的评分表明了用户对该商品的品质的态度。同样的商品在不同爱好的人群中会得到不同的得分。比如一部动作片在喜欢看动作片的人群中得分较高,而在喜欢看喜剧片的人群中得分可能较低。因此本文结合用户的兴趣偏好和评分矩阵来生成商品的品质特征集。定义 5 商品特征品质权值:商品 m 被所
7、有包含特征 k 的用户的正偏差评分总和mkUTj jORMR,),(定义 6 商品特征流行权值:商品 m 被所有包含特征 k 的用户的正偏差评分总和0,1),(),(,jiTUiORkiCmk通过引入商品特征品质权值可以解决问题 1,即可以找出两个相同特征的商品中更优质的商品。3.3 模型的更新本文中对模型的更新主要来自两个方面:用户评分和遗忘处理。用户评分分为显式评分和隐式评分,显式评分即用户主动打分,隐式评分即用户通过点击、购买等行为表示感兴趣。两种评分都可以转换为一个评分权值进行处理。本文中的模型支持增量处理。设用户 i 对商品 m 的评分权值为 r, k 是商品 m 中的特征,则有:i
8、FRkioldnew),(),(1C用户的兴趣不是一成不变的,同样的商品在不同时期也会得到不同的品质评价。根据心理学的记忆遗忘理论,可以认为用户兴趣的改变就是一种记忆遗忘现象。用户的评价对个性化推荐的参考价值随着时间的流逝而降低。设有一个理想的递增函数 ,则有)(tnrtrttrtkiFR)(.)()(),( 321C为了简单起见,本文引入一个遗忘因子 ,系统定时对用户和商品的特征集执行一次遗忘操作,使得新的增量值比过期的值更重要。对用户特征评分总和为例:)1(,),(),(122 kiFRikiFRttt4. 推荐算法本节探讨如何利用用户特征集和商品品质特征集来生成推荐。个性化推荐的目的是将
9、用户感兴趣,对用户有用的商品推荐给用户。因此在推荐过程中,只考虑用户感兴趣的特征。定义 7 用户特征和商品特征交集:商品 m 的特征集和用户 i 的特征集的交集称为特征交集。 )()(),(FiiFU定义 8 用户商品预测评分:通过商品 m 和用户 i 的特征交集进行评分预测 1,),(),(),( ),(,),(),)( kiMCRkiFi ikiSmiUkiF其中 和 分别是用户特征和商品特征在预测中所占的权值。取预测评分最高的 Top-N 作为推荐结果给用户。5. 实验实验采用 MovieLens 工作组提供的 ml 数据集,它包含由 943 个用户对 1682 个电影的100000 个
10、评价记录,评分值为 1-5 分。每个用户至少对 20 部电影做出评价。整个实验数据进一步划分为训练集和测试集,80%为训练集,20%为测试集。实验采用统计精度度量方法中的平均绝度误差 MAE(mean absolute error)来评价系统推荐准确度。平均绝对误差通过计算推荐数据与真实评价数据数值上的差别来衡量推荐结果好坏。设目标客户的预测评分集合为 ,真实评分集合为 ,,.21Np,.21Nq则绝对平均误差定义为:qMAEiii1|N 为测试集中目标客户真实评分项数。MAE 越小,推荐精度越高。为了验证本文提出的算法的有效性,实验对三种推荐算法进行了推荐准确度和推荐耗时进行对比。三种推荐算
11、法如下:1) UPCF用户- 项目协同过滤推荐算法,取最近邻居数 50;2) UFCF用户-特征协同过滤推荐算法,取最近邻居数 50;3) CBF 基于内容的推荐算法;4) FQCF基于品质权值的推荐算法在算法的实现中已经对数据库索引做了充分的优化,以避免耗时上的误差。实验效果比较:图 2 平均绝对误差图 3 预测 2 万次耗时图 4 训练耗时从图 1 可以看出,预测效果最好的是本文提出的推荐算法,其次是用户-项目协同过滤算法。在图 2 中,耗时最短的是 CBF,这是由于 CBF 只需要进行很少的计算即可得出结果,FQCF 虽然耗时不是最短,但平均耗时属于可接受的范围。而在图 3 中,UPCF
12、 的耗时最长,因为要对所有的项目和评分进行扫描,UFCF 只对用户的特征进行扫描,因此速度较快,CBF 和 FQCF 的训练时间几乎可以忽略不计。6. 小结本文所进行的工作在一定程度上提高了推荐准确度和实时性。通过构建用户和商品的特征向量,保留了用户的偏好信息和商品的质量信息。实验表明,本文的方法与 UFCF 和CBF 相比,推荐结果具有更高的准确度。参考文献1 Boucher-Ryan, P. D., & Bridge, D. (2006). Collaborative recommending using formal concept analysis. Knowledge-based S
13、ystems, 19, 309315.2 Cho, Y. H., & Kim, J. K. (2004). Application of Web usage mining and product taxonomy to collaborative recommendations in e-commerce. Expert Systems with Applications, 26, 233246.3 Semeraro, G., Lops, P., & Degemmis, M. (2005). WordNet-based user profiles for neighborhood format
14、ion in hybrid recommender systems. In Proceedings of the 5th international conference on hybrid intelligent systems (HIS05) (pp. 291296). IEEE.4 Adomavicius, G., & Tuzhilin, A. (2005). Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. IEEE T
15、ransaction on Knowledge and Data Engineering, 17(6), 734749.5 Eirinaki, M., & Vazirgiannis, M. (2003). Web mining for web personalization. ACM Transactions on Internet Technology, 3(1), 127.6 Krulwich, B. (1997). Lifestyle Finder: Intelligent user profiling using large-scale demographic data. Artifi
16、cial Intelligence Magazine, 18(2), 3745.7 Lang, K. (1995). NewsWeeder: Learning to filter netnews. In Proceedings of the 12th international conference on machine learning, Tahoe City, CA.8 Resnick, P., Iakovou, N., Sushak, M., Bergstrom, P., & Riedl, J. (1994). GroupLens: An open architecture for co
17、llaborative filtering of Netnews. In Proceedings of ACM conference on computer supported cooperative work (pp. 175186). NC: Chapel Hill.9 Shardanand, U., & Maes, P. (1995). Social information filtering: Algorithms for automating Word of Mouth. In Proceedings of the conference on human factors in com
18、puting systems (CHI95), Denver(pp. 210217).10 Boucher-Ryan, P. D., & Bridge, D. (2006). Collaborative recommending using formal concept analysis. Knowledge-based Systems, 19, 309315.11 Balabanovic,M., & Shoham, Y. (1997). Fab: Content-based, collaborative recommendation. Communications of the ACM, 4
19、0(3), 6672.12 Shahabi, C., Banaei-Kashani, F., Chen, Y., & McLeod, D. (2001). Yoda: An accurate and scalable web-based recommendation systems. In Proceedings of the sixth international conference on cooperative information systems (CoopIS 2001), Trento, Italy.13 Sutheera Puntheeranurak and Hidekazu
20、Tsuji: “An Improved Hybrid Recommender System Using Multi-Based Clustering Method”, IEEJ Trans. EIS, Vol. 129, No. 1, pp.125-132 (2009) .14 Shih, Y. Y., & Liu, D. R. (2008). Product recommendation approaches: Collaborative filtering via customer lifetime value and customer demands. Expert Systems wi
21、th Applications, 35(12), 350360.15 Symeonidis, P., Nanopoulos, A., Papadopoulos, A. N., & Manolopoulos, Y. (2008). Collaborative recommender systems: Combining effectiveness and efficiency. Expert Systems with Applications, 34(4), 29963013.16 Froschl, C. (2005). User Modeling and User Profiling in Adaptive E-learning Systems. Master Thesis, Graz University of Technology, Graz, Austria.17 Kim et al., 2006 B.M. Kim, Q. Li, C.S. Park, S.G. Kim and J.Y. Kim, A new approach for combining content-based and collaborative filters, Journal of Intelligent Information Systems 27 (1) (2006), pp. 7991.