查询处理方法及装置与流程

文档序号:27099902发布日期:2021-10-27 17:33阅读:73来源:国知局
查询处理方法及装置与流程

1.本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种查询处理方法及装置。


背景技术:

2.随着大数据时代的到来,如何挖掘数据价值已成为当下的研究热点。在一种挖掘方式中,通过对大量数据进行统计处理,向外界提供统计查询服务。然而,此种查询服务存在泄露单条数据记录的风险,例如,张三查询到前500行数据的均值为20,之后又查询到前501行数据的均值为20.1,此时,其可以得到第501行数据的数值为70.1。
3.差分隐私(differential privacy,简称dp)技术被用于统计查询场景,以应对隐私泄露问题。此项技术的难点在于,如何平衡数据的隐私安全性和查询结果的准确性,因为前者的提高往往会导致后者的降低。因此,迫切需要一种改进的差分隐私方案,可以最小化敏感数据的隐私泄露风险,同时最大化查询结果的准确性。


技术实现要素:

4.本说明书一个或多个实施例描述了一种查询处理方法及装置,针对一批次查询中的每个查询,为其分配确保不会泄露数据隐私的最低噪声功率,从而最大化查询结果的准确性。
5.根据第一方面,提供一种保护数据隐私的查询处理方法,包括:确定有待针对目标数据集进行查询的l条查询各自的查询类型,所述目标数据集记录业务对象的数据;确定各个查询类型针对所述目标数据集的查询敏感度;基于各条查询分别对应的查询敏感度,以及针对所述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率。
6.在一个实施例中,确定有待针对目标数据集进行查询的l条查询各自的查询类型,包括:接收针对所述目标数据集的l条查询请求,其中各条查询请求指示各自的查询类型。
7.在一个实施例中,确定有待针对目标数据集进行查询的l条查询各自的查询类型,包括:获取针对所述目标数据集预先配置的可查询次数l及其中各次查询的查询类型。
8.在一个实施例中,所述查询类型为以下中的任一种:计数、最大值、最小值、均值和方差。
9.在一个实施例中,所述业务对象为以下中的任一种:用户、商品、业务事件。
10.在一个具体的实施例中,所述业务事件为以下中的任一种:注册、访问、登录、支付。
11.在一个实施例中,所述业务对象为用户,所述隐私数据为以下中的任一种:年龄、性别、收入、兴趣爱好、生理指标、操作指标。
12.在一个实施例中,确定各个查询类型针对所述目标数据集的查询敏感度,包括:针对所述各个查询类型,根据第一结果和第二结果之间的最大绝对差值,得到该查询类型对应的查询敏感度;其中,所述第一结果是针对所述目标数据集进行该类型查询得到的结果,
所述第二结果是针对所述目标数据集的邻近数据集进行该类型查询得到的结果。
13.在一个实施例中,所述查询类型包括计数查询;其中,确定各个查询类型针对所述目标数据集的查询敏感度,包括:将所述计数查询的查询敏感度确定为数值1。
14.在一个实施例中,所述查询类型包括最大值查询/最小值查询;其中,确定各个查询类型针对所述目标数据集的查询敏感度,包括:确定所述目标数据集中的最大值和最小值;将所述最大值减去所述最小值的结果,确定为所述最大值查询/最小值查询的查询敏感度。
15.在一个实施例中,所述查询类型包括均值查询;其中,确定各个查询类型针对所述目标数据集的查询敏感度,包括:确定所述目标数据集中的最大值;将所述最大值的绝对值与所述目标数据集的数据个数加1之间的比值,确定为所述均值查询的查询敏感度。
16.在一个实施例中,所述查询类型包括方差查询;其中,确定各个查询类型针对所述目标数据集的查询敏感度,包括:确定所述目标数据集中的最大值和最小值;将所述方差查询的查询敏感度确定为以下因子的乘积:所述最大值和最小值之间差值的平方,所述目标数据集的数据个数,以及所述数据个数加1后进行平方运算的倒数。
17.在一个实施例中,基于各条查询分别对应的查询敏感度,以及针对所述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率,包括:基于各条查询的查询敏感度,确定所述l条查询的查询敏感度和值;针对任意一条查询,根据该条查询的查询敏感度,所述查询敏感度和值,以及所述隐私预算参数 ,确定该条查询分配得到的噪声功率。
18.在一个具体的实施例中,根据该条查询的查询敏感度,所述查询敏感度和值,以及所述隐私预算参数 ,确定该条查询分配得到的噪声功率,包括:获取均值变量的变量值,该变量值基于所述隐私预算参数的参数值,以及差分隐私的高斯机制下所述隐私预算参数和均值变量的约束关系而确定;将该条查询的噪声功率确定为以下因子的乘积:该条查询的查询敏感度,所述查询敏感度和值,以及所述变量值进行平方运算后的倒数。
19.在一个实施例中,所述隐私预算参数包括预算项参数和松弛项参数。
20.在一个实施例中,在确定各条查询分配得到的噪声功率之后,所述方法还包括:针对所述l条查询中任意的目标查询,将其实际返回结果确定为其原始查询结果叠加从差分隐私的目标噪声分布采样的目标噪声,其中目标噪声分布基于所述目标查询分配得到的噪声功率而确定。
21.在一个具体的实施例中,所述目标噪声分布为高斯噪声分布,所述高斯噪声分布以所述目标查询的噪声功率为方差,以0为均值。
22.在一个具体的实施例中,所述的方法,还包括:接收针对所述目标数据集的当前查询请求,其对应当前查询类型;判断对应所述当前查询类型的已处理请求数量是否小于预定阈值,所述已处理请求数量对应的查询请求针对所述目标数据集;在判断出小于的情况下,将所述当前查询请求作为所述目标查询。
23.根据第二方面,提供一种保护数据隐私的查询处理装置,包括:查询类型确定单元,配置为确定有待针对目标数据集进行查询的l条查询各自的查询类型,所述目标数据集记录业务对象的数据;敏感度确定单元,配置为确定各个查询类型针对所述目标数据集的查询敏感度;噪声功率确定单元,配置为基于各条查询分别对应的查询敏感度,以及针对所
述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率。
24.在一个实施例中,所述查询类型确定单元具体配置为:接收针对所述目标数据集的l条查询请求,其中各条查询请求指示各自的查询类型。
25.在一个实施例中,所述查询类型确定单元具体配置为:获取针对所述目标数据集预先配置的可查询次数l及其中各次查询的查询类型。
26.在一个实施例中,所述业务对象为以下中的任一种:用户、商品、业务事件。
27.在一个实施例中,所述敏感度确定单元具体配置为:针对所述各个查询类型,根据第一结果和第二结果之间的最大绝对差值,得到该查询类型对应的查询敏感度;其中,所述第一结果是针对所述目标数据集进行该类型查询得到的结果,所述第二结果是针对所述目标数据集的邻近数据集进行该类型查询得到的结果。
28.在一个实施例中,还包括实际结果确定单元,配置为针对所述l条查询中任意的目标查询,将其实际返回结果确定为其原始查询结果叠加从差分隐私的目标噪声分布采样的目标噪声,其中目标噪声分布基于所述目标查询分配得到的噪声功率而确定。
29.在一个具体的实施例中,还包括目标查询确定单元,配置为:接收针对所述目标数据集的当前查询请求,其对应当前查询类型;判断对应所述当前查询类型的已处理请求数量是否小于预定阈值,所述已处理请求数量对应的查询请求针对所述目标数据集;在判断出小于的情况下,将所述当前查询请求作为所述目标查询。
30.根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序在计算机中执行时,令计算机执行上述第一方面提供的方法。
31.根据第四方面,提供了一种计算设备,包括存储器和处理器,存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述第一方面提供的方法。
32.采用本说明书实施例提供的方法和装置,采用本说明书实施例披露的保护数据隐私的查询处理方法,可以实现针对一批次查询中的每个查询,为其分配确保不会泄露数据隐私的最低噪声功率,从而最大化查询结果的准确性。
附图说明
33.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
34.图1示出根据一个实施例的查询处理方案的实施架构示意图;图2示出根据一个实施例的查询处理方法的流程示意图;图3示出根据另一个实施例的查询处理方案的实施架构示意图;图4示出根据又一个实施例的查询处理方案的实施架构示意图;图5示出根据还一个实施例的查询处理方案的实施架构示意图;图6示出根据一个实施例的查询处理装置的结构示意图。
具体实施方式
35.下面结合附图,对本说明书提供的方案进行描述。
36.如前所述,差分隐私dp技术被用于统计查询场景,以应对隐私泄露问题。通常,在原始查询结果上添加随机噪声,以防止实际返回的查询结果泄露原始数据隐私。然而,已有的方案难以实现数据安全性和返回结果准确性的平衡。
37.基于此,本说明书实施例披露一种基于差分隐私实现的查询处理方案,针对一批次查询,可以为其中各条查询(或称各次查询)分配最优的噪声功率,从而实现即使攻击者获取到这一批次查询的返回结果,也无法破解被查询的原始数据,同时,最大化各条查询返回结果的准确性和可用性。
38.图1示出根据一个实施例的查询处理方案的实施架构示意图。如图1所示,服务平台提供查询服务。首先,服务平台从终端接收l条查询请求,图1中示出第1条查询请求q1和第l条查询请求q
l
;然后,服务平台根据l条查询请求中各条请求的查询类型,确定各条查询请求针对目标数据集的查询敏感度;之后,基于各条查询请求分别对应的查询敏感度,以及针对l次查询预先设定的总的隐私预算参数,确定各条查询请求分配得到的噪声功率,图1中示出查询请求q1和查询请求q
l
分配得到的噪声功率p
q1
和噪声功率p
ql
;接着,针对l条查询请求中任一的目标查询请求(如查询请求q1),基于该目标查询请求分配得到的噪声功率(如噪声功率p
q1
)确定差分隐私的目标噪声分布(如噪声分布d
q1
),从中采样目标噪声(如噪声n
q1
),并在该目标查询的原始查询结果(如原始查询结果r1)上添加该目标噪声,作为该目标查询的实际返回结果(如实际返回结果r1′
)。
39.下面,结合具体的实施例,描述上述查询处理方案的具体实施步骤。
40.图2示出根据一个实施例的查询处理方法的流程示意图,所述方法的执行主体可以为任何具有计算、处理能力的服务器、装置、平台或设备集群,例如,可以为图1中示出的服务平台,或者,用户终端等。如图2所示,所述方法包括以下步骤:步骤s210,确定有待针对目标数据集进行查询的l条查询各自的查询类型,所述目标数据集记录业务对象的数据;步骤s220,确定各个查询类型针对所述目标数据集的查询敏感度;步骤s230,基于各条查询分别对应的查询敏感度,以及针对所述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率。
41.对以上步骤的展开介绍如下:首先,在步骤s210,确定有待针对目标数据集进行查询的l条查询各自的查询类型。其中,目标数据集中包含多条数据记录(或称多个数据样本),对应业务对象的数据(或称隐私数据)。需说明,其中任意两条数据记录对应的业务对象可能相同(例如,对应同一用户),也可能不同(例如,对应不同商品),并且,多条数据记录对应针对业务对象的同一特征项(例如,用户年龄)。此外,对上述多条数据记录的存储环境不作限定,在一种可能的存储情况中,上述多条数据记录存储在数据库中,例如,服务平台预先采集用户授权的个人信息,并将之存储在数据库中;在另一种可能的存储情况中,上述多条数据记录存储在用户终端中,例如,用户终端(如智能手机等)采集用户的终端操作数据(输入表情符号的行为数据),并对此进行存储。
42.在一个实施例中,上述业务对象可以是用户。在一个具体的实施例中,可以是个人用户,相应,上述多个数据样本对应个人用户特征项,如个人用户的姓名、年龄、性别、收入、身份证号、手机号、邮箱、兴趣爱好、生理指标、或操作指标等。在一个示例中,生理指标用于衡量人体健康状况,具体可以是血压、血脂、胆固醇、或血氧浓度等。在一个示例中,操作指
标对应特定操作行为,如支付、点击、或浏览等,用于衡量用户做出特定操作行为的时长或频次等。在另一个具体的实施例中,业务对象还可以是企业用户,相应,上述多个数据样本对应企业用户特征项,如企业用户的税务数据、供应商、账面流动资金、或年度营收等。
43.在另一个实施例中,上述业务对象可以是商品。示例性地,商品具体可以是实体商品,如手办、或纸质书籍等;或者,可以是体验性服务,如旅游产品、按摩服务、视频会员服务、网络课程或支付会员服务等;又或者,还可以是虚拟产品,如游戏皮肤、电子书籍、内容资讯、视频资源、云盘空间、或流量等。相应地,上述多个数据样本对应商品特征项,如商品的成本、库存、销量、或毛利等。
44.在又一个实施例中,上述业务对象可以是业务事件,如,注册事件、访问事件、登录事件或支付事件等;相应地,上述多个数据样本对应事件特征项,如业务事件的发生时刻、网络环境、地理位置或持续时长等。在一个示例中,其中网络环境可以是ip地址、或网络类型等。需理解,网络类型可以包括wifi、4g网络、5g网络等。
45.以上,以业务对象是用户、商品、业务事件为示例,对目标数据集进行介绍。需理解,业务对象并不限于这几种。上述针对目标数据集的查询通常是指统计查询,查询目标数据集的统计信息,或者说聚合信息,例如,目标数据集中记录多个用户姓名,则可以查询其中姓黄的用户的个数。
46.对于上述l条查询及其查询类型,需说明,l为正整数,取值可以为1,但通常大于1;当l>1时,其中任意两条查询对应的查询类型可能相同,也可能不同。示例性地,l条查询涉及的若干(即一个或多个)查询类型可以包括:计数、最大值、最小值、均值和方差。此外,在一种实施场景中,上述l条查询对应针对未来查询请求预先配置的查询信息,包括可查询次数l以及其中各次查询的查询类型;在另一种实施场景中,上述l条查询依赖接收到的l条查询请求,其中各条查询请求指示各自的查询类型。对于这两种实施场景的具体介绍,请参见后文。
47.由上,可以确定上述l条查询各自的查询类型。接着,在步骤s220,确定该l条查询涉及的若干查询类型中,各个查询类型针对上述目标数据集的查询敏感度。
48.需说明,某个类型的查询敏感度旨在反映,基于目标数据集进行该类型查询得到的第一结果,以及基于目标数据集的邻近数据集(adjacent datasets)进行该类型查询得到的第二结果之间的最大差异。其中邻近数据集是指,在目标数据集的基础上增加或删除任意的一条数据后可以得到的数据集。对于上述最大差异的度量,其度量标准可以根据实际需求设定,例如,量化为上述第一查询结果和第二查询结果之间的差值绝对值的最大值(文中或简称最大绝对差值);但实际上,并非所有查询类型对应的最大差异,如最大绝对差值等,都可以被精确求解,此时,可以求解最大差异的近似值或估计值,作为查询敏感度。
49.下面结合查询类型的具体示例,对查询敏感度的计算进行介绍。
50.根据一个实施例,上述若干查询类型包括计数查询(counting query)。对于计数查询,需说明,目标数据集中的多个数据样本对应业务对象的特征项,该特征项的取值空间中包含可能的多个取值,例如,用户性别的可能取值包含男和女,相应,可以将该多个取值作为多个数据类别,使得可以针对其中某个数据类别进行计数查询,即查询该某个数据类别对应的数据样本个数,例如,查询用户数据集中女性用户的个数。
51.基于上述对计数查询的介绍可知,在针对某个数据类别进行计数查询的情况下,
因目标数据集和其邻近数据集之间的数据条数相差为1,而相差的这条数据要么属于该某个数据类别,要么不属于,所以,两个查询结果之间差值的绝对值要么为1,要么为0,据此,可以将1确定为计数查询的查询敏感度,记作:sens
c
=1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)如此,可以确定计数查询对应的查询敏感度sens
c

