一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于k-匿名隐私保护的组合推荐方法与流程

2022-04-24 21:01:40 来源:中国专利 TAG:


1.本发明涉及人工智能领域,特别涉及一种基于k-匿名隐私保护的组合推荐方法。


背景技术:

2.传统的推荐方法主要包括协同过滤、基于内容的推荐方法。其中,最经典的算法是协同过滤,如矩阵因子分解,其利用用户与项目直接的交互信息为用户产生推荐,协同过滤是目前应用最为广泛的推荐算法。
3.协同过滤算法就是协同大家的反馈、评价和意见一起对海量的信息进行过滤,从中筛选出目标客户可能感兴趣的信息的推荐过程。
4.基于内容的推荐方法是基于物品相识度,用户特征属性和item的特征之间的匹配程度来做推荐,推荐效果强依赖于特征工程的好坏。
5.协同过滤算法采用的浅层模型无法学习到用户和项目的深层次特征。基于内容的推荐方法利用已有的行为来进行类似属性的项目推荐,这种方法需要特征的有效提取,传统的模型依赖于人工设计特征,其有效性及可扩展性非常有限,制约了基于内容的推荐方法的性能。
6.随着互联网中越来越多的数据能够被感知获取,而绝大部分推荐系统均忽略了保护用户的隐私,未考虑推荐过程中可能存在的泄露用户隐私的问题。
7.针对链路攻击引起的隐私泄露问题,k-匿名算法通过泛化准标识符的属性,使得已发布的每个元组都至少有其他k-1个元组与其属性一致。因泛化后具有相同的准标识符属性值,因此攻击者基于所掌握的背景知识无法识别信息所属个人,但是准标识符属性仍未实现个性化,有待进一步研究。
8.为完善推荐系统安全机制,使隐私保护更具使用价值,因此,现在需要一种基于k-匿名隐私保护的组合推荐方法来解决上述问题。


技术实现要素:

