一种基于本地化差分隐私保护的多目标推荐方法转让专利

申请号 : CN202111443344.6

文献号 : CN114117306B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张顺何稳刘星雨崔小娟邹铭敏

申请人 : 安徽大学绿色产业创新研究院

摘要 :

本发明公开了一种基于本地化差分隐私保护的多目标推荐方法,其步骤包括:1、从网站上获取访问用户对项目的评分信息得到评分矩阵;2、将评分矩阵映射成01矩阵;3、使用随即响应机制扰动01矩阵;4、对扰动后的01矩阵使用概率传播算法得到权值矩阵;5、根据权值矩阵初始化种群;6、迭代的对种群进行交叉、变异和更新;7、根据迭代后的种群生成多个推荐结果。本发明能有效地保护用户隐私,同时维持推荐准确性和多样性之间的平衡。

权利要求 :

1.一种基于本地化差分隐私保护的多目标推荐方法,其特征是按如下步骤进行:步骤1、从网站上获取访问用户对项目的评分信息:

假设所述网站上有n个访问用户,记为U={u1,u2,...,ui,...,un},ui表示第i个访问用户,1≤i≤n;所述网站上存在m个项目,记为V={v1,v2,...,vj,...,vm},vj表示第j个项目,1≤j≤m;令第i个访问用户ui对第j个项目vj的评分信息记为rij,从而得到所有访问用户对所有项目的评分信息组成的评分矩阵Rn×m;

步骤2、将评分矩阵Rn×m映射成01矩阵R′n×m;

步骤3、根据随机响应机制对01矩阵R′n×m进行扰动,再使用概率传播算法对扰动后的01矩阵R″n×m进行两次资源分配得到权值矩阵:步骤3.1、定义隐私预算ε,计算概率

步骤3.2、对所述01矩阵R′n×m中第i行第j列的元素r′ij,利用式(1)得到扰动后的元素r″ij:式(1)中,α表示随机数,且α∈[0,1];

步骤3.3、根据访问用户与项目之间的关系构建用户‑项目二部图网络;

步骤3.4、定义变量t并初始化t=1;

步骤3.5、以第t个访问用户ut作为目标用户,利用式(2)计算第一次资源分配后第i个访问用户ui得到的资源值f(uti):式(2)中,kj表示对第j个项目vj评分过的访问用户数;r″tj表示目标用户ut对第j个项目vj的评分分信息;1≤t≤n;

步骤3.6、利用式(3)计算第二次资源分配后第j个项目vj得到的资源值f(vtj),并作为权值ωtj:步骤3.7、将t+1赋值给t后,判断t>n是否成立,若成立,则表示得到每个访问用户对每个项目的权值;若不成立,则返回步骤3.5顺序执行;

步骤4、定义种群规模为N,初始化种群P={p1,p2,...,ps,...,pN},其中,ps表示第s个个体,且 表示第s个个体ps中第i个染色体,且第i个染色体 表示第i个访问用户ui随机选取k个项目所组成的推荐列表;令第

1个个体p1={top_k1,top_k2,...,top_ki,...,top_kn},其中,top_ki表示第i个访问用户ui选取前k个权值最大的项目所组成的推荐列表;1≤s≤N;

步骤5、确定种群中个体的准确性目标函数值和多样性目标函数值;

步骤5.1、利用式(4)计算第e个个体pe的准确性目标函数值PRe:式(4)中, 表示第e个个体pe中第i个访问用户ui的推荐列表;1≤e≤N;

步骤5.2、利用式(5)计算第e个个体pe的多样性目标函数值CVe:式(5)中,dife表示给第e个个体pe中n个访问用户推荐的不同的项目数;

步骤6、初始化NSGA‑II算法的各个参数,包括:进化次数G,最大进化次数Gmax,并初始化G=1;

步骤7、将种群规模为N的第G代种群 进行交叉和变异操作,生成种群规模为N的第G代子代种群为 示表第G代种群中第s个个体;

