爱玩科技网
您的当前位置:首页一种基于社区专家信息的协同过滤推荐算法

一种基于社区专家信息的协同过滤推荐算法

来源:爱玩科技网
计算机研究与发展

Journal of Computer Research and Development

DOI:10. 7544/issnl000-1239. 2018. 20170253

55(5) : 968-976, 2018

一种基于社区专家信息的协同过滤推荐算法

张凯涵梁吉业赵兴旺王智强

(山西大学计算机与信息技术学院太原030006)

(计算智能与中文信息处理教育部重点实验室(山西大学)太原030006)(752750403@qq. com)

A Collaborative Filtering Recommendation Algorithm Based on Information of

Community Experts

ZhangKaihan,Liang Jiye,ZhaoXingwang,and WangZhiqiang

{School of Computer and Information Technology , Shanxi University, Taiyuan 030006)

(Key Laboratory of Computational Intelligence and Chinese Information Processing i Shanxi University ), Ministry of Education,Taiyuan 030006)

Abstract Collaborative filtering recommendation algorithm has been widely used because it is not limited by the knowledge in a specific domain and easy to implement. However, it is faced with the problem of several issues such as data sparsity, extensibility and cold start which affect the effectiveness of the recommendation algorithm in some practical application scenarios. To address the user cold start problem, by merging social trust information (i. e., trusted neighbors explicitlyspecified by users) and rating information,a collaborative filtering recommendation algorithm based on information of community experts is proposed in this paper. First of all, users are divided intodifferent communities based

on

their

social relations. Then,experts in

each community

according to some criteria. In addition,in order to alleviate the impact of the data sparsity,ratings ofanexpert’s trusted neighbors are merged to complement the ratings of the expert. Finally, theprediction for a given item is generated by aggregating the ratings of experts in the community of the target user. Experimental results based on two rea--world data sets FilmTrust and Epinions show the proposed algorithm is able to alleviate the user cold start problem and superior to other algorithms interms of MAE and RMSE.Key words recommendation system; collaborative filtering % cold start; community; expert information

摘要协同过滤推荐算法由于不受特定领域知识、简单易实现等优点,得到了广泛的应用.但是, 在实际应用中,该类算法往往面临着数据稀疏性、可扩展性、冷启动等问题.为了解决其中的用户冷启动 问题,将用户社交信息和评分信息进行融合,提出了一种基于社区专家信息的协同过滤推荐算法.首先, 依据用户的社交关系将用户划分为不同的社区;其次,根据一定的准则确定各个社区的专家,并利用社 交信息和评分信息对专家评分进行填充进而缓解稀疏性;最后,对冷启动用户根据其所属社区的专家信

收稿日 $ !017-04-11;修回日 $ :2017-08-09

基金项目:国家自然科学基金项目(61432011,U1435212,61603230);山西省自然科学基金项目(201601D202039)

This work was supported by the National Natural Science Foundation of China (61432011,U1435212, 61603230) and the Natural Science Foundation of Shanxi Province of China (201601D202039).

通信作者:梁吉业(ljy@sxu. edu. cn)

张凯涵等:一种基于社区专家信息的协同过滤推荐算法969

息进行预测评分.在数据集FilmTrust和Epinions上与已有协同过滤推荐算法进行了比较分析.实验 结果表明,提出的算法可以有效缓解协同过滤推荐算法中的用户冷启动问题,并在平均绝对误差和均方 根误差2个评价指标上优于已有算法.

关键词推荐系统;协同过滤;冷启动;社区;专家信息 中图法分类号TP311

近年来,为了提高推荐系统的准确性与多样性, 研究者针对不同问题提出了一系列推荐算法.其中, 协同过滤推荐算法由于不受特定领域知识、简 问题;Liu等人(11]利用社交信息改进传统协同过滤 推荐算法寻找最近邻的过程,从而缓解无法找到邻 居的问题;Jamaii等人(2]提出的TrustWalker方法 单易实现等优点,成为了应用最为广泛的算法之

