正在加载图片...
第3期 王媛媛,等:基于人口统计学的改进聚类模型协同过滤算法 65 2.3HAP用户聚类算法 线服务网站epinions.com上的49290个用户、139783个物 HAP聚类方法主要是分层获取数据集的聚类中心。首品、664824个评分以及487181个朋友关系数据 先在各个数据子集中分别执行AP聚类,得到子集的聚类中 Movielens数据集由美国 Minnesota大学计算机科学与 心后再对子集的聚类中心执行聚类,最终得到原数据集的聚工程学院Grouplens项目组收集Movielens网站(http:// 类中心;然后以各聚类中心为初始类,将数据元素重新划分至 movielens, umn.edu/)上大量用户的电影评分得到,评分等 与其相似度最大的聚类中心所在的类最终实现聚类。级为1-5,5表示最喜欢,1表示最不喜欢,用户通过评分 对于任意用户属性i计算其他用户对其的吸引度r(x,)的数值表达了自己的兴趣爱好,数据集下载地址:htp:/ 和归属度a(i,j)。HAP算法的核心是r(i,j)和a(i,j)两个 ww. grouplens.org/node/73。本实验中选取了 Movielens 值的不断更新,公式为 (M), Movielens(100k)以及 MovieLens+3个不同规模的 e_a(i,)=m(0,,)+.,mx,k,),()数据集作为实验数据,其中Myd(1MD包含了1mlon r(i,j)=s(i,j)-maxla(i, k)+s(i, k)) tings from 6000 users on 4000 movies: MovieLens (100k)a 基于人口统计学数据的用户聚类 A 100000 ratings from 1000 users on 1700 movies: Movie 在基于人口统计学数据计算用户相似度值的基础上,使Lems+包含了8598 ratings from2113 users on10197mo 用分层近邻传播聚类算法对用户进行聚类。结果显示,同类 用户比异类用户之间的属性更接近。 3.2实验计算框架 1)输入用户集U与用户相似度矩阵D 本文实验采用目前流行的大数据计算框架 MapReduce, 2)根据21节中的公式计算相似度,并从相似度矩阵中该框架可以实现对大型数据矩阵进行快速计算,也为个性化 求出最大相似度 x(sim(u, D) (10)推荐系统提供计算支持。实验中在服务器上搭建3台虚拟 机,第一台虚拟机用作 NameNode节点,第二台虚拟机用作 其中,和v为任意用户集中的任意两个对象 SecondNameNode节点,第三台虚拟机用作 JobTracker节点 3)若任意两个用户对象u和v的sim值相同,则将两个3台虚拟机同时也是 Data Node节点,模拟 Hadoop集群的负 用户对象划分为同类,再使用2.3节中的方法进行用户聚类 执行上述步骤,直到聚类数量达到实际应用系统的要求 载均衡环境。实验采用 MapReduce和Java代码实现 3.3推荐实验结果对比 再进行预测结果推荐。 2.5预测推荐 实验中选用NDCG2( Normalized Discounted Cumula 经过基于人口统计数据的相似度计算以及分层近邻传播 tive gain)排名和ER43( Expected Reciprocal Rank)作为 用户聚类系统根据式(7)预测某类用户对项目的评分并按分评价指标。训练数据集随机选择60%和80%两种比例,项目 值排序推荐给指定用户。 特征维度D取8和16两种维度。为了比较所提出的DCCF ∑.sin(p,q)r 方法的性能,选用WRMF, BPRME2, Weighted BPRMF pred(p, i) (11)(WBPMF)[28, Soft Margin Ranking MF (SMRMF)(29)CK Quadratic Matrix Factorization(QMF)5种方法做比较,同时 3实验结果与分析 i F Matrix Factorization(MF)(3o, Biased Matrix Factoriza- 3.1实验数据集 tion( Biased mr)3作为基准线 选取 epinions, Movielen(1M), Movielen(100k)以及 从图1-图4、表1-表4中可以看出,本文提出的DCCF velen+4个真实数据集进行实验。 方法在NDCG和ERR两种评价指标中排序准确率均较高, Epinions数据集(htp://ww.epinions.com)包含了在取得了较好的结果。 Hm1m富 (epinions, train=0. 60, D=8 (b)epinions, train=0. 60, D=16 M ESe NDCG5 NDOG10 NDCI DCOln NDX2 ERRS ERRI ER (e)epinions, train=0, 80, D=8 (epinions, train=0. 80, D=16 图1 Epinions数据集比较结果第 3期 王媛嫒 ,等 :基于人 口统计学 的改进聚类模型协 同过滤算法 65 2.3 HAP用户聚类算法 HAP聚类方 法主要 是分 层获取 数据 集 的聚类 中心 。首 先在各个数据子集 中分别 执行 AP 聚类 ,得 到子集 的 聚类 中 心后再 对子集 的聚类 中心 执行聚类 ,最终得 到原数据 集的 聚 类 中心 ;然后 以各聚类 中心为初始类 ,将 数据元素重新划分至 与其相似度最大 的聚类 中心所 在的类 ,最终 实现 聚类 l2 。 对于任意用户属性 ,计算其他用户对其 的吸引度 r(i,) 和归属度 a(i,)。HAP 算法 的核心 是 r(i,)和 “(i,)两个 值 的不断更新 ,公式为 : r(i,)一s(i,)一max{a(i,)+ (i,是)) (8) ≠j a(i,)=min(0,r(j,)+ ∑ max(0,r(k,J))),≠ (9) 2.4 基于人 口统计学数据的用户聚类 在基 于人 口统计 学数据计 算用 户相似度 值 的基 础上 ,使 用分层 近邻传播 聚类 算法 对用户进 行 聚类 。结 果显 示 ,同类 用户 比异类用户 之间的属性更 接近 。 1)输入用户集 U 与用 户相 似度 矩阵 D。 2)根据 2.1节 中的公 式计 算相似度 ,并从 相似 度矩 阵 中 求 出最 大相似度 : 5‰ 一 max(sire(U, )) (10) 其 中,U和 为任意用户集中的任意两个对象 。 3)若任意两个用 户对象 U和 的 sim 值相 同,则将 两个 用户对象划分为同类 ,再使用 2.3节中的方法进行用户聚类。 执行上述步骤 ,直到聚类数量达到实 际应用 系统 的要 求 , 再进行预测结果 推荐 。 2.5 预测推荐 经过基于人 口统计数据 的相似度计算 以及分层近邻传播 用户聚类 ,系统根据式(7)预测某类用户对项 目的评 分并 按分 值排序推荐给指定用户 。 一 sim(p,q)rq, pred(p)=口∈ neighl_(户) 丽 (11) 3 实验 结 果与分 析 3.1 实验 数据集 选 取 Epinions,MovieLen(1M ),MovieLen(100k) 以 及 MovieLen+ 4个 真实数据集进行 实验 。 Epinions数据集 (http:// epinions.corn)包 含 了在 ( l a)epin i ions,tr l ain蓬= 0l.6蠢0,Di=8 l ( lc) 蠢epinilons,triain蠢=Oi.80,Dl=8 l 线服务 网 站 epinions.corn 上 的 49290个 用 户 、139783个 物 品、664824个评分 以及 487181个朋友关系数据 。 MovieLens数据集由美 国 Minnesota大学计算机科学与 工程学 院 GroupLens项 目组 收 集 MovieLens网站 (http:// movielens.unln.edu/)上 大量 用户 的 电影 评 分 得 到 ,评 分 等 级 为 1—5,5表示 最 喜欢 ,1表示 最 不 喜欢 ,用 户通 过 评 分 的数值 表达 了 自己 的兴 趣 爱 好 ,数 据 集 下 载 地址 :http:// grouplens.org/node/73。本 实验 中选 取 了 MovieLens (1M),MovieLens(1OOk)以及 MovieLens+ 3个不 同规模 的 数据集作 为实验数据 ,其 中 MovieLens(1M)包含 了 1million ratingsfrom 6000userson4000movies;MovieLens(100k)包 含 了 100000ratingsfrom 1000userson 1700movies;Movie Lens+包含 了 855598ratingsfrom 2113userson10197mo￾V les 。 3.2 实验计算框架 本 文实验采用 目前流行 的大数据计 算框架 MapReduce, 该框 架可 以实现对大型数据 矩阵进行快速 计算 ,也 为个性化 推荐 系统提 供计 算支持 。实验 中在 服务 器上搭 建 3台 虚拟 机 ,第一 台虚拟 机用 作 NameNode节点 ,第 二 台虚 拟机用 作 SeeondNameNode节点 ,第三 台虚拟机用 作 JobTracker节点 ; 3台虚拟机 同时也 是 DataNode节 点 ,模 拟 Hadoop集群 的负 载均衡环境 。实验采用 MapReduee和 Java代码 实现。 3.3 推荐实验结果对 比 实 验 中选 用 )C 船](NormalizedDiscountedCumula￾tiveGain)排名 和 ERR[24253(ExpectedReciprocalRank)作 为 评价指标 。训练数据集随机选择 6O 和 80 两种 比例 ,项 目 特征维度 D取 8和 16两种维度 。为了 比较 所提 出的 I)(二CF 方法 的性能 ,选用 WRM ],BPRM~。 ,WeightedBPRMF (WBPMF)[0 ,SoftMarginRankingMF (SMRMF) 以 及 QuadraticMatrixFaetorization(QMF)5种方法做 比较 ,同时 选 用 MatrixFaetorization(MF) ,BiasedMatrixFaetoriza— tion(BiasedMF)[“]作为基准线 。 从 图 1一图 4、表 1一表 4中可以看出 ,本文提出的 DCCF 方法在 NDCG和 ER 两种评 价指 标 中排序准 确率 均较 高 , 取得 了较好 的结果 。 iil耋~I,Htl i蠢落l蠢ili 图 1 Epinions数据集 比较结果 ~ ■鼹 赫 耩 嚣一 ~ ■ 绻黟 ~霸 .一 ~ ■耩 鞋 鹱 翁■ ~ —雅 霉 必 —■
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有