首页 / 一种隐私保护密度聚类轨迹数据发布模型

一种隐私保护密度聚类轨迹数据发布模型实质审查 发明

技术领域

[0001] 本发明涉及轨迹隐私技术领域,尤其是涉及一种隐私保护密度聚类轨迹数据发布模型。

相关背景技术

[0002] 随着智能定位设备的普及和定位技术的进步,基于位置的服务(LBS)正变得越来越流行。然而,公众对于使用LBS服务时隐私轨迹的担忧也在增加。轨迹数据分布的不合理可能会导致用户隐私泄露,尤其是在诚实第三方无意中收集协作者数据的情况下。此外,基于背景知识的攻击仍然是一个存在的威胁。在处理轨迹数据时,使用不合理的聚类算法可能导致聚类过程偏差。Li等人提出了一种包含有界噪声约束和差分隐私技术相结合的NGTMA算法,实现了高数据可用性,Ma等人提出了一种新的基于随机采样差分隐私(TPRSDP)的轨迹隐私保护方法,可以提供更多的安全保护,然而,由于轨迹数据具有实时性,采用静态隐私保护模型的效率受到严重限制。此外,另外,常见的k‑means聚类算法仅适合处理特定形状的数据,并未考虑到噪声的影响,这可能会显著影响聚类结果的准确性。

具体实施方式