一[

1].然而,在实际应用过程中,协同过滤推荐算法 面临着冷启动问题,对于没有或仅有少量评分信息 的新用户,在传统协同过滤推荐算法中无法利用评 分信息查找与其兴趣相似的用户.同理,对于新物品 也面临着相应问题.冷启动是协同过滤推荐算法中 被广泛关注的一个经典问题,冷启动问题的存在严 重影响了推荐系统的推荐质量()].例如在电子商务 系统中,存在着大量的新用户及新物品,如果推荐系 统不能为新用户提供高质量的推荐,将会逐渐失去 新用户的信任,从而丢失大量客源;而对于新物品,如果不能及时地将其推荐出去,将会降低这些商品 的销售量,使得商家损失经济利益,不利于电子商务 系统的长远健康发展.

统的协同过滤推荐算法

的.然而现实生活中,用户对一个物品的喜好不 仅由其自身决定,还受到身边朋友的影响[5'].随着 互联网技术的飞速发展,目前已有很多网站建立了

. 有研究

, 理

用户的社交关系,可以有效缓解冷启动问题,进而产 生更多有意义的推荐[81°].

社会化推荐算法在解决冷启动问题时不仅利用 了用户-物品评分信息,还结合了用户间的社交关系 信息.对于一个新用户,只要社会网络中存在与此用 户有直接或间接社交关系的用户,就可以根据这种 社交关系和已知用户的评分信息,对新用户产生推 荐.Massa等人(]基于信任的传播性提出一种新的 信任度指标MoleTrust,利用目标用户的信任用户 对其产生推荐缓解冷启动问题,但是该方法受信任 传播距离影响较大,不够稳定;Guo等人(1%]在传统 的协同过滤推荐算法中结

系,利用信任用户对各物品的评分补充并代表目标 用户对各物品的喜好,缓解数据的稀疏性和冷启动

把基于信任的方法与基于物品的推荐方法相结合, 有效地缓解了冷启动问题.

在上述融合用户社交信息缓解冷启动问题的研 究中,仅仅考虑了用户的行为受其信任用户行为的 影响.然而,在现实生活中,用户的行为决策往往受 到多种因素的影响,只考虑信任用户而忽略其他因 素会导致对用户行为的预测不够准确.尤其对于新 用户而言,往往更倾向于参考领域内专家用户的意 见,因为专家的意见更客观,在其特定领域内更具有 代性&

针对上述问题,本文提出了一种基于社区专家 信息的协同过滤推荐算法,旨在更好地解决协同过 滤推荐算法所面临的用户冷启动问题.通过社区划 分算法挖掘用户间存在的社区结构,进而在不同社 区内寻找代表性强的用户作为专家,并利用新用户 与专家在社交网络中的相似性代替传统协同过滤推 荐算法中基于评分信息计算的相似度.为了寻找专 家,本文提出从用户的评分信息及社交信息2方面 共同量化用户所具有的代表性,避免了仅利用评分 信息带来的局限性.另外,考虑到评分信息的高度稀 疏性,充分利用信任信息对专家评分进行填充,弥补 数据稀疏对算法性能的影响.最后,在数据集

FilmTrust和Epinions上进行了实验比较分析,结

果表明本文所提出的算法可以有效缓解用户冷启动 问题,并在平均绝对误差和均方根误差2个评价指 标上优于 有算法&

1相关研究

1.1

协同过滤推荐算法

协同过滤推荐算法由Goldberg等人[13]在1992

年提出,由于计算过程仅依赖于用户的历史行为,而 无需用户或物品的特征信息,简单高效的计算方法

970计算机研究与发展2018, 55(5)

使其得到广泛应用.在协同过滤推荐算法中,用户的 历史行为通常表示为用户-物品评分矩阵^„x„. U = {m$,2,…,wm}表东用户集合,J = *1

,…乂 }表

步骤1.利用式(1)计算目标用户*与其他用户 的相似性;

步骤2.对相似性计算结果按从大到小排序,选 取前^位用户作为目标用户*的邻居,构成相似邻 居集合NU„ %

步骤3.利用式(2)预测目标用户*对目标物品

s的评分R„.1.2

示物品集合,表示用户M对物品*的评分.

Breese等人[14]将协同过滤推荐算法分成基于

模型(model-based )和基于内存(memory-based )

2类.基于模型的协同过滤推荐算法首先根据训练

集数据采用概率统计模型或者机器学习方法建立模 型(比如潜在语义模型、贝叶斯模型、决策树模型、图 社会化推荐算法

自1997年社会化推荐系统被提出以来,社会化

模型等)进而通过模型预测目标用户对目标物品的 评分值[15].基于内存的协同过滤推荐算法根据推荐 目标不同又分为基于用户(user-based)和基于物品

(item-based)两种.本文算法是在基于用户的协同

过滤推荐算法框架下提出的,因此,以基于用户的协 同过滤推荐算法为 对推荐

&

在基于用户的协同过滤推荐算法中,需要首先 利用评分信息计算目标用户与其他用户之间的相似 性.用户间相似性的度量方法尤为重要,常见的相似 性度量方法包括皮尔逊相关性和余弦相似性,本文 采用皮尔逊相关性度量方式[1] !

\"

(R„ — R*) (Rm — Rv)sim(.u,v) = ------*--------------------------,I\" (Rm —R*)2 I\" (Rm — R„)2

(1)

其中,Sm(u,8)表东用户u和用户8之间的评分相 似性,1*8表示用户*和用户8共同评分过的物品集 合,R* / $8分别表示用户u和用户8的评分均值. 其次,按照相似性大小对其他用户进行排序,取前々 个相似用户作为目标用户的邻居.最后,利用邻居用 户对目标物品的评分来预测目标用户对目标物品的 评分:

\"

sim (*,8) (Rs — r8 )R s=R *G 8#N7^ ^------------()

8#NU*sim (.*,8),

其中,Rs表示用户*对物品s的预测评分值,N7„ 表示用户*的相似邻居集合.根据以上描述,基于用 户的协同过滤推荐算法描述如下:

算法1.基于用户的协同过滤推荐算法.

输人:用户-物品评分矩阵只m\\„、邻居个数K 目标用户*、目标物品S%

输出:预测评分值Rs.

推荐系统吸引了大量学者的关注,尤其近年来微博、 微信、等社交媒体的迅速发展,更促进了 学者们对社会化推荐算法的研究.文献[16 ]概括了 社会化推荐算法的狭义定义和广义定义,其中狭义 的社会化推荐是指任何将社交关系(例如信任关系、 朋友关系等)作为附加输人的推荐算法,而广义的社 会化推荐是指以社会媒体(例如物品、标签、社区等) 为推荐目标的推荐算法,利用的数据源也不仅是社 交信息,还包括各种可利用的社会化标签、用户间的 交互信息以及用户的点击行为等.目前,已有相关研 究利用用户间的社交信息提高推荐系统的性能,例 如 MoleTrust[9],TrustSVD[17],SoRec[18]等算法.

在社会化推荐算法中,除了利用传统协同过滤 推荐算法中的用户-物品评分矩阵只m\\„,还需利用 用户之间的社交信息.本文所利用的社交信息为用 户间的信任关系,通常使用矩阵Tm\\m表示.7*8=1 表示用户*对用户8具有信任关系,T*8 =0表示没 有关系.注意,信任关系为非对称关系,即用户*对

8有信任连边,但8对*可能并没有信任连边.社交

信息为推荐系统提供了一个新的信息源,为传统协 同过滤推荐算法因评分信息匮乏所产生的冷启动问 题提供了新的解决策略.

2基于社区专家信息的协同过滤推荐算法

通过上述分析,本文在基于用户的协同过滤推

荐算法框架下,将社交信息与专家信息融人推荐过 程中,利用填充的专家用户评分对新用户的评分进 行预测,从而缓解冷启动问题.下面将重点关注3个 问题!)如何利用社交信息与评分信息选择专家;

2)如何对专家评分进行填充;3)如何利用专家信息

对目标用户进行评分预测.表1列出了本文使用的 主要符号.图1为本文算法示意图.

张凯涵等:一种基于社区专家信息的协同过滤推荐算法971

Table 1 The Main Symbols Used in the Paper

表1本文用到的主要符号

Symbol

Description

user-item rating matrix

user-user trust relations matrix

RmAul3*8the rating of user u on item i

the predicted rating of user u on item ithe trust value of user u for user 8co-rated items of user u and user 8

sim(u,v)

the similarity between user u and user 8用户社区所包含的用户数量不一定相等,社区的划

了部

对于

的 对某类

2.2

对某类 的

量较大的社区,可理解为多数

的特

对某类

!m\\n

,而用户量较少的社区,反映了

