正在加载图片...
·182· 智能系统学报 第16卷 联邦协同过滤冷启动算法的主要步骤包括: 对于测试集里的每个用户,都保留其最新一 1)基于安全内积算法,A、B端根据式(1)、 条评分信息进行验证。由于在评价过程中对每个 (2)在本地分别计算C(1≤i≤m),C(m+1≤i≤m): 用户都进行排序比较耗时,所以本位采用了常用 2)第3方T随机产生2个随机向量x、y以及 的策略Bs3,即对于每个用户随机抽取30个没有 一个随机数r,且令z=<xy>-r,将(x,)传给A, 评分的物品,并且对其评分预测排序。在此设定 y,传给B: 推荐个数为10,将该30个物品与最新评分物品 3)A将C:+x(1≤i≤m)传给B;B将C-y 的预测评分进行排序,若最新评分物品排在前 (m+1≤j≤m)传给A; l0则视为击中。评估指标采用命中率(hit ratio, 4)A分别计算ra(i,)=<C,Cj-y>-(1≤i≤, HR)B以及归一化折现累计增益(normalized dis m+1≤j≤m)传输给T;同理B相应计算rs(位,》传 counted cumulative gain,NDCG)来判断排序列表 输给T: 的性能。HR直观地衡量测试物品是否在前10, 5)T计算sim=ra位,)+rs位,),并构建相应 而NDCG根据击中的位置进行评估。 的相似矩阵W(由sim,元素构成)分发给A、B 4.2数据集 双方; 本文实验采用GroupLens提供的网络开源数 6)B根据W相似矩阵以及本地用户 据集MovieLens1M为例,整个数据集包括了6040 u∈[1,]对物品je[m+1,m的评分信息,由式 个电影用户对3706部电影的1000209条评分, (3)对pred,ue[l,],ie[l,m]进行预测,并对预测 评分范围为1~5。由于本文针对基于物品协同过 结果进行排序,最终将预测值最高的前N个物品 滤的冷启动问题,因此只取数据集中的用户一电 D发送给A,完成用户冷启动推荐过程。 影评分集作为实验数据。 由图3中可看出,每一方并不能直接收到对 该评分数据集均对用户及电影进行了D处 方的原始评分,且由于增加了随机项,不能从中 理,因此在进行计算过程中用户ID及电影D不 间结果进行对原数据的反推,因此达到了隐私保 视为隐私数据。同时有较多数的电影只被极少 护的作用。 数的用户进行评分,该部分电影对新用户的推荐 4实验与结果 起较少的作用,因此将用户评分率低于10%的电 影进行删除,处理后的用户-电影数据维度为 4.1度量标准 6040498. 本文采用Top-N推荐,采用2种不同的评估 为了衡量冷启动推荐的效果,将用户分割为 方法进行模型评价。 2部分,新老用户比例为2:8,在新用户与老用户 1)阈值击中评价 中的数据进行了纵向分割,随机分成A、B2个部 推荐评估指标采用精确率Precision、查全率 分,并且通过改变A、B的分配比例P∈(0.1,0.9)进 Recall以及F1-score. 行多组实验。评估时,将A中已有的新用户评分 行为与相应的推荐作比较。 4.3验证 Precision 第1个实验是通过变化A、B间分配比例P 的取值来观察当联合多方数据训练模型时,取何 ∑Rn 值效果会比较理想。第2个实验中,将该算法和 一个基于物品平均评分的无偏差推荐基线算法进 Recall o 行评估指标的比较。 1)不同B机构比例的实验结果 u=1 F-score=2precisionx recall 令P代表B数据量在总数据量中的占比,当 precision+recall P越大时,代表B所拥有的信息越多。由于在实 式中:R.是B方基于相似矩阵以及用户W的评分 际场景中,两方机构所含有的物品特征不全是一 信息进行对A方的推荐列表:T.是新用户“对于 致的,A可能会与规模较大的机构合作,也可能 A中物品的非空且评分大于阈值c的用户行为 会与规模较小的机构合作。 列表。 从表1中可以看出当B的占比越大,无论阈 2)留一法(leave-one-out)评价 值c取3或4(当用户评分>=阈值时,才算击中),联邦协同过滤冷启动算法的主要步骤包括: Ci(1 ⩽ i ⩽ m ′ ) Cj(m ′ +1 ⩽ i ⩽ m) 1) 基于安全内积算法,A、B 端根据式 (1)、 (2) 在本地分别计算 , ; x y r z =< x, y > −r (x,r) (y,z) 2) 第 3 方 T 随机产生 2 个随机向量 、 以及 一个随机数 ,且令 ,将 传给 A, 传给 B; Ci + x(1 ⩽ i ⩽ m ′ ) Cj − y (m ′ +1 ⩽ j ⩽ m) 3) A 将 传 给 B; B 将 传给 A; rA (i, j) =< Ci ,Cj − y > −r(1 ⩽ i ⩽ m ′ , m ′ +1 ⩽ j ⩽ m) rB (i, j) 4) A 分别计算 传输给 T;同理 B 相应计算 传 输给 T; simi j = r A (i, j)+rB (i, j) Wi j simi, j 5) T 计算 ,并构建相应 的相似矩阵 (由 元素构成) 分发给 A、B 双方; Wi j u ∈ [1,n ′ ] j ∈ [m ′ +1,m] predui,u ∈ [1,n ′ ],i ∈ [1,m ′ ] 6) B 根 据 相似矩阵以及本地用户 对物品 的评分信息,由式 (3) 对 进行预测,并对预测 结果进行排序,最终将预测值最高的前 N 个物品 ID 发送给 A,完成用户冷启动推荐过程。 由图 3 中可看出,每一方并不能直接收到对 方的原始评分,且由于增加了随机项,不能从中 间结果进行对原数据的反推,因此达到了隐私保 护的作用。 4 实验与结果 4.1 度量标准 本文采用 Top-N 推荐,采用 2 种不同的评估 方法进行模型评价。 1) 阈值击中评价 F1 −score 推荐评估指标采用精确率 Precision、查全率 Recall 以及 。 Precision = n∑′ u=1 |Ru ∩Tu| n∑′ u=1 |Ru| Recall = n∑′ u=1 |Ru ∩Tu| n∑′ u=1 |Tu| F1 −score = 2 precision×recall precision+recall Ru u Tu u c 式中: 是 B 方基于相似矩阵以及用户 的评分 信息进行对 A 方的推荐列表; 是新用户 对于 A 中物品的非空且评分大于阈值 的用户行为 列表。 2) 留一法 (leave-one-out) 评价 对于测试集里的每个用户,都保留其最新一 条评分信息进行验证。由于在评价过程中对每个 用户都进行排序比较耗时,所以本位采用了常用 的策略[35-36] ,即对于每个用户随机抽取 30 个没有 评分的物品,并且对其评分预测排序。在此设定 推荐个数为 10,将该 30 个物品与最新评分物品 的预测评分进行排序,若最新评分物品排在前 10 则视为击中。评估指标采用命中率 (hit ratio, HR)[37] 以及归一化折现累计增益 (normalized dis￾counted cumulative gain,NDCG) 来判断排序列表 的性能。HR 直观地衡量测试物品是否在前 10, 而 NDCG 根据击中的位置进行评估。 4.2 数据集 本文实验采用 GroupLens 提供的网络开源数 据集 MovieLens 1M 为例,整个数据集包括了 6 040 个电影用户对 3 706 部电影的 1 000 209 条评分, 评分范围为 1~5。由于本文针对基于物品协同过 滤的冷启动问题,因此只取数据集中的用户−电 影评分集作为实验数据。 该评分数据集均对用户及电影进行了 ID 处 理,因此在进行计算过程中用户 ID 及电影 ID 不 视为隐私数据。同时有较多数的电影只被极少 数的用户进行评分,该部分电影对新用户的推荐 起较少的作用,因此将用户评分率低于 10% 的电 影进行删除,处理后的用户−电影数据维度为 6 040 498。 P ∈ (0.1,0.9) 为了衡量冷启动推荐的效果,将用户分割为 2 部分,新老用户比例为 2:8,在新用户与老用户 中的数据进行了纵向分割,随机分成 A、 B 2 个部 分,并且通过改变 A、B 的分配比例 进 行多组实验。评估时,将 A 中已有的新用户评分 行为与相应的推荐作比较。 4.3 验证 第 1 个实验是通过变化 A、 B 间分配比例 P 的取值来观察当联合多方数据训练模型时,取何 值效果会比较理想。第 2 个实验中,将该算法和 一个基于物品平均评分的无偏差推荐基线算法进 行评估指标的比较。 1) 不同 B 机构比例的实验结果 令 P 代表 B 数据量在总数据量中的占比,当 P 越大时,代表 B 所拥有的信息越多。由于在实 际场景中,两方机构所含有的物品特征不全是一 致的,A 可能会与规模较大的机构合作,也可能 会与规模较小的机构合作。 从表 1 中可以看出当 B 的占比越大,无论阈 值 c 取 3 或 4(当用户评分>=阈值时,才算击中), ·182· 智 能 系 统 学 报 第 16 卷
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有