52.根据另一个实施例,上述若干查询类型包括最大值查询。为清楚描述,文中将上述目标数据集记作,其中n表示数据样本的总数,x
i
表示第i个数据样本;并且,将把n个数据样本由小到大进行顺序排列的结果记作,可以理解,和分别表示n个数据样本中的最小值和最大值。对于目标数据集,其所对应的特征项的取值空间中,存在天然的取值上界和取值下界,或者,工作人员可以针对该特征项设定取值上界和取值下界,不妨将取值上界和取值下界分别记作和,由此可以得到。
53.基于最大值查询类型和查询敏感度的定义,在一个示例中,可以将最大值查询对应的查询敏感度确定为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)在另一个示例中,可以将最大值查询对应的查询敏感度确定为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)如此,可以确定出最大值查询对应的查询敏感度sens
max

54.根据又一个实施例,上述若干查询类型包括最小值查询值,与上述确定最大值查询对应的查询敏感度sens
max
相类似地,在一个示例中,可以将最小值查询对应的查询敏感度确定为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)在另一个示例中,可以将最小值查询对应的查询敏感度确定为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)如此,可以确定出最小值查询对应的查询敏感度sens
min

55.根据再一个实施例,上述若干查询类型包括均值查询。可以将针对目标数据集进行的均值计算记作:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)假定邻近数据集x