[0056] 实施例
[0057] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0058] 参照图1,提供了一种隐私保护密度聚类轨迹数据发布模型(TDPOM‑PDC),包括:
[0059] 用户层,数据所有者保存本身轨迹数据,并将其发送到云服务器中,暂存于云服务器。
[0060] 云服务器,包括两个非合谋的云服务器S1和S2,云服务器S1和S2对用户层的私有轨迹数据进行安全计算,私有轨迹数据在云服务器S1和S2之间通过算法共享实现秘密共享,安全计算包括数据预处理、时空泛化和轨迹优化,进行安全计算后的数据被传输到本地服务器中。
[0061] 本地服务器,在数据中添加噪声,将添加噪声后的轨迹进行发布。
[0062] 首先,数据持有者将各自轨迹数据份额发送到两个非合谋服务器中;然后,云服务器在隐私数据状态下进行数据预处理,两个云服务器通过扩展的安全双方计算模型秘密地进行数据共享实现轨迹数据处理过程。
[0063] 数据预处理
[0064] 在开始聚类之前先对数据进行预处理,即以并行方式计算每个记录的所有成对距离,减少了邻居查询的开支。
[0065] 云服务器S1、S2分别接收到来自轨迹数据持有者的轨迹数据L1和后L2,开始轨迹的秘密处理。对于需要聚类的输入数据,使用算术共享使得任意数量的数据所有者可以加入数据处理过程,不需要加密密钥。此外,ppDBSCAN支持任何数据分割,即水平或垂直分布的数据,或两者的任意混合,由于算法共享,数据所有者可以秘密共享他们持有的数据记录的属性,并将这些份额发送给双方。
[0066] 首先,将轨迹数据存放在向量X中,形成算数共享秘密共享数据。两个服务器还可以通过秘密共享获得DBSCAN算法的参数最小邻居值和两个输入记录之间的最大距离。
[0067] 其次,使用安全双方计算算法将向量X中每个数据记录的第j个坐标的秘密共享与SIMD算术共享中的函数calculateWithSIMD(..)相结合,并将SIMD算法共享收集在j维向量sharedParts中。
[0068] 然后,循环执行上一步,每次执行,每个参与方都会创建一个j维向量tempData,其中,第j条记录包含n乘以第i条记录的第j个坐标的秘密共享,n表示数据集大小。
[0069] 进一步的,使用安全双方计算轨迹数据平方欧式距离,将结果与设定阈值比较,将计较结果保存在向量result中,并对向量result中数据进行拆分。
[0070] 最后,使用并行化距离计算对轨迹数据进行处理得到符合阈值的轨迹数据。
[0071] 经过并行化距离计算对轨迹数据进行初步处理得到符合阈值要求的轨迹数据,但实现聚类过程的完全隐私,仅进行私有距离计算是不够的,所有中间信息(如集群的大小、分配模式和集群数量)都不能泄露,因此,还需要对输入轨迹数据进行共享。
[0072] 对输入轨迹数据共享步骤包括:
[0073] 服务器双方对每个输入记录都创建一个对象,描述每个输入记录的属性值。
[0074] 对result中拆分子集进行判断,当大于设定阈值时判断为不是聚类中心和噪点,否则反之。
[0075] 将每条记录和其他记录的距离与阈值比较结果的秘密共享保存。
[0076] 设定最小邻居数,判断输入记录是否有超过最小邻居数的邻居,是为核心元素,否则反之,并保存在服务器双方的联合秘密共享数据集中。
[0077] 时空泛化包括时间泛化和空间泛化,参照图2所示,为时空泛化过程示意图。
[0078] 时间泛化
[0079] 使用k‑means算法对共享后的轨迹数据进行时间泛化,即对保存在服务器双方的联合秘密共享数据集进行处理。服务器双方将共享输入轨迹数据中所有对象存放在向量SharedElements中,进行泛化。
[0080] 具体包括:
[0081] (1)服务器双方S1,S2均选择k值和k个初始质心,通过安全双方计算秘密共享预定义的k值和初始质心,属于同一簇的元素时间属性聚类标志相同。
[0082] (2)根据时间属性聚类标志,使用平方欧氏距离进行划分,得到k个时间段Δti(i=1,2,···,k),平方欧式距离表达式为:
[0083]
[0084] 式中,ti和tj表示不同时刻,d(ti,tj)表示两者之间的欧氏距离。
[0085] (3)计算每个聚类的中心ui,公式为:
[0086]
[0087] 式中,ui表示新的质心。
[0088] (4)迭代步骤(2)和步骤(3)直到最大的步数或者前后的距离之差小于阈值,聚类质心靠近目的地并停止移动,得到最接近的时间簇集合,计算其质心作为该簇的泛化时间戳,形成k个聚类结果,经过时间泛化后的轨迹参照图3所示。
[0089] 空间泛化
[0090] 采用隐私保护聚类方法DBSCAN进行空间位置点的隐私聚类划分,其中,DBSCAN算法协议的所有位操作都是通过Yao共享完成的。空间泛化具体步骤包括:
[0091] 服务器双方共同对时间泛化后的k个聚类结果进行判断,判断是否被分配到一个簇中,检查该聚类结果是否是一个核心元素,从而创建一个新的簇或将其标记为噪点。若创建了一个新的簇,将聚类结果中未被聚类分配的邻居添加到创建的新簇中。若是是核心元素,对其邻居进行分析并添加到集群中。不断进行循环,更新作为核心元素的邻居记录的邻居。进行循环时,将向量SharedElements中轨迹数据作为输入,将他们的属性与SIMD算法份额结合,然后将SIMD算法份额作为输入,更新作为核心元素的邻居记录的邻居。经过空间划分后,每个簇都有对应的聚类中心,参照图4所示。
[0092] 轨迹优化
[0093] 对服务器双方共享聚类中心,通过聚类中心生成的泛化轨迹进行异常处理。
[0094] 所有轨迹的空间区域Ω中,对于每一个Ω,区域内中每一个位置点都被泛化成|Ci|个聚类中心点,那么对于k个固定时间戳,将会产生|C1||C2|···|Ck|条轨迹,这个数据覆盖了所有轨迹发布的可能性。如表1所示,形成8条新轨迹。服务器双方合作统计新生成轨迹对应的真实轨迹数,对应的原始轨迹的数据,检查新产生的轨迹数据集在原始轨迹数据集中是否有对应的原始轨迹,若无则删除异常轨迹,减少发布空轨迹的可能。
[0095] 表1轨迹优化过程
[0096]
[0097] 轨迹加噪并发布
[0098] 在删除异常轨迹之后,如果直接发布轨迹集及其统计数据,存在很大风险,对于真实轨迹记录数为1的轨迹(如l11→l22→l31、l12→l21→l31),如果攻击者拥有一定的背景知识,有可能猜到轨迹归属用户从而导致信息泄露,因此在轨迹发布前,需要对轨迹信息进行混淆。
[0099] 具体步骤包括:
[0100] 统计原始轨迹数目n,新生成轨迹数目为n1,引入差分隐私的Laplace机制,添加Laplace噪声Lap(S(F)/ε)到真实轨迹记录数中;
[0101] 设 表示噪音计数排序的轨迹,Ω表示空间区域,Ci表示 的噪声,其中,C1>C2>···>Ci;
[0102] 从集合(C2,C1)开始,使用Laplace方法计算 轨迹内噪声量位于(Ci+1,Ci)的期望值Numi,公式为:
[0103]
[0104] 式中,f(x,ε)表示Laplace分布的概率密度函数, 表示引入Lap(S(F)/ε)后 中的一条轨迹含噪声量在(Ci+1,Ci)区间内的概率,其中, 内每条轨迹的数目为0。
[0105] 使用差分隐私算法从 中随机选取不同轨迹的噪声量,将随机选取的不同轨迹的噪声量和这些条续保轨迹的原始轨迹数据集 合并,统计加噪轨迹数据之和,当总计数与原始轨迹数目相同时,停止添加噪声,形成输出轨迹数据集。
[0106] 将混淆后的轨迹数据集进行发布,发布过程如表2所示。
[0107] 表2轨迹发布过程
[0108]
[0109] 实施例1
[0110] 使用Lsun和S1数据集测试本模型中DBSCAN算法与k‑means聚类算法的聚类质量,参照图5所示,为Lsun和S1数据集分布图,Lsun数据集(图左)中,包含400个二维数据点。它的基础真值包含3个不同方差和簇距的簇。集群分别有200、100和100个元素,S1数据集(图右)中,具有5000个二维合成数据点,分成15个具有300到350个元素的球状高斯聚类。这些簇有9%的重叠。
[0111] 使用调整兰德指数进行评估,通过计算样本点对位于同一类族和不同类簇的数目来度量两个聚类结果之间的相似程度,其计算式如下:
[0112]
[0113] 其中,a表示在真实和实验情况下都属于同一个簇的点对数目,b表示在真实情况下属于同一个簇而在实验情况下不属于同一个簇的点对数目,c表示在真实情况下不属于同一个簇而在实验情况下属于同一个簇的点对数目,d表示在真实和实验情况下都不属于同一个簇的点对数目。ARI的取值范围为[‑1,1],值越大表明和真实结果越吻合,即聚类效果更好。
[0114] 选择两种聚类算法最优状态下的参数设置。设置k‑means聚类算法的初始聚类质心数量k为3/15;对应DBSCAN算法设置Lsun参数为:2×1011,最小邻居值minPts=4;设置S1参数为:2.25×109,最小邻居值minPts=50。
[0115] 如表3所示,为10次测试的平均值。从表中可以看出,DBSCAN算法有更好的分区。
[0116] 表3聚类结果
[0117]
[0118] 实施例2
[0119] 为了验证TDPOM‑PDC模型的隐私性和数据可用性,与NGTMA和TPRSDP方法进行实验对比。选用微软Research’T‑Drive项目数据库。包含了2008年2月2日至2月8日北京市内10357辆出租车的运行轨迹。该数据集中的点总数约为1500万个,轨迹的总距离达到900万公里。轨迹中的每个节点由出租车ID、记录时间和当前位置(即经、纬度)组成。本文随机选取8:30‑14:30的轨迹数据作为实验数据。预处理后得到6013条轨迹,其中随机选取700条轨迹,共2800个点。
[0120] 隐私性
[0121] 根据差分隐私模型定义,隐私参数ε用于衡量隐私保护强度,较小的ε提供较高的隐私保护强度。使用互信息(Mutual Information,MI)来度量TDPOM‑PDC模型方法的隐私保护程度。互信息衡量的是两个随机变量X和Y的相互依赖程度,如果X和Y是两个相同的变量,知道X就决定了Y的值,反之亦然;如果X和Y是独立的,知道X也不能推断出任何关于Y的信息,反之亦然,所以它们之间的互信息为零。互信息的定义如下:给定函数x(t)和y(t),时间序列t=1,2,3,···,N,则x(t)和y(t)之间互信息的定义为
[0122]
[0123] 选择隐私参数ε=0.1和ε=0.5对三种方案互信息值随聚类数的变化进行分析,每种配置重复10次,并计算平均结果。对比结果如图6、7所示。其中,x轴表示聚类数,y轴表示MI。当隐私预算为0.1时,TDPOM‑PDC模型的隐私损失平均比NGTMA小59.1%,比TPRSDP小30.1%,当隐私预算为0.5时,TDPOM‑PDC模型的隐私损失平均比NGTMA小31.5%,比TPRSDP小28.1%。其主要原因是在空间划分过程中去除噪声点,并删除异常轨迹以优化广义轨迹数据集,从而减少异常轨迹的影响,提高隐私性。
[0124] 可用性
[0125] 使用豪斯多夫距离(HausdorffDistance,HD)来衡量数据的可用性。豪斯多夫距离广泛应用于衡量两个点集之间的相似度。已知两个点集D和 可以计算点集D相对于点集的效用:
[0126]
[0127] 其中 utility(D)值越小,点集D与点集 的相似度越高,说明数据集D的数据效用越好。本实施例中,HD计算合并轨迹的真实计数与其噪声计数之间的距离。
[0128] 选择隐私预算ε为0.1、0.2、0.5对三种方案进行分析,每个配置重复10次,并计算平均结果。实验结果如图8、9、10所示,其中x轴表示聚类数,y轴表示HD。由图8、9、10对比可知,ε的值越大,HD越小,隐私保护算法的数据效用越大。此外,在三组实验结果图中,与NGTMA和TPRSDP相比,所提TDPOM‑PDC模型在大多数情况下具有更小的HD,且曲线波动较平稳,因此TDPOM‑PDC模型产生的数据具有更高的数据效用且效果稳定,而TPRSDP的HD值波动较大,稳定性差。
[0129] 因此,本申请提供的一种隐私保护密度聚类轨迹数据发布模型,有效提高了轨迹发布的隐私性和有效性。
[0130] 最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。

当前第1页 第1页 第2页 第3页
相关技术
发布模型相关技术
密度聚相关技术
杨微发明人的其他相关专利技术