区的基础上,需要根据一定

,构成该)

社区中专家的确定划

各社区内寻找具有代表性的

划分共

的准

区的专家集合B 区集

,E= {E\\E2,…?^ } 所有社区的专家集合,

$4the average rating of user uNUuthe set of similar users of user uTUu

the set of trusted neighbors of user uthe zth user community

C(u)the community that user u belongs tok

the number of similar users

Fig. 1

The diagram of the proposed algorithm

图1本文算法示意图

2.1用户社区划分为了

考虑目标用户所属领域内专家用户对 其行为

,首先根据用户的

信息

i

户划分为不同的社区.用C={Ci,C2,…,CJ表示 用户社区集合,其中C = uc uC,…,u' },uC表 示社区'中的第k位用户,ic %

区C中用

户的个数•本文采用 SLM(smart local moving)[19] 社区划分算法对用户进行划分.该算法通过最大化 模块度来

区质量的 所需要的较少,E 有数

点和亿万条

中 •通过

区的划分得到多个社区集合,各个

其中] *1,ef,…

% }(g]1,2,…,))表 tk 社

区Cg中的专家集合,共|E& |位专家•

为了度量 区中各 所具有的代表

性,以此

该 能够成为专家.本文

丨从

系和

的评分信息出发,定义了可信度、权威性

评分多样性3个指标,对用

为专家的 能性 行评 •定义1@

信度.可信度反映用户被其他用

所信 的 度 通过 信 中 度 的 大 来

衡量.用户u的可信度

Bu =0Cu,

\")

max

其中,‘表示用户u的入度表示u所属社区

C(u)中所有

度的最大值.

定义2@ 性.权威性反映用户的活跃程

度,通过 评分数量的多少来刻画.评分数量越

多,说

系统中越活跃,相对于评分数量少的

其在评分预测时更具有参考 ,因此权威性

更高.用户u的权威性

其中,N(u)&1表示用户u对物品的评分数量.

定义3@

评分多样性.评分多样性:用户

对不同物品所具有评分值的差异性.用户对不同物 品应具有不同的评 ,如果用户对所有物品的评

分值都一样,则不能体现对各

度.因此

通过评分方差来度量 u的评分多样性,表7K为

JM = e—士,

\")

其中 8u u 对 评

的方 •因此,社区内

为专家的可能性为Reputationiu) = 3

'@u

) •

(6)

根据此值从大到小的顺序对社区内每个用户所 具有的代表性进行

各社区中的专家,每个

计算机研究与发展2018, 55(5)

社区中专家所占比例定义为y,则对于第g个社区 来说,专家比例表示为

最后,结合社区C(u)内专家与用户u的相似度 以及对物品i的评分值进行加权求和,得到最终的 预测结果:

\"

Ri =

Salton (u , e')R2--------------,

〉;Salton (u,e)(3)

2.3专家评分的填充

2. 2节通过对用户代表性的量化找到可以代表

各社区的专家用户,考虑到用户-物品评分信息的高 度稀疏性,因此本节提出利用专家用户的信任用户 的评分信息对专家评分进行填充,缓解专家评分的 稀疏问题.专家e的信任用户集表示为

其中,E«u)表示用户u所属社区C(u)的专家集合. 2.5基于社区专家信息的协同过滤推荐算法

基于以上对算法各个主要阶段的介绍,本文提 TNe = {v\\T8'\",v#U'}.

(8)

由于本文所利用的社交关系为用户信任关系, 只用数值0 /1表示,因此本文将设置\"=0,即专家 ,显性声明具有信任关系的用户视为,的信任 用户.

对专家e的评分信息进行填充时,欲填充的候 选物品集应是,的信任用户产生过评分,而,没有 评分的物品,因此填充时的候选物品集表示为

I, = {t| )t#J7 ,\\Ut*TNA&#},

\")

其中,1表示专家e未产生过评分的物品集,认表 示对物品2有过评分的用户集合.

为了控制算法的复杂度及精度,本文在对专家

e的评分进行填充时,候选物品集只考虑至少被e

的5个信任用户所评分过的物品,即#=5 (参数#的 选取在3. 3. 2节说明).

最后,对候选物品集中的物品使用下式填充专 家e的评分值:

\"

T evR „L ^—

\"0)

v#TNe

其中R„表示专家e对物品2的填充评分值.

因此,专家e对物品2的评分值为

Ri

lR2,i#Ie.R2,others.

(11)

2.4预测评分

在新用户M所属的社区C(M)中利用专家信息 预测M对目标物品i的评分.

首先,利用Salton指标(0)在社交网络中计算目 标用户与专家之间的相似性!

Salton(u,e)= \\r(u)*r(e)A,

\".)

槡 k*ke

其中,r(u)/r\")分别表示信任网络中用户u和专 家e所信任的用户集合,k* /ke分别表示用户u / 专家e的出度.

出的算法描述如下:

算法2.基于社区专家信息的协同过滤推荐算法.输人:用户-物品评分矩阵^„Xn、用户社交关系 矩

、专家数量占比y、目标用户u、目标物品

i、参数#;

输出:预测评分值Ri.步骤1.对社交关系r利用slm

算法将用户

划分为不同社区.

步骤2.利用式(3)#(6)计算各社区内每个用 户的代表性,由大到小对用户代表性排序,前

y|C(u)|位用户选为社区专家.

步骤/.结合专家的信任用户,根据式(9)选择 待填充评分的候选物品集,利用式(0 )填充专家对 候选物品集中各物品的评分.

步骤)利用式(12)计算u与各专家之间的相 似度,最后根据式(13)预测评分R„.

3实验及结果分析

为验证本文所提算法的有效性,在真实数据集

FilmTmst / Epinions上进行了实验,并与其他推

荐算法进行比较,最后通过实验分析本文所提算法 中参数的选取对实验性能的影响.实验环境为!GB 内存、Intel® Core™2 Quad 处理器、2. 66 GHz,

Windows'操作系统.

3.1数据集

由于本文所提算法需要运用到用户的社交信 息,因此选择常用数据集FilmTrust / Epinions.这

2个数据集不仅具有用户-物品的评分信息,还具有

社交网络中用户之间的信任关系信息.

数据集F'ilmTrust包含了 1 508 位用户对 2 071 部电影的35 497条评分信息,以及1 2位用户间 1 853条信任关系.信任关系表示了用户对其他用户 是否产生信任,如果一个用户信任另一用户,在数据

张凯涵等:一种基于社区专家信息的协同过滤推荐算法973

集中用1表示,否则用〇表示.其中评分值在0.5# ■4之间.

数据集Epinions的评分信息表示了用户对电 影、图书以及汽车等物品的评分,用数值1 #5表示,

该数据集中包含了 40 163位用户对139 738个物品 的6 824条评分数据.此外,还包含了 487 183条 用户之间的信任关系.表2统计了这2个数据集的 相关信息.

Table 2 The Specifications of Two Data Sets

表2 2个数据集统计信息

Rating Information

Data Set

-% Users

FilmTrustEpinions

150840 163

% Items2 071139 738

% Ratings35 4976824

Density/%1.14 !0. 011 8

% Users12492

% Edges1853487 183

Social Information

3.2评价指标

本文在衡量推荐性能时,为体现预测评分的准 确度,采用了推荐系统中广泛使用的平均绝对误差 (meanabsolute error,MAE)和均方根误差(root

mean squared error,_RMS£)两个评价指标.这 2 个

义的相似性度量方法,由目标用户的信任用户与评 分相似度最大的用户共同构成近邻用户,预测评分 时与传统的基于用户的协同过滤推荐算法相同.

5)

过滤推荐算法(a collaborative filtering recommenda­

tion algorithm basedon informationof community experts without filling ratings,CECF)•该算法与

未填充专家评分的基于社区专家信息的协

评价指标的值越小表示预测效果越好.

MAE可表示为

MAE =

,eS,1 R2#Ret其中,Res |表示测试集中的评分数量.

RMSE可表示为

|, (4)

本文2. 5节所提算法区别在于不考虑2. 3节对专家 评分的填充,仅利用原有专家评分对目标用户进行 预测&

6) 基于

区专家信息的协同过滤推荐算法

RMSE = \" A

槡 Rtest 丨 R„eRtest

3.3实验设置

— Rm) . (15)

(a collaborative filtering recommendation algorithm based on information of community experts,CEFCF).

本文2. 5节所提算法,其中专家评分依据2. 3节所 述进行填充.