步骤8、按照步骤5计算第G代子代种群 中第f个个体的准确性目标函数值PRf和多样性目标函数值CVf,1≤f≤N;

步骤9、将第G代种群 和第G代子代种群为 合并后的所有个体进行快速非支配排序,得到2N个个体,并将在第G代合并种群中2N个个体所处的层级集合记为其中, 表示第G代中第θ层级,γ表示种群被划分的层级数;

步骤10、从所述第G代合并种群中选取规模为N的个体种群作为第G+1代的父代种群步骤10.1、初始化θ=1;

步骤10.2、选取第G代中第θ层级 的全部个体放入到第G+1代的父代种群 中,判断父代种群 中的全部个体数是否大于N,若是,则根据拥挤度距离来淘汰部分个体,直至数目等于N为止,从而得到规模为N的第G+1代父代种群 并跳到步骤11,否则,执行步骤10.3;

步骤10.3、令θ+1赋值给θ,并判断θ>γ是否成立,若成立,则执行步骤11;否则,返回步骤10.2;

步骤11、将G+1赋值给G,判断G>Gmax是否成立,若成立,表示完成Gmax次迭代,并得到种群 否则返回步骤7顺序执行;

步骤12、取种群 中第一层级 中所有个体作为pareto最优解集,并以pareto最优解集所对应的推荐列表作为最优推荐方案推荐给n个访问用户。

说明书 :

一种基于本地化差分隐私保护的多目标推荐方法

技术领域

[0001] 本发明属于多目标推荐领域,具体的说是一种基于本地化差分隐私保护的多目标推荐方法。

背景技术

[0002] 随着大数据时代的到来,人们每天都要面临数量庞大、种类繁杂的信息。这些信息可能是社交APP上的文本、音频、文件;也可能是购物商城上琳琅满目的商品。面对这些信息,用户往往会陷入信息过载的窘境,无法从众多的选择中找到最有价值的那一个。推荐系统被认为是缓解信息过载最有前景的技术,因为它能够主动分析用户的历史行为,从海量的数据中为用户快速推荐符合偏好的物品。但是,随着推荐系统的逐渐发展,人们对推荐系统又有了进一步的期望,传统的单目标推荐旨在提高推荐的准确性,这不能满足人们个性化的需求。一个用户满意的推荐列表应该不仅有较高的准确性,还要有推荐多样性、新颖性等其他特点,每一个推荐结果都是为用户量身定做,才更能增加推荐系统与用户之间的粘合度。
[0003] 然而,在多目标推荐算法中,用户将自己的数据毫无保留的上传给第三方,这些数据可能是电影评分、购物记录、社交记录等包含用户敏感信息的数据,如果不可信的第三方因为商业利益将数据泄露给其他机构或个人,这势必会造成用户隐私的泄露,使得用户对互联网服务的兴趣度下降,从而造成用户的流失,影响互联网经济的发展。因此,如何在不泄露个人敏感信息的前提下实现高效的多目标推荐变得尤为重要。

发明内容