相较于目标数据集x增加了一条数据y,并且,,也即,。由此,在一个示例中,可以通过下式计算均值查询对应的查询敏感度:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)据此,可以将均值查询对应的查询敏感度记作:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)如此,可以确定出均值查询对应的查询敏感度sens
mean

56.根据还一个实施例,上述若干查询类型包括方差查询。将目标数据集x中数据样本的均值记作μ,由此,可以将针对目标数据集x进行的方差计算记作:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)假定邻近数据集x

相较于目标数据集x增加了一条数据y,并且,,也即,。由此,可以通过下式计算方差查询对应的查询敏感度:
ꢀꢀꢀ
(10)据此,可以将方差查询对应的查询敏感度记作:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11)如此,可以确定出方差查询对应的查询敏感度sens
var

57.以上,以查询类型为计数、最大值、最小值、均值和方差作为示例,对查询敏感度的计算进行介绍。实际上,上述l条查询涉及的查询类型不限于这几种,还可以包括其他类型,如分位数查询(quantile query)和证据权重查询(weight of evidence query)等。对于其
他查询类型所对应的查询敏感度的计算,可以结合二者的定义进行计算,在此不作穷举。
58.由上,可以确定出上述l条查询涉及的各个查询类型所对应的查询敏感度。需理解,各条查询具有对应的查询类型,而各个查询类型具有对应的查询敏感度,由此,可以得到各条查询对应的查询敏感度。
59.然后,在步骤s230,基于各条查询分别对应的查询敏感度,以及针对上述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率。
60.在一个实施例中,本步骤可以包括:针对l条查询中任意的第条查询,根据该条查询的查询敏感度,l条查询的查询敏感度和值,以及上述隐私预算参数,确定该条查询分配得到的噪声功率。需说明,查询敏感度和值是基于l条查询中各条查询的查询敏感度进行求和而得到。
61.在一个具体的实施例中,先根据上述隐私预算参数的参数值,以及差分隐私的高斯机制下该隐私预算参数和均值变量的约束关系,确定其中均值变量的变量值。其中约束关系是差分隐私的高斯机制中已有的,可以表示为下式:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(12)在上式中,和分别表示上述隐私预算参数中的预算项参数和松弛项参数,二者的参数值可以是由工作人员根据实际需要人为设定的;表示上述均值变量;表示标准高斯分布的概率分布函数,。
62.进一步,针对任意的第条查询,将其噪声功率确定为以下因子的乘积:查询敏感度,上述查询敏感度和值,以及上述均值变量的变量值进行平方运算后的倒数。据此,可以将噪声功率的计算式表示为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)在上式中,表示第条查询的噪声功率,表示第条查询的查询敏感度,表示上述均值变量,表示l条查询的查询敏感度和值。
63.需说明,公式(13)的推导过程如下:在隐私约束下,最小化l条查询的总的噪声功率,等同于以下优化问题:约束条件函数:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)需求解的原函数:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)在公式(14)和(15)中,表示第k条查询的查询敏感度,表示上述均值变量,表示第k条查询的噪声功率。
64.注意到上述优化问题是凸优化问题并且符合slater's 条件,因此,具有强对偶性(strong duality)。针对此优化问题,引入拉格朗日乘子,构建如下的拉格朗日
(lagrangian),将约束条件函数与原函数联系到一起:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)公式(16)的可行解需要满足kkt(the karush

kuhn

tucker)条件:
ꢀꢀꢀꢀꢀꢀꢀꢀ
(17)由此,在满足kkt的条件下极小化拉格朗日,可以得到如下的最优噪声功率分配策略:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(18)需理解,公式(18)等价于公式(13),仅是数学符号的记法略有不同。
65.由上,可以确定出差分隐私的高斯噪声机制下各条查询分配得到的噪声功率。需说明,实际还可以确定出其他噪声机制下各条查询的噪声功率,如拉普拉斯机制、指数机制等。
66.根据另一方面的实施例,在步骤s230之后,上述方法还可以包括:在步骤s240,针对上述l条查询中任意的目标查询,将其实际返回结果确定为其原始查询结果叠加从差分隐私的目标噪声分布采样的目标噪声。其中目标噪声分布基于目标查询分配得到的噪声功率而确定。
67.在一个实施例中,上述目标噪声分布可以为高斯噪声分布,相应,将目标查询的噪声功率作为高斯分布的方差,并以0为均值,生成对应的高斯噪声分布。为清楚描述,以下将目标查询记作第条查询,将其噪声功率记作,由此可以将目标查询对应的高斯噪声分布记作。
68.基于确定出的高斯噪声分布,可以从中采样目标噪声,叠加在目标查询的原始查询结果上,从而得到对应的实际返回结果,计算式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(19)下面,结合查询类型的示例,对公式(19)进行具象描述。
69.根据一个实施例,若目标查询的查询类型是计数查询,则可以基于下式计算实际返回的计数查询结果:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(20)在上式中,n表示目标数据集的数据样本总数;c表示第c个数据类别;c表示数据类别总数;z
c
表示从计数查询所对应的高斯噪声分布中随机采样的噪声;表示针对第c个类别进行计数查询的原始查询结果,表示添加噪声后的实际返回结果;运算符表示四舍五入后进行取整。
70.如此,可以确定计数查询类型对应的实际返回结果。需理解,在确定每条查询对应的实际返回结果时,都会基于对应的高斯噪声分布进行噪声采样。比如说,对于两条具有相同类型的查询,会基于二者对应的同一高斯噪声分布进行两次随机抽样,再分别叠加到查询类型对应的原始查询结果中,从而对应得到两个实际返回结果。
71.根据另一个实施例,若目标查询的查询类型是最大值查询,则可以基于下式计算实际返回的最大值查询结果:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(21)在上式中,表示从最大值查询所对应的高斯噪声分布中随机采样的噪声;表示最大值查询的原始查询结果,也即目标数据集中的最大值;表示对最大值查询对应的实际返回结果。
72.根据又一个实施例,若目标查询的查询类型是最小值查询,则可以基于下式计算实际返回的最小值查询结果:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(22)在上式中,表示从最小值查询所对应的高斯噪声分布中随机采样的噪声;表示最小值查询的原始查询结果,也即目标数据集中的最小值;表示最小值查询对应的实际返回结果。
73.根据还一个实施例,若目标查询的查询类型是均值查询,则可以基于下式计算实际返回的均值查询结果:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(23)在上式中,表示从均值查询所对应的高斯噪声分布中随机采样的噪声,表示目标数据集的均值,表示均值查询对应的实际返回结果。
74.根据再一个实施例,若目标查询的查询类型是方差查询,则可以基于下式计算实际返回的方差查询结果:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(24)在上式中,表示从方差查询所对应的高斯噪声分布中采样的噪声,表示目标数据集的方差,表示方差查询对应的实际返回结果。
75.以上,以差分隐私的高斯机制为示例,对目标噪声的采样和添加进行介绍。在另一个实施例中,上述目标噪声功率的确定基于差分隐私的拉普拉斯机制,相应,可以将目标查询的噪声功率作为拉普拉斯分布的尺度参数,并以0为位置参数,生成对应的拉普拉斯噪声分布,从而实现目标噪声的采样和添加,得到实际返回结果。在还一个实施例中,可以基于差分隐私的指数机制进行目标噪声的采样和添加,进而得到实际返回结果。
76.由上,可以确定l条查询中任意目标查询对应的实际返回结果。
77.需说明,本说明书实施例披露的上述查询处理方法,可以应用于多种实施场景。在一种典型的场景中,如图1所示,先接收一批次待处理的查询请求,于是,在步骤s210中,待处理的查询条数l以及其中各条查询的查询类型基于这批次查询请求而确定,在一个实施
例中,可以获取在预设时段内(如前一天内或最近10min内)接收到的多条查询请求,将其数量记作l,并确定各条查询请求指示的查询类型。之后在步骤s240中,将l条查询请求分别作为目标查询,从而对应进行噪声采样和基于原始查询结果的噪声叠加,进而得到各条查询请求的实际返回结果。如此,可以完成对一批次查询请求的差分隐私处理。
78.在另一种实施场景中,可以针对未来可能接收到的查询请求,预先配置可查询次数l以及其中各次查询的查询类型,由此,在步骤s210中可以直接获取预先配置的这部分信息。需说明,查询次数和查询类型的配置,可以由工作人员基于目标数据集对应的历史查询数据进行分析而确定。
79.进一步,在一个细化的实施场景中,如图3所示,在预备阶段通过执行上述步骤s210、s220和s230,确定各条查询分配得到的噪声功率。然后,在在线处理阶段,基于接收的当前查询请求q
j
执行步骤s240,具体,将当前查询请求q
j
作为目标查询,其对应当前查询类型c
i
;在判断出当前查询类型c
i
对应的针对目标数据集的已处理请求数量小于预置的可查询次数l
ci
的情况下,将当前查询请求q
j
作为目标查询,从而基于目标数据集确定查询类型c
i
对应的原始查询结果f
ci
,并获取预备阶段中确定的对应当前查询类型c
i
的噪声功率p
ci
,进而将从基于噪声功率p
ci
确定的噪声分布中采样的噪声n
j
叠加在原始查询结果f
ci
上,得到实际返回结果f
j
;否则,在判断出上述已处理请求数量等于可查询次数l
ci
的情况下,抛弃当前查询请求q
j

