CN107392049B - 一种基于差分隐私保护的推荐方法 - Google Patents
一种基于差分隐私保护的推荐方法 Download PDFInfo
- Publication number
- CN107392049B CN107392049B CN201710619287.XA CN201710619287A CN107392049B CN 107392049 B CN107392049 B CN 107392049B CN 201710619287 A CN201710619287 A CN 201710619287A CN 107392049 B CN107392049 B CN 107392049B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msubsup
- msub
- user
- matrix
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims abstract description 115
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 13
- 238000012360 testing method Methods 0.000 claims description 4
- 235000013399 edible fruits Nutrition 0.000 claims description 3
- 230000014509 gene expression Effects 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 230000002633 protecting effect Effects 0.000 abstract description 2
- 238000009423 ventilation Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 239000013065 commercial product Substances 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 241001515806 Stictis Species 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于差分隐私保护的推荐方法,包括:1、从网站上获取访问用户对项目的评分信息;2、对用户评分数据加入拉普拉斯噪声得到扰动后的评分数据;3、将扰动评分数据传入使用拉普拉斯机制的概率矩阵分解推荐算法得到用户因子矩阵和项目因子矩阵;4、根据用户因子矩阵和项目因子矩阵预测每个用户对所有项目的评分;5、将预测评分最高的前top个项目推荐用户。本发明能有效解决现有的隐私保护推荐方案中用户数据的安全性差和推荐结果准确性低的问题从而能更好的保护用户数据的隐私并提高推荐结果的准确度。
Description
技术领域
本发明涉及到机器学习的推荐技术领域,具体的说是一种基于差分隐私和概率矩阵分解算法的推荐方法。
背景技术
目前,随着互联网的不断发展,互联网上的信息呈现爆炸性的增长,这就导致互联网用户很难从互联网获取到感兴趣的信息。用户对个性化推荐服务的需求越来越强烈。根据用户的行为数据,为用户提供个性化的推荐已经成为了互联网服务不可或缺的一部分。
为了给用户提供更加精确的个性化推荐,推荐系统的服务商不得不搜集大量的用户历史信息(比如:用户的对商品的评分记录、网页的历史浏览记录等)。通过对用户历史信息进行有效的分析然后向用户提供准确的个性化推荐服务,这样大大增加了用户对互联网服务的兴趣度,同时也促进了互联网的经济不断发展。但是,如果没有对收集到的用户信息进行有效的保护,会使得大量的用户信息泄露。从而导致用户在互联网上浏览网页、购买商品等活动时清除记录,使得推荐服务质量下降,用户对互联网的兴趣度下降,进一步则影响经济效益。因此对搜集到的用户信息进行有效的保护已经成为越来越突出的问题。
当前,多数推荐算法的隐私保护方案都是基于传统的加密方案来对收集到的用户信息进行保护。但是这些加密方案是假设攻击者有一定的背景知识限制,而且不能在整个推荐过程中进行有效的保护。这不仅存在用户信息泄露风险而且加密解密过程增加了计算时间。为了解决上述问题,文献[A differential privacy framework for matrixfactorization recommender systems,2016]提出了一种基于差分隐私的矩阵分解推荐系统保护框架,较好的解决了对攻击者背景知识限制的问题。文献中实现差分隐私保护的主要方案是针对用户-项目的评分数据、矩阵分解推荐算法、用户这几个因素构成的推荐系统,用户对项目的评分数据被服务器收集起来,并且评分数据被聚合成一个用户-项目评分矩阵。文献中主要的隐私保护方法有两种:
1)仅考虑向评分矩阵加入拉普拉斯噪声,然后将加噪声后的评分矩阵传入推荐系统预测用户对商品的评分,最后将评分高的商品推荐给用户;
2)仅考虑在矩阵分解的随机梯度下降过程中加入拉普拉斯噪声,预测出用户对商品的评分,最后将评分高的几个商品推荐给用户。该方案比传统的加密保护方案能在推荐过程中更有效地对用户数据进行隐私保护。
然而,以往基于差分隐私保护的推荐系统算法(如上述文献的矩阵分解算法)。一方面仅考虑在输入评分矩阵的时候加入拉普拉斯噪声使其满足差分隐私,但是这么做的结果很大可能就会导致加入的噪声过多,损害了用户的评分数据的可用性直接导致推荐结果不准确。另一方面仅考虑在推荐算法运行过程中加入噪声,在这种情况下并不能保证用户数据在整个推荐过程中是安全的,因为在推荐系统不诚实的情况下,用户数据在传入推荐系统中时还是存在被泄露的风险。而对于推荐服务,如果推荐准确度下降或者用户数据无法被安全的保护起来,就会使得用户对互联网服务的兴趣度下降,从而造成用户的流失,这就会影响互联网经济的发展。因此,在推荐过程中得到准确的推荐结果并且对用户数据提供严格的隐私保护变得尤为重要。
发明目的
本发明为了克服现有技术存在的不足之处,提供一种基于差分隐私保护的推荐方法,以期望能有效解决现有隐私保护推荐方案中用户数据的安全性差和推荐结果准确性低的问题,从而能更好的保护用户数据的隐私并提高推荐结果的准确度。
本发明为解决技术问题所采用的技术方案是:
本发明一种基于差分隐私保护的推荐方法的特点是按如下步骤进行:
步骤一、从网站上获取访问用户对项目的评分信息:
假设所述网站上存在n个访问用户,记为U={u1,u2,...,ui,...,un},ui表示第i个访问用户,1≤i≤n;所述网站上存在m个项目,记为I={item1,item2,...,itemj,…,itemm},itemj表示第j个项目,1≤j≤m;则令第i个访问用户ui对第j个项目itemj的评分信息记为rij,从而得到所有访问用户对所有项目的评分信息所组成的评分矩阵Rn×m,且所述评分矩阵Rn×m为稀疏矩阵;
步骤二、随机生成一个与所述评分矩阵Rn×m具有相同行数和列数的噪声矩阵NOISEn×m,且当rij=0时,所述噪声矩阵NOISEn×m中的第i行第j列元素noiseij=0,当rij≠0时,第i行第j列元素noiseij服从拉普拉斯分布,即noiseij=Laplace(Δr/ε1);Laplace()表示拉普拉斯噪声的随机生成函数;ε1表示第一隐私参数;
将所述噪声矩阵NOISEn×m与评分矩阵Rn×m相加,从而得到加噪声后的扰动评分矩阵R′n×m;且所述扰动评分矩阵R′n×m中的第i行第j列元素r′ij满足式(1):
式(1)中,rmin表示评分下界,rmax表示评分上界;
步骤三、将扰动评分矩阵R′n×m输入到概率矩阵分解算法中进行训练,得到用户因子矩阵Pn×d和项目因子矩阵Qm×d;
步骤3.1、参数定义:令因子数为d,学习率参数为γ,规则参数为λ,梯度下降迭代次数为kmax,当前梯度下降迭代次数为k,预测误差上界为emax,第二隐私参数为ε2;
步骤3.2、初始化k=1;随机初始化第k次迭代的用户因子矩阵和项目因子矩阵服从高斯分布;
步骤3.3、利用式(2)得到第k次迭代中随机生成的服从拉普拉斯分布的噪声
式(2)中,Δr表示全局敏感度,且Δr=max(rij)-min(rij);ε=ε1+ε2,ε表示整体的隐私保护参数;
步骤3.4、利用式(3)得到第k次迭代中第i个访问用户ui对第j个项目itemj的预测误差值
式(3)中,表示第k次迭代的用户因子矩阵中第i行元素,表示第k次迭代的项目因子矩阵中第j行元素,T为转置;
步骤3.5、利用式(4)对所述预测误差值进行限定,得到限定后的预测误差值
步骤3.6、利用式(5)对第k次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素进行更新,得到第k+1次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素
步骤3.7、重复步骤3.3-步骤3.6,从而到得第k+1次迭代中的用户因子矩阵和项目因子矩阵
步骤3.8、判断k+1>kmax是否成立,若成立,则表示完成迭代,并将所述第k+1次迭代中的用户因子矩阵和项目因子矩阵作为最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d,并执行步骤四;否则,令k+1赋值给k,并返回步骤3.4执行;
步骤四、利用式(6)获得到所有访问用户对所有项目的预测评分矩阵
步骤五、根据所述预测评分矩阵得到第i个访问用户ui对所有项目的预测评分 表示第i个访问用户ui对第j个项目itemj的预测评分;
从所述第i个访问用户ui的预测评分中选出预测评分最高的前top个项目作为推荐结果并提供给所述第i个访问用户ui。
相对于现有的推荐系统隐私保护方案,本发明的有益效果体现在:
1、本发明所使用的推荐算法以概率矩阵分解算法为例,基于差分隐私和概率矩阵分解算法,通过对输入数据和在推荐算法运行过程中同时使用差分隐私的拉普拉斯机制进行扰动使得整个推荐方法满足严格意义上的差分隐私,解决了现有推荐系统隐私保护方案中的隐私保护和推荐准确度低的问题,从而提高了推荐准确度的同时也保护用户隐私,并且本发明同样适用于使用其他推荐算法,具有一定的通用性。
2、本发明通过使用差分隐私的拉普拉斯机制,在用户数据输入推荐算法之前和概率矩阵分解推荐算法运行过程中使用差分隐私中的拉普拉斯机制进行扰动,使得这两个扰动过程分别满足ε1-差分隐私和ε2-差分隐私,由差分隐私的组合定理,这两个扰动过程组合起来使得本发明提出的推荐方法满足严格意义上(ε=ε1+ε2)-差分隐私;这就使得本发明提出的推荐方法能在推荐的整个过程中对用户数据进行有效保护,比现有的保护方案具有更高的安全性,这在现有的推荐系统数据隐私保护研究文献中尚未出现。
3、本发明使用的概率矩阵推荐算法可以直接处理稀疏矩阵,无需对原始评分数据的缺省值进行填充,避免了数据预处理中缺省值填充造成的误差,同时也简化了数据预处理的步骤,使得推荐的结果更加准确。
4、本发明将差分隐私和概率矩阵分解推荐算法有机地结合起来,在实现用户数据能在整个推荐过程中被保护的同时,还较好地控制了推荐系统隐私保护方案的执行效率,保证了推荐结果的准确性,具有较好的实用性。从而能更好的满足互联网用户对个性化推荐服务的需求,这会吸引更多的用户选择使用个性化推荐服务。
由此可见,本发明为个性化推荐服务中的用户数据隐私保护领域的进步拓展了空间,不仅能适用于使用概率矩阵分解推荐算法的推荐系统,还能推广到使用其他推荐算法的推荐系统,这将给互联网经济带来较为可观的经济效益。
附图说明
图1为本发明的模型示意图;
图2为本发明的几个主要实施步骤的流程图。
具体实施方式
如图2所示,本实施例中,一种基于差分隐私保护的推荐方法是按如下步骤进行:
步骤一、假设推荐方法是应用于为用户推荐感兴趣项目的网站(例如电影网站);从电影网站上获取访问用户对项目的评分信息:
令电影网站上存在n个访问用户,记为U={u1,u2,...,ui,…,un},ui表示第i个访问用户,1≤i≤n;网站上存在m部电影,记为I={item1,item2,...,itemj,…,itemm},itemj表示第j部电影,1≤j≤m;对该电影网站的n个访问用户进行个性化的推荐,将最有可能满足用户兴趣度的电影推荐给访问该网站的用户;
记录每个用户通过使用各种设备(如手机、电脑等)对该电影网站上电影观的看记录,并且收集每个用户对观看过的电影的评分信息;则令第i个访问用户ui对第j部电影itemj的评分信息记为rij(当用户ui对电影itemj没有评分时,rij=0),并且规定电影的评分范围为[rmin,rmax]且设rmin=1,rmax=5;从而得到所有访问用户对所有电影的评分信息所组成的评分矩阵Rn×m,且评分矩阵Rn×m为稀疏矩阵,因为用户只对自己观看过的电影进行评分;
步骤二、随机生成一个与评分矩阵Rn×m具有相同行数和列数的噪声矩阵NOISEn×m,且当rij=0时,噪声矩阵NOISEn×m中的第i行第j列元素noiseij=0,当rij≠0时,第i行第j列元素noiseij服从拉普拉斯分布,即noiseij=Laplace(Δr/ε1);Laplace()表示拉普拉斯噪声的随机生成函数;ε1表示第一隐私参数;隐私参数的特征是:ε1越小安全性越好;因为私参数是可以灵活设置的,若隐私参数过大安全性小,过小则会破坏原始数据的可用性,因此在实际操作中应该根据具体的数据来调整隐私参数的值,达到既能很好的保证数据安全又能保证数据的可用性;在输入数据中加入拉普拉斯噪声,使得该过程满足差分隐私,即使在不诚实的推荐系统中原始评分数据都不易泄露。
注意,全局敏感度Δr=max(rij)-min(rij);在敏感度Δr的计算中,rij是评分矩阵Rn×m中不等于0的元素,这里用户评分是L1范数敏感度;
式(1)为拉普拉斯分布的概率密度函数:
式(1)中μ和b分别表示变量x的期望和尺度参数,在差分隐私的拉普拉斯机制中μ=0,该分布的方差为σ2=2b2;在这里用式(2)来计算b的值:
b=Δr/ε1 (2)
将噪声矩阵NOISEn×m与评分矩阵Rn×m相加,从而得到加噪声后的扰动评分矩阵R′n×m;扰动评分矩阵R'n×m计算如式(3):
R'n×m=Rn×m+NOISEn×m (3)
扰动评分矩阵R'n×m具体表示为:R'n×m={rij'|rij'=rij+noiseij,rij∈Rn×m,noiseij∈NOISEn×m}。且扰动评分矩阵R′n×m中的第i行第j列元素r′ij满足式(4):
式(4)中,rmin表示评分下界,rmax表示评分上界;从而限定扰动后的评分矩阵R'n×m的评分rij'在范围[rmin,rmax],这样做的目的是为了防止噪声添加过多的情况发生,提高了扰动后的评分数据的可用性。
步骤三、将扰动评分矩阵R′n×m输入到概率矩阵分解算法中进行训练,得到用户因子矩阵Pn×d和项目因子矩阵Qm×d;
步骤3.1、参数定义:令因子数为d,学习率参数为γ,规则参数为λ,梯度下降迭代次数为kmax,当前梯度下降迭代次数为k,预测误差上界为emax,第二隐私参数为ε2;其中,因子数d的值要远远小于m和n的值,在用一般的训练数据进行训练时,d的取值范围为:20≤d≤200,具体d的取值在推荐系统训练中进行调参,在本实例中d的取值为50;kmax是梯度下降迭代次数,kmax的值设为20,表示在算法中梯度下降的过程迭代20次;
步骤3.2、初始化k=1;随机初始化第k次迭代的用户因子矩阵和项目因子矩阵服从高斯分布;
步骤3.3、利用式(5)得到第k次迭代中随机生成的服从拉普拉斯分布的噪声
式(2)中,Δr表示全局敏感度,且Δr=max(rij)-min(rij);ε=ε1+ε2,ε表示整体的隐私保护参数;如图1所示,将对用户数据的扰动过程和概率矩阵分解推荐算法的扰动过程组合起来,就使得整个推荐方法满足ε=ε1+ε2差分隐私,也就是说总体隐私参数ε是由ε1,ε2两部分组成,ε1,ε2的大小可以在实现中进行调整;
步骤3.4、利用式(6)得到第k次迭代中第i个访问用户ui对第j个项目itemj的预测误差值
式(6)中,表示第k次迭代的用户因子矩阵中第i行元素,表示第k次迭代的项目因子矩阵中第j行元素,T为转置;
步骤3.5、利用式(7)对预测误差值进行限定,得到限定后的预测误差值
在本实施方案中,预测误差上界emax设置为2;
步骤3.6、利用式(8)对第k次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素进行更新,得到第k+1次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素
γ,λ分别表示学习率参数和规则参数在具体的情况下设初值,然后根据推荐算法运行结果进行调整,本实例中将学习率参数γ和规则参数λ的初始值分别设为55和0.05;
步骤3.7、重复步骤3.3-步骤3.6,从而到得第k+1次迭代中的用户因子矩阵和项目因子矩阵
步骤3.8、判断k+1>kmax是否成立,若成立,则表示完成迭代,并将第k+1次迭代中的用户因子矩阵和项目因子矩阵作为最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d,并执行步骤四;否则,令k+1赋值给k,并返回步骤3.4执行;
在本发明提出的基于差分隐私保护的推荐方法中,不需要对传入推荐系统的稀疏评分矩阵进行预处理(填充缺省值),因为本发明中使用的概率矩阵分解推荐算法可以直接处理稀疏矩阵,这样就能避免在数据预处理过程中带来的误差。
步骤四、利用式(9)获得到所有访问用户对所有项目的预测评分矩阵
步骤五、根据预测评分矩阵得到第i个访问用户ui对所有项目的预测评分 表示第i个访问用户ui对第j个项目itemj的预测评分;
从第i个访问用户ui的预测评分中选出预测评分最高的前top个项目作为推荐结果并提供给第i个访问用户ui;本实例中将top的值设置为5,也就是说将预测评分最高的前5部电影推荐给用户。
Claims (1)
1.一种基于差分隐私保护的推荐方法,其特征是按如下步骤进行:
步骤一、从网站上获取访问用户对项目的评分信息:
假设所述网站上存在n个访问用户,记为U={u1,u2,…,ui,…,un},ui表示第i个访问用户,1≤i≤n;所述网站上存在m个项目,记为I={item1,item2,...,itemj,…,itemm},itemj表示第j个项目,1≤j≤m;则令第i个访问用户ui对第j个项目itemj的评分信息记为rij,从而得到所有访问用户对所有项目的评分信息所组成的评分矩阵Rn×m,且所述评分矩阵Rn×m为稀疏矩阵;
步骤二、随机生成一个与所述评分矩阵Rn×m具有相同行数和列数的噪声矩阵NOISEn×m,且当rij=0时,所述噪声矩阵NOISEn×m中的第i行第j列元素noiseij=0,当rij≠0时,第i行第j列元素noiseij服从拉普拉斯分布,即noiseij=Laplace(Δr/ε1);Laplace()表示拉普拉斯噪声的随机生成函数;ε1表示第一隐私参数;Δr表示全局敏感度;
将所述噪声矩阵NOISEn×m与评分矩阵Rn×m相加,从而得到加噪声后的扰动评分矩阵R′n×m;且所述扰动评分矩阵R′n×m中的第i行第j列元素r′ij满足式(1):
<mrow>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>r</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
<mo>,</mo>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>&le;</mo>
<msub>
<mi>r</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>,</mo>
<msub>
<mi>r</mi>
<mi>min</mi>
</msub>
<mo><</mo>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo><</mo>
<msub>
<mi>r</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>r</mi>
<mi>max</mi>
</msub>
<mo>,</mo>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>&GreaterEqual;</mo>
<msub>
<mi>r</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
式(1)中,rmin表示评分下界,rmax表示评分上界;
步骤三、将扰动评分矩阵R′n×m输入到概率矩阵分解算法中进行训练,得到用户因子矩阵Pn×d和项目因子矩阵Qm×d;
步骤3.1、参数定义:令因子数为d,学习率参数为γ,规则参数为λ,梯度下降迭代次数为kmax,当前梯度下降迭代次数为k,预测误差上界为emax,第二隐私参数为ε2;
步骤3.2、初始化k=1;随机初始化第k次迭代的用户因子矩阵和项目因子矩阵服从高斯分布;
步骤3.3、利用式(2)得到第k次迭代中随机生成的服从拉普拉斯分布的噪声
<mrow>
<msubsup>
<mi>noise</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>=</mo>
<mi>L</mi>
<mi>a</mi>
<mi>p</mi>
<mi>l</mi>
<mi>a</mi>
<mi>c</mi>
<mi>e</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>k</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
<mi>&Delta;</mi>
<mi>r</mi>
<mo>/</mo>
<msub>
<mi>&epsiv;</mi>
<mn>2</mn>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
式(2)中,Δr表示全局敏感度,且Δr=max(rij)-min(rij);ε=ε1+ε2,ε表示整体的隐私保护参数;rij是评分矩阵Rn×m中不等于0的元素;
步骤3.4、利用式(3)得到第k次迭代中第i个访问用户ui对第j个项目itemj的预测误差值
<mrow>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>=</mo>
<msubsup>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>p</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<msup>
<mrow>
<mo>(</mo>
<msubsup>
<mi>q</mi>
<mi>j</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>)</mo>
</mrow>
<mi>T</mi>
</msup>
<mo>+</mo>
<msubsup>
<mi>noise</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
式(3)中,表示第k次迭代的用户因子矩阵中第i行元素,表示第k次迭代的项目因子矩阵中第j行元素,T为转置;
步骤3.5、利用式(4)对所述预测误差值进行限定,得到限定后的预测误差值
<mrow>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>e</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo><</mo>
<mo>-</mo>
<msub>
<mi>e</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>|</mo>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>|</mo>
<mo>&le;</mo>
<msub>
<mi>e</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mi>max</mi>
</msub>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>></mo>
<msub>
<mi>e</mi>
<mi>max</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
步骤3.6、利用式(5)对第k次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素进行更新,得到第k+1次迭代的用户因子矩阵中第i行元素和项目因子矩阵第j行元素
<mrow>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msubsup>
<mi>p</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</msubsup>
<mo>=</mo>
<msubsup>
<mi>p</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>+</mo>
<mi>&gamma;</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>&CenterDot;</mo>
<msup>
<mrow>
<mo>(</mo>
<msubsup>
<mi>q</mi>
<mi>j</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>)</mo>
</mrow>
<mi>T</mi>
</msup>
<mo>-</mo>
<msubsup>
<mi>&lambda;p</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msubsup>
<mi>q</mi>
<mi>j</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</msubsup>
<mo>=</mo>
<msubsup>
<mi>q</mi>
<mi>j</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>+</mo>
<mi>&gamma;</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>e</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mo>&prime;</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</mrow>
</msubsup>
<mo>&CenterDot;</mo>
<msup>
<mrow>
<mo>(</mo>
<msubsup>
<mi>p</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>)</mo>
</mrow>
<mi>T</mi>
</msup>
<mo>-</mo>
<msubsup>
<mi>&lambda;q</mi>
<mi>j</mi>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
</msubsup>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
步骤3.7、重复步骤3.3-步骤3.6,从而到得第k+1次迭代中的用户因子矩阵和项目因子矩阵
步骤3.8、判断k+1>kmax是否成立,若成立,则表示完成迭代,并将所述第k+1次迭代中的用户因子矩阵和项目因子矩阵作为最终的用户因子矩阵Pn×d和项目因子矩阵Qm×d,并执行步骤四;否则,令k+1赋值给k,并返回步骤3.4执行;
步骤四、利用式(6)获得到所有访问用户对所有项目的预测评分矩阵
<mrow>
<msub>
<mover>
<mi>R</mi>
<mo>^</mo>
</mover>
<mrow>
<mi>n</mi>
<mo>&times;</mo>
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>P</mi>
<mrow>
<mi>n</mi>
<mo>&times;</mo>
<mi>d</mi>
</mrow>
</msub>
<msubsup>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mo>&times;</mo>
<mi>d</mi>
</mrow>
<mi>T</mi>
</msubsup>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
步骤五、根据所述预测评分矩阵得到第i个访问用户ui对所有项目的预测评分 表示第i个访问用户ui对第j个项目itemj的预测评分;
从所述第i个访问用户ui的预测评分中选出预测评分最高的前top个项目作为推荐结果并提供给所述第i个访问用户ui。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710619287.XA CN107392049B (zh) | 2017-07-26 | 2017-07-26 | 一种基于差分隐私保护的推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710619287.XA CN107392049B (zh) | 2017-07-26 | 2017-07-26 | 一种基于差分隐私保护的推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107392049A CN107392049A (zh) | 2017-11-24 |
CN107392049B true CN107392049B (zh) | 2018-04-17 |
Family
ID=60342633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710619287.XA Active CN107392049B (zh) | 2017-07-26 | 2017-07-26 | 一种基于差分隐私保护的推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107392049B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108280217A (zh) * | 2018-02-06 | 2018-07-13 | 南京理工大学 | 一种基于差分隐私保护的矩阵分解推荐方法 |
CN108427891B (zh) * | 2018-03-12 | 2022-11-04 | 南京理工大学 | 基于差分隐私保护的邻域推荐方法 |
CN108628955A (zh) * | 2018-04-10 | 2018-10-09 | 中国科学院计算技术研究所 | 推荐系统的个性化隐私保护方法及系统 |
CN110443060B (zh) * | 2018-05-03 | 2023-06-20 | 创新先进技术有限公司 | 一种数据处理方法和装置 |
CN108920495B (zh) * | 2018-05-23 | 2020-08-11 | 国政通科技股份有限公司 | 一种基于大数据的增值服务方法及系统 |
CN109033453B (zh) * | 2018-08-24 | 2021-10-26 | 安徽大学 | 一种基于rbm与差分隐私保护的聚类的电影推荐方法及系统 |
CN109543094B (zh) * | 2018-09-29 | 2021-09-28 | 东南大学 | 一种基于矩阵分解的隐私保护内容推荐方法 |
CN109885769A (zh) * | 2019-02-22 | 2019-06-14 | 内蒙古大学 | 一种基于差分隐私算法的主动推荐系统及装置 |
CN110490002B (zh) * | 2019-08-27 | 2021-02-26 | 安徽大学 | 一种基于本地化差分隐私的多维众包数据真值发现方法 |
CN110837603B (zh) * | 2019-11-09 | 2022-03-15 | 安徽大学 | 一种基于差分隐私保护的集成推荐方法 |
CN111125517B (zh) * | 2019-12-06 | 2023-03-14 | 陕西师范大学 | 一种基于差分隐私和时间感知的隐式矩阵分解推荐方法 |
CN111177781A (zh) * | 2019-12-30 | 2020-05-19 | 北京航空航天大学 | 一种基于异构信息网络嵌入的差分隐私推荐方法 |
CN112214793A (zh) * | 2020-09-30 | 2021-01-12 | 南京邮电大学 | 一种基于融合差分隐私的随机游走模型推荐方法 |
CN112733181B (zh) * | 2020-12-18 | 2023-09-15 | 平安科技(深圳)有限公司 | 一种产品推荐方法、系统、计算机设备及存储介质 |
CN112668054B (zh) * | 2021-01-15 | 2024-07-19 | 长沙理工大学 | 一种基于张量分解的数据流量隐私保护恢复方法及设备 |
CN113051587B (zh) * | 2021-03-10 | 2024-02-02 | 中国人民大学 | 一种隐私保护智能交易推荐方法、系统和可读介质 |
CN113204793A (zh) * | 2021-06-09 | 2021-08-03 | 辽宁工程技术大学 | 一种基于个性化差分隐私保护的推荐方法 |
CN113297621B (zh) * | 2021-06-10 | 2024-09-06 | 南京航空航天大学 | 一种基于个性化本地差分隐私的数据收集方法 |
CN113573305B (zh) * | 2021-08-03 | 2023-05-12 | 同济大学 | 一种无线协作定位中的位置隐私保护方法 |
CN113674066A (zh) * | 2021-09-06 | 2021-11-19 | 中国银行股份有限公司 | 一种手机银行理财产品的推荐方法及系统 |
CN113674036A (zh) * | 2021-09-06 | 2021-11-19 | 中国银行股份有限公司 | 一种手机银行广告的推荐方法及系统 |
CN114117203B (zh) * | 2021-11-08 | 2024-06-11 | 长沙理工大学 | 一种短视频推荐方法、系统及设备 |
CN113821732B (zh) * | 2021-11-24 | 2022-02-18 | 阿里巴巴达摩院(杭州)科技有限公司 | 保护用户隐私的项目推荐方法、设备和学习系统 |
CN114117306B (zh) * | 2021-11-30 | 2022-07-15 | 安徽大学绿色产业创新研究院 | 一种基于本地化差分隐私保护的多目标推荐方法 |
CN116595254B (zh) * | 2023-05-18 | 2023-12-12 | 杭州绿城信息技术有限公司 | 一种智慧城市中数据隐私与服务的推荐方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574430A (zh) * | 2015-12-02 | 2016-05-11 | 西安邮电大学 | 协同过滤推荐系统中一种新型的隐私保护方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5846442B2 (ja) * | 2012-05-28 | 2016-01-20 | ソニー株式会社 | 情報処理装置、情報処理方法、および、プログラム |
CN104050267B (zh) * | 2014-06-23 | 2017-10-03 | 中国科学院软件研究所 | 基于关联规则满足用户隐私保护的个性化推荐方法及系统 |
CN106557654B (zh) * | 2016-11-16 | 2020-03-17 | 中山大学 | 一种基于差分隐私技术的协同过滤方法 |
-
2017
- 2017-07-26 CN CN201710619287.XA patent/CN107392049B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574430A (zh) * | 2015-12-02 | 2016-05-11 | 西安邮电大学 | 协同过滤推荐系统中一种新型的隐私保护方法 |
Non-Patent Citations (1)
Title |
---|
差分隐私保护下一种改进的协同过滤推荐算法;王彤等;《信息安全与技术》;20160430(第4期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107392049A (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107392049B (zh) | 一种基于差分隐私保护的推荐方法 | |
Engle et al. | Large dynamic covariance matrices | |
Belloni et al. | Post-selection inference for generalized linear models with many controls | |
Bozóki | Inefficient weights from pairwise comparison matrices with arbitrarily small inconsistency | |
CN102750360B (zh) | 一种用于推荐系统的计算机数据挖掘方法 | |
Pereira et al. | Detecting model misspecification in inflated beta regressions | |
Bartolucci et al. | Modified profile likelihood for fixed-effects panel data models | |
Christ et al. | Differential privacy and swapping: Examining de-identification’s impact on minority representation and privacy preservation in the US census | |
CN107480227A (zh) | 一种基于大数据的信息推送方法 | |
Akdeniz et al. | Efficiency of the generalized-difference-based weighted mixed almost unbiased two-parameter estimator in partially linear model | |
Månsson et al. | Performance of some weighted Liu estimators for logit regression model: an application to Swedish accident data | |
Li et al. | Estimation of semi-varying coefficient models with nonstationary regressors | |
Iraji et al. | Classification tomatoes on machine vision with fuzzy the mamdani inference, adaptive neuro fuzzy inference system based (anfis-sugeno). | |
CN106951528A (zh) | 一种推荐信息确定方法及装置 | |
CN104008204A (zh) | 一种动态的多维情境感知电影推荐系统及其实现方法 | |
Noori Asl et al. | Penalized and ridge-type shrinkage estimators in Poisson regression model | |
Belaid et al. | Bayesian adaptive bandwidth selector for multivariate discrete kernel estimator | |
Nguyen et al. | A simultaneous spatial autoregressive model for compositional data | |
Liu et al. | Evaluation of model fit in structural equation models with ordinal missing data: a comparison of the D 2 and MI2S methods | |
CN106777069A (zh) | 基于矩阵因子分解的个性化推荐方法及推荐系统 | |
Wang et al. | SVD-based privacy preserving data updating in collaborative filtering | |
Moosaei et al. | Tikhonov regularization for infeasible absolute value equations | |
Nicolardi | Simultaneously balancing supply–use tables at current and constant prices: a new procedure | |
Zhang et al. | Recommendation using DMF-based fine tuning method | |
Karimi | The right–left preconditioning technique for the solution of the large matrix equation AXB= C |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200902 Address after: 230088 14th floor, building 1, Tianyuan dike science and Technology Park, 66 Yunfei Road, high tech Zone, Hefei City, Anhui Province Patentee after: Anhui Dike Digital Gold Technology Co.,Ltd. Address before: 230601 No. 111 Jiulong Road, Hefei, Anhui Patentee before: ANHUI University |