合成数据生成 背景技术 [0001] 生物信息学研究的特征在于大数据集,由于关于样本大小的实际和成本相关的限制,这些数据集通常维度较高、但样本大小较低。当应用数据饥渴的机器学习算法时,这可能导致各种挑战——特别是在类不平衡的情况下,诸如在要分类的一些类别比其他类别具有明显更少的数据点的情况下。具有较少样本的少数类通常也是感兴趣的类。 附图说明 [0002] 将参考附图描述根据本公开的各种实施方案,在附图中: [0003] 图1示出了通过使用数据点密度估计(DDE)和/或对生成模型(诸如GAN)执行隐私过滤来支持合成数据集的生成的提供商网络的示例。 [0004] 图2示出了由利用DDE的合成数据集生成服务实现的DDE算法的示例。 [0005] 图3示出了DDE的示例。 [0006] 图4示出了DDE中的KDE的示例。 [0007] 图5示出了具有隐私的DDE的示例。 [0008] 图6示出了由利用DDE的合成数据集生成服务实现的DDE算法的示例。 [0009] 图7是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。 [0010] 图8是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。 [0011] 图9是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。 [0012] 图10是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。 [0013] 图11示出了根据一些实施方案的示例提供商网络环境。 [0014] 图12是根据一些实施方案的向客户提供存储服务和硬件虚拟化服务的示例提供商网络的框图。 [0015] 图13是示出了可以在一些实施方案中使用的示例计算机系统的框图。 具体实施方式 [0016] 本公开涉及用于生成合成数据的方法、设备、系统和非暂时性计算机可读存储介质。在生命科学中,合成数据生成越来越受到关注,以帮助满足对数据隐私的严格要求以及在不足数据集大小、数据不平衡和偏差、或对数据隐私的严格要求的情况下的严格要求。 [0017] 在具有敏感和个人可标识信息的领域(诸如生命科学)中训练和使用机器学习模型提出了重大的法律、伦理和信任挑战。在许多情况(诸如基因组学)下,简单的去标识化不能充足地抵御隐私攻击。已经提出数据合成作为可能是敏感数据的共享和处理的法律和经济上适当的解决方案的潜在机制。可以根据隐私定义和要求合成允许以最小的隐私风险进行准确的机器学习(ML)模型训练的数据集。 [0018] 在机器学习文献中已经提出了各种少数类过采样方法,以便减轻不平衡并创建合成样本。虽然对某些基准数据集有效,但它们对高维生物信息学数据的适用性仍然受限。最流行的一类方法(即,合成少数类过采样技术(SMOTE)及其变体)通常无法减轻性能度量中对多数类的偏差,并且在许多情况下,在经典机器学习和深度学习算法的情况下,不会显著优于随机重采样的平凡基线。 [0019] 尽管存在用于以保护隐私的方式合成低维数据集的许多方法,但是大多数高维数据合成方法基于生成对抗网络(GAN),其中鉴别器和生成器进行最小‑最大形式的游戏来优化真实数据分布和合成数据分布之间的给定距离度量。然而,就其对隐私保护数据生成的适用性而言,GAN面临挑战。例如,生成器可以通过记住多项式数量的训练示例来“获胜”,这导致隐私受损以及由于缺乏多样性而导致的有限泛化。附加地,在GAN训练程序(例如通过差分隐私技术)期间的噪声已经在文献中进行了探索,但是已经表明与在未受干扰的数据集上进行训练相比显著降低了模型的准确性。 [0020] 最后,由于具有独特特性的较少数量的数据点(例如,患有罕见疾病的患者),在不复制个体的情况下估计非常高维数据集的分布极具挑战性——维度越高,生成的合成数据集越大,重新标识的风险就越高。 [0021] 在一些示例中,当期望隐私时,数据点将是不可标识的以通过最小化通过可标识性风险估计的挑选出的风险来防止重新标识场景。可标识性可以定义如下。假设w是基于各种特征的领域知识对各种特征的可标识性进行编码的用户定义的权重向量。在最简单的情况下,对于不可标识的特征,wi可以设置为0,以及对于其余的特征,可以设置为1。在下面的实验中,我们将使用熵作为权重向量,来捕获各个特征的信息量。 [0022] T和S分别表示真实数据集和对应合成数据集。假设ri表示加权欧氏距离空间中数据点xi与其最近邻居之间的最小距离,使得 [0023] [0024] 以及类似地,假设 表示数据点xi与其下一最近合成数据点 之间的最小距离: [0025] [0026] 在以下情况下,合成数据集S是可从T∈标识的 [0027] [0028] 本文中详细描述了具有与GAN不同的方法的合成数据生成的示例。特别地,在一些示例中,通过从数据集中的数据点之间采样的局部核密度估计进行采样的合成具有内置隐私风险过滤程序。在一些示例中,数据点是最近邻居。这种方法的示例可以称为数据点密度估计(DDE)。DDE具有最小的可标识性风险。诸如欧洲的通用数据保护条例(GDPR)(诸如GDPR第29条)和美国的家庭教育权和隐私权法案(FERPA)第13章以及健康保险携带和责任法案(HIPAA)的法规遵从性框架通常与保护个人免受基于其数据进行标识或挑选出有关。DDE可以利用一个或几个度量来参数化,以便避免根据那些度量进行最近记录标识的可能性。不像其他这样的方法,诸如1)可以使用多个度量以及2)风险可以被设置为零;而不是明确允许特定百分比的人被标识。 [0029] 通过保留非标准分布获得更高的统计效用。与大多数GAN不同,除了表现良好的数据分布,DDE还能够忠实地对偏斜、长尾或多模态分布进行建模。与倾向于在固有维度方面较低的数据集(诸如位于潜在高维空间内部的低维流形上的数据)上工作良好的GAN不同,DDE能够对密集的高维数据集建模,因为它总是将局部邻域投影到一维核密度估计上,而不管实际的数据维度如何。 [0030] 图1示出了通过使用DDE和/或对生成模型(诸如GAN)执行隐私过滤来支持合成数据集的生成的提供商网络的示例。提供商网络100的用户可能具有个人可标识信息(PII)数据,由于隐私问题,该数据分布到其他方可能具有挑战性,从而阻碍了合作和价值提取,尤其是在受监管的行业中。即使它们掩盖了个人可标识字段(姓名、id、地址等),在攻击者具有目标的足够的通用数据的情况下,他们可能能够标识个人。 [0031] 即使直接标识符(例如,电话号码、电子邮件、社会保险号等)已经被移除。仍然存在可以以组合的方式使用来查找个人的准标识符(例如,年龄、性别、邮政编码的前3位、头衔、身高等)。根据数据集,这种风险可能高或者低。例如,数据集可能仅具有作为男性、年龄在70岁以上、具有以100开始的邮政编码的1个人。移除更多数据降低风险,但其也影响模型训练的准确性。对于高维医疗保健和生命科学数据(诸如基因组数据,其中在科学文献中已经提出了大量的标识和表型推断攻击),情况甚至更具挑战性。 [0032] 如图1所示,提供者网络100包括数据集存储库102以存储原始数据集和/或合成数据集,在一些示例中,包括利用DDE的合成数据集生成服务104,并且在一些示例中,包括使用隐私过滤的合成数据集生成服务105。下面详述了两种类型。例如,使用用户装置130的用户可以请求利用DDE 104的合成数据集生成服务拉出存储在数据集存储库102中的原始数据集的至少一个真子集,以生成合成数据集。在一些示例中,使用表格数据,并且示例性列类型包括但不限于数字、布尔、类别或标签和/或日期时间。利用DDE 104的合成数据集生成服务如何执行这个生成的更具体细节将在随后的图中详述。注意,利用DDE 104的合成数据集生成服务可以用于生成∈不可标识的数据点。在一些示例中,使用隐私过滤105的合成数据集生成服务使用经训练的生成器模型(例如,生成对抗网络、copula、多元核密度估计模型等)来近似数据分布,以获得样本,然后对该样本进行隐私过滤,使得所添加的任何数据点不可标识。 [0033] 在一些示例中,提供商网络100包括ML模型训练和/或测试服务106。这个服务可以用于针对原始数据集的测试数据来测试合成数据集。在一些示例中,请求(或多个请求)允许用户设置用于由利用DDE 104的合成数据集生成服务或使用隐私过滤105的合成数据集生成服务生成合成数据集的参数。例如,请求可以包括从原始数据集中排除什么特征的标识、原始数据集的位置的标识、原始数据集本身、要生成的多个合成数据点、在生成数据集的合成数据点时是否应该考虑隐私、存储合成数据集的地方的位置的标识、要考虑的多个数据点对、邻域大小、用于最小化可标识性等的度量的指示和/或用于测试合成数据集的参数(诸如从原始数据集保留什么数据作为测试数据)、要使用什么精度度量、使用什么模型(以及,在一些示例中,利用两个数据集进行训练)等。在一些示例中,这个信息经由图形用户界面提供,然而,也可以使用命令行界面命令。 [0034] 提供商网络100(或“云”提供商网络)为用户提供使用各种类型的计算相关资源中的一者或多者的能力,所述计算相关资源诸如计算资源(例如,执行虚拟机(VM)实例和/或容器、执行批作业、执行代码而不预配置服务器)、数据/存储资源(例如,对象存储、块级存储、数据档案存储、数据库和数据库表等)、网络相关资源(例如,配置虚拟网络(包括多组计算资源)、内容分发网络(CDN)、域名服务(DNS))、应用程序资源(例如,数据库、应用程序构建/部署服务)、访问策略或角色、身份策略或角色、机器图像、路由器以及其他数据处理资源等。这些和其他计算资源可作为服务提供,所述服务诸如:可执行计算实例的硬件虚拟化服务、可存储数据对象的存储服务等。提供商网络100的用户(或“客户”)可使用与客户账户相关联的一个或多个用户账户,但可根据使用情境在一定程度上可互换地使用这些项。用户可以经由一个或多个接口跨一个或多个中间网络140(例如,互联网)与提供商网络100交互,诸如通过使用应用编程接口(API)调用、经由被实施为网站或应用的控制台等。API是指客户端和服务器之间的接口和/或通信协议,使得如果客户端发出预定义格式的请求,则客户端应接收特定格式的响应或发起定义的动作。在云提供商网络场境中,API提供网关以通过允许客户从云提供商网络获得数据或在云提供商网络内引起动作来使客户访问云基础设施,从而使得能够开发与托管在云提供商网络中的资源和服务交互的应用。API还可使云提供商网络的不同服务能够彼此交换数据。接口可为提供商网络100的控制平面的一部分或充当控制平面的前端,所述控制平面包括支持并实现可更直接地提供给客户的服务的“后端”服务。 [0035] 例如,云提供商网络(或仅称为“云”)通常是指可访问的虚拟化计算资源(诸如计算、存储和联网资源、应用以及服务)的大型池。云可提供对可配置计算资源的共享池的方便、按需网络访问,所述计算资源可响应于客户命令而以编程方式置配和发布。可动态地置配和重新配置这些资源以调节到可变负载。因此,云计算可被认为是经由可公开访问的网络(例如,互联网、蜂窝通信网络)作为服务交付的应用以及提供这些服务的云提供商数据中心中的硬件和软件两者。 [0036] 云提供商网络可被形成为多个区域,其中区域是云提供商将数据中心聚集在其中的地理区域。每个区域包括经由私有高速网络(例如,光纤通信连接)彼此连接的多个(例如,两个或更多个)可用区(AZ)。AZ(也被称为“区”)提供包括一个或多个数据中心设施的隔离式故障域,所述一个或多个数据中心设施相对于另一个AZ中的数据中心设施具有单独的电源、单独的联网和单独的冷却。数据中心是指容纳云提供商网络的服务器并且为云提供商网络的服务器提供电源和冷却的物理建筑或外壳。优选地,一个区域内的AZ被定位成彼此相距足够远,使得自然灾害(或其他导致故障的事件)不会同时影响多于一个AZ或使多于一个AZ离线。 [0037] 用户130可经由可公开访问的网络(例如,互联网、蜂窝通信网络),例如通过转接中心(TC)连接到云提供商网络的AZ。TC是将用户链接到云提供商网络的主要主干位置并且可并置于其他网络提供商设施(例如,互联网服务提供商(ISP)、电信提供商)处并(例如,经由VPN或直接连接)安全地连接到AZ。每个区域可操作两个或更多个TC以实现冗余。区域连接到全球网络,所述全球网络包括将每个区域连接到至少一个其他区域的私有联网基础设施(例如,由云提供商控制的光纤连接)。云提供商网络可通过边缘位置和区域性边缘缓存服务器从位于这些区域之外但与这些区域联网的接入点(或“POP”)递送内容。计算硬件的这种划分和地理分布使得云提供商网络能够在全球范围内以高度的容错性和稳定性为用户提供低延时的资源访问。 [0038] 为了提供这些和其他计算资源服务,提供商网络100通常依赖于虚拟化技术。例如,虚拟化技术可为用户提供控制或使用计算资源(例如,“计算实例”,诸如使用来宾操作系统(O/S)的VM,所述来宾操作系统使用可或不可进一步在底层主机O/S之上操作的管理程序来操作;可或不可在VM中操作的容器;可在没有底层管理程序的情况下在“裸金属”硬件上执行的计算实例)的能力,其中可使用单个电子装置来实施一个或多个计算资源。因此,用户可直接使用由提供商网络托管的计算资源(例如,由硬件虚拟化服务提供)来执行各种计算任务。另外地或替代地,用户可通过提交将由提供商网络执行的代码(例如,经由按需代码执行服务)来间接地使用计算资源,所述提供商网络进而使用一个或多个计算资源来执行代码,通常用户不具有对所涉及的底层计算实例的任何控制或知识。 [0039] 图2示出了由利用DDE的合成数据集生成服务104实现的DDE算法的示例。通常,算法作为方法由诸如CPU、GPU或APU的处理装置执行。注意,算法被存储为要由这样的处理装置执行的一个或多个代码模块。 [0040] 所示出的算法的第1行详述了示例性输入。这些输入可以由请求创建合成数据的用户提供。注意,输入中的一些并不总是被使用(例如,可能存在默认的隐私(意味着没有供应priv)。在一些示例中,使用默认值,诸如数据点对的数量、要使用的度量等。 [0041] 第2行输出了要初始化的项的示例。这些包括类的数量(例如,要评估的特征的数量)、每个类的数据点对(诸如后续图中示出的A和B)的集合、整个数据集的数据点对的集合到数据点对的集合、作为不允许存在合成数据点的点周围的区域的“禁区”的配置、空集以及用于数据点的投影函数。 [0042] 在第一个for循环内,第4行和第5行设置了第一数据点和数据点对。 [0043] 在第二个for循环内,第7行将待评估的第二数据点设置为相对于第一点的数据点。第8行将数据点的邻域设置为用于第一数据点和第二数据点的数据点对。第9行详述了这些集合邻域到第一点和第二点之间的线上的1维投影。第10行在给定的偏移下执行投影的KDE。第11行将偏移量映射回到高维空间(D维)。当考虑隐私时,第12行确定给定的所投影的数据点是否在禁区内。第13行确定概率的最大值(如第10行(不考虑可标识性)或第12行所确定的那样)。如果概率的最大值大于0,则在第15行设置数据点的最大值,并可以潜在地在第16行添加该最大值。注意,可以使用除最大值之外的其他值(如后面详述那样)。 [0044] 如所示出那样,DDE通过将数据分布建模为局部线性流形,使得密度估计易处理。 特别地,算法从跨越在相邻数据点之间的一维核密度估计获得合成数据点。最近邻居之间的局部数据邻域的低维核密度估计被用来在计算上高效地采样合成数据集,这些数据集保留原始数据的分布和结构。除了高保真数据生成之外,基于最近邻居的密度近似还允许通过避免比它们的次最近邻居更接近真实实例的合成数据实例来明确地最小化可标识性风险。 [0045] 图3示出了DDE的示例。在这个图示中,使用来自其他邻域(未标记的圆)的信息,在沿着连接数据点对中的对的线305的一对最近邻居A 301和B 303之间生成新的合成数据点 307。特别地,合成数据点307的生成试图最大化局部概率分布(诸如根据被示出为非直线 309的局部核密度估计(KDE))。注意,可以使用除最大值之外的采样值或其他值。 [0046] 通过将局部邻域投影到连接A和B的线上来以1‑D的方式计算KDE,以避免必须计算将难以处理的许多高维KDE。图4示出了DDE中的KDE的示例。 [0047] 图5示出了具有隐私的DDE的示例。如上所述,在一些示例中,利用DDE的合成数据集生成服务104支持在生成合成数据集时考虑隐私。当使用隐私时,DDE确保没有合成数据点过于接近地与原始数据匹配,也不被放置为足够靠近以便攻击者重新标识原始数据点。 特别地,使用来自其他邻域(未标记的圆)的信息在沿着连接一对最近邻居的线505的数据点对A 501和B 503中的对之间生成新的合成数据点507,但是该新的合成数据点不能在诸如禁区509的禁区内。例如,合成数据点513将被排除。特别地,合成数据点507的生成试图最大化局部概率分布(诸如根据被示出为非直线511的局部核密度估计(KDE))。 [0048] 图6示出了由利用DDE的合成数据集生成服务104实现的DDE算法的示例。通常,算法作为方法由诸如CPU、GPU或APU的处理装置执行。注意,算法被存储为要由这样的处理装置执行的一个或多个代码模块。在一些示例中,DDE的这种变体在分类据上和/或二进制数据上工作得更好。 [0049] 所示出的算法的第1行详述了示例性输入。这些输入可以由请求创建合成数据的用户提供。注意,输入中的一些并不总是被使用(例如,可能存在默认的隐私(意味着没有供应priv)。在一些示例中,使用默认值,诸如数据点对的数量、要使用的度量等。 [0050] 第2行输出了要初始化的项的示例。这些包括类的数量(例如,要评估的特征的数量)、每个类的数据点对的集合(诸如后续图中示出的A和B)、整个数据集的数据点对的集合到数据点对的集合、作为不允许存在合成数据点的点周围的区域的“禁区”的配置、以及空集。 [0051] 在第一个for循环内,第4行和第5行设置了第一数据点及其最近邻居。 [0052] 在第二个for循环内,第7行将待评估的第二数据点设置为相对于第一点的数据点。第8行将数据点的邻域设置为用于第一数据点和第二数据点的数据点对。在第9至11行中,计算局部的、逐特征的密度估计。特别地,在具有多项式分布的单个数据维度中执行局部密度估计。 [0053] 从所计算的逐特征的密度估计中对每个特征进行采样,以在第12行处生成潜在数据点。 [0054] 在第13行,确定潜在数据点是否在禁区内。如果是,则执行重新采样以在第14行处生成潜在数据点。 [0055] 在第16行潜在地添加第12行或第14行的潜在数据点。 [0056] 图7是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。操作(或本文描述的其他过程、或变型和/或其组合)中的一些或全部在配置有可执行指令的一个或多个计算机系统的控制下执行并且被实施为共同在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)。代码例如以包括可由一个或多个处理器执行的指令的计算机程序的形式存储在计算机可读存储介质上。计算机可读存储介质是非暂时性的。在一些实施方案中,操作中的一个或多个(或全部)由利用DDE的合成数据集生成服务104和/或其他图的ML模型训练和/或测试服务106执行。 [0057] 在702,接收生成合成数据的一个或多个请求。这个请求可以是到一个或多个CLI或GUI中的多个输入。上面已经详述了针对这个请求或这些请求的输入的类型的示例。 [0058] 在704,根据请求生成合成数据集。例如,执行DDE。这个生成可能具有多个动作。例如,在一些示例中,在706初始化合成数据生成器。然后,在708,这个经初始化的生成器用于在数据集的数据点对之间沿着连接它们的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样,并且在一些示例中,确保集合中的合成数据点没有一个过于接近地与原始数据匹配。在其他示例中,在709,通过执行一个或多个逐特征的密度估计并从那些逐特征的密度估计中对每个特征进行采样来选择数据集的数据点对之间的合成数据点的集合,并且在一些示例中,确保集合中的合成数据点没有一个过于接近地与原始数据匹配。 [0059] 在一些示例中,在710测试合成数据集。例如,合成数据集用于训练ML模型,并且将这个ML模型的性能与利用始数据集训练的ML模型进行比较。 [0060] 在712,如请求所的配置那样提供合成数据集。例如,在大多数情况下,它存储在指定的位置处。 [0061] 图8是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。操作(或本文描述的其他过程、或变型和/或其组合)中的一些或全部在配置有可执行指令的一个或多个计算机系统的控制下执行并且被实施为共同在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)。代码例如以包括可由一个或多个处理器执行的指令的计算机程序的形式存储在计算机可读存储介质上。计算机可读存储介质是非暂时性的。在一些实施方案中,操作中的一个或多个(或全部)由利用DDE的合成数据集生成服务104和/或其他图的ML模型训练和/或测试服务106执行。特别地,这个流程图示出了在606初始化合成数据生成器,以及在608,在数据集的数据点对之间沿着连接它们的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样,并且在一些示例中,确保集合中的合成数据点没有一个过于接近地与原始数据匹配。 [0062] 合成数据集生成器的初始化可以包括几个动作。在806,初始化所指示的数量的类。这个数量可以是默认值,或者由用于合成数据集生成的请求提供。 [0063] 在808,确定原始数据集的每个类内的数据点对。这可以基于作为默认值的或由用于合成数据集生成的请求提供的的加权度量。在一些示例中,可以使用任何最近邻居确定技术。 [0064] 在810,确定整个原始数据集中的数据点对。这个确定基于诸如(加权)欧几里德距离、曼哈顿距离等距离度量进行。度量可以是默认的或者由用于合成数据集生成的请求提供。 [0065] 在一些示例中,当期望隐私时,在712,对于原始数据集中的每个数据点,合成点不能在其内部的区域。这创建了禁区。特别地,数据点是不可标识的,以通过最小化通过可标识性风险估计的挑选出的风险来防止重新标识场景。在608在数据集的数据点对之间沿着连接它们的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样,并且在一些示例中确保集合中的合成数据点没有一个过于接近地与原始数据匹配也可以包括几个动作。 [0066] 对于原始数据集中的每个数据点,可以执行几个动作,如下详述。在816,设置数据点和多个最近邻居。然后,对于多个最近邻居中的每一个,执行多个动作。 [0067] 在818,确定集合数据点和多个数据点对附近的局部邻域。在820,这些局部邻域被投影到连接经初始化的数据点和数据点对的线上。投影是1‑D投影。 [0068] 在822,对投影执行概率分布估计(例如,密度估计(诸如KDE))。然后,在824,概率分布估计值被映射到高维空间(例如,原始数据集的高维空间)。当要考虑隐私时,在826,如果本地邻域在合成点不能在其内部的区域中,则本地邻域被排除。 [0069] 在828,通过从所估计的概率进行采样来确定潜在地添加到合成数据集的数据点的值。 [0070] 在830,如果728的确定值大于0,则将数据点添加到合成数据集。 [0071] 图9是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。操作(或本文描述的其他过程、或变型和/或其组合)中的一些或全部在配置有可执行指令的一个或多个计算机系统的控制下执行并且被实施为共同在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)。代码例如以包括可由一个或多个处理器执行的指令的计算机程序的形式存储在计算机可读存储介质上。计算机可读存储介质是非暂时性的。在一些实施方案中,操作中的一个或多个(或全部)由利用DDE的合成数据集生成服务104和/或其他图的ML模型训练和/或测试服务106执行。特别地,这个流程示出了在706初始化合成数据生成器,以及在709,通过执行一个或多个逐特征的密度估计并从那些逐特征的密度估计中对每个特征进行采样来选择数据集的数据点对之间的合成数据点的集合,并且在一些示例中,确保集合中的合成数据点没有一个过于接近地与原始数据匹配。 [0072] 合成数据集生成器的初始化可以包括几个动作。在906,初始化所指示的数量的类。这个数量可以是默认值,或者由用于合成数据集生成的请求提供。 [0073] 在908,确定原始数据集的每个类内的数据点对。这可以基于作为默认值的或由用于合成数据集生成的请求提供的的加权度量。可以使用任何最近邻居确定技术。 [0074] 在910,确定整个原始数据集中的数据点对。这个确定基于诸如(加权)欧几里德距离、曼哈顿距离等距离度量进行。度量可以是默认的或者由用于合成数据集生成的请求提供。 [0075] 在一些示例中,当期望隐私时,在912,对于原始数据集中的每个数据点,合成点不能在其内部的区域。这创建了禁区。在一些示例中,当期望隐私时,数据点将是不可标识的以通过最小化通过可标识性风险估计的挑选出的风险来防止重新标识场景。 [0076] 在709,在数据集的数据点对之间沿着连接它们的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样,并且在一些示例中确保集合中的合成数据点没有一个过于接近地与原始数据匹配也可以包括几个动作。 [0077] 对于原始数据集中的每个数据点,可以执行几个动作,如下详述。在916,设置数据点和多个最近邻居。然后,对于多个最近邻居中的每一个,执行多个动作。 [0078] 在918,确定集合数据点和多个数据点对附近的局部邻域。在920,执行一个或多个逐特征的密度估计。在922,对一个或多个逐特征的密度估计进行采样。当要考虑隐私时,在 924,如果本地邻域在合成点不能在其内部的区域中,则本地邻域被排除。在926,通过从逐特征的密度估计器进行采样来获得要潜在地添加的数据点。 [0079] 在928,将所采样的数据点添加到合成数据集中。 [0080] 图10是示出根据一些实施方案的用于生成合成数据的方法的操作的流程图。操作(或本文描述的其他过程、或变型和/或其组合)中的一些或全部在配置有可执行指令的一个或多个计算机系统的控制下执行并且被实施为共同在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)。代码例如以包括可由一个或多个处理器执行的指令的计算机程序的形式存储在计算机可读存储介质上。计算机可读存储介质是非暂时性的。在一些实施方案中,操作中的一个或多个(或全部)由使用隐私过滤105的合成数据集生成服务和/或其他图的ML模型训练和/或测试服务106执行。 [0081] 在1000,在一些示例中,训练生成器模型。 [0082] 在1002,接收生成合成数据的一个或多个请求。这个请求可以是到一个或多个CLI或GUI中的多个输入。上面已经详述了针对这个请求或这些请求的输入的类型的示例,诸如第一数据集的位置的标识、第一数据集本身、要生成的合成数据点的数量、存储合成数据集的地方的位置的标识、或用于最小化可标识性的度量的指示中的一个或多个。 [0083] 在1003,根据请求生成合成数据集。这个生成可能具有多个动作。 [0084] 在1004,获得使用经训练的发电机模型的数据样本。特别地,经训练的生成器模型使用现有数据(如由一个或多个请求所指示或提供的那样)来生成数据样本。例如,由一个或多个请求所指示或提供的数据集的子集被用于生成数据样本。 [0085] 在1006,对数据样本执行隐私过滤。例如,与原始数据相差不大的数据点被移除。 特别地,在一些示例中,∈不可标识的那些被移除。 [0086] 在1008,将未被过滤的至少一个数据点添加到合成数据集。 [0087] 在一些示例中,在1010,确定是否存在足够的数据点被添加到数据集。例如,由一个或多个请求所指示的数据点的量已经被添加? [0088] 在一些示例中,在1012测试合成数据集。例如,合成数据集用于训练ML模型,并且将这个ML模型的性能与利用始数据集训练的ML模型进行比较。 [0089] 在1014,如请求所的配置那样提供合成数据集。例如,在大多数情况下,它存储在指定的位置处。 [0090] 图11示出了根据一些实施方案的示例提供商网络(或“服务提供商系统”)环境。提供商网络1100可经由一个或多个虚拟化服务1110向客户提供资源虚拟化,所述一个或多个虚拟化服务允许客户购买、租借或以其他方式获得在一个或多个数据中心中的一个或多个提供商网络内的装置上实施的虚拟化资源(包括但不限于计算资源和存储资源)的实例 1112。本地互联网协议(IP)地址1116可与资源实例1112相关联;本地IP地址是提供商网络 1100上的资源实例1112的内部网络地址。在一些实施方案中,提供商网络1100还可提供客户可从提供商1100获得的公共IP地址1114和/或公共IP地址范围(例如,互联网协议版本4(IPv4)或互联网协议版本6(IPv6)地址)。 [0091] 常规上,提供商网络1100可经由虚拟化服务1110允许服务提供商的客户(例如,操作包括一个或多个客户装置1152的一个或多个客户网络1150A至1150C(或“客户端网络”)的客户)使分派或分配给客户的至少一些公共IP地址1114与分派给客户的特定资源实例 1112动态地相关联。提供商网络1100还可允许客户将先前映射到分派给客户的一个虚拟化计算资源实例1112的公共IP地址1114重新映射到也分派给客户的另一虚拟化计算资源实例1112。使用由服务提供商提供的虚拟化计算资源实例1112和公共IP地址1114,服务提供商的客户,诸如客户网络1150A至1150C的运营商可例如实施客户特定的应用并且在中间网络1140(诸如互联网)上呈现客户的应用程序。然后,中间网络1140上的其他网络实体1120可以生成到由客户网络1150A至1150C发布的目的地公共IP地址1114的流量;流量被路由到服务提供商数据中心,并且在数据中心处经由网络基板被路由到当前映射到目的地公共IP地址1114的虚拟化计算资源实例1112的本地IP地址1116。类似地,来自虚拟化计算资源实例1112的响应流量可经由网络基板被路由回到中间网络1140上到源实体1120。 [0092] 如本文所用的本地IP地址是指例如提供商网络中的资源实例的内部或“私有”网络地址。本地IP地址可在由互联网工程任务组(IETF)的注释请求(RFC)1918保留的地址块内和/或具有由IETF RFC 4193指定的地址格式,并且可在提供商网络内是可变的。源自提供商网络之外的网络流量并不直接路由到本地IP地址;而是,流量使用映射到资源实例的本地IP地址的公共IP地址。提供商网络可包括提供网络地址转换(NAT)或类似功能以执行从公共IP地址到本地IP地址以及从本地IP地址到公共IP地址的映射的联网装置或设备。 [0093] 公共IP地址是由服务提供商或客户分派给资源实例的互联网可变网络地址。例如经由1:1NAT转换路由到公共IP地址的流量,并且将流量转发到资源实例的相应本地IP地址。 [0094] 一些公共IP地址可由提供商网络基础设施分派给特定资源实例;这些公共IP地址可被称为标准公共IP地址,或简称为标准IP地址。在一些实施方案中,标准IP地址到资源实例的本地IP地址的映射是所有资源实例类型的默认启动配置。 [0095] 至少一些公共IP地址可被分配给提供商网络1100的客户或由提供商网络的客户获得;然后,客户可将其被分配的公共IP地址分派给分配给客户的特定资源实例。这些公共IP地址可被称为客户公共IP地址,或简称为客户IP地址。并不是像在标准IP地址的情况中那样由提供商网络1100分派给资源实例,而是可由客户例如经由服务提供商提供的API将客户IP地址分派给资源实例。与标准IP地址不同,客户IP地址被分配给客户账户,并且可根据需要或期望由相应客户重新映射到其他资源实例。客户IP地址与客户账户而非特定资源实例相关联,并且客户控制该IP地址直到客户选择释放所述IP地址。与常规的静态IP地址不同,客户IP地址允许客户通过将客户的公共IP地址重新映射到与客户账户相关联的任何资源实例来掩盖资源实例或可用区故障。例如,客户IP地址使得客户能够通过将客户IP地址重新映射到替代资源实例来解决客户的资源实例或软件的问题。 [0096] 图12是根据一些实施方案的向客户提供存储服务和硬件虚拟化服务的示例提供商网络环境的框图。硬件虚拟化服务1220向客户提供多个计算资源1224(例如,诸如VM的计算实例1225)。计算资源1224可例如作为服务提供给提供商网络1200的客户(例如,实施客户网络1250的客户)。每个计算资源1224可设有一个或多个本地IP地址。提供商网络1200可被配置为将分组从计算资源1224的本地IP地址路由到公共互联网目的地以及将分组从公共互联网源路由到计算资源1224的本地IP地址。 [0097] 提供商网络1200可为例如经由本地网络1256耦合到中间网络1240的客户网络 1250提供经由耦合到中间网络1240和提供商网络1200的硬件虚拟化服务1220实施虚拟计算系统1292的能力。在一些实施方案中,硬件虚拟化服务1220可提供一个或多个API 1202,例如web服务接口,经由所述一个或多个API,客户网络1250可例如经由客户装置1290的控制台1294(例如,基于web的应用、独立应用、移动应用等)访问硬件虚拟化服务1220提供的功能。在一些实施方案中,在提供商网络1200处,客户网络1250处的每个虚拟计算系统1292可对应于被租赁、租借或以其他方式提供给客户网络1250的计算资源1224。 [0098] 从虚拟计算系统1292和/或另一客户装置1290(例如,经由控制台1294)的实例,客户可例如经由一个或多个API 1202访问存储服务1210的功能,以从提供商网络1200所提供的虚拟数据存储库1216(例如,文件夹或“桶”、虚拟化卷、数据库等)的存储资源1218A至 1218N访问数据以及将数据存储到所述存储资源。在一些实施方案中,虚拟化数据存储网关(未示出)可设置在客户网络1250处,该虚拟化数据存储网关可在本地缓存至少一些数据(例如频繁访问的数据或关键数据)并且可经由一个或多个通信信道与存储服务1210通信以从本地缓存上传新的或修改后的数据,使得维护主数据存储库(虚拟化数据存储库 1216)。在一些实施方案中,用户经由虚拟计算系统1292和/或另一个客户装置1290可经由充当存储虚拟化服务的存储服务1210安装并访问虚拟数据存储库1216的卷,并且这些卷在用户看来可以是本地(虚拟化)存储1298。 [0099] 虽然图12中未示出,但还可经由API 1202从提供商网络1200内的资源实例访问虚拟化服务。例如,客户、设备服务提供商或其他实体可经由API 1202从提供商网络1200上的相应虚拟网络之内访问虚拟化服务,以请求分配所述虚拟网络内或另一个虚拟网络内的一个或多个资源实例。 [0100] 说明性系统 [0101] 在一些实施方案中,实施本文描述的技术的一部分或全部的系统可包括通用计算机系统(诸如图13所示的计算机系统1300),所述通用计算机系统包括或被配置为访问一个或多个计算机可访问介质。在所示的实施方案中,计算机系统1300包括经由输入/输出(I/O)接口1330耦合到系统存储器1320的一个或多个处理器1310。计算机系统1300还包括耦合到I/O接口1330的网络接口1340。虽然图13将计算机系统1300示出为单个计算装置,但在各种实施方案中,计算机系统1300可包括一个计算装置或被配置为作为单个计算机系统1300一起工作的任何数量的计算装置。 [0102] 在各种实施方案中,计算机系统1300可为包括一个处理器1310的单处理器系统或包括若干处理器1310(例如,两个、四个、八个或另一合适数量)的多处理器系统。处理器 1310可为能够执行指令的任何合适的处理器。例如,在各种实施方案中,处理器1310可为实施多种指令集架构(ISA)中的任何一种(诸如,x86、ARM、PowerPC、SPARC、或MIPS ISA或任何其他合适的ISA)的通用或嵌入式处理器。在多处理器系统中,处理器1310中的每一者通常可但未必实施相同的ISA。 [0103] 系统存储器1320可存储可由处理器1310访问的指令和数据。在各种实施方案中,系统存储器1320可使用任何合适的存储器技术来实施,诸如随机存取存储器(RAM)、静态RAM(SRAM)、同步动态RAM(SDRAM)、非易失性/闪存型存储器或任何其他类型的存储器。在所示的实施方案中,实现一个或多个期望功能的程序指令和数据(诸如上述的那些方法、技术和数据)被示出为作为合成数据集生成服务DDE代码1325(例如,可执行以全部或部分实现利用DDE服务104的合成数据集生成服务和/或使用隐私过滤105的合成数据集生成服务)和数据1326存储在系统存储器1320中。 [0104] 在一些实施方案中,I/O接口1330可被配置为协调处理器1310、系统存储器1320和装置中的任何外围装置(包括网络接口1340和/或其他外围接口(未示出))之间的I/O流量。 在一些实施方案中,I/O接口1330可执行任何必要的协议、时序或其他数据变换以将来自一个组件(例如,系统存储器1320)的数据信号转换成合适于由另一个组件(例如,处理器 1310)使用的格式。在一些实施方案中,例如,I/O接口1330可包括支持通过各种类型的外围总线(诸如,外围组件互连(PCI)总线标准或通用串行总线(USB)标准的变体)附接的装置。 在一些实施方案中,例如,I/O接口1330的功能可被拆分成两个或更多个单独的组件,诸如北桥和南桥。另外,在一些实施方案中,I/O接口1330(诸如到系统存储器1320的接口)的功能中的一些或全部可直接并入处理器1310中。 [0105] 例如,网络接口1340可被配置为允许在计算机系统1300与附接到一个或多个网络 1350的其他装置1360(诸如,如图1所示的其他计算机系统或装置)之间交换数据。在各种实施方案中,例如,网络接口1340可支持经由任何合适的有线或无线通用数据网络(诸如各种类型的以太网网络)进行通信。另外,网络接口1340可支持经由电信/电话网络(诸如模拟语音网络或数字光纤通信网络)、经由存储区域网(SAN)(诸如光纤信道SAN)和/或经由任何其他合适类型的网络和/或协议进行通信。 [0106] 在一些实施方案中,计算机系统1300包括一个或多个卸载卡1370A或1370B(包括一个或多个处理器1375,并且可能包括一个或多个网络接口1340),所述一个或多个卸载卡使用I/O接口1330(例如,实施外围部件互连快速(PCI‑E)标准的版本或诸如快速路径互连(QPI)或超路径互连(UPI)的另一互连的总线)来连接。例如,在一些实施方案中,计算机系统1300可充当托管诸如计算实例的计算资源的主机电子装置(例如,作为硬件虚拟化服务的一部分操作),并且一个或多个卸载卡1370A或1370B执行可管理在主机电子装置上执行的计算实例的虚拟化管理器。作为示例,在一些实施方案中,卸载卡1370A或1370B可执行计算实例管理操作,诸如暂停和/或取消暂停计算实例、启动和/或终止计算实例、执行存储器转移/复制操作等。在一些实施方案中,这些管理操作可由卸载卡1370A或1370B与由计算机系统1300的其他处理器1310A至1310N执行的管理程序(例如,根据来自管理程序的请求)协作来执行。然而,在一些实施方案中,由卸载卡1370A或1370B实施的虚拟化管理器可适应来自其他实体(例如,来自计算实例本身)的请求,并且可不与任何单独的管理程序协作(或不服务于任何单独的管理程序)。 [0107] 在一些实施方案中,系统存储器1320可为被配置为存储如上文所描述的程序指令和数据的计算机可访问介质的一个实施方案。然而,在其他实施方案中,可在不同类型的计算机可访问介质上接收、发送、或存储程序指令和/或数据。一般来说,计算机可访问介质可包括任何非暂时性存储介质或存储器介质,诸如磁性或光学介质,例如经由I/O接口1330耦合到计算机系统1300的磁盘或DVD/CD。非暂时性计算机可访问存储介质还可包括可包括在计算机系统1300的一些实施方案中作为系统存储器1320或另一种类型的存储器的任何易失性或非易失性介质,诸如RAM(例如,SDRAM、双倍数据速率(DDR)SDRAM、SRAM等)、只读存储器(ROM)等。此外,计算机可访问介质可包括传输介质或经由通信介质(诸如网络和/或无线链路)传送的信号,诸如电信号、电磁信号或数字信号,所述通信介质诸如可经由网络接口 1340来实施。 [0108] 本文所讨论或提出的各种实施方案可在各种各样的操作环境中实施,在一些情况下,所述操作环境可包括可用于操作许多应用中的任一个的一个或多个用户计算机、计算装置或处理装置。用户装置或客户端装置可包括许多通用个人计算机中的任一个,诸如运行标准操作系统的台式计算机或膝上型计算机,以及运行移动软件并能够支持许多联网和消息传递协议的蜂窝装置、无线装置和手持式装置。这种系统还可包括许多工作站,所述工作站运行各种可商购获得的操作系统和用于诸如开发和数据库管理等目的的其他已知应用中的任一个。这些装置还可包括其他电子装置,诸如虚设终端、瘦客户端、游戏系统和/或能够经由网络进行通信的其他装置。 [0109] 大多数实施方案使用本领域技术人员熟悉的至少一个网络来支持使用各种广泛可用协议中的任一种进行通信,所述协议诸如为传输控制协议/互联网协议(TCP/IP)、文件传送协议(FTP)、通用随插即用(UPnP)、网络文件系统(NFS)、公共互联网文件系统(CIFS)、可扩展消息传递和现场协议(XMPP)、AppleTalk等。网络可包括例如局域网(LAN)、广域网(WAN)、虚拟专用网(VPN)、互联网、内联网、外联网、公共交换电话网(PSTN)、红外网络、无线网络以及其任何组合。 [0110] 在使用web服务器的实施方案中,web服务器可运行各种服务器或中间层应用中的任一种,包括HTTP服务器、文件传送协议(FTP)服务器、通用网关接口(CGI)服务器、数据服务器、Java服务器、业务应用服务器等。服务器还可能够响应于来自用户装置的请求而执行程序或脚本,诸如通过执行可实施为以任何编程语言(诸如 C、C#或C++)或任何脚本语言(诸如Perl、Python、PHP或TCL)以及其组合编写的一个或多个脚本或程序的一个或多个Web应用。服务器还可包括数据库服务器,包括但不限于可从Oracle(R)、Microsoft(R)、Sybase(R)、IBM(R)等商购获得的数据库服务器。数据库服务器可为关系型或非关系型(例如,“NoSQL”)、分布式或非分布式等。 [0111] 本文公开的环境可包括各种数据存储库以及如上文所讨论的其他存储器和存储介质。这些可驻留在各种位置中,诸如驻留在一个或多个计算机本地(和/或驻留在其中)的存储介质上,或驻留在远离网络上的任何或所有计算机的存储介质上。在一组特定的实施方案中,信息可驻留在本领域技术人员熟悉的存储区域网(SAN)中。类似地,用于执行归属于计算机、服务器或其他网络装置的功能的任何必要的文件可视情况本地和/或远程地存储。在系统包括计算机化装置的情况下,每个这种装置可包括可经由总线电耦合的硬件元件,所述元件包括例如至少一个中央处理单元(CPU)、至少一个输入装置(例如,鼠标、键盘、控制器、触摸屏或小键盘)和/或至少一个输出装置(例如,显示装置、打印机或扬声器)。这种系统还可包括一个或多个存储装置,诸如盘驱动器、光学存储装置和固态存储装置(诸如随机存取存储器(RAM)或只读存储器(ROM))、以及可移动介质装置、存储卡、闪存卡等。 [0112] 此类装置还可包括计算机可读存储介质读取器、通信装置(例如,调制解调器、网卡(无线或有线)、红外通信装置等)和如上文所描述的工作存储器。计算机可读存储介质读取器可与计算机可读存储介质连接或被配置为接纳计算机可读存储介质,所述计算机可读存储介质表示用于暂时地和/或更长久地容纳、存储、传输和检索计算机可读信息的远程、本地、固定和/或可移动的存储装置以及存储介质。所述系统和各种装置通常还将包括位于至少一个工作存储器装置内的许多软件应用、模块、服务或其他元件,包括操作系统和应用程序,诸如客户端应用或web浏览器。应当了解,替代实施方案可具有与上文描述不同的许多变型。例如,也可使用定制硬件,和/或特定元件可在硬件、软件(包括可移植软件,诸如小程序)或两者中实施。此外,可采用与其他计算装置(诸如网络输入/输出装置)的连接。 [0113] 用于容纳代码或代码部分的存储介质和计算机可读介质可包括本领域中已知或使用的任何适当的介质,包括存储介质和通信介质,诸如但不限于以任何方法或技术实施来存储和/或传输信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的易失性和非易失性介质、可移动和不可移动介质,包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪存存储器或其他存储器技术、光盘‑只读存储器(CD‑ROM)、数字通用盘(DVD)或其他光学存储装置、磁带盒、磁带、磁盘存储装置或其他磁性存储装置或可用于存储期望的信息并可由系统装置访问的任何其他介质。基于本公开和本文提供的教义,本领域的普通技术人员将了解实施各种实施方案的其他方式和/或方法。 [0114] 在前述描述中,描述了各种实施方案。出于解释目的,阐述了具体配置和细节以便提供对实施方案的透彻理解。然而,本领域技术人员还将显而易见的是,可在没有这些具体细节的情况下实践实施方案。此外,为了不使所描述的实施方案变得模糊,可省略或简化熟知的特征。 [0115] 在本文中使用带括号的文本以及带有虚线边框(例如,大破折号、小破折号、点破折号和点)的框来说明向一些实施方案添加附加特征的可选方面。然而,这种表示法不应被视为意味着这些是仅有的选项或可选操作,和/或在某些实施方案中,带有实线边框的框不是可选的。 [0116] 具有后缀字母的附图标记可用于指示各种实施方案中可存在所提及实体的一个或多个实例,并且当存在多个实例时,每个实例无需相同,而是可共有一些一般特点或以常见的形式发挥作用。此外,所使用的特定后缀不意味着暗示存在特定数量的实体,除非有相反的具体指示。因此,在各种实施方案中,使用相同或不同后缀字母的两个实体可以具有或可以不具有相同数量的实例。 [0117] 提及“一个实施方案”、“实施方案”、“示例实施方案”等指示所描述的实施方案可包括特定特征、结构或特性,但每个实施方案可能不一定包括所述特定特征、结构或特性。 此外,此类短语不一定是指同一个实施方案。此外,当结合实施方案来描述特定特征、结构或特性时,应认为,无论是否明确描述,结合其他实施方案来实现此类特征、结构或特性也在本领域技术人员的知识范围内。 [0118] 此外,在上文描述的各种实施方案中,除非另有特别指明,否则诸如短语“A、B或C中的至少一者”的析取语言意图被理解为意指A、B或C或其任何组合(例如,A、B和/或C)。类似地,诸如“A、B和C中的至少一者或多者”(或“A、B和C中的一者或多者”)的语言意图被理解为意指A、B或C,或其任何组合(例如,A、B和/或C)。因此,析取语言既不意图也不应被理解为暗示给定实施方案要求A中的至少一者、B中的至少一者和C中的至少一者各自都存在。 [0119] 如本文所用,术语“基于”(或类似)是开放式术语,用于描述影响确定或其他行动的一个或多个因素。应当理解,该术语并不排除可能影响确定或行动的附加因素。例如,确定可能仅基于列出的因素或基于所述因素和一个或多个附加因素。因此,如果行动A“基于”B,则应当理解B是影响行动A的一个因素,但这并不排除所述行动也基于一个或多个其他因素,诸如因素C。然而,在一些情况下,行动A可完全基于B。 [0120] 除非另有明确陈述,否则诸如“一个(a/an)”等冠词通常应被解释为包括一个或多个所描述的项。因此,诸如“被配置为……的装置”或“计算装置”等短语意图包括一个或多个表述的装置。这一个或多个表述的装置可共同被配置为执行所陈述的操作。例如,“被配置为执行操作A、B和C的处理器”可包括被配置为执行操作A的第一处理器与被配置为执行操作B和C的第二处理器一起工作。 [0121] 此外,词语“可”或“可以”是以许可意义(即,意指具有某种可能)来使用,而不是以强制意义(即,意指必须)来使用。词语“包括(include)”、“包括(including)”和“包括(includes)”用于指示开放式关系,并且因此意味着包括但不限于。类似地,词语“具有(have)”、“具有(having)”和“具有(has)”也指示开放式关系,并且因此意味着具有但不限于。本文中使用的术语“第一”、“第二”、“第三”等用作跟在它们后面的名词的标签,并且不暗示任何类型的顺序(例如,空间、时间、逻辑等),除非另外明确指出此类顺序。 [0122] 可鉴于以下条款来描述所公开技术的至少一些实施方案: [0123] 1.一种计算机实现的方法,其包括: [0124] 接收至少部分基于第一数据集生成合成数据的一个或多个请求; [0125] 通过在所述第一数据集的数据点对之间沿着连接所述数据点对的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样并确保所述合成数据集中没有数据点过于接近地与所述第一数据集中的数据点匹配来根据所述请求生成所述合成数据集;以及[0126] 如所述请求配置的那样提供所述合成数据集。 [0127] 2.如示例1所述的计算机实现的方法,所述请求包括以下一项或多项:要从所述第一数据集排除什么特征的标识、所述第一数据集的位置的标识、所述第一数据集本身、要生成的合成数据点的数量、存储所述合成数据集的地方的位置的标识、要考虑的数据点对的数量、邻域大小或用于最小化可标识性的度量的指示。 [0128] 3.如示例1‑2中任一项所述的计算机实现的方法,其中所述第一数据集和合成数据集具有高维度。 [0129] 4.一种计算机实现的方法,其包括: [0130] 接收基于第一数据集生成合成数据的一个或多个请求; [0131] 通过在所述第一数据集的数据点对之间沿着连接所述数据点对的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样来根据所述请求生成所述合成数据集;以及 [0132] 如所述请求配置的那样提供所述合成数据集。 [0133] 5.如示例4所述的计算机实现的方法,所述一个或多个请求包括以下一项或多项: 要从所述第一数据集中排除什么特征的标识、所述第一数据集的位置的标识、所述第一数据集本身、要生成的合成数据点的数量、存储所述合成数据集的地方的位置的标识、要考虑的数据点对的数量、邻域大小或用于最小化可标识性的度量的指示。 [0134] 6.如示例4‑5所述的计算机实现的方法,其中通过在所述第一数据集的最近邻居对之间沿着连接经初始化的数据点及其对应对的线选择合成数据点的集合同时最大化局部概率分布来根据所述请求生成所述合成数据集包括: [0135] 初始化所指示的数量的类; [0136] 确定每个类别内的数据点对; [0137] 确定所述第一数据集内的数据点对; [0138] 对于所述第一数据集中的每个数据点: [0139] 设置所述数据点和相对于所述数据点的多个数据点对; [0140] 对于所述多个数据点对中的每一个, [0141] 获得经初始化的数据点附近的局部邻域和数据点对, [0142] 将所述局部邻域投影到连接所述经初始化的数据点和数据点对的线上,[0143] 对投影执行概率分布估计, [0144] 将所述分布估计映射到高维空间中, [0145] 基于来自基于所述概率分布估计的可能分布值的样本,确定要潜在地添加的数据点的值,以及 [0146] 当要潜在地添加的所述数据点的所确定的概率大于设定值时,将所述数据点添加到所述合成数据集。 [0147] 7.如示例4所述的计算机实现的方法,其中所述一个或多个请求指示当生成所述数据集的所述合成数据点时应当考虑隐私,并且通过在所述第一数据集的数据点对之间沿着连接所述数据点对的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样来根据所述请求生成所述合成数据集还包括: [0148] 对于所述第一个数据集中的每个数据点,确定合成点不能在其内部的区域;以及[0149] 如果所投影的局部邻域在合成点不能在其内部的所述区域中,则将所投影的局部邻域排除。 [0150] 8.如示例7所述的计算机实现的方法,其中隐私符合健康保险携带和责任法案(HIPAA)的方面。 [0151] 9.如示例7所述的计算机实现的方法,其中隐私至少符合通用数据保护条例(GDPR)第29条的方面。 [0152] 10.如示例7所述的计算机实现的方法,其中隐私确保所述合成数据集中的给定数据点不可标识。 [0153] 11.如示例4‑10所述的计算机实现的方法,其中所述第一数据集和合成数据集具有高维度。 [0154] 12.如示例4‑11所述的计算机实现的方法,其中所述投影是一维投影。 [0155] 13.如示例4‑12所述的计算机实现的方法,其中所估计的概率分布使用核密度估计来执行。 [0156] 14.如示例4至13所述的计算机实现的方法,其还包括: [0157] 在提供所述合成数据集之前,使用经训练的机器学习模型针对所述第一数据集测试所述合成数据集。 [0158] 15.一种系统,其包括: [0159] 第一一个或多个电子装置,用于在多租户提供商网络中实现数据存储服务;以及[0160] 第二一个或多个电子装置,用于在所述多租户提供商网络中实现合成数据集生成服务,所述合成数据集生成服务包括在执行时使得所述合成数据集生成服务进行以下操作的指令: [0161] 接收基于由所述数据存储服务存储的第一数据集生成合成数据的一个或多个请求; [0162] 通过在所述第一数据集的数据点对之间沿着连接所述数据点对的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样来根据所述请求生成所述合成数据集;以及 [0163] 如所述请求配置的那样提供所述合成数据集。 [0164] 16.如示例15所述的系统,其中所述一个或多个请求指示当生成所述数据集的所述合成数据点时应当考虑隐私,并且通过在所述第一数据集的数据点对之间沿着连接所述数据点对的线选择合成数据点的集合,同时对局部概率分布的可能值进行采样来根据所述请求生成所述合成数据集还包括: [0165] 对于所述第一个数据集中的每个数据点,确定合成点不能在其内部的区域;以及[0166] 如果所投影的局部邻域在合成点不能在其内部的所述区域中,则将所投影的局部邻域排除。 [0167] 17.如示例16所述的系统,其中隐私确保所述合成数据集中的给定数据点不可标识。 [0168] 18.如示例16所述的系统,其中隐私至少符合通用数据保护条例(GDPR)第29条的方面。 [0169] 19.如示例16所述的系统,其中隐私符合健康保险携带和责任法案(HIPAA)的方面。 [0170] 20.如示例15‑19中任一项所述的系统,还包括用于测试所述合成数据集的测试服务。 [0171] 说明书和附图因此应被视为具有说明性而非限制性意义。然而,将明显的是,在不脱离如在权利要求中所阐述的本公开的更广泛的精神和范围的情况下,可对此进行各种修改和变更。