[0004] 本发明是为了解决上述现有技术存在的不足之处,提出一种基于本地化差分隐私保护的多目标推荐方法,以期能有效解决现有多目标推荐推荐方案中用户数据的安全性差的问题,从而能更好的保护用户数据的隐私并维持推荐结果准确度和多样性之间的平衡。
[0005] 本发明为达到上述发明目的,采用如下技术方案:
[0006] 本发明一种基于本地化差分隐私保护的多目标推荐方法的特点是按如下步骤进行:
[0007] 步骤1、从网站上获取访问用户对项目的评分信息:
[0008] 假设所述网站上有n个访问用户,记为U={u1,u2,...,ui,...,un},ui表示第i个访问用户,1≤i≤n;所述网站上存在m个项目,记为V={v1,v2,...,vj,...,vm},vj表示第j个项目,1≤j≤m;令第i个访问用户ui对第j个项目vj的评分信息记为rij,从而得到所有访问用户对所有项目的评分信息组成的评分矩阵Rn×m;
[0009] 步骤2、将评分矩阵Rn×m映射成01矩阵R′n×m;
[0010] 步骤3、根据随机响应机制对01矩阵R′n×m进行扰动,再使用概率传播算法对扰动后的01矩阵R″n×m进行两次资源分配得到权值矩阵:
[0011] 步骤3.1、定义隐私预算ε,计算概率
[0012] 步骤3.2、对所述01矩阵R′n×m中第i行第j列的元素r′ij,利用式(1)得到扰动后的元素r″ij:
[0013]
[0014] 式(1)中,α表示随机数,且α∈[0,1];
[0015] 步骤3.3、根据访问用户与项目之间的关系构建用户‑项目二部图网络;
[0016] 步骤3.4、定义变量t并初始化t=1;
[0017] 步骤3.5、以第t个访问用户ut作为目标用户,利用式(2)计算第一次资源分配后第i个访问用户ui得到的资源值f(uti):
[0018]
[0019] 式(2)中,kj表示对第j个项目vj评分过的访问用户数;r″tj表示目标用户ut对第j个项目vj的评分分信息;1≤t≤n;
[0020] 步骤3.6、利用式(3)计算第二次资源分配后第j个项目vj得到的资源值f(vtj),并作为权值ωtj:
[0021]
[0022] 步骤3.7、将t+1赋值给t后,判断t>n是否成立,若成立,则表示得到每个访问用户对每个项目的权值;若不成立,则返回步骤3.5顺序执行;
[0023] 步骤4、定义种群规模为N,初始化种群P={p1,p2,...,ps,...,pN},其中,ps表示第s个个体,且 表示第s个个体ps中第i个s
染色体,且第i个染色体samplei 表示第i个访问用户ui随机选取k个项目所组成的推荐列表;令第1个个体p1={top_k1,top_k2,...,top_ki,...,top_kn},其中,top_ki表示第i个访问用户ui选取前k个权值最大的项目所组成的推荐列表;1≤s≤N;
[0024] 步骤5、确定种群中个体的准确性目标函数值和多样性目标函数值;
[0025] 步骤5.1、利用式(4)计算第e个个体pe的准确性目标函数值PRe:
[0026]
[0027] 式(4)中, 表示第e个个体pe中第i个访问用户ui的推荐列表;1≤e≤N;
[0028] 步骤5.2、利用式(5)计算第e个个体pe的多样性目标函数值CVe:
[0029]
[0030] 式(5)中,dife表示给第e个个体pe中n个访问用户推荐的不同的项目数;
[0031] 步骤6、初始化NSGA‑II算法的各个参数,包括:进化次数G,最大进化次数Gmax,并初始化G=1;
[0032] 步骤7、将种群规模为N的第G代种群 进行交叉和变异操作,生成种群规模为N的第G代子代种群为 示表第G代种群中第s个个体;
[0033] 步骤8、按照步骤5计算第G代子代种群 中第f个个体的准确性目标函数值PRf和多样性目标函数值CVf,1≤f≤N;
[0034] 步骤9、将第G代种群 和第G代子代种群为 合并后的所有个体进行快速非支配排序,得到2N个个体,并将在第G代合并种群中2N个个体所处的层级集合记为其中, 表示第G代中第θ层级,γ表示种群被划分的层级数;
[0035] 步骤10、从所述第G代合并种群中选取规模为N的个体种群作为第G+1代的父代种群
[0036] 步骤10.1、初始化θ=1;
[0037] 步骤10.2、选取第G代中第θ层级 的全部个体放入到第G+1代的父代种群中,判断父代种群 中的全部个体数是否大于N,若是,则根据拥挤度距离来淘汰部分个体,直至数目等于N为止,从而得到规模为N的第G+1代父代种群 并跳到步骤11,否则,执行步骤10.3;
[0038] 步骤10.3、令θ+1赋值给θ,并判断θ>γ是否成立,若成立,则执行步骤11;否则,返回步骤10.2;
[0039] 步骤11、将G+1赋值给G,判断G>Gmax是否成立,若成立,表示完成Gmax次迭代,并得到种群 否则返回步骤7顺序执行;
[0040] 步骤12、取种群 中第一层级 中所有个体作为pareto最优解集,并以pareto最优解集所对应的推荐列表作为最优推荐方案推荐给n个访问用户。
[0041] 与现有技术相比,本发明的有益效果在于:
[0042] 1、相对于传统的多目标推荐算法,本发明将本地化差分隐私技术用来保护用户隐私,通过使用随机响应机制,首先将评分矩阵映射成01矩阵,再对01矩阵进行扰动,然后使用概率传播算法对扰动后的01矩阵进行两次资源分配得到权值矩阵,最后采用NSGA‑II算法进行多目标优化,最终获得pareto最优解集;使用了本地化差分隐私技术的多目标推荐算法,解决了用户隐私泄露的问题,得到的推荐方案,不仅维持了推荐的准确性,而且还提高了推荐的多样性。
[0043] 2、本发明的种群初始化过程中,每个访问用户选取前k个权值最大的项目组成推荐列表,作为初始种群中的第一个个体的基因;而每个访问用户随机选取k个项目组成的推荐列表作为初始种群中的其余个体的基因。这种初始化方式,既保证了初始种群中个体的多样性,也确保了各个体中基因变量的合理性。
[0044] 3、本发明通过拥挤度距离淘汰部分过于拥挤的个体,解决了进化过程中种群个体过于密集的问题,遵循依次从低层级到高层级的淘汰原则,保证了种群中个体的离散程度,使得个体分布更加均匀。