80.在另一个细化的实施场景中,如图4所示,在预备阶段通过执行上述步骤s210、s220和s230,确定各条查询分配得到的噪声功率,并且,还基于目标数据集确定各个查询类型对应的原始查询结果;然后在在线处理阶段,基于接收的当前查询请求q
j
执行步骤s240,具体,将当前查询请求q
j
作为目标查询,其对应当前查询类型c
i
;在判断出此类型对应的针对目标数据集的已处理请求数量小于预置的可查询次数l
ci
的情况下,将当前查询请求q
j
作为目标查询,从而获取预备阶段确定的对应当前查询类型c
i
的原始查询结果f
ci
和噪声功率p
ci
,进而将从基于噪声功率p
ci
确定的噪声分布中采样的噪声n
j
叠加在原始查询结果f
ci
上,得到实际返回结果f
j
;否则,抛弃当前查询请求q
j

81.在又一个细化的实施场景中,如图5所示,在预备阶段通过执行上述步骤s210至步骤s240,确定l条查询中各条查询对应的实际返回结果。之后,在在线处理阶段,接收当前查询请求q
i
,其对应当前查询类型c
i
;在判断出此类型对应的针对目标数据集的已处理请求数量小于预置的可查询次数的情况下,从预备阶段确定出的l个实际返回结果中,获取对应当前查询类型c
i
且尚未被使用的某个实际返回结果,作为当前查询请求q
i
的实际返回结果r
i