本文分别针对冷启动用户和全部用户(包含非 冷启动用户和冷启动用户)进行实验.在全部用户的 5份,每次取其中1份作为测试集,剩余4份作为训 练集,最终结果为5次实验结果的平均值.文献中通 常将数据集中评分数量小于5的用户视为冷启动用 数据集FilmTrust和Epinions中分别选取部分用 户,并将他们的部分评分信息隐藏,使每个用户的评 分数量低于5,将其作为冷启动用户进行分析.

本实验

度计算方法均

度&

UCF算法、ICF算法与CNCF算法中邻居数量均设

为了验证本文所提算法对评分预测性能的提升 以及对冷启动问题的处理效果,在MAE RMSE指 标上对以下算法进行比较:

1)

collaborative filtering,UCF).基于预先定义的相似

基于用户的协同过滤推荐算法(user-based 验中采用五折交叉验证方法,实将数据集随机分为

性度量方法以及用户的邻居数量,通过用户邻居的 评分信息对目标用户进行预测.

2)

collaborative filtering,ICF).基于预先定义的相似

基于物品的协同过滤推荐算法(item-based 0户(].为了模拟对冷启动用户的评分预测实验,从

性度量方法以及物品的邻居数量,结合物品邻居的 评分信息预测目标评分.

3) MoleTrust J9].用户之间的信任关系在信 任网络中以距离z进行传播,只有被目标用户所信 任的用户才会被考虑参与到评分预测.

4)

(combine neighbors and friends collaborative filtering, CNCF)(1].利用评分信息与社交信息,根据预先定

置为30. MoleTrust算法中信任的传播距离分别采

CEFCF算法中专家占比采用0. 2,实验结果如表3#6

,2, 3,表示为 MT-1,MT-2, MT-3. CECF 和 融合相似用户与朋友的协同过滤推荐算法用 1

所&

974计算机研究与发展2018, 55(5)

Table 3 The Predictive Performance for All Users on the FilmTrust Data Set

表3数据集FilmTrust上对全部用户的预测性能

CriteriaMAERMSE

UCF0.732 10. 937 1

ICF0. 832 01.08

MT-10.87961.163 1

MT-20. 823 51.0771

MT-30.78361.023 6

CNCF0. 732 10. 940 1

CECF0. 779 21.0403

CEFCF0.71520.9310

Table 4 The Predictive Performance for Cold Users on the FilmTrust Data Set

表4数据集FilmTrust上对冷启动用户的预测性能

CriteriaMAERMSE

UCF0. 702 80. 9124

ICF0.84511.0807

MT-10. 81431.0666

MT-20.781.039 7

MT-30.76911. 024 6

CNCF0. 71980. 934 6

CECF0. 670 30. 962 8

CEFCF0.0 80.845 0

Table 5 The Predictive Performance for All Users on the Epinions Data Set

表5数据集Epinions上对全部用户的预测性能

CriteriaMAERMSE

UCF1. 079 21. 436 0

ICF1. 010 61. 335 9

MT-10.873 31. 262 9

MT-20. 923 81. 272 7

MT-30.90671.236 3

CNCF0. 972 81.3039

CECF0. 91041. 260 2

CEFCF0.87671. 172 2

Table 6 The Predictive Performance for Cold Users on the Epinions Data Set

表6数据集Epinions上对冷启动用户的预测性能

CriteriaMAERMSE

UCF1. 12601.4717

ICF1. 034 71.3730

MT-10. 91401. 326 3

MT-20. 929 51.299 7

MT-30. 91551. 270 2

CNCF1. 11681. 462 8

CECF0. 91591. 268 5

CEFCF0.88171. 174 0

从实验结果看出:在评分信息相对稠密的小规 模数据集FilmTrust上,传统的UCF算法表现仍较 为可观,然而该数据集 上,基于 说明信任信息的 法所 部

量相对较少,因此传统

ICF算法表现一般.在稀疏的大规模数据集Epinions

动用户的预测问题.如实验结果所示,引入专家信息 的CECF算法和填充专家评分的CEFCF算法在2 数据集的 说明专家的 性能.而对专家评

上均具有良好的推荐性能,

确实能够提升系统对新

的预测

行过填充的CEFCF算法较

