基于项目评分预测的协同过滤推荐算法_邓爱林 (1)
智能推荐系统
超群.com fuchaoqun@gmail.com
推荐系统
• 介绍:
–
• 关键字:
recommender system、collaborative filtering、关联 规则、协同过滤、SVD、KNN....
Amazon
豆瓣
新浪音乐
推荐系统常用算法
• 关联规则 • Slope one • SVD
• 示例:Python + Orange
Slope One
Slope One
用户
对歌曲A打分
对歌曲B打分
张三
4
5
李四
2
4
王五
3
?
Simper Could Be Better
• 2005年由Daniel Lemire提出
• 加权平均:
P (B ) m (R A r A B ) n (R C r C B ) m n
最后,用户向量 × 音乐向量 = 用户对此音乐的打分。
基于SVD推荐系统
以音乐为例: ①获得用户对音乐的打分数据矩阵R,假设有m个用户,n首歌曲,对原始数据作一些预处理 ②对矩阵R进行SVD分解,选择合适的K值,获得U、S、V三个矩阵 ③获得S矩阵的平方根sqrt(S),U * sqrt(S)作为用户矩阵,sqrt(S) * V.T作为歌曲矩阵 ④a.预测用户i对歌曲j的打分:pi,j = 用户i向量 * 音乐j向量; b.最近邻,knn
协同过滤推荐算法研究分析
第37卷 第6期 福 建 电 脑 Vol. 37 No.6
2021年6月
Journal of Fujian Computer
Jun. 2021
———————————————
褚宏林,男,1995年生,主要研究领域为推荐算法、并行计算。E-mail:*****************。
协同过滤推荐算法研究分析
褚宏林
(烟台大学计算机与控制工程学院 山东 烟台 264005)
摘 要 为了了解基于用户和项目的两种协同过滤推荐算法的各自优势和适用场景,以及如何克服这两种算法当前存在的问题,本文对协同过滤推荐算法展开了研究。本文主要通过对比的方法,对基于用户和基于项目的协同过滤推荐算法进行研究。首先,介绍了两种协同过滤算法的基本原理。其次,阐述协同过滤推荐算法的相似度计算方法和评价指标。接着,分析了当前协同过滤推荐算法的优势和适用场景。最后,提出了当前协同过滤算法存在的局限性。通过对协同过滤推荐算法的研究,本文从用户和项目维度的角度出发,分析确定了一种区分协同过滤推荐算法适用场景的方法,并针对算法当前存在的局限性,提供了解决的办法。
关键词 协同过滤;推荐系统;评价指标
中图法分类号 TP391.3 DOI:10.16707/ki.fjpc.2021.06.015
Research and Analysis of Collaborative Filtering Recommendation Algorithm
CHU Honglin
(School of Computer and Control Engineering, Yantai University, Yantai, China, 264005)
基于评分支持度的最近邻协同过滤推荐算法
d i1 . 9 9 ji n 1 0 — 6 5 2 1 .5 0 2 o:0 36 /.s .0 1 3 9 . 0 2 0 . 3 s
Colb r tv le ig r c mme d to loih b s d o l o aie f trn e o a i n ain ag rt m a e n n ae tn ih oh o n aig s p ot e r s— eg b r o d a d r t u p r n
a mp o e o lb r t ef tr gr c mme d t n ag r h f r h e r s n i h o sb s d o a ig s p o t i t n t e b — n i rv d c l o a i l i o a v i en e n ai lo i m e n a e t eg b r a e n r t u p r.F r a o t ot n so h
i fu nc ih so h ih rs t ft e a tv e n h ci e ie ,a d o t i d t e fna e o n e eweg t ft e neg bo es o h c ie us ra d t e a tv tm l n b ane h i lr c mme ain r s hs nd t e u . o Th x rme t lr s lss w ha o a e t h t rr c mme ai n ag rt ms,t lo ih c n ef ciey a od t e e e pe i n a e u t ho t tc mp r d wi t e ohe e o h nd to lo ih heag rtm a fe t l v i h v
基于协同过滤的推荐算法研究进展
基于协同过滤的推荐算法研究进展
近年来,随着互联网技术的发展,推荐系统已逐渐成为人们在
网络购物、社交、搜索等方面日常生活中不可或缺的部分。其中,基于协同过滤的推荐算法已被广泛应用。本文将从算法原理、应
用场景和优化方向三个方面介绍基于协同过滤的推荐算法研究进展。
一、算法原理
协同过滤推荐算法基于用户行为数据(如关注、购买、评价等)进行推荐。该算法大致可分为两类:基于用户的协同过滤和基于
物品的协同过滤。前者是将用户与用户之间的相似性进行计算并
进行推荐,后者是将物品与物品之间的相似性进行计算并进行推荐。
基于用户的协同过滤,需要先确定用户之间的相似度。常使用
的相似度计算方法包括欧几里得距离、皮尔逊相关系数和余弦相
似度等。以余弦相似度为例,可以通过以下公式计算:
$$
similarity=\frac{\sum_{i=1}^{n}A_i\times
B_i}{\sqrt{\sum_{i=1}^{n}A_i^2}\times\sqrt{\sum_{i=1}^{n}B_i^2}} $$
其中$A_i$和$B_i$分别表示两个用户共同评价的物品的评分。
基于物品的协同过滤,需要先确定物品之间的相似度。常使用的相似度计算方法同样包括欧几里得距离、皮尔逊相关系数和余弦相似度等。以余弦相似度为例,可以通过以下公式计算:$$
similarity=\frac{\sum_{i=1}^{n}A_i\times
B_i}{\sqrt{\sum_{i=1}^{n}A_i^2}\times\sqrt{\sum_{i=1}^{n}B_i^2}} $$
基于项目分类和用户群体兴趣的协同过滤算法
基于项⽬分类和⽤户群体兴趣的协同过滤算法
Computer Engineering and Applications 计算机⼯程与应⽤
2015,51(10)1引⾔随着互联⽹和电⼦商务系统的迅猛发展,如何解决“信息超载[1]”问题已经成为了当前学术界的研究热点,⽽个性化推荐系统(Personal Recommender System )成为了解决这⼀问题最有效的技术之⼀[1~2]。其中,协同过滤是个性化推荐系统中应⽤最为⼴泛并且最为成功的推荐技术[3~6]。传统的协同过滤算法主要可以分为基于⽤户和基于项⽬两种。其中,基于⽤户的协同过滤算法先通过计算⽤户间的评分相似性以获得与⽬标⽤户最相似的⽤户集,然后利⽤这些最近邻居对⽬标⽤户的未评分项⽬进⾏预测,进⽽向⽬标⽤户推荐其最感兴趣的⼀组项⽬。然⽽,由于⽤户数量及商品数量不断增⼤,传统协
同过滤算法中普遍存在的数据稀疏性、冷启动和可扩展性等问题越来越严重[7]。因此,针对这些问题,许多研究者提出了很多新的⽅法对推荐效率进⾏改进。⽂献[8]利⽤评分数据的稀疏性情况,提出了⼀种动态计算相似性的⽅法。⽂献[9]从项⽬的相似性度量⽅法、项⽬的最近邻选择等多个⽅⾯对算法进⾏了研究和优化,有效
缓解了数据稀疏性问题。⽂献[10]结合了⾮固定K 近邻算法与条件概率,利⽤分步填充矩阵的思想有效提⾼了推荐质量。⽂献[11]根据共同评分次数动态调节相似度的值,并根据评分⽀持度⾃适应地调节影响推荐结果的权重,获得了更好的推荐效果。基于项⽬分类和⽤户群体兴趣的协同过滤算法
基于协同过滤的个性化推荐算法研究
基于协同过滤的个性化推荐算法研究
随着互联网的快速发展,人们面临的信息爆炸问题日益严重。在这个信息时代,如何从海量的信息中找到自己感兴趣的内容成为了一个挑战。个性化推荐算法应运而生,它能够根据用户的兴趣和偏好,为其提供个性化的推荐服务。其中,基于协同过滤的个性化推荐算法被广泛应用于电商、社交网络等领域。
协同过滤是一种基于用户行为的推荐算法,它通过分析用户的历史行为数据,
来预测用户可能感兴趣的物品。协同过滤算法主要分为基于用户的协同过滤和基于物品的协同过滤两种方式。
基于用户的协同过滤算法是通过计算用户之间的相似度来进行推荐的。首先,
需要构建用户-物品的评分矩阵,矩阵中的每个元素表示用户对物品的评分。然后,通过计算用户之间的相似度,找到与目标用户最相似的一组用户。最后,根据这组用户的评分数据,预测目标用户对未评分物品的喜好程度。基于用户的协同过滤算法简单直观,但是在用户数较多时计算量较大。
基于物品的协同过滤算法则是通过计算物品之间的相似度来进行推荐的。与基
于用户的协同过滤算法不同,基于物品的协同过滤算法不需要计算用户之间的相似度,而是直接计算物品之间的相似度。首先,需要构建物品-用户的评分矩阵,矩
阵中的每个元素表示用户对物品的评分。然后,通过计算物品之间的相似度,找到与目标物品最相似的一组物品。最后,根据目标用户对这组物品的评分数据,预测目标用户对未评分物品的喜好程度。与基于用户的协同过滤算法相比,基于物品的协同过滤算法在计算量上更加高效。
然而,基于协同过滤的个性化推荐算法也存在一些问题。首先,存在冷启动问题。当一个新用户或者一个新物品加入系统时,由于缺乏足够的历史数据,无法准确预测其喜好。其次,存在数据稀疏性问题。由于用户行为数据的获得成本较高,很多用户只对少部分物品进行评分,导致评分矩阵稀疏。这会影响推荐算法的准确
一种优化的基于项目评分预测的协同过滤推荐算法
文献 标志码 :A
文 章编号 :1 0 一 6 5 2 0 )9 2 5 —3 0 l3 9 (0 8 0 — 6 8 0
Op i z d c la o aie fl rn e o t mie olb r t i e ig rc mme d t n ag rtm v t n ai lo i o h
Ab t a t sr c :B n lzn h n c u a y o e i lrt a d n w i m rc mme d t n i r s n olb r t ef tr g ag — y a a y ig t e ia c r c f t m smi i y n e e e o i a t n a i n p e e t l oa i l i lo o c a v i en r h a e n i m r t g p e it n u d rd t s a st c n i o t i p p r p o o e n o t z d c l b rt e f tr g i m b s d o t a i r d ci n e aa p ri o dt n,h s a e r p s d a p i e ol oai l i t e n o y i mi a v i en
第 2 第 9期 5卷
20 0 8年 9月
计 算 机 应 用 研 究
Ap l a in Re e r h o o u e s p i t s a c f C mp t r c o
基于项目分类的协同过滤改进算法
另一 方面 , 随着用户数 目和商 品数 量 的不 断增加 , 同过 协 滤算法 的数据稀疏 性问题及其 带来 的用户 相似性 度量不 准确 问题也越来越 突出 , 这直 接导致 了系统 的推荐 质量迅 速下 降。
1 传 统 的协 同过滤 算法
传统 的协 同过 滤算 法 一般 分 为 三个 步 骤 : ) 据 表 述。 a数 通常是获得一个 m× n的用户一项 目评分矩 阵 , m行代 表用户
针对数据稀疏性 问题 , 高系统 推荐效 率 , 究者 们提 出了基 提 研
于项 目L~j 包 括 填 充 均 值 和 评 分 预 测 ’ 、 于 用 47 ( ) 基 户 、 结合用户和项 目 ”・ “ 、 ,j基于 聚类 。 ]基 于维度 , 、 ” 化简 等多种协 同过 滤推荐算 法 。同时 , 为提 高 系统 的相似
相似度 。 1 1 传 统 相 似 性 度 量 方 法 .
I 指标 法” 基于权重的相似性 等计算 方法也 陆续被提 出。 、 另外 , 利用修正的条件概率方 法计算 项 目相 似性 ; 采用基 于 用户兴趣度 的相 似性 计算 方法 ; 于项 目类 别 的相 似性 方 基
法 和结合共 同邻居及用户评分 的相 似性度量 方法也 被研 究者们提 出以改进 相似度计 算的准确性 。
类 。当类 内项 目相似度与类间项 目相似度相 同时 , 往往类 内商 品的相似 性会 更高。基于此 , 文提出在类 内计算项 目的相似 本 度并得 到项 目的最近项 目邻居 , 然后对未评分项 目进行 预测填 充 。详 细步骤见算法 1 。
基于智能算法的协同过滤推荐模型研究
基于智能算法的协同过滤推荐模型研究
随着互联网技术的不断发展,海量的信息数据汹涌而至,为人们的生活带来了
极大便利的同时,也给人们带来了信息过载的问题。如何快速、准确、个性化地获取用户需要的信息,成为了当下信息科技领域的重要课题之一。在此背景下,个性化推荐技术被广泛应用于电商、社交、新闻资讯等领域。其中,基于智能算法的协同过滤推荐模型,是目前应用广泛的一种推荐算法。
协同过滤推荐算法是通过分析用户的历史行为数据(如浏览商品、点赞、评分等),结合相似性度量和推荐规则,挖掘出用户的偏好和需求,进行个性化的推荐。其优势在于不需要过多的先验知识和领域专家的介入,直接从用户行为数据中进行建模,具有较强的自适应性和泛化性。
而智能算法,作为现代信息技术的核心之一,是指利用机器学习、深度学习、
自然语言处理等技术,对海量数据信息进行分析和挖掘。智能算法在协同过滤推荐算法中的应用,进一步提高了算法的推荐效果。如今,基于智能算法的协同过滤推荐模型已成为推荐系统领域的研究热点之一。
一、协同过滤推荐算法
协同过滤推荐算法是推荐系统中应用广泛的一种算法。它基于用户历史行为数据,比较用户之间的相似性,通过发现用户之间的行为联系和兴趣相似性,推荐目标用户可能感兴趣的项目。协同过滤推荐算法主要分为两种类型:基于用户的协同过滤推荐算法和基于物品的协同过滤推荐算法。
基于用户的协同过滤推荐算法,是通过分析用户之间的共同点和相似性,选取
相似用户的偏好来给目标用户进行推荐。例如,当用户A与用户B在历史行为数
据中有较多相同的元素,且他们之间的相似度较高时,我们就可以通过用户B的
智能推荐系统常用算法介绍
SVD
相似性度量方法
coபைடு நூலகம்(i , j )
R1,i R1, j R2,i R2, j Rm,i Rm, j R1,i R2,i Rm,i R1, j R2, j Rm, j
智能推荐系统常用算法
recommender system、collaborative filtering、关联 规则、协同过滤、SVD、KNN....
Amazon
豆瓣
新浪音乐
推荐系统常用算法
• 关联规则
• Slope one • SVD
关联规则
沃尔玛的啤酒和尿布
TID 1 2 3 4 5 项集 面包、牛奶 面包、尿布、啤酒、鸡蛋 尿布、啤酒、可乐 面包、牛奶、尿布、啤酒 面包、牛奶、尿布、可乐 项集 啤酒、尿布 面包、牛奶 啤酒、面包 尿布、牛奶 啤酒、牛奶 3 3 2 2 1 计数
2 2 2 2 2 2
基于项目评分预测的协同过滤推荐算法(邓爱林,朱扬勇,施伯乐)
问题
cos(i , j ) R1,i R1, j R2,i R2, j Rm,i Rm, j R1,i R2,i Rm,i R1, j R2, j Rm, j
基于辅助项目评分的协同过滤推荐算法
收 稿 日期 :0 0— 9—1 . 21 0 6
作 者 简 介 : 旭 东 ( 96一 ) 男 , 东 龙 口人 , 台 职业 学 院信 息 工 程 系讲 师 . 刘 17 , 山 烟 基 金 项 目 : 家科 技 支撑 计 划 基 金 资 助 项 目( 0 8 A 2 B 3 ; 国 2 0 B H 1 0 ) 山东 省 教 育 厅 职成 教 育 科 研 “ 一 五 ” 划 基 金 资 助 项 目 (00 cl4 十 规 2 1z 0 ) j
和服 务 , 而可 有 效 地 解 决 “ 从 信息 过 载 ” “ 息 和 信 迷失 ” 带来 的种种 问题 … 。 协 同过 滤 推 荐 算 法 是 当前 最 成 功 的 推 荐 技
算 法与协 同过 滤 算 法 的组 合 运 用 , 提 高推 荐 系 来
统 的性能 和推荐 质 量 。这 些解 决方 案通过 实验验 证 和部分 网站 的应用 都获 得 了 良好 的效果 。但是 由于这部 分解决 方 案 技 术 能级 较 高 , 建 系 统难 构
和 当当网上 书店 等 , 不 同程 度 地 使 用 了 各种 形 都 式 的推 荐系统 。
随着 电子商 务个 性化 推荐 系统 的广泛 应用 与
认 作稀 疏性 问题 的特 例 , 初 始信 息 录 入 后 可通 在
过 评分 预测 环节 加 以 改善 , 投 入 到传 统 的 U e 再 sr
基于协同过滤算法的推荐系统设计与实现
基于协同过滤算法的推荐系统设计与实
现
推荐系统在现代互联网平台中起着至关重要的作用,它能够根据用户的个性化需求和兴趣,为用户提供个性化的推荐信息。在推荐系统的设计与实现中,协同过滤算法是一种常用的方法,它能够根据用户的历史行为和与其他用户的相似度,推荐给用户可能感兴趣的内容。本文将针对基于协同过滤算法的推荐系统设计与实现进行详细介绍。
首先,我们需要收集用户的历史行为数据,包括用户的点击、浏览、购买等行为。这些行为数据能够反映用户的兴趣和偏好,作为推荐系统的输入。为了保护用户隐私,我们需要对用户的个人信息进行匿名化处理,并确保存储和传输过程中的安全性。
接下来,我们需要对用户之间的相似度进行计算。常见的计算相似度的方法有基于用户的协同过滤和基于物品的协同过滤。基于用户的协同过滤算法通过比较用户之间的历史行为,计算用户之间的相似度,从而推荐给用户和他们相似的用户喜欢的内容。而基于物品的协同过滤算法则通过分析用户对不同物品的评分或者行为,计算物品之间的相似度,从而推荐给用户和他们喜欢的物品相似的其他物品。
为了提高推荐的准确性和多样性,我们还可以引入其他因素,如时间衰减因子、用户活跃度等。时间衰减因子可以根据用户的历史行为发生的时间,给予不同的权重,以便更加准确地反映用户的实时兴趣。而用户活跃度可以反映用户对推荐结果的反馈程度,我们可以根据用户的点击、购买等行为对用户的活跃度进行评估,从而调整推荐结果的权重。
在实际推荐过程中,我们可以采用两种主要的推荐方式,即基于用户的推荐和基于物品的推荐。基于用户的推荐方法是根据用户的相似度,将他们喜欢的物品推荐给其他用户。而基于物品的推荐方法则是根据物品之间的相似度来推荐给用户可能感兴趣的物品。这两种推荐方法各有优劣,具体选择哪种方法取决于实际的需求和应用场景。
基于RBFN一项目聚类的协同过滤推荐算法研究
L U Yu e g,HE C a g h n I fn hnze g
( uiesSho, i unU i rt,C e gu6 06 C ia B s s col Sc a nv s y hnd 104, hn ) n h ei
A src :T esasyo i i ninl a a r esnt rdc ercmm n u i f oaoai h・ b tat h pri f g d t h h mes a d t i am j ao uet eo edqa t o l b r v f e o as or oe h l y cl t ei
() 1
12 基 于项 目聚 类 .
聚类技 术经 常 同协 同过 滤 推荐 算 法 组 合 一 起 使 用,即形成基于聚类 的协 同过滤推荐算法。遇有高 维聚类 协 同过 滤推 荐 算 法是 在 整 个 数 据集 中搜 索 目 标对象的最近邻居 ,因此计算量会是 巨大的。通过 聚类 技术 ,将最 近邻 居 的搜 索 范 围 缩 小 到 与 目标 对 象相 似性程 度 最 高 的几 个 聚 类 ,可 以 有 效减 少 计 算 量 ,从 而 提高 推荐 算 法 的响 应 速度 。在 大 量基 于 聚 类 的协 同过滤 推 荐算 法 研 究 文 献 中 ,也 证 明 了在 推 荐 之前首 先开 始聚类 有益 于提 高聚类 质量 l儿 l 。
基于项目聚类和评分预测的协同过滤推荐算法研究
基于项目聚类和评分预测的协同过滤推荐算法研究[摘要] 协同过滤算法是目前个性化推荐系统中应用最成功的推荐算法之
一。目前协同过滤构建的用户-项目矩阵,一般是按用户对所有项目的评分构建,却没有考虑项目之间的分类情况,导致寻找的邻居集合可能不是最近邻居集合。针对此问题,本文提出基于项目聚类和评分预测的协同过滤推荐算法,该算法首先按商品聚类,将大矩阵按聚类的商品来进行子矩阵的计算,在子矩阵里进行兴趣度的测量,最后将在所有区域相似用户的推荐项目合并,成为该用户的最后推荐结果。实验证明新算法能够提高协同过滤推荐系统的推荐质量。
[关键词] 聚类;协同过滤;邻居用户
1引言
个性化推荐系统中应用最成功的算法之一是最近邻居协同过滤算法。协同过滤算法主要有基于用户的和基于项目的两种算法[1]。其基本思想是:通过计算目标用户与各个基本用户对项目评分之间的相似性,搜索目标用户的最近邻居,然后由最近邻居的评分数据向目标用户产生推荐,即目标用户对未评分项目的评分可以通过最近邻居对该项目评分的加权平均值进行逼近,从而产生推荐[2]。
目前协同过滤构建的用户-项目矩阵,一般是按用户对所有项目的评分构建,却没有考虑项目之间的分类情况,导致寻找的邻居集合可能不是最近邻居集合。针对此问题,本文提出了基于项目聚类和评分预测的协同过滤推荐算法,该算法首先按商品聚类,将大矩阵按聚类的商品来进行子矩阵的计算,在子矩阵里进行兴趣度的测量,最后将在所有区域相似用户的推荐项目合并,成为该用户的最后推荐结果。利用实验数据集对传统算法和本文提出的基于聚类和项目预测的协同过滤算法的精确度进行了比较。
一种改进的基于项目聚类的协同过滤推荐算法
一种改进的基于项目聚类的协同过滤推荐算法摘要根据2010年7月 15日,中国互联网络信息中心(cnnic)在京发布的《第26次中国互联网络发展状况统计报告》[1]显示,截至2010年6 月底,我国网民规模达4.2亿人,互联网普及率持续上升增至31.8%。网络的信息超载现象已日趋严重促使了信息过滤技术的快速发展。个性化推荐系统作为信息过滤中一种重要的应用方式,目前已经成为各大主流网站不可缺少的新一代个性化信息服务形式。
关键词项目聚类;协同过滤;推荐算法
中图分类号tp31 文献标识码a 文章编号 1674-6708(2011)34-0205-02
0 引言
根据2010年7月 15日,中国互联网络信息中心(cnnic)在京发布的《第26次中国互联网络发展状况统计报告》[1]显示,截至2010年6 月底,我国网民规模达4.2亿人,互联网普及率持续上升增至31.8%。网络的信息超载现象已日趋严重促使了信息过滤技术的快速发展。个性化推荐系统作为信息过滤中一种重要的应用方式,目前已经成为各大主流网站不可缺少的新一代个性化信息服务形式。
协同过滤技术作为个性化推荐技术的主流技术,具有较高的学术价值并被广大电子商务网站所应用。它的基本思想[2]是:通过
对用户的显式输入或隐式输入的历史数据收集并统计计算,预测与此用户兴趣相似的用户,并将其相似用户感兴趣的项目推荐给此用户。根据所使用事物的关联性分为:基于用户(user-based)的协同过滤推荐算法和基于项目(item-based)的协同过滤推荐算法。协同过滤推荐一般可划分为三步:1)数据表示;2)近邻集合的查找;3)推荐生成。
$基于组合相似度的优化协同过滤算法-录用版
中图分类号
文献标识码
An Optimized Collaborative Filtering Algorithm Based on Combined Similarity
Zha jiu1 Li Zhenbo2 Xu Guiqiong3
(School of Management, Shanghai University, Shanghai 200444, China) Abstract Collaborative filtering is one of the most widely used in the personalized recommendation system. With the increase in the number of users and items, the data sparsity becomes the important factor which affects the quality of the personalized recommendation. For this purpose, six types of combined similarities are presented, which are based on two traditional metrics and structure similarity metrics such as Jaccard, Salton and IUF coefficients. The experimental results show that the proposed algorithm based on combined similarity can efficiently improve recommendation quality in MAE, RMSE, recall, coverage and precision. Keywords Recommender Systems Collaborative Filtering Combined similarity
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
度量用户间相似性的方法有多种, 主要包括如下 3 种方法[6] :余弦相似性、相关相似性以及修正的余弦相 似性. • 余弦相似性 (cosine):用户评分被看做是 n 维项目空间上的向量,如果用户对项目没有进行评分,则将用户 对该项目的评分设为 0, 用户间的相似性通过向量间的余弦夹角度量.设用户 i 和用户 j 在 n 维项目空间上的评 r r 分分别表示为向量 i , j ,则用户 i 和用户 j 之间的相似性 sim(i,j)为 rr r r i.j sim (i, j ) = cos(i , j ) = r r . i j 分子为两个用户评分向量的内积,分母为两个用户向量模的乘积. • 相关相似性(correlation):设经用户 i 和用户 j 共同评分的项目集合用 Iij 表示, 则用户 i 和用户 j 之间的相 似性 sim(i,j)通过 Pearson 相关系数度量: sim (i, j ) =
1000-9825/2003/14(09)1621
©2003 Journal of Software
软 件 学 报
Vol.14, No.9
基于项目评分预测的协同过滤推荐算法
邓爱林 1,2+, 朱扬勇 1, 施伯乐 1
1 2
∗
(复旦大学 计算机与信息技术系,上海 200433) (上海电信技术研究院,上海 200122)
A Collaborative Filtering Recommendation Algorithm Based on Item Rating Prediction
DENG Ai-Lin1,2+,
1
ZHU Yang-Yong1,
SHI Bai-Le1
(Department of Computer and Information Technology, Fudan University, Shanghai 200433, China) (Shanghai Telecom Technology Research Institute, Shanghai 200122, China)
Biblioteka Baidu
1 相关工作
为了产生精确的推荐, 保证推荐系统的实时性要求, 研究者提出了各种不同的推荐算法 ,如协同过滤推荐系 统、基于项目的协同过滤推荐、 Bayesian 网络技术、聚类技术、关联规则技术以及基于图的 Horting 图技 术等. Typestry[2]是最早提出来的基于协同过滤的推荐系统, 目标用户需要明确指出与自己行为比较类似的其他 用户.GroupLens [3] 是基于用户评分的自动化协同过滤推荐系统,用于推荐电影和新闻.Ringo 推荐系统[4] 和 Video 推荐系统 [5]通过电子邮件的方式分别推荐音乐和电影.Breese[1]等人对各种协同过滤推荐算法及其改进进行了 深入分析. 传统的协同过滤推荐通过用户的最近邻居产生最终的推荐, 基于项目的协同过滤推荐首先计算项目之间 的相关性,然后通过用户对相关项目的评分预测用户对未评分项目的评分[6]. Bayesian 网络技术利用训练集创建相应的模型 [7],模型用决策树表示,节点和边表示用户信息.训练得到的 模型非常小,所以对模型的应用非常快.这种方法适合于用户的兴趣爱好变化比较慢的场合. 聚类技术将具有相似兴趣爱好的用户分配到相同的簇中[8,9] ,聚类产生之后, 根据簇中其他用户对商品的评 价预测目标用户对该商品的评价.由于聚类过程离线进行,所以在线的推荐算法产生推荐的速度比较快. 关联规则技术在零售业得到了广泛的应用,关联规则挖掘可以发现不同商品在销售过程中的相关性. 基于 关联规则的推荐算法根据生成的关联规则模型和用户当前的购买行为向用户产生推荐[10]. 关联规则模型的生 成可以离线进行,因此可以保证有效地推荐系统的实时性要求. Horting 图技术是一种基于图的方法[11] ,节点代表用户, 边代表两个用户之间的相似度 .在图中搜索近邻节 点, 然后综合近邻节点的评分形成最后的推荐.Horting 图技术可以跳过中间节点寻找最近邻居, 考虑了节点之 间的传递相似关系.因此,推荐精度优于最近邻协同过滤技术. 针对数据的极端稀疏性问题, 文献 [12]提出通过奇异值分解 (SVD)减少项目空间的维数,使得用户在降维后 的项目空间上对每一个项目均有评分, 实验结果表明 ,这种方法可以有效地解决同义词 (synonymy) 问题 ,显著地 提高推荐系统的伸缩能力. 但降维会导致信息损失 , 降维效果与数据集密切相关 , 在项目空间维数很高的情况 下,降维的效果难以保证[13].
邓爱林 等:基于项目评分预测的协同过滤推荐算法
1623
2 传统的相似性度量方法及其分析
协同过滤推荐根据其他用户的观点产生对目标用户的推荐列表, 它基于这样一个假设[1] :如果用户对一些 项目的评分比较相似, 则他们对其他项目的评分也比较相似. 协同过滤推荐系统使用统计技术搜索目标用户的 若干最近邻居,然后根据最近邻居对项目的评分预测目标用户对项目的评分,产生对应的推荐列表. 为了找到目标用户的最近邻居,必须度量用户之间的相似性, 然后选择相似性最高的若干用户作为目标用 户的最近邻居.目标用户的最近邻居查询是否准确, 直接关系到整个推荐系统的推荐质量.准确查询目标用户的 最近邻居是整个协同过滤推荐成功的关键. 用户评分数据可以用一个 m×n 阶矩阵 A(m,n )表示,m 行代表 m 个用户,n 列代表 n 个项目,第 i 行第 j 列的 元素 Ri,j 代表用户 i 对项目 j 的评分.用户评分数据矩阵如图 1 所示. 度量用户 i 和用户 j 之间相似性的方法是,首先得到经用户 i 和用户 j 评分的所有项目, 然后通过不同的相 似性度量方法计算用户 i 和用户 j 之间的相似性,记为 sim(i,j).
1622
Journal of Software
软件学报
2003,14(9)
传统相似性度量方法存在的问题,显著地提高推荐系统的推荐质量. 关键词: 电子商务;推荐系统;协同过滤;项目相似性;推荐算法;平均绝对偏差 中图法分类号: TP391 文献标识码: A
随着互联网的普及和电子商务的发展,推荐系统逐渐成为电子商务 IT 技术的一个重要研究内容,越来越多 地得到研究者的关注. 目前, 几乎所有大型的电子商务系统,如 Amazon,CDNOW, eBay,当当网上书店等, 都不同程 度地使用了各种形式的推荐系统. 最近邻协同过滤推荐是当前最成功的推荐技术 [1], 其基本思想就是基于评分相似的最近邻居的评分数据 向目标用户产生推荐 .由于最近邻居对项目 ( 电子商务中的商品、电影、音乐等 )的评分与目标用户非常相似, 因此目标用户对未评分项目的评分可以通过最近邻居对该项目评分的加权平均值逼近. 随着电子商务系统规模的进一步扩大, 用户数目和项目数据急剧增加,导致用户评分数据的极端稀疏性[1], 在用户评分数据极端稀疏的情况下, 传统相似性度量方法均存在各自的弊端, 使得计算得到的目标用户的最近 邻居不准确, 推荐系统的推荐质量急剧下降.针对用户评分数据的极端稀疏性, 本文提出了一种基于项目评分预 测的最近邻协同过滤推荐算法, 通过计算项目之间的相似性, 初步预测用户对未评分项目的评分, 然后采用一种 新颖的相似性度量方法计算用户的最近邻居. 实验结果表明, 本方法可以有效地解决用户评分数据极端稀疏情 况下传统相似性度量方法存在的不足,显著地提高推荐系统的推荐质量.
2
+ Corresponding author: Phn: 86-21-58755256, E-mail: dal5758@sina.com; dal5758@etang.com http://dmgroup.org.cn
Received 2002-08-08; Accepted 2002-09-30 Deng AL, Zhu YY, Shi BL. A collaborative filtering recommendation algorithm based on item rating prediction. Journal of Software, 2003,14(9):1621~1628. http://www.jos.org.cn/1000-9825/14/1621.htm Abstract: Recommendation system is one of the most important technologies in E-commerce. With the
User1 … Userj … Userm Item1 R1,1 … Rj,1 … / … … … … … … Itemk R1,k … / … Rm, k … … … … … … Itemn / … Rj, n … Rm, n
Fig.1 图1 2.1 传统的相似性度量方法
User rating data matrix 用户评分数据矩阵
∗ Supported by the National High Technology Development 863 Program of China under Grant Nos.863-317-01-04-99, 863-306-
ZT06-07-02 ( 国家高科技发展计划(863)) 第一作者简介: 邓爱林(1975 -),男,湖北黄冈人,博士,工程师,主要研究领域为数据库,知识库.
development of E-commerce, the magnitudes of users and commodities grow rapidly, resulted in the extreme sparsity of user rating data. Traditional similarity measure methods work poor in this situation, make the quality of recommendation system decreased dramatically. To address this issue a novel collaborative filtering algorithm based on item rating prediction is proposed. This method predicts item ratings that users have not rated by the similarity of items, then uses a new similarity measure to find the target users’ neighbors. The experimental results show that this method can efficiently improve the extreme sparsity of user rating data, and provid better recommendation results than traditional collaborative filtering algorithms. Key words : E-commerce; recommendation system; collaborative filtering; item similarity; recommendation algorithm; MAE (mean absolute error) 摘 要: 推荐系统是电子商务系统中最重要的技术之一. 随着电子商务系统用户数目和商品数目的日益增加, 在整个商品空间上用户评分数据极端稀疏 ,传统的相似性度量方法均存在各自的弊端, 导致推荐系统的推荐质 量急剧下降 .针对用户评分数据极端稀疏情况下传统相似性度量方法的不足 ,提出了一种基于项目评分预测的 协同过滤推荐算法,根据项目之间的相似性初步预测用户对未评分项目的评分, 在此基础上, 采用一种新颖的相 似性度量方法计算目标用户的最近邻居. 实验结果表明, 该算法可以有效地解决用户评分数据极端稀疏情况下