CN110837603A - 一种基于差分隐私保护的集成推荐方法 - Google Patents

一种基于差分隐私保护的集成推荐方法 Download PDF

Info

Publication number
CN110837603A
CN110837603A CN201911091203.5A CN201911091203A CN110837603A CN 110837603 A CN110837603 A CN 110837603A CN 201911091203 A CN201911091203 A CN 201911091203A CN 110837603 A CN110837603 A CN 110837603A
Authority
CN
China
Prior art keywords
scoring
matrix
user
score
ith
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911091203.5A
Other languages
English (en)
Other versions
CN110837603B (zh
Inventor
张顺
胡飞
郭云
夏云昊
陈志立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui University
Original Assignee
Anhui University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Anhui University filed Critical Anhui University
Priority to CN201911091203.5A priority Critical patent/CN110837603B/zh
Publication of CN110837603A publication Critical patent/CN110837603A/zh
Application granted granted Critical
Publication of CN110837603B publication Critical patent/CN110837603B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于差分隐私保护的集成推荐方法,其步骤包括:1、从评分网站上获取用户对项目的历史评分数据信息;2、对评分数据加入含隐私分配的噪声,进行预处理操作,得到预处理后的评分矩阵
Figure DDA0002266911470000011
3、计算原始评分矩阵的用户相似度矩阵,选取与当前服务用户最相似的top‑k个用户;4、集成协同过滤和矩阵分解方法,对预处理后的评分矩阵进行训练,得到预测评分矩阵
Figure DDA0002266911470000013
依次有序推荐给服务用户。本发明能有效解决现有隐私保护推荐方案中推荐效果不佳和隐私安全性差的问题,从而可以为用户提供安全且高效的推荐。

Description

一种基于差分隐私保护的集成推荐方法
技术领域
本发明涉及到信息安全与机器学习技术领域,具体涉及一种基于差分隐私集成用户协同过滤和矩阵分解的推荐方法。
背景技术
随着互联网技术的快速发展,互联网上各类应用的评分信息呈现爆发式的增长,例如像电影评分信息。推荐系统技术扮演着越来越重要的角色,可以根据用户的评分信息,来预测用户的行为信息,为其提供个性化推荐服务。
推荐系统通过分析用户的历史评分信息,来预测用户的行为信息,来对其提供个性化的推荐服务,使得用户有一个非常好的服务体验。由于要对用户的评分信息进行分析,如果用户的评分信息泄露,将会导致用户的隐私泄露。如果用户信息大量的泄露,会导致用户的体验感下降,不愿意将自己的信息分享给推荐系统,导致推荐服务质量下降。所以,不但要提高推荐服务的质量,还需要保护用户的隐私信息。
目前用到的隐私推荐方法大多基于加密技术来实现的,但这些加密技术有一个缺陷,它们都是基于攻击者有一定的背景知识限制。同时加密解密技术需要大量的计算开销,也增加推荐系统的计算开销成本。
发明目的
本发明为了克服现有技术存在的不足之处,提出了一种基于差分隐私保护的集成推荐方法,以期望能有效解决现有隐私保护推荐方案中推荐效果不佳和隐私安全性差的问题,从而可以为用户提供既安全且高效的推荐。
本发明为解决技术问题所采用的技术方案是:
本发明一种基于差分隐私保护的集成推荐方法的特点是按如下步骤进行:
步骤一、从评分网站上获取用户对项目的历史评分数据集:
所述评分数据集上有n个用户,记为User={u1,u2,...,ui,...,un},其中ui表示第i个评分用户,1≤i≤n;所述评分数据集上有m个项目,记为Item={v1,v2,...,vj,...,vm},其中vj表示第j个评分项目,1≤j≤m;将所述评分数据集中第i个用户ui对第j个项目vj的评分数据记为rij,从而得到所有用户对所有项目的评分数据所组成的评分矩阵Rn×m
步骤二、对评分数据集加入含隐私分配的噪声,得到预处理后的评分矩阵R~;
步骤2.1、利用式(1)计算评分矩阵Rn×m加噪后的全局平均GAvg:
Figure BDA0002266911450000021
式(1)中,|R|表示评分矩阵Rn×m中有效评分值的计数,rmin表示评分矩阵Rn×m中的评分最小值,rmax表示评分矩阵Rn×m中的评分最大值,ε1表示第一隐私预算参数,Laplace()表示拉普拉斯噪声的随机生成函数,并有:
Figure BDA0002266911450000022
步骤2.2、利用式(3)计算评分矩阵Rn×m中第j个评分项目vj加噪后的平均评分IAvg(j):
Figure BDA0002266911450000023
式(3)中,|Rj|表示第j个评分项目vj中有效评分值的计数,rmin,j表示评分矩阵Rn×m中第j个评分项目vj的评分最小值,rmax,j表示评分矩阵Rn×m中第j个评分项目vj的评分最大值,β1表示添加的加噪后全局平均评分的个数,ε2表示第二隐私预算参数,并有:
Figure BDA0002266911450000024
步骤2.3、将评分矩阵Rn×m中的所有评分数据减去加噪后相应评分项目的平均评分后,得到折扣后的评分矩阵为R′={r′ij|i=1,2,…,n;j=1,2,…,m};r′ij表示折扣后评分矩阵R′中第i个用户ui对第j个项目vj的评分值,且r′ij=rij-IAvg(j);
利用式(5)计算折扣后的评分矩阵R′的加噪后全局平均评分GAvg′;
Figure BDA0002266911450000025
式(5)中,|R′|表示折扣后的评分矩阵R′中有效评分值的计数,r′min表示折扣后的评分矩阵R′中评分最小值,r′max表示折扣后的评分矩阵R′中评分最大值,ε3表示第三隐私预算参数,并有:
Figure BDA0002266911450000031
步骤2.4、利用式(7)计算折扣后的评分矩阵R′中第i个评分用户ui的加噪后平均评分UAvg(i):
Figure BDA0002266911450000032
式(7)中,|Ri|表示第i个评分用户ui的有效评分值的计数,r′min,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最小值,r′max,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最大值,β2表示添加的加噪后折扣全局平均评分的个数,ε4表示第四隐私预算参数,并有:
Figure BDA0002266911450000033
步骤2.5、利用式(9)计算第i个评分用户ui对第j个评分项目vj的预处理后的评分
Figure BDA0002266911450000034
并用于填充评分矩阵Rn×m中第i行第j列的空白评分rij,从而得到预处理后的评分矩阵R~:
Figure BDA0002266911450000035
步骤三、计算评分矩阵Rn×m中用户间的相似度值,构造用户相似度矩阵Sim,选取与第i个评分用户ui最相似的top-k个用户;
步骤3.1、利用式(10)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的皮尔森相似度PCC(i,x):
Figure BDA0002266911450000041
式(10)中,Gj是评分集合G的子集,Gj表示第i个评分用户ui和第x个评分用户ux都对第j个评分项目vj进行过评分,G是第i个评分用户ui和第x个评分用户ux对所有同一个项目进行过评分的集合,
Figure BDA0002266911450000042
表示第i个评分用户ui的项目平均值,rxj表示第x个评分用户ux对第j个评分项目vj的评分值,表示第x个评分用户ux的项目平均值;
步骤3.2、利用式(11)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux公共评分的权重weightcom(i,x)
Figure BDA0002266911450000044
式(11)中,|G|表示集合G中元素的个数,tot(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux进行评分的项目数量总计数;
步骤3.3、利用式(12)计算评分差异值的倒数
Figure BDA0002266911450000045
式(12)中,dif(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的评分差异值,exp()表示以自然常数e为底的指数函数;
步骤3.4、利用式(13)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的相似度sim(i,x):
步骤3.5、根据所述相似度sim(i,x),构造用户相似度矩阵Sim={sim(i,x)|i=1,2,...,n;x=1,2,...,n};
步骤3.6、从用户相似度矩阵Sim中选取最高的前k个相似度值对应的用户组成当前第i个评分用户ui最相似的top-k个用户集合T(i);
步骤四、集成协同过滤和矩阵分解方法,对预处理后的评分矩阵
Figure BDA0002266911450000051
进行训练,得到预测评分矩阵依次有序推荐给服务用户;
步骤4.1、参数定义:平衡系数为α,学习率参数为γ,规则参数为λ,潜在因子数为d,梯度下降算法的最大迭代次数为tmax,当前梯度下降算法的迭代次数为t,预测误差的上界为errormax,第五隐私预算参数为ε5
步骤4.2、利用式(15)最小化损失函数l(Pn×d,Qm×d),迭代更新得到用户因子矩阵Pn×d和项目因子矩阵Qm×d
Figure BDA0002266911450000053
式(14)中,||pi||表示用户因子矩阵Pn×d的第i行元素的范数,||qi||表示项目因子矩阵Qm×d的第j行元素的范数,
Figure BDA0002266911450000054
表示第i个用户ui对第j个项目vj的预测评分;
步骤4.3、初始化t=1,并随机初始化用户因子矩阵
Figure BDA0002266911450000055
和项目因子矩阵
步骤4.4、利用式(15)得到第t次迭代中第i个用户ui对第j个项目vj的预测评分
Figure BDA0002266911450000057
Figure BDA0002266911450000058
式(15)中,pi (t)表示第t次迭代的用户因子矩阵
Figure BDA0002266911450000059
的第i行元素,
Figure BDA00022669114500000510
表示第t次迭代的项目因子矩阵
Figure BDA00022669114500000511
的第j行元素,T表示转置;
步骤4.5、利用式(16)得到第t次迭代中随机生成的扰动噪声向量
Figure BDA00022669114500000512
Figure BDA00022669114500000513
式(16)中,
Figure BDA00022669114500000514
表示预处理后的评分矩阵
Figure BDA00022669114500000518
的评分理论最大值,
Figure BDA00022669114500000515
表示预处理后的评分矩阵的评分理论最小值;
骤4.6、利用式(17)得到第t次迭代中第i个用户ui对第j个项目vj的加噪后的预测评分误差
Figure BDA0002266911450000061
步骤4.7、利用式(18)得到进行限定处理后预测误差
Figure BDA0002266911450000062
Figure BDA0002266911450000063
步骤4.8、利用式(19)对第t次迭代中的用户因子矩阵
Figure BDA0002266911450000064
中第i行元素
Figure BDA0002266911450000065
进行更新操作,得到第t+1次迭代的用户因子矩阵
Figure BDA0002266911450000066
中第i行元素
Figure BDA0002266911450000067
Figure BDA0002266911450000068
步骤4.9、利用式(20)对第t次迭代中的项目因子矩阵
Figure BDA0002266911450000069
第j行元素
Figure BDA00022669114500000610
进行更新操作,得到第t+1次迭代的项目因子矩阵
Figure BDA00022669114500000611
中的第j行元素
Figure BDA00022669114500000612
Figure BDA00022669114500000613
步骤4.10、重复上述步骤4.4到步骤4.9,得到第t+1次迭代用户因子矩阵和项目因子矩阵
Figure BDA00022669114500000615
步骤4.11、将t+1赋值给t后,判断迭代次数t>tmax是否成立,如果成立,则表示梯度下降算法的迭代完成,并得到最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d即为第tmax次迭代得到的用户因子矩阵
Figure BDA00022669114500000616
和项目因子矩阵
Figure BDA00022669114500000617
否则,返回执行步骤4.3;
步骤4.12、利用式(21)计算预测评分矩阵
Figure BDA00022669114500000618
并从所述预测评分矩阵
Figure BDA00022669114500000619
得到第i个用户ui对所有项目的预测评分
Figure BDA00022669114500000620
从而从所述第i个用户ui的预测评分
Figure BDA00022669114500000621
中按序选取预测评分最高的若干个评分项目推荐给第i个用户ui
Figure BDA00022669114500000622
相对于现有的推荐系统隐私保护方案,本发明的有益效果体现在:
1、本发明所使用的推荐方法是一种基于差分隐私技术,并构建了一种新的集成推荐方法,主要在两个阶段(预处理、矩阵分解阶段)使用满足了差分隐私机制的拉普拉斯噪声扰动,根据差分隐私序列组合定理(两阶段共含五个部分的隐私预算分配),本发明提出的集成推荐方法在理论上满足ε-差分隐私,从而实现了对用户数据隐私的安全保护。
2、本发明提出的新型集成推荐方法,在满足了差分隐私加噪的基础上,通过构建平衡参数,集成了用户协同过滤方法和矩阵分解方法。该方法充分利用评分矩阵的局部信息和全局信息,同时兼顾了传统基于用户协同过滤方法所适应的稠密集和矩阵分解所适应的稀疏集,从而实现了更高精度地评分预测。
3、本发明所使用到的预处理机制,主要有全局平均、项目平均、折扣全局平均和用户平均四个阶段的预处理操作,可以有效地利用评分矩阵信息来预测空白评分,从而提高了集成推荐方法的推荐精度。
4、本发明将差分隐私技术和集成推荐方法相结合,可以在保证用户数据隐私安全的同时,还能保证有较好的推荐效果,实验表明集成推荐方法的预测精度要高于单一使用用户协同过滤推荐方法或者矩阵分解推荐方法,具有较高的实用性。本发明可以为用户提供更加安全且有效的推荐服务,也会吸引更多潜在用户来享受这一推荐服务,进一步提升相关服务产品市场推广的商业价值。
附图说明
图1为本发明的模型示意图;
图2为本发明的几个主要实施步骤的流程图。
具体实施方式
本实施例中,如图1和图2所示,一种基于差分隐私保护的集成推荐方法是按如下步骤进行:
步骤一、从评分网站上获取用户对项目的历史评分数据集:
评分数据集上有n个用户,记为User={u1,u2,...,ui,...,un},其中ui表示第i个评分用户,1≤i≤n;评分数据集上有m个项目,记为Item={v1,v2,...,vj,...,vm},其中vj表示第j个评分项目,1≤j≤m;将评分数据集中第i个用户ui对第j个项目vj的评分数据记为rij,从而得到所有用户对所有项目的评分数据所组成的评分矩阵Rn×m
步骤二、对评分数据集加入部分隐私预算的拉普拉斯噪声,得到预处理后的评分矩阵
Figure BDA0002266911450000071
步骤2.1、利用式(1)计算评分矩阵Rn×m加噪后的全局平均GAvg:
Figure BDA0002266911450000081
式(1)中,|R|表示评分矩阵Rn×m中有效评分值的计数,评分矩阵Rn×m包含有很多空白评分数据,即|R|的值远小于n×m,rmin表示评分矩阵Rn×m中的评分最小值,rmax表示评分矩阵Rn×m中的评分最大值,ε1表示第一隐私预算参数,Laplace()表示拉普拉斯噪声的随机生成函数,并有:
Figure BDA0002266911450000082
注意:式(1)会涉及到敏感度的计算,此处用的是全局敏感度Δr=rmax-rmin
式(3)表示μ=0拉普拉斯分布的密度函数:
Figure BDA0002266911450000083
式(3)中b表示变量x的尺度参数,由于μ=0,上述拉普拉斯分布的方差为σ2=2b2,而b=Δr/ε1得到;
隐私预算ε1的值是可以调整的,但需要控制好安全性和可用性的平衡,因为隐私预算分配过大会导致安全性降低,而隐私预算分配过小将会导致噪声过大,破坏数据的可用性;
式(2)中对加噪后的全局平均进行限定处理,可以防止噪声量添加过大超出评分范围,能提高评分数据的可用性;
步骤2.2、利用式(4)计算评分矩阵Rn×m中第j个评分项目vj加噪后的平均评分IAvg(j):
Figure BDA0002266911450000084
式(4)中,|Rj|表示第j个评分项目vj中有效评分值的计数,rmin,j表示评分矩阵Rn×m中第j个评分项目vj的评分最小值,rmax,j表示评分矩阵Rn×m中第j个评分项目vj的评分最大值,β1表示添加的加噪后全局平均评分的个数,ε2表示第二隐私预算参数,并有:
Figure BDA0002266911450000091
注意:式(4)中添加了β1个加噪的全局平均值,是为了稳定项目平均值,因为有些项目可能只有极少数用户对其评分,而这些极少数用户的评分信息只能代表他们自己偏好,不能代表该项目的平均;
步骤2.3、将评分矩阵Rn×m中的所有评分数据减去加噪后相应评分项目的平均评分后,得到折扣后的评分矩阵为R′={r′ij|i=1,2,…,n;j=1,2,…,m};r′ij表示折扣后评分矩阵R′中第i个用户ui对第j个项目vj的评分值,且r′ij=rij-IAvg(j);
利用式(6)计算折扣后的评分矩阵R′的加噪后全局平均评分GAvg′;
式(6)中,|R′|表示折扣后的评分矩阵R′中有效评分值的计数,r′min表示折扣后的评分矩阵R′中评分最小值,r′max表示折扣后的评分矩阵R′中评分最大值,ε3表示第三隐私预算参数,并有:
Figure BDA0002266911450000093
步骤2.4、利用式(8)计算折扣后的评分矩阵R′中第i个评分用户ui的加噪后平均评分UAvg(i):
式(8)中,|Ri|表示第i个评分用户ui的有效评分值的计数,r′min,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最小值,r′max,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最大值,β2表示添加的加噪后折扣全局平均评分的个数,加入β2个折扣后全局平均是为了稳定用户平均评分,ε4表示第四隐私预算参数,并有:
Figure BDA0002266911450000101
步骤2.5、利用式(10)计算第i个评分用户ui对第j个评分项目vj的预处理后的评分
Figure BDA0002266911450000102
并用于填充评分矩阵Rn×m中第i行第j列的空白评分rij,用每个空白评分的用户平均评分加上项目平均评分拟合其评分值,从而得到预处理后的评分矩阵R~:
Figure BDA0002266911450000103
步骤三、计算评分矩阵Rn×m中用户间的相似度值,构造用户相似度矩阵Sim,选取与第i个评分用户ui最相似的top-k个用户;
步骤3.1、利用式(11)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的皮尔森相似度PCC(i,x):
Figure BDA0002266911450000104
式(11)中,Gj是评分集合G的子集,Gj表示第i个评分用户ui和第x个评分用户ux都对第j个评分项目vj进行过评分,G是第i个评分用户ui和第x个评分用户ux对所有同一个项目进行过评分的集合,
Figure BDA0002266911450000105
表示第i个评分用户ui的项目平均值,rxj表示第x个评分用户ux对第j个评分项目vj的评分值,
Figure BDA0002266911450000106
表示第x个评分用户ux的项目平均值;
注意:皮尔森相似度反映了两个变量之间的相关程度,它的取值在[-1,1]之间。当两个变量的线性关系增强时,其相关系数值趋于1或-1;当一个变量增大,另一个变量也增大时,表明它们之间是正相关的,其相关系数值大于0;如果一个变量增大,另一个变量减小,表明它们之间是负相关的,其相关系数值小于0;如果相关系数等于0,表明它们之间不存在线性相关关系。
步骤3.2、利用式(12)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux公共评分的权重weightcom(i,x)
Figure BDA0002266911450000111
式(12)中,|G|表示集合G中元素的个数,tot(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux进行评分的项目数量总计数;本步骤考虑到公共评分对计算用户相似度的影响,两个用户的公共评分的个数越多,那么他们的相似度就越高;
步骤3.3、利用式(13)计算评分差异值的倒数
Figure BDA0002266911450000112
式(13)中,dif(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的评分差异值,exp()表示以自然常数e为底的指数函数;本步骤考虑到两个用户之间的评分差异性,在上式中通过减去所有评分项目的用户平均值,以减弱用户评分差异的影响,并利用用户评分差异值的倒数来表示用户之间的相似度;
步骤3.4、利用式(14)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的相似度sim(i,x):
在本步骤中,通过将皮尔森相关系数PCC(i,x)、公共评分权重weightcom(i,x)和用户评分差异值dif(i,x)结合在一起来计算用户间相似度sim(i,x);
步骤3.5、利用相似度sim(i,x),构造用户相似度矩阵Sim={sim(i,x)|i=1,2,...,n;x=1,2,...,n};对于基于用户的推荐系统中,皮尔森相似度比余弦相似度方法推荐效果更好,而在基于物品的推荐技术中,余弦相似度比皮尔森相似度表现要好;
步骤3.6、从用户相似度矩阵Sim中选取最高的前k个相似度值对应的用户组成当前第i个评分用户ui最相似的top-k个用户集合T(i);
步骤四、利用集成推荐方法对预处理后的评分矩阵
Figure BDA0002266911450000121
进行训练,得到预测评分矩阵把评分最高的若干个项目有序推荐给查询用户;
步骤4.1、参数定义:平衡系数α,学习率参数为γ,规则参数为λ,潜在因子数为d,梯度下降算法的最大迭代次数为tmax,当前梯度下降算法的迭代次数为t,预测误差的上界为errormax,第五隐私预算参数为ε5;梯度下降算法是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。学习率参数γ是控制梯度下降幅度的参数,又称步长,学习率设置过大会阻碍收敛并导致损失函数在最小值附近波动甚至发散;学习率过小又会导致收敛速度缓慢,尤其是在迭代后期,当梯度变动很小的时候,整个收敛过程会变得很缓慢。
步骤4.2、利用式(15)最小化损失函数l(Pn×d,Qm×d),迭代更新得到用户因子矩阵Pn×d和项目因子矩阵Qm×d
Figure BDA0002266911450000123
式(15)中,||pi||表示用户因子矩阵Pn×d的第i行元素的范数,||qi||表示项目因子矩阵Qm×d的第j行元素的范数,
Figure BDA0002266911450000124
表示第i个用户ui对第j个项目vj的预测评分;
步骤4.3、进行初始化处理,令t=1,并随机初始化用户因子矩阵
Figure BDA0002266911450000125
和项目因子矩阵
步骤4.4、利用式(16)得到第t次迭代中第i个用户ui对第j个项目vj的预测评分
Figure BDA0002266911450000127
Figure BDA0002266911450000128
式(16)中,表示第t次迭代的用户因子矩阵
Figure BDA00022669114500001210
的第i行元素,
Figure BDA00022669114500001211
表示第t次迭代的项目因子矩阵
Figure BDA00022669114500001212
的第j行元素,T表示转置;α是用来控制矩阵分解预测评分和用户协同过滤预测评分的占比,其中
Figure BDA00022669114500001213
表示用矩阵分解方法预测的评分占比,
Figure BDA00022669114500001214
表示基于用户协同过滤方法预测评分的占比,在实验中一般设置α=0.4;
步骤4.5、利用式(17)得到第t次迭代中随机生成的扰动噪声
Figure BDA0002266911450000132
式(17)中,
Figure BDA0002266911450000133
表示预处理后的评分矩阵
Figure BDA0002266911450000134
的评分理论最大值,
Figure BDA0002266911450000135
表示预处理后的评分矩阵
Figure BDA0002266911450000136
的评分理论最小值;
Figure BDA0002266911450000137
表示第t次迭代由拉普拉斯函数随机生成的噪声,由于拉普拉斯函数的随机性,每次生成的噪声值都不同;总的隐私预算值为ε,ε5为剩余隐私预算用于矩阵分解阶段,其值为ε5=ε-ε1234,在实验中一般设置为0.7ε;
骤4.6、利用式(18)得到第t次迭代中第i个用户ui对第j个项目vj的加噪后的预测评分误差
Figure BDA0002266911450000139
步骤4.7、利用式(19)得到进行限定处理后预测误差
Figure BDA00022669114500001310
Figure BDA00022669114500001311
步骤4.8、利用式(20)对第t次迭代中的用户因子矩阵
Figure BDA00022669114500001312
中第i行元素
Figure BDA00022669114500001313
进行更新操作,得到第t+1次迭代的用户因子矩阵
Figure BDA00022669114500001314
中第i行元素
Figure BDA00022669114500001315
Figure BDA00022669114500001316
步骤4.9、利用式(21)对第t次迭代中的项目因子矩阵
Figure BDA00022669114500001317
第j行元素
Figure BDA00022669114500001318
进行更新操作,得到第t+1次迭代的项目因子矩阵
Figure BDA00022669114500001319
中的第j行元素
Figure BDA00022669114500001320
步骤4.10、重复上述步骤4.4到步骤4.9,可以得到第t+1次迭代用户因子矩阵
Figure BDA00022669114500001322
和项目因子矩阵
步骤4.11、将t+1赋值给t后,判断迭代次数t>tmax是否成立,如果成立,则表示梯度下降算法的迭代完成,并得到最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d即为第tmax次迭代得到的用户因子矩阵和项目因子矩阵
Figure BDA0002266911450000142
否则,返回执行步骤4.3;程序的终止条件是达到最大迭代次数,是为了防止结果不收敛,对程序进行强制终止。
步骤4.12、利用式(22)计算预测评分矩阵
Figure BDA0002266911450000143
并从预测评分矩阵
Figure BDA0002266911450000144
得到第i个用户ui对所有项目的预测评分
Figure BDA0002266911450000145
从第i个用户ui的预测评分
Figure BDA0002266911450000146
中按序选取预测评分最高的若干个评分项目推荐给第i个用户ui;预测评分矩阵为
Figure BDA0002266911450000147
其中
Figure BDA0002266911450000148
表示第i个用户ui对第j个项目vj的预测评分值;

Claims (1)

1.一种基于差分隐私保护的集成推荐方法,其特征是按如下步骤进行:
步骤一、从评分网站上获取用户对项目的历史评分数据集:
所述评分数据集上有n个用户,记为User={u1,u2,...,ui,...,un},其中ui表示第i个评分用户,1≤i≤n;所述评分数据集上有m个项目,记为Item={v1,v2,...,vj,...,vm},其中vj表示第j个评分项目,1≤j≤m;将所述评分数据集中第i个用户ui对第j个项目vj的评分数据记为rij,从而得到所有用户对所有项目的评分数据所组成的评分矩阵Rn×m
步骤二、对评分数据集加入含隐私分配的噪声,得到预处理后的评分矩阵
Figure FDA0002266911440000011
步骤2.1、利用式(1)计算评分矩阵Rn×m加噪后的全局平均GAvg:
Figure FDA0002266911440000012
式(1)中,|R|表示评分矩阵Rn×m中有效评分值的计数,rmin表示评分矩阵Rn×m中的评分最小值,rmax表示评分矩阵Rn×m中的评分最大值,ε1表示第一隐私预算参数,Laplace()表示拉普拉斯噪声的随机生成函数,并有:
Figure FDA0002266911440000013
步骤2.2、利用式(3)计算评分矩阵Rn×m中第j个评分项目vj加噪后的平均评分IAvg(j):
Figure FDA0002266911440000014
式(3)中,|Rj|表示第j个评分项目vj中有效评分值的计数,rmin,j表示评分矩阵Rn×m中第j个评分项目vj的评分最小值,rmax,j表示评分矩阵Rn×m中第j个评分项目vj的评分最大值,β1表示添加的加噪后全局平均评分的个数,ε2表示第二隐私预算参数,并有:
Figure FDA0002266911440000015
步骤2.3、将评分矩阵Rn×m中的所有评分数据减去加噪后相应评分项目的平均评分后,得到折扣后的评分矩阵为R′={r′ij|i=1,2,…,n;j=1,2,…,m};r′ij表示折扣后评分矩阵R′中第i个用户ui对第j个项目vj的评分值,且r′ij=rij-IAvg(j);
利用式(5)计算折扣后的评分矩阵R′的加噪后全局平均评分GAvg′;
式(5)中,|R′|表示折扣后的评分矩阵R′中有效评分值的计数,r′min表示折扣后的评分矩阵R′中评分最小值,r′max表示折扣后的评分矩阵R′中评分最大值,ε3表示第三隐私预算参数,并有:
Figure FDA0002266911440000022
步骤2.4、利用式(7)计算折扣后的评分矩阵R′中第i个评分用户ui的加噪后平均评分UAvg(i):
Figure FDA0002266911440000023
式(7)中,|Ri|表示第i个评分用户ui的有效评分值的计数,r′min,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最小值,r′max,i表示折扣后的评分矩阵R′中第i个评分用户ui的评分最大值,β2表示添加的加噪后折扣全局平均评分的个数,ε4表示第四隐私预算参数,并有:
Figure FDA0002266911440000024
步骤2.5、利用式(9)计算第i个评分用户ui对第j个评分项目vj的预处理后的评分
Figure FDA0002266911440000025
并用于填充评分矩阵Rn×m中第i行第j列的空白评分rij,从而得到预处理后的评分矩阵
Figure FDA0002266911440000026
Figure FDA0002266911440000027
步骤三、计算评分矩阵Rn×m中用户间的相似度值,构造用户相似度矩阵Sim,选取与第i个评分用户ui最相似的top-k个用户;
步骤3.1、利用式(10)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的皮尔森相似度PCC(i,x):
Figure FDA0002266911440000031
式(10)中,Gj是评分集合G的子集,Gj表示第i个评分用户ui和第x个评分用户ux都对第j个评分项目vj进行过评分,G是第i个评分用户ui和第x个评分用户ux对所有同一个项目进行过评分的集合,表示第i个评分用户ui的项目平均值,rxj表示第x个评分用户ux对第j个评分项目vj的评分值,
Figure FDA0002266911440000033
表示第x个评分用户ux的项目平均值;
步骤3.2、利用式(11)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux公共评分的权重weightcom(i,x)
Figure FDA0002266911440000034
式(11)中,|G|表示集合G中元素的个数,tot(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux进行评分的项目数量总计数;
步骤3.3、利用式(12)计算评分差异值的倒数
Figure FDA0002266911440000035
Figure FDA0002266911440000036
式(12)中,dif(i,x)表示评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的评分差异值,exp()表示以自然常数e为底的指数函数;
步骤3.4、利用式(13)计算评分矩阵Rn×m中第i个评分用户ui和第x个评分用户ux的相似度sim(i,x):
Figure FDA0002266911440000041
步骤3.5、根据所述相似度sim(i,x),构造用户相似度矩阵Sim={sim(i,x)|i=1,2,...,n;x=1,2,...,n};
步骤3.6、从用户相似度矩阵Sim中选取最高的前k个相似度值对应的用户组成当前第i个评分用户ui最相似的top-k个用户集合T(i);
步骤四、集成协同过滤和矩阵分解方法,对预处理后的评分矩阵
Figure FDA0002266911440000042
进行训练,得到预测评分矩阵
Figure FDA0002266911440000043
依次有序推荐给服务用户;
步骤4.1、参数定义:平衡系数为α,学习率参数为γ,规则参数为λ,潜在因子数为d,梯度下降算法的最大迭代次数为tmax,当前梯度下降算法的迭代次数为t,预测误差的上界为errormax,第五隐私预算参数为ε5
步骤4.2、利用式(15)最小化损失函数l(Pn×d,Qm×d),迭代更新得到用户因子矩阵Pn×d和项目因子矩阵Qm×d
Figure FDA0002266911440000044
式(14)中,||pi||表示用户因子矩阵Pn×d的第i行元素的范数,||qi||表示项目因子矩阵Qm×d的第j行元素的范数,
Figure FDA0002266911440000045
表示第i个用户ui对第j个项目vj的预测评分;
步骤4.3、初始化t=1,并随机初始化用户因子矩阵和项目因子矩阵
Figure FDA0002266911440000047
步骤4.4、利用式(15)得到第t次迭代中第i个用户ui对第j个项目vj的预测评分
Figure FDA0002266911440000048
Figure FDA0002266911440000049
式(15)中,
Figure FDA00022669114400000410
表示第t次迭代的用户因子矩阵的第i行元素,
Figure FDA00022669114400000412
表示第t次迭代的项目因子矩阵
Figure FDA00022669114400000413
的第j行元素,T表示转置;
步骤4.5、利用式(16)得到第t次迭代中随机生成的扰动噪声向量
Figure FDA00022669114400000414
Figure FDA00022669114400000415
式(16)中,
Figure FDA00022669114400000416
表示预处理后的评分矩阵
Figure FDA00022669114400000417
的评分理论最大值,
Figure FDA00022669114400000418
表示预处理后的评分矩阵的评分理论最小值;
骤4.6、利用式(17)得到第t次迭代中第i个用户ui对第j个项目vj的加噪后的预测评分误差
Figure FDA0002266911440000052
步骤4.7、利用式(18)得到进行限定处理后预测误差
Figure FDA0002266911440000054
Figure FDA0002266911440000055
步骤4.8、利用式(19)对第t次迭代中的用户因子矩阵中第i行元素进行更新操作,得到第t+1次迭代的用户因子矩阵
Figure FDA0002266911440000058
中第i行元素
Figure FDA0002266911440000059
Figure FDA00022669114400000510
步骤4.9、利用式(20)对第t次迭代中的项目因子矩阵
Figure FDA00022669114400000511
第j行元素
Figure FDA00022669114400000512
进行更新操作,得到第t+1次迭代的项目因子矩阵
Figure FDA00022669114400000513
中的第j行元素
Figure FDA00022669114400000514
Figure FDA00022669114400000515
步骤4.10、重复上述步骤4.4到步骤4.9,得到第t+1次迭代用户因子矩阵和项目因子矩阵
Figure FDA00022669114400000517
步骤4.11、将t+1赋值给t后,判断迭代次数t>tmax是否成立,如果成立,则表示梯度下降算法的迭代完成,并得到最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d即为第tmax次迭代得到的用户因子矩阵
Figure FDA00022669114400000518
和项目因子矩阵
Figure FDA00022669114400000519
否则,返回执行步骤4.3;
步骤4.12、利用式(21)计算预测评分矩阵并从所述预测评分矩阵得到第i个用户ui对所有项目的预测评分
Figure FDA00022669114400000522
从而从所述第i个用户ui的预测评分
Figure FDA00022669114400000523
中按序选取预测评分最高的若干个评分项目推荐给第i个用户ui
Figure FDA00022669114400000524
CN201911091203.5A 2019-11-09 2019-11-09 一种基于差分隐私保护的集成推荐方法 Active CN110837603B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911091203.5A CN110837603B (zh) 2019-11-09 2019-11-09 一种基于差分隐私保护的集成推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911091203.5A CN110837603B (zh) 2019-11-09 2019-11-09 一种基于差分隐私保护的集成推荐方法

Publications (2)

Publication Number Publication Date
CN110837603A true CN110837603A (zh) 2020-02-25
CN110837603B CN110837603B (zh) 2022-03-15

Family

ID=69575017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911091203.5A Active CN110837603B (zh) 2019-11-09 2019-11-09 一种基于差分隐私保护的集成推荐方法

Country Status (1)

Country Link
CN (1) CN110837603B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112487473A (zh) * 2020-11-11 2021-03-12 东南大学 一种针对协同过滤中共谋推断攻击的差分隐私保护方法
CN113204793A (zh) * 2021-06-09 2021-08-03 辽宁工程技术大学 一种基于个性化差分隐私保护的推荐方法
CN113221019A (zh) * 2021-04-02 2021-08-06 合肥工业大学 基于即时学习的个性化推荐方法和系统
CN113674036A (zh) * 2021-09-06 2021-11-19 中国银行股份有限公司 一种手机银行广告的推荐方法及系统
CN113674066A (zh) * 2021-09-06 2021-11-19 中国银行股份有限公司 一种手机银行理财产品的推荐方法及系统
CN116595254A (zh) * 2023-05-18 2023-08-15 杭州绿城信息技术有限公司 一种智慧城市中数据隐私与服务的推荐方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110208763A1 (en) * 2010-02-25 2011-08-25 Microsoft Corporation Differentially private data release
CN107392049A (zh) * 2017-07-26 2017-11-24 安徽大学 一种基于差分隐私保护的推荐方法
CN109408728A (zh) * 2018-11-30 2019-03-01 安徽大学 一种基于覆盖算法的差分隐私保护推荐方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110208763A1 (en) * 2010-02-25 2011-08-25 Microsoft Corporation Differentially private data release
CN107392049A (zh) * 2017-07-26 2017-11-24 安徽大学 一种基于差分隐私保护的推荐方法
CN109408728A (zh) * 2018-11-30 2019-03-01 安徽大学 一种基于覆盖算法的差分隐私保护推荐方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张燕平、张顺、钱付兰、严远亭: "《一种局部和全局用户影响力相结合的社交推荐算法》", 《南京大学学报(自然科学)》 *
张顺: "《基于用户重要性的协同推荐算法研究》", 《优秀硕士学位论文》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112487473A (zh) * 2020-11-11 2021-03-12 东南大学 一种针对协同过滤中共谋推断攻击的差分隐私保护方法
CN112487473B (zh) * 2020-11-11 2024-06-07 东南大学 一种针对协同过滤中共谋推断攻击的差分隐私保护方法
CN113221019A (zh) * 2021-04-02 2021-08-06 合肥工业大学 基于即时学习的个性化推荐方法和系统
CN113221019B (zh) * 2021-04-02 2022-10-25 合肥工业大学 基于即时学习的个性化推荐方法和系统
CN113204793A (zh) * 2021-06-09 2021-08-03 辽宁工程技术大学 一种基于个性化差分隐私保护的推荐方法
CN113674036A (zh) * 2021-09-06 2021-11-19 中国银行股份有限公司 一种手机银行广告的推荐方法及系统
CN113674066A (zh) * 2021-09-06 2021-11-19 中国银行股份有限公司 一种手机银行理财产品的推荐方法及系统
CN116595254A (zh) * 2023-05-18 2023-08-15 杭州绿城信息技术有限公司 一种智慧城市中数据隐私与服务的推荐方法
CN116595254B (zh) * 2023-05-18 2023-12-12 杭州绿城信息技术有限公司 一种智慧城市中数据隐私与服务的推荐方法

Also Published As

Publication number Publication date
CN110837603B (zh) 2022-03-15

Similar Documents

Publication Publication Date Title
CN110837603B (zh) 一种基于差分隐私保护的集成推荐方法
CN107690663B (zh) 白化神经网络层
Karatzoglou et al. Multiverse recommendation: n-dimensional tensor factorization for context-aware collaborative filtering
CN108431833A (zh) 端到端深度协作过滤
CN108470052B (zh) 一种基于矩阵补全的抗托攻击推荐算法
Kalimeris et al. Preference amplification in recommender systems
CN110889747B (zh) 商品推荐方法、装置、系统、计算机设备及存储介质
CN112115377A (zh) 一种基于社交关系的图神经网络链路预测推荐方法
US11443202B2 (en) Real-time on the fly generation of feature-based label embeddings via machine learning
CN110717103B (zh) 基于堆栈降噪编码器改进的协同过滤方法
Manotumruksa et al. Sequential-based adversarial optimisation for personalised top-n item recommendation
CN112734104B (zh) 一种融合生成对抗网络和自编码器的跨域推荐方法
US20220172083A1 (en) Noise contrastive estimation for collaborative filtering
CN111311324B (zh) 基于稳定神经协同过滤的用户-商品偏好预测系统和方法
US20210232895A1 (en) Flexible Parameter Sharing for Multi-Task Learning
Tran et al. Parallel variational Bayes for large datasets with an application to generalized linear mixed models
CN103810262B (zh) 信息推荐方法和系统
CN112948696A (zh) 具有隐私保护功能的跨域医疗保健设备推荐方法及系统
CN109783769A (zh) 一种基于用户项目评分的矩阵分解方法和装置
CN116664232A (zh) 一种基于上下文老虎机的联邦个性化商品推荐方法
CN112559864B (zh) 一种基于知识图谱增强的双线性图网络推荐方法和系统
CN114707063A (zh) 一种商品推荐方法、装置、电子设备以及存储介质
CN114723067A (zh) 一种基于用户隐私保护的联邦混合过滤推荐方法
Le et al. Bounded-SVD: A matrix factorization method with bound constraints for recommender systems
JP7158175B2 (ja) 情報処理装置、システム、情報処理方法及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant