本发明专利技术涉及基于本地化差分隐私对矩阵分解算法的隐私信息保护,属于计算机推荐系统领域和信息安全领域,包括将训练模型解耦的分布式框架,用户原始数据与服务器完全分离开;改进矩阵分解的传统模型,将项目潜在特征矩阵分裂为两个子矩阵之和;使用随机投影技术和piesewise机制对模型的中间参数即梯度进行扰动处理;服务器聚合来自所有用户的扰动梯度,进行模型参数更新,用户使用原始数据进行本地参数的更新。本发明专利技术具有良好的隐私保护和模型准确性。准确性。准确性。
【技术实现步骤摘要】
一种基于本地化差分隐私的矩阵分解推荐方法
[0001]本专利技术属于计算机推荐系统和信息安全领域,涉及一种基于本地化差分隐私的矩阵分解推荐方法。
技术介绍
[0002]矩阵分解是推荐系统中性能优良的基础实现技术。根据用户对项目的历史评分矩阵,矩阵分解能够预测用户对未评分项目的评分数值,进而基于预测得到的高评分项目对用户进行推荐。目前矩阵分解已经被广泛运用于推荐领域。然而,从隐私安全的角度来看,矩阵分解需要利用用户的历史行为数据(如评分等),在如今计算机领域高度发展的情况下,推荐系统的中心服务器不再可信,因此用户主动交予推荐服务器的数据面临着泄露滥用的风险,并且相应地,基于用户的原始数据,模型学习发布的参数存在着泄露用户行为信息的可能。
[0003]差分隐私是2006年Dwork提出的有着严格数学证明的和最大背景假设的隐私保护框架。在差分隐私保护下,数据库的计算处理结果对于某个具体记录的变化是不敏感的,单个记录在数据集中或者不在数据集中,对计算结果的影响微乎其微,那么我们就可以认为,攻击者无法通过任何攻击手段得到这条记录的准确信息。本地化差分隐私技术在继承中心化差分隐私技术定量化定义隐私攻击的基础上,细化了对个人敏感信息的保护。具体来说,其将数据的隐私化处理过程转移到每个用户上,使得用户能够单独地处理和保护个人敏感信息,即进行更加彻底的隐私保护。
技术实现思路
[0004]有鉴于此,本专利技术的目的在于提供一种基于本地化差分隐私的矩阵分解推荐方法,进一步提高在强隐私保护力度的条件下矩阵分解推荐模型的性能。
[0005]为达到上述目的,本专利技术提供如下技术方案:
[0006]一种基于本地化差分隐私的矩阵分解推荐方法,包括以下步骤:
[0007]S1:在分布式框架下,将传统矩阵分解中的项目潜在特征矩阵V分成两个子矩阵,即V=P+Q;各个用户在其本地初始化用户潜在特征向量U、全局项目潜在特征矩阵P以及本地项目潜在特征矩阵Q;
[0008]S2:服务器端从高斯分布中采样得到随机矩阵发送给用户;
[0009]S3:各个用户利用本地评分向量计算目标函数对P的梯度,利用随机矩阵对P的梯度矩阵进行压缩降维;
[0010]S4:随机从压缩后的梯度矩阵中选择一个值,利用piesewise机制进行扰动,其余值为0,将扰动后的对P梯度矩阵发送给服务器;
[0011]S5:服务器聚合所有用户的对P扰动梯度,并利用所述随机矩阵进行投影反变换,采用梯度下降的方式对全局P进行更新,并发送给各个用户;
[0012]S6:用户根据服务器发送的P,对Q、U进行更新,进行下一轮迭代,直到算法收敛;
[0013]S7:算法迭代结束后,各个用户得到更新后的用户潜在特征矩阵U、全局项目潜在特征矩阵P以及本地项目潜在特征矩阵Q;各个用户在本地计算V=P+Q,根据公式R=U
T
V预测评分向量,将原始评分矩阵中未评分的项目的预测所得分进行排序,将分数靠前的项目推荐给用户,完成推荐。
[0014]进一步,在所述步骤S1中,将用户的评分矩阵分解成两个低维的偏好矩阵U和V,模型的目标旨在得到使平方误差和最小化的用户潜在特征向量U和项目潜在特征向量V,目标函数为:
[0015][0016]其中,M表示有效评分数量,i表示第i个用户,j表示第j个项目,r
ij
表示用户i对项目j的评分,λ表示正则化系数;
[0017]将项目潜在特征向量分成两个子矩阵,即V=P+Q,其中P表示全局项目潜在特征矩阵,是所有用户对项目的平均偏好,所有用户共用;Q表示本地项目潜在特征矩阵,是单一用户对项目的个人偏好,各个用户本地均有一个不同的Q矩阵;
[0018]则目标函数改为:
[0019]U,P,Q=argminl
[0020][0021]其中O是用户
‑
项目评分集,u
i
表示用户i的潜在特征向量,v
j
表示项目j的潜在特征向量,其中v
j
=p
j
+q
j
,p
j
表示项目j的全局潜在特征向量,q
ji
表示项目j的局部潜在特征向量,n表示用户数,||
·
||
F
表示向量的F范数,m表示项目数;α、β以及γ分别为U、P和Q的正则化系数。
[0022]进一步,在所述步骤S2中,服务器从高斯分布N(0,1/q)中采得随机矩阵其中q(q<<m)为降维维数,m为项目个数。
[0023]进一步,所述步骤S3具体包括以下步骤:
[0024]S31:各个用户分别计算目标函数对P的梯度,第i个用户计算目标函数对P的梯度的计算公式如下:
[0025][0026]其中,表示目标函数对p
ji
的梯度,p
ji
表示用户i关于项目j的全局潜在特征向量;
[0027]S32:对P的梯度矩阵进行压缩降维,得到压缩梯度矩阵:
[0028][0029]进一步,步骤S4中所述的piesewise机制具体包括内容如下:
[0030]S41:假设输入t∈[
‑
1,1],隐私预算为∈,扰动后的输出数据t
*
∈[
‑
C,C];
[0031]S42:计算输出范围计算高概率低概率为p/e
∈
;
[0032]S43:计算高概率区间r(t)=l(t)+C
‑
1;
[0033]S44:随机从[0,1]中均匀采样得到x,若x<p
·
(r(t)
‑
l(t)),则随机从[l(t),r(t)]中均匀采样得到t
*
,否则随机从[
‑
C,l(t)]∪[r(t),C]中均匀采样得到t
*
。
[0034]进一步,步骤S5具体包括以下步骤:
[0035]S51:服务器聚合所有用户的对P投影扰动梯度,计算公式如下:
[0036][0037]S52:进行投影反变换,最终扰动后的对全局项目潜在特征矩阵的P梯度矩阵其中
[0038]S53:采用梯度下降的方式对全局P进行更新,并发送给各个用户,更新公式如下:
[0039][0040]其中η表示迭代更新的学习率。
[0041]进一步,步骤S6具体包括以下步骤:
[0042]S61:将第i个用户的两个子矩阵合并V
i
=P+Q
i
,计算目标函数对U的梯度,更新U,
[0043]S62:计算目标函数对Q的梯度,更新Q,
[0044]Q
i
=Q
i
‑
η(
▽
Qi
+λQ
i
)。
[0045]进一步,步骤S7中,计算用户i的预测评分其中j=1本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于本地化差分隐私的矩阵分解推荐方法,其特征在于:包括以下步骤:S1:在分布式框架下,将传统矩阵分解中的项目潜在特征矩阵V分成两个子矩阵,即V=P+Q;各个用户在其本地初始化用户潜在特征向量U、全局项目潜在特征矩阵P以及本地项目潜在特征矩阵Q;S2:服务器端从高斯分布中采样得到随机矩阵发送给用户;S3:各个用户利用本地评分向量计算目标函数对P的梯度,利用随机矩阵对P的梯度矩阵进行压缩降维;S4:随机从压缩后的梯度矩阵中选择一个值,利用piesewise机制进行扰动,其余值为0,将扰动后的对P梯度矩阵发送给服务器;S5:服务器聚合所有用户的对P扰动梯度,并利用所述随机矩阵进行投影反变换,采用梯度下降的方式对全局P进行更新,并发送给各个用户;S6:用户根据服务器发送的P,对Q、U进行更新,进行下一轮迭代,直到算法收敛;S7:算法迭代结束后,各个用户得到更新后的用户潜在特征矩阵U、全局项目潜在特征矩阵P以及本地项目潜在特征矩阵Q;各个用户在本地计算V=P+Q,根据公式R=U
T
V预测评分向量,将原始评分矩阵中未评分的项目的预测所得分进行排序,将分数靠前的项目推荐给用户,完成推荐。2.根据权利要求1所述的基于本地化差分隐私的矩阵分解推荐方法,其特征在于:在所述步骤S1中,将用户的评分矩阵分解成两个低维的偏好矩阵U和V,模型的目标旨在得到使平方误差和最小化的用户潜在特征向量U和项目潜在特征向量V,目标函数为:其中,M表示有效评分数量,i表示第i个用户,j表示第j个项目,r
ij
表示用户i对项目j的评分,λ表示正则化系数;将项目潜在特征向量分成两个子矩阵,即V=P+Q,其中P表示全局项目潜在特征矩阵,是所有用户对项目的平均偏好,所有用户共用;Q表示本地项目潜在特征矩阵,是单一用户对项目的个人偏好,各个用户本地均有一个不同的Q矩阵;则目标函数改为:则目标函数改为:其中O是用户
‑
项目评分集,u
i
表示用户i的潜在特征向量,v
j
表示项目j的潜在特征向量,其中v
j
=p
j
+q
j
,p
j
表示项目j的全局潜在特征向量,q
ji
表示项目j的局部潜在特征向量,n表示用户数,||
·
||
F
表示向量的F范数,m表示项目数;α、β以及γ分别为U、P和Q的正则化系数。3.根据权利要求1所述...
【专利技术属性】
技术研发人员:王永,高明星,胡勇进,冉珣,
申请(专利权)人:重庆邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。