附图说明

[0045] 图1为本发明基于本地化差分隐私保护的多目标推荐方法流程图。

具体实施方式

[0046] 本实施例中,一种基于本地化差分隐私保护的多目标推荐方法,适用于多目标推荐过程中的保护用户隐私,首先从网站上得到用户对项目的评分,对评分进行映射,然后使用随机响应机制扰动映射后的评分,接着使用概率传播算法对用户未评分项目进行评分预测,最终通过NSGA‑II算法完成推荐,具体的说,如图1所示,是按如下步骤进行:
[0047] 步骤1、从网站上获取访问用户对项目的评分信息:
[0048] 假设网站上有n个访问用户,记为U={u1,u2,...,ui,...,un},ui表示第i个访问用户,1≤i≤n;网站上存在m个项目,记为V={v1,v2,...,vj,...,vm},vj表示第j个项目,1≤j≤m;令第i个访问用户ui对第j个项目vj的评分信息记为rij,从而得到所有访问用户对所有项目的评分信息组成的评分矩阵Rn×m;
[0049] 步骤2、将评分矩阵Rn×m映射成01矩阵R′n×m,映射规则为:首先设定一个评分阈值threshold,如果rij≥threshold,则r′ij=1;否则r′ij=0;
[0050] 步骤3、根据随机响应机制对01矩阵R′n×m进行扰动,再使用概率传播算法对扰动后的01矩阵R″n×m进行两次资源分配得到权值矩阵:
[0051] 步骤3.1、定义隐私预算ε,ε越小安全性越好,因为隐私预算是可以灵活设置的,若隐私预算过大安全性小,过小则会破坏数据的可用性,因此在实际操作中应该根据具体的数据来调整隐私预算的值。计算概率 p表示不发生扰动的概率,在式(1)中α大于或等于p时才发生扰动;
[0052] 步骤3.2、对01矩阵R′n×m中第i行第j列的元素r′ij,利用式(1)得到扰动后的元素r″ij:
[0053]
[0054] 式(1)中,α表示随机数,且α∈[0,1];
[0055] 步骤3.3、根据访问用户与项目之间的关系构建用户‑项目二部图网络,在网络中用户结点用圆圈表示,项目结点用方块表示;若r″ij=1,表示用户结点i与项目结点j之间有边连接,否则,没有边连接;
[0056] 步骤3.4、定义变量t并初始化t=1;
[0057] 步骤3.5、以第t个访问用户ut作为目标用户,利用式(2)计算第一次资源分配后第i个访问用户ui得到的资源值f(uti):
[0058]
[0059] 式(2)中,kj表示对第j个项目vj评分过的访问用户数;r″tj表示目标用户ut对第j个项目vj的评分分信息;1≤t≤n;
[0060] 步骤3.6、利用式(3)计算第二次资源分配后第j个项目vj得到的资源值f(vtj),并作为权值ωtj:
[0061]
[0062] 步骤3.7、将t+1赋值给t后,判断t>n是否成立,若成立,则表示得到每个访问用户对每个项目的权值;若不成立,则返回步骤3.5顺序执行;
[0063] 步骤4、定义种群规模为N,初始化种群P={p1,p2,...,ps,...,pN},其中,ps表示第s个个体,且 表示第s个个体ps中第i个染色体,且第i个染色体 表示第i个访问用户ui随机选取k个项目所组成的推荐列表;
令第1个个体p1={top_k1,top_k2,...,top_ki,...,top_kn},其中,top_ki表示第i个访问用户ui选取前k个权值最大的项目所组成的推荐列表;1≤s≤N;
[0064] 步骤5、确定种群中个体的准确性目标函数值和多样性目标函数值;
[0065] 步骤5.1、利用式(4)计算第e个个体pe的准确性目标函数值PRe:
[0066]
[0067] 式(4)中, 表示第e个个体pe中第i个访问用户ui的推荐列表;1≤e≤N;
[0068] 步骤5.2、利用式(5)计算第e个个体pe的多样性目标函数值CVe:
[0069]
[0070] 式(5)中,dife表示给第e个个体pe中n个访问用户推荐的不同的项目数;
[0071] 步骤6、初始化NSGA‑II算法的各个参数,包括:进化次数G,最大进化次数Gmax,并初始化G=1;
[0072] 步骤7、将种群规模为N的第G代种群 进行交叉和变异操作,生成种群规模为N的第G代子代种群为 示表第G代种群中第s个个体;
[0073] 步骤8、按照步骤5计算第G代子代种群 中第f个个体的准确性目标函数值PRf和多样性目标函数值CVf,1≤f≤N;
[0074] 步骤9、将第G代种群 和第G代子代种群为 合并后的所有个体进行快速非支配排序,得到2N个个体,并将在第G代合并种群中2N个个体所处的层级集合记为其中, 表示第G代中第θ层级,γ表示种群被划分的层级数,通过对种群的快速非支配排序可以将种群划分为多个层级,有利于对种群的筛选,使得适应度更高基因更优秀的个体更容易存活下来,提高了种群的收敛速度;
[0075] 步骤10、从第G代合并种群中选取规模为N的个体种群作为第G+1代的父代种群[0076] 步骤10.1、初始化θ=1;
[0077] 步骤10.2、选取第G代中第θ层级 的全部个体放入到第G+1代的父代种群中,判断父代种群 中的全部个体数是否大于N,若是,则根据拥挤度距离来淘汰部分个体,直至数目等于N为止,从而得到规模为N的第G+1代父代种群 并跳到步骤11,否则,执行步骤10.3;基于拥挤度距离的淘汰机制遵循从低层级到高层级对种群进行筛选的原则,在不同层级之间选取层级更低的个体进入到下一次迭代中,在同一层级中,选取拥挤度距离更大的个体,使得在保证种群收敛速度的同时,提高种群分布的均匀性。
[0078] 步骤10.3、令θ+1赋值给θ,并判断θ>γ是否成立,若成立,则执行步骤11;否则,返回步骤10.2;
[0079] 步骤11、将G+1赋值给G,判断G>Gmax是否成立,若成立,表示完成Gmax次迭代,并得到种群 否则返回步骤7顺序执行;
[0080] 步骤12、取种群 中第一层级 中所有个体作为pareto最优解集,并以pareto最优解集所对应的推荐列表作为最优推荐方案推荐给n个访问用户。