您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页基于协同过滤算法的推荐系统研究

基于协同过滤算法的推荐系统研究

来源:华佗小知识
2018年第2期 (总第 182 期)

信息通信

INFORMATION & COMMUNICATIONS 2018

(Sum. No 182)

基于协同过滤算法的推荐系统研究

李楚桐,莫赞

(广东工业大学管理学院,广东广州51〇520)

摘要:传统的推荐算法主要分为两类:基于内容过滤推荐算法(contents-based filtering,简称CBF )M和基于协同过滤推荐 算法(collaborative filtering,简称CF)W' CBF算法主要利用信息检索或信息过滤技术,根据推荐项目(item)的内容信 息和用户配置文件的相关性向目标用户推荐相关项目。关键词:推荐系统;矩阵分解;协同过滤;大数据

中图分类号:TP181 文献标识码:A

文章编号:1673-1131(2018)02-0038-02

1概述

在当今大数据时代,互联网上的信息呈现爆发性增长,导 致用户很难有效获取感兴趣的信息。推荐系统是帮助用户发 现其感兴趣的物品,解决信息过载问题的重要工具。基于矩 阵分解的推荐算法是目前推荐算法研究的前沿领域之一,基 于矩阵分解的推荐算法将用户行为矩阵分解为隐因子空间上 用户、物品特征矩阵,因而算法具有准确度高、可扩展性好等 诸多优点。目前,基于矩阵分解的推荐算法仍存在着对单类 数据、稀疏数据推荐效果不理想以及并行化等问题。随着Netflix Prize推荐比赛的成功举办,近年来隐语义模 型(Latent Factor Model, LFM)受到越来越多的关注。隐语义 模型最早在文本挖掘领域被提出,用于寻找文本的隐含语义, 相关的模型常见的有潜在语义分析(Latent Semantic Analysis, LSA)、LDA (Latent Dirichlet Allocation)的主题模型(Topic Mdel),矩阵分解(Matrix Factorization)等等。其中矩阵分解技 术是实现隐语义模型使用最为广泛的一种方法,其思想也正 是来源于此,著名的推荐领域大神Yehuda Keren更是凭借矩 阵分解模型勇夺Netflix Prize推荐比赛冠军,以矩阵分解为基础,Yehuda Koren在数据挖掘和机器学习相关的国际顶级会 议(SIGIR,SIGKDD,RecSy等)发表了很多文章,将矩阵分解模 型的优势发挥得淋漓尽致。在个性化推荐中使用矩阵分解模型要明显优于传统的基于邻域的协同过滤(又称基于记忆的 协同过滤)方法,如UserCF、ItemCF等,这也使得矩阵分解成

为了目前个性化推荐研究领域中的主流模型。

传统的推荐算法主要分为两类:基于内容过滤推荐算法