;否则,抛弃当前查询请求q
i

82.以上,对本说明书实施例披露的查询处理方法的实施场景进行介绍。
83.综上,采用本说明书实施例披露的保护数据隐私的查询处理方法,可以实现针对一批次查询中的每个查询,为其分配确保不会泄露数据隐私的最低噪声功率,从而最大化查询结果的准确性。
84.与上述查询处理方法相对应的,本说明书实施例还披露查询处理装置。图6示出根据一个实施例的查询处理装置的结构示意图,所述装置可以实现为任何具有计算、处理能力的计算单元、平台、服务器、设备集群等,例如,用户终端或图1中示出的服务平台。如图6所示,所述装置600包括以下单元:
查询类型确定单元610,配置为确定有待针对目标数据集进行查询的l条查询各自的查询类型,所述目标数据集记录业务对象的数据;敏感度确定单元620,配置为确定各个查询类型针对所述目标数据集的查询敏感度;噪声功率确定单元630,配置为基于各条查询分别对应的查询敏感度,以及针对所述l条查询的总集预先设定的隐私预算参数,确定各条查询分配得到的噪声功率。
85.在一个实施例中,所述查询类型确定单元610具体配置为:接收针对所述目标数据集的l条查询请求,其中各条查询请求指示各自的查询类型。
86.在一个实施例中,所述查询类型确定单元610具体配置为:获取针对所述目标数据集预先配置的可查询次数l及其中各次查询的查询类型。
87.在一个实施例中,所述查询类型为以下中的任一种:计数、最大值、最小值、均值和方差。
88.在一个实施例中,所述业务对象为以下中的任一种:用户、商品、业务事件。
89.在一个实施例中,所述业务事件为以下中的任一种:注册、访问、登录、支付。
90.在一个实施例中,所述业务对象为用户,所述隐私数据为以下中的任一种:年龄、性别、收入、兴趣爱好、生理指标、操作指标。
91.在一个实施例中,敏感度确定单元620具体配置为:针对所述各个查询类型,根据第一结果和第二结果之间的最大绝对差值,得到该查询类型对应的查询敏感度;其中,所述第一结果是针对所述目标数据集进行该类型查询得到的结果,所述第二结果是针对所述目标数据集的邻近数据集进行该类型查询得到的结果。
92.在一个实施例中,所述查询类型包括计数查询;敏感度确定单元620具体配置为:将所述计数查询的查询敏感度确定为数值1。
93.在一个实施例中,所述查询类型包括最大值查询/最小值查询;敏感度确定单元620具体配置为:确定所述目标数据集中的最大值和最小值;将所述最大值减去所述最小值的结果,确定为所述最大值查询/最小值查询的查询敏感度。
94.在一个实施例中,所述查询类型包括均值查询;敏感度确定单元620具体配置为:确定所述目标数据集中的最大值;将所述最大值的绝对值与所述目标数据集的数据个数加1之间的比值,确定为所述均值查询的查询敏感度。
95.在一个实施例中,所述查询类型包括方差查询;敏感度确定单元620具体配置为:确定所述目标数据集中的最大值和最小值;将所述方差查询的查询敏感度确定为以下因子的乘积:所述最大值和最小值之间差值的平方,所述目标数据集的数据个数,以及所述数据个数加1后进行平方运算的倒数。
96.在一个实施例中,噪声功率确定单元630具体配置为:基于各条查询的查询敏感度,确定所述l条查询的查询敏感度和值;针对任意一条查询,根据该条查询的查询敏感度,所述查询敏感度和值,以及所述隐私预算参数 ,确定该条查询分配得到的噪声功率。
97.在一个具体的实施例中,噪声功率确定单元630进一步配置为:获取均值变量的变量值,该变量值基于所述隐私预算参数的参数值,以及差分隐私的高斯机制下所述隐私预算参数和均值变量的约束关系而确定;将该条查询的噪声功率确定为以下因子的乘积:该条查询的查询敏感度,所述查询敏感度和值,以及所述变量值进行平方运算后的倒数。
98.在一个实施例中,所述隐私预算参数包括预算项参数和松弛项参数。
99.在一个实施例中,所述装置600还包括实际结果确定单元640,配置为针对所述l条查询中任意的目标查询,将其实际返回结果确定为其原始查询结果叠加从差分隐私的目标噪声分布采样的目标噪声,其中目标噪声分布基于目标查询分配得到的噪声功率而确定在一个具体的实施例中,所述目标噪声分布为高斯噪声分布,所述高斯噪声分布以所述目标查询的噪声功率为方差,以0为均值。
100.另一方面,在一个具体的实施例中,所述装置还包括目标查询确定单元650,配置为:接收针对所述目标数据集的当前查询请求,其对应当前查询类型;判断对应所述当前查询类型的已处理请求数量是否小于预定阈值,所述已处理请求数量对应的查询请求针对所述目标数据集;在判断出小于的情况下,将所述当前查询请求作为所述目标查询。
101.根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
102.根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,该存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
103.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
104.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1