9.有鉴于此,本发明的第一方面目的是提供一种基于k-匿名隐私保护的组合推荐方法,解决了传统推荐模型安全隐私泄露的风险。
10.本发明的第一方面的目的是通过以下技术方案实现的:
11.一种基于k-匿名隐私保护的组合推荐方法,包括:
12.步骤s1:根据待匿名数据表提取匿名元组,构建每个准标识符的泛化树;
13.步骤s2:采用基于聚类的方法进行元组泛化,减少过度泛化导致的信息损失;
14.步骤s3:针对数据表的个性化匿名结果进行评定,匿名检查元组是否达到各自设定的匿名要求,并且对未达标元组进行整合泛化;
15.步骤s4:将元组泛化中用户发出的请求信息中的关键词进行语义分析之后做敏感属性泛化处理,降低敏感属性精度,并将其进行满数据包转发随即轮询转发至元组中其他节点,满足转发终止条件的用户发送给服务器;
16.步骤s5:服务器在接收到数据包之后进行资源匹配,从数据库中调取满足用户所需信息的备选数据,并根据用户信息中包含的显性特征的数量和隐性特征的数量确定至少两种推荐算法,得到推荐算法的推荐结果;
17.步骤s6:服务器构建基于局部性原理的高响应令牌及数据存储结构,并将组合推荐方法返回的结果以数据轮转方式与用户进行令牌验证,最终将推荐数据返还给用户。
18.进一步,所述步骤s2中,采用基于聚类的泛化思想,对元组数据按照匿名要求划分簇集。
19.进一步,步骤s3中,针对数据表个性化匿名结果进行评定,检查元组是否达到泛化要求。
20.进一步,步骤s4中,对泛化处理后的处理进行k匿名处理,满足数据轮转终止条件的用户请求进入服务器。
21.进一步,步骤s5中,对于不同数量的显性特征与隐性特征,采用不同推荐方法的隐私组合推荐。
22.进一步,步骤s6中,服务器将数据请求令牌与推荐结果存储在高响应比优先的调度存储资源构建局部性存储,并将组合推荐方法返回的结果以数据轮转方式与用户进行令牌验证。
23.本发明的第二方面的目的是提供一种电子设备,包括存储器、处理器及存储在储存器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如前所述基于k匿名隐私保护的个性化推荐方法的步骤。
24.本发明的第三方面的目的是提供一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理执行时实现如前所述基于k匿名隐私保护的组合推荐方法的步骤。
25.本发明的有益效果是:
26.本发明通过改进的k-匿名隐私保护方法,基于聚类的泛化方法构建面向敏感属性的匿名集,根据用户敏感属性定义个性化敏属性等级,利用敏感属性泛化树实现对敏感属性的个性化保护,从而满足用户对敏感属性个性化的保护需求,同时采用基于内容推荐和基于知识推荐的组合推荐算法解决了传统推荐算法人工提取特征、数据特征稀疏高维,不注重用户隐私等问题。通过一个改进的k-匿名模型,结合用户敏感属性,并通过轮询方式与服务器通信,得出推荐结果,提高了传统推荐模型隐私保护力度。
27.本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书和前述的权利要求书来实现和获得。
附图说明
28.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
29.图1为本发明的推荐方法框图;
30.图2为网络攻防示意图;
31.图3为数据轮询示意图。
具体实施方式
32.以下将参照附图,对本发明的优选实施例进行详细的描述。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
33.如图1所示,本发明提供了一种基于k-匿名隐私保护的组合推荐方法,包括:
34.根据待匿名数据表提取匿名元组,构建每个准标识符的泛化树;匿名完成后,如果元组的属性没有改变,就不会有信息丢失;如果属性值被属性泛化树中节点的值替换,就会产生一定量的信息丢失。被替换的属性值越接近泛化树的根节点,信息丢失就越大。属性值的信息损失定义为属性值的泛化高度。
35.对于数据表t,定义n个元组的匿名要求为集合s={k1,k2,

,km}(m《n)m,s 中元素不重复。ki<kj∈s,如果i《j,则ki<kj。匿名完成后,从全局来看,如果匿名要求为ka(a∈[1,m])ka匿名的,则称t满足全局个性化k-匿名。
[0036]
接着针对数据表的个性化匿名结果进行评定,检查元组是否达到匿名要求,并且对未达标元组进行整合泛化。以受教育程度为例,泛化如表1所示。
[0037]
表1经泛化后的k-匿名等价类
[0038][0039][0040]
整合好的匿名数据集之后,对用户发出的查询请求中的关键字进行语义分析之后进行敏感属性泛化处理,降低敏感属性精度,将已被泛化处理后的查询请求进行满足数据包转发,随机轮询转发至其他节点,每转发一次计数加1,转发终止调节为用户的查询请求通过令牌验证提交至服务器;服务器高响应单元存储请求令牌与返回结果,根据局部性原理存取,服务器根据组合推荐算法进行资源匹配,将匹配结果以同样令牌轮询验证的方式返回给用户。
[0041]
具体分为发送、组合推荐与接收两个部分
[0042]
(1)发送
[0043]
首先由用户构造查询请求,生成并保存唯一标识这组查询请求的时间戳。
[0044]
其后由该用户生成一随机数i,且1《i《k,用以标记转发的次数,并将构造好的请求与时间戳、随机数一同随机地发送给同一等价类中的其他个体,收到该条请求的用户记录下该请求的编号、转发该请求给同组用户。为了避免第一个转发用户推知他上一个人是真实请求发起者,真实请求发起者一开始提交的转发次数不是0,而是一个[1,(k-1)] 的随机数。
[0045]
其他主机接收到查询请求后检查i是否与k相等,若不等则继续随机地转发,若相等则提交给服务器,并由时间戳记录发送该请求的主机的ip地址。
[0046]
(2)组合推荐
[0047]
服务器根据用户请求信息中包含的显性特征与隐性特征的数量确定至少两个推荐算法;当显性特征数量未超过第一预设阈值,且隐性特征数量未超过第二预设阈值时,对显性特征和隐性特征进行补全;当显性特征未超过第一预设值,隐性特征超过第二预设值,确定使用基于知识和基于内容的组合推荐算法;当显性特征超过第一预设值,隐性特征未超过第二预设值时,采用基于协同过滤和基于社交网络的组合推挤算法;当显性特征与隐性特征数量均超过预设值,采用上述三种中的至少两种组合推荐算法。
[0048]
(3)接收
[0049]
服务器返回组合推荐结果给将该查询请求上传至服务器的主机。这一主机首先检查时间戳判断是否是自己所构造的请求。若不是,则在接收结果后查询先前记录的ip地址,再将接收结果发回到先前记录的ip地址;若是,则保留。下一主机重复上一过程,依次完成该发回过程,这样最后接收结果就返回到了真实请求提交者的手上。在此过程中仅有参与了数据发送时转发过程的用户才可收到返回到的结果,其余未参与发送过程的用户不会出现在接收过程中。
[0050]
总的来说,本实施例的方法可以细化为以下具体步骤:
[0051]
步骤s1:根据待匿名数据表提取匿名元组,构建每个准标识符的泛化树;
[0052]
步骤s2:对提取的所有元组数据按照各自匿名要求划分簇类,每个元组的匿名要求就是其对应簇的匿名要求;
[0053]
步骤s3:针对每个簇进行各自的元组泛化过程,在簇中找到元组个数小于簇集匿名要求的等价类,且找到簇内相似程度最高的两个等价类并将其合并;
[0054]
步骤s4:将等价类内所有元组的准标识符属性值泛化为相同的属性值,以确保做到最小泛化,从而减少因过度泛化导致的信息损失,待所有簇完成泛化,元组泛化结束;
[0055]
步骤s5:对数据表中的所有元组进行匿名要求检查,计算所有准标识符属性值相同的元组个数;
[0056]
步骤s6:如果所有准标识符属性值相同的元组个数大于等于元组的匿名要求,即认定该元组已满足自身设定的匿名要求,可直接输出,如果小于元组的匿名要求,则认为该元组未达到元组匿名要求,判断元组有无进行步骤s1-s4处理,若有,执行步骤s7,否则执行步骤s8;
[0057]
步骤s7:将经过s1-s4处理过的元组在数据表中对应的原始记录与其他未达到匿名要求的元组混合进行重新匿名,以降低因泛化过程重复而产生的数据损失;
[0058]
步骤s8:对未达到元组匿名要求的元组执行s1-s4进行泛化,当未满足匿名要求的元组数占数据表元组总数的比例达到隐私保护阈值时,步骤s5-s8结束。
[0059]
步骤s9:使各个用户的查询请求包在等价类的用户之间随即转发,满足数据轮转过程终止条件(转发累计次数等于个性化k值)的用户上传数据包;
[0060]
步骤s10:服务器在接收到数据包之后进行资源匹配,从数据库中调取满足用户所需信息的备选数据,并根据用户信息中包含的显性特征的数量和隐性特征的数量确定至少两种推荐算法,得到每个推荐算法的推荐结果,对得到的所有推荐结果进行组合打包;
[0061]
步骤s11:服务器将数据请求令牌与步骤s10打包结果存储在高响应比优先的调度存储资源构建局部性存储,并将组合推荐方法返回的结果以数据轮转方式与用户进行令牌验证,最终将推荐数据返还给用户。
[0062]
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
[0063]
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
[0064]
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
[0065]
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
[0066]
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献