的推荐算法具有更好的推荐效果,确实

协同过滤推荐算

未填充的CECF算法更优,说明本文对专家评分的 填充确实进一步弥补了稀疏性问题对系统的 对冷启动用户的预测也更加准确.3. 3. 1

专家比例7的选取对算法性能的影响图2为数据集FilmTrust和Epinions上社区内

的稀疏性问题.本文所提出的基于社区专预测中MAE指标表现欠优,但

RMSE对冷启

家信息的CEFCF算法虽然在数据集Epinions的全 指标上均胜过了其他算法,而本文也更

(a) FilmTrust(b) Epinions

Fig. 2 The effect of 7 on the system performance

图2专家比例7对算法性能的影响

张凯涵等:一种基于社区专家信息的协同过滤推荐算法975

专家比例7对CEFCF算法冷启动用户评分预测性 能的

.如图2所示,专家比例对规模较大的数据

,并且在7=0. C处逐渐趋于不错

,随着7的增长,当

.随着专家数量

集Epinions影响很小,随着比例逐渐增大,MAE与 只MSE仅有小幅 处推荐性能 的增加,起初 一定比 稳定.而对于小规模数据集FilmTrust,在y=0. 2

7=0. C时,推荐性能甚至有所

和Epinions上算法预测性能随^的变化,图3(c)为

2个数据集上^对算法

耗的 .实验中计

算了专家评分填充 荐所消耗的 在0=5处

填充的专家评

.在数据集FilmTrust上,如图3 趋于平稳,由于数据集FilmTrust很

消耗趋近于0,并不明显.

过程

(a)所示,随着^的增长,算法预测性能小幅提升后

小,因此在图3\")中 能只 中,算法的

更多的专家信息预测目标评

量 为专家,因在数据集Epinions上,图3(b)显示&对算法预测性

弱影响.但是据图3(c),在0

耗成倍增长,并且0,3后,由于填

分,所以推荐性能有一定提升.但是当专家数量达到

,由于过多 此不会再

高质量的预测

,甚至

规模数

据集中 推荐质量

.因此本文算法中专家比

为 0.2.3. 3. 2

参数^的选取对算法性能的影响3为参数^对算法预测性能

耗的影