(contents-basedfiltering,简称CBF)[1_a和基于协同过滤推荐算 法(collaborative filtering,简称 CF)M。CBF 算法主要利用信 息检索或信息过滤技术,根据推荐项目(item)的内容信息和 用户配置文件的相关性向目标用户推荐相关项目。CF推荐 主要分为两类:基于内存的(memory-based)方法和基于模型的 (model-based)方法。基于内容过滤推荐算法通常存在无法灵 活结合多方面有用信息(例如用户兴趣等),而协同过滤算法 依赖于显式或隐式评分数据。推荐算法通常都面临着冷启动 (如何对新用户进行推荐和如何推荐新项目给用户)、数据稀 疏性、算法可扩展性等问题。比如在计算广告的冷启动推荐 领域,随着计算机的发展,百度,谷歌等大型公司会为具有一 定访问量的网站发布或展示与网站内容相关的广告网站流量 转换为收入。这种广告投放方式通常被称做定向广告联盟。 近些年来,定向广告联盟逐渐成为大型公司的重要收入来源 之一。2模型建立2.1矩阵分解

现实生活中的User-Item矩阵极大(User数量极大、Item数量极大),而用户的兴趣和消费能力有限,对单个用户来说 消费的物品,产生评分记录的物品是极少的。矩阵分解的核 心思想将稀疏且高维的User-Item评分矩阵分解为两个低

4结语

本文将模糊隶属度引入xgboost算法,通过对奇异点赋予 一个较小的隶属度来减小其对算法的影响,从而提升算法的 泛化能力和鲁棒性。在两个公开的银行信用数据集上的数值 试验表明:与其它银行信用评估算法相比较,模糊xgboost算 法在运算效率上优于其他算法模型,泛化能力和鲁棒性也更 加的强大。该算法可以考虑推广到回归等问题上。参考文献:[1]

估模型研究及实证分析[J].管理现代化,2014, 34 (6): 111-113..

[5] 余乐安,汪寿阳.基于核主元分析的带可变惩罚因子最小

二乘模糊支持向量机模型及其在信用冰分类中的应用[J].

系统科学与数学,2009, 29(1(0:1311-1326.[6]

郭英见,吴冲.基于信息融合的商业银行信用风险评估模 型研究[J].金融研究,2009(1):95-106.

[7] 杨海军,太雷.基于模糊支持向量机的上市公司财务困境

预测[J].管理科学学报,2009,12(3):102-110.

T, He T. Higgs boson discovery with boosted trees[C]/ 陈雷.国际信用卡欺诈与预防[J].中国信用卡,2004(6): [8] Chen /Cowan et al., editor, JMLR: Workshop and Conference Pro­43-47.

ceedings. 2015 (42).

用评分模型[J].统计与信息论坛,2011,26(2):27-31.

[2] 杨海江,魏秋萍,张景肖.基于改进的AdaBoost算法的信 [3]

广东工业大学,研究方吕锋,李翔,杜文霞.基于MultiBoost的集成支持向量机 作者简介:游德创(1992-),男,研究生,向:数据挖掘,机器学习。分类方法及其应用[J].控制与决策,2015(1):81-85.

[4] 萧超武,蔡文学,黄晓宇,等.基于随机森林的个人信用评

38

信息通信

维矩阵,即通过User、Item评分信息来学习到的用户特征矩 阵P和物品特征矩阵Q,通过重构的低维矩阵预测用户对 产品的评分。User-Item评分矩阵维度较高且极为稀疏,传 统的奇异值分解方法只能对稠密矩阵进行分解。因而,若采 用奇异值分解,需要填充User-Item评分矩阵,这样造成了 两个问题。

其一,填充大大增加了数据量,增加了算法复杂度。其二,简单粗暴的数据填充很容易造成数据失真。

这些问题导致了传统的SVD矩阵分解表现并不理想。 可以直接通过训练集中的观察值利用最小化RMSE学习用户 特征矩阵P和物品特征Q,并用通过一个正则化项来避免过 拟合。

矩阵分解算法(matrix factorization,简称MF)已逐渐应用于推荐系统,广告的特征维度通常达到千万级别,其中很 度的值都是〇,因此在冷启动推荐系统中应用矩阵分解算法的 尤为突出当今的推荐领域涉及的维度通常会达到千万级别, 以往的基于内容或内存的推荐,稀疏矩阵的维度会在千万级 别的基础上指数增长,复杂度过高;而基于模型的训练则难以 表达特征向量之间的相关性。

基本的矩阵分解方法通过学习用户和物品的特征向量 进行预测,即用户和物品的交互信息。用户的特征向量代表 了用户的兴趣,物品的特征向量代表了物品的特点,且每一 个维度相互对应,两个向量的内积表示用户对该物品的喜好 程度。但是我们观测到的评分数据大部分都是都是和用户 或物品无关的因素产生的效果,即有很大一部分因素是和用 户对物品的喜好无关而只取决于用户或物品本身特性的。 例如,对于乐观的用户来说,它的评分行为普遍偏高,而对 批判性用户来说,他的评分记录普遍偏低,即使他们对同一 物品的评分相同,但是他们对该物品的喜好程度却并不一 样。同理,对物品来说,以电影为例,受大众欢迎的电影得 到的评分普遍偏高,而一些烂片的评分普遍偏低,这些因素 都是于用户或产品的因素,而和用户对产品的的喜好无 关。

于用户或于物品的因素称为偏置(Bias)部分, 将用户和物品的交互即用户对物品的喜好部分称为个性化 部分。事实上,在矩阵分解模型中偏好部分对提高评分预测 准确率起的作用要大大高于个性化部分所起的作用,以Net- flix Prize推荐比赛数据集为例为例,Yehuda Koren仅使用 偏置部分可以将评分误差降低32%,而加入个性化部分能 降低42%,也就是说只有10%是个性化部分起到的作用,这 也充分说明了偏置部分所起的重要性,剩下的58%的误差 Yehuda Koren将称之为模型不可解释部分,包括数据噪音 等因素。

可简单表述为:如果用户A和用户B同时偏好商品X,那 么用户A和用户B对其他商品的偏好性有更大的几率相似。 这个假设反映在矩阵M上即是矩阵的低秩。极端情况之一是 若所有用户对不同商品的偏好保持一致,那么填充完的M每 行应两两相等,即秩为1。

所以这时我们可以对矩阵M进行低秩矩阵分解,用U*V 来逼近M,以用于填充一

对于用户数为m,商品数为n的

情况,M是m*n的矩阵,U是m*r,V是r*n,其中r是人工指

李楚桐等:基于协同过滤算法的推荐系统研究

定的参数。这里利用M的低秩性,以秩为r的矩阵M’=U*V 来近似M,用M1上的元素值来填充M上的缺失值,达到预测 效果。3数值试验

实验数据来自kddcuP2012中的数据集,由腾讯提供了该 数据集,包含149639105条提供的广告点击数据;此外,搜搜 还提供了一个广告描述文档,本文用该文档对广告进行矩阵 分解建模。实验分别从数据集中抽取不同比例作为训练数据 集,在数据稀疏程度不同时比较算法的效果。3.1基于矩阵分解的推荐算法试验

实验结果表明矩阵分解在准确率高达0.3、召回值为 0.821和AUC为0.852三项结果上比其它表现更好,说明矩阵 分解是一种较好的推荐算法。矩阵分解保留了原算法计算速 度快的优点,相比其它推荐算法,运算速度提高了一个数量级。

原因有两方面:

(1)

比较容易编程实现,随机梯度下降方法依次迭代即可

训练出模型。比较低的时间和空间复杂度,高维矩阵映射为 两个低维矩阵节省了存储空间,训练过程比较费时,但是可以 离线完成;评分预测一般在线计算,直接使用离线训练得到的 参数,可以实时推荐;

(2) 预测的精度比较高,预测准确率要高于基于领域的协 同过滤以及内容过滤等方法。4总结与展望

本文将矩阵分解引入推荐算法,通过对用户的特征向量 代表了用户的兴趣,物品的特征向量代表了物品的特点,且每 一个维度相互对应,两个向量的内积表示用户对该物品的喜 好程度。在公开的kddcup数据集上的数值试验表明:与其它 推荐算法相比较,矩阵分解算法在运算效率上优于其他算法 模型,泛化能力和鲁棒性也更加的强大。该算法可以考虑推 广到其他场景的间题上。参考文献:

[1] Belkin N, Croft B. Information filtering and information re­

trieval. Communications of the ACM, 1992,35(12):29-37. [doi: 10.1145/138859.138861],

[2] Balabanovic M, Shoham Y. Fab: Content-based collaborative

recommendation. Communications of the ACM, 1997,40(3): 66-72. [doi: 10.1145/245108.245124].

[3] Resnick P, Iacovou N, Suchak M, Bergstrom P, Riedl J. Gioupl-

ens: An open architecture for collaborative filtering of netnews. In:Proc. of the CSCW,94.1994. [doi: 10.1145/192844.192905],[4] Breese JS, Heckerman D, Kadie C. Empirical analysis of

predictive algorithms for collaborative filtering. In: Proc. of the Uncertainty in Artificial Intelligence (UAT 98). 1998.[5] Deshpande M, Karypis G. Item-Based top-N recommenda­

tion. ACM Trans, on Information Systems, 2004,22 (1): 143177.[doi: 10.1145/963770.963776].

作者简介:李楚桐(1992-),男,研究生,广东工业大学,数据挖 掘,机器学习。

39

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务