响.其中图3(a) (b# 数据集FilmTrust

充评分量的增多

算法因机器内存原因运行受

限.因此为了在算法预测性能与 耗之间寻求

折中,本文设置0=5.

4总 结

本文提出基于社区专家信息的协同过滤推荐算 法,首先依据社交信息 划分为不同社区,在各

社区内 考虑

的评分信息和 信息,进而 选取代表性强的

作为专家.通过对专家评分的

填充更有 了评分稀疏性的 .利用各社

区的专家对新用户产生推荐,有效缓解了传统协同

过滤推荐算法所

问题.本文所提算法只考虑了 的 信息,在未来的研究中,将从多个角度 考虑

、物品的属性等信息,寻 推荐系统中

问题更好的

方法.

参考文献

[1]

AdomaviciusG,Tuzhilin A. Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions []. IEEE Trans on Knowledge and Data Engineering,2005,17(6): 734-749

(]

Pereira A L V, Hruschka E R. Simultaneous co-clustering and learning to address the cold start problem in recomm­ender systems (]. Knowledge-Based Systems, 2015, 82: 11-19

[3]

Wang Zhiqiang, Liang Jiye, Li Ru, et al. An approach to cold-start link prediction: Establishing connections between non-topological and topological information []. IEEE Trans on Knowledge and Data Engineering,2016,28(11): 2857­2870

[4]

Li Xin, Liu Guiquan, Li Lin, et al. Circle-based and social connection embedded recommendation in LBSN []. Journal of Computer Research and Development,2017,54(2): 394­404 (in Chinese)

976

(李鑫,刘贵全,李琳,等.LBSN上基于兴趣圈中社会关系

[15]

计算机研究与发展2018, 55(5)

Park D H, Kim H K, Choi I Y, et al. A literature review and classification, of recommender systems research []. Expert Systems with Applications, 2012, 39 (11): 10059­10072

[16]

Tang Jiliang, HuXia, Liu Huan.. Social recommendation. : A review [J]. Social Network Analysis and Mining, 2013, 3 (4): 1113-1133

[17]

Collaborative

social

Guo Guibing,

Zhang Jie,

Smith NY.

TrustSVD:

挖掘的推荐算法计算机研究与发展,2017, 54 (2):

394-404)

[5]

Meng Xiangwu, Liu Shudong, Zhang Yujie, et al. Research on. social recommender systems (]. Journal of Software, 2015, 26(6): 1356-^1372 (inChinese)

(孟祥武,刘树栋,张玉洁,等.社会化推荐系统研究软

件学报,2015, 26(6): 1356-1372)

[6]

Guo Lanjie, Liang Jiye, Zhao Xingwang.

Collaborative filtering with both the explicit and implicit influence of user trust and of item ratings [C] //Proc of the filtering recommendation, algorithm incorporating

network information. []. Pattern Recognition, and Artificial Intelligence, 2016, 29(3):

281-288 (in. Chinese)(郭兰杰,梁吉业,赵兴旺.融合社交网络信息的协同过滤推

荐算法(].模式识别与人工智能,2016, 29(3): 281-288)

[7] Guo Hongyi, Liu Gongshen., Su Bo, et al. Collaborative

filtering recommendation, algorithm combining community structure and interest clusters (]. Journal of Computer Research and Development, 2016,53 (8): 16-1672 (in Chinese)

(郭弘毅,刘功申,苏波,等.融合社区结构和兴趣聚类的协

同过滤推荐算法(].计算机研究与发展,2016, 53 (8):

16-1672)

[8] Yang Bo, Lei Yu, Liu Jiming, et al. Social collaborative

filtering by trust [J]. IEEE Trans on. Pattern. Analysis and Machine Intelligence, 2017, 39(8): 1633-17

(]

Massa P, Avesani P. Trust-aware recommender systems [C] //Proc of the 2007 ACM Conf on. Recommender Systems. New York: ACM, 2007: 17-24

[10] Guo Guibing, Zhang Jie, Thalmarni D. Merging trust in.

collaborative filtering to alleviate data sparsity and cold start [].Knowledge-Based Systems, 2014, 57: 57-68

[11]

Liu Fengkun., Lee HJ. Use of social network information, to enhance collaborative filtering performance []. Expert

Systemswith Applications, 2010, 37(7): 4772-4778

[12]

JamaiiM, Ester M. TrustWalker : A random walk model for combining trust-based and item-based recommendation. [C] / Proc of the 15th ACM SIGKDD Int Conf on. Knowledge Discovery and Data Mining. New York: ACM, 2009: 397­406

[13]

Goldberg D, Nichols D, Oki B M, et al. Using collaborative filtering

to

weave

an.

information.

tapestry

[].Communications of the ACM, 1992, 35(12): 61-70

[14]

Breese J S, Heckerman. D, Kadie C. Empirical analysis of predictive algorithms for collaborative filtering [C] //Proc of the 14th Conf on. Uncertainty in. Artificial Intelligence. San Francisco: Morgan. Kaufmann., 1998: 43-52

29th AAAI Conf on. Artificial Intelligence. Menlo Park,CA: AAAI, 2015: 123-129

[18] Ma Hao, Yang Haixuan., Lyu MR, et al. SoRec: Social

recommendation, using probabilistic matrix factorization. [C] //Proc of the 17th ACM Conf on. Information, and Knowledge Management. New York: ACM, 2008: 931-940

[19]

Waltman. L, Eck NJV. A smart local moving algorithm for large-scale modularity-based community detection. []. The European. Physical Journal B, 2013, 86(11): 1-14

[20]

Gerard S, Michael J M. Introduction, to Modern. Information. Retrieval [M]. Auckland: MuGraw-Hill, 1983

Zhang Kaihan,

born in 1994. PhD

candidate. Student member of CCF. Her 息

main research interests include data mining and machine learning.

Liang Jiye,

born in 1962. Professor and

PhD supervisor. Distinguished member of CCF. His main research interests include granular computing, data mining and

machine learning.

Zhao Xingwang,

born in 1984. PhD

candidate. Member of CCF. His main

research interests include data mining and machine learning (zhaoxw84@163. com).

Wang Zhiqiang,

born in 1987. PhD

candidate. Member of CCF. His main

research interests include social network analysis and machine learning (zhiq. wang @163. com)

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