首页> 中国专利> 关于具有隐私保障的交易数据的协作AI

关于具有隐私保障的交易数据的协作AI

摘要

本公开的实施例涉及关于具有隐私保障的交易数据的协作AI。评估了一种将在至少两个参与方之间被使用的数据的数据交集。数据将在人工智能(AI)应用中被使用。对AI应用所需的指令集的估计被执行,其中估计创建了经修改的指令集,其中操作数与对应隐私级别在符号上相关联。使用所评估的数据交集和经修改的指令集,从数据到具有相关联的隐私度量的操作数的映射被创建。映射以不同于未重叠的数据的方式来处理来自所评估的数据交集的重叠数据,以相对于不具有映射的情况改善隐私。使用数据来执行AI应用,以产生AI应用的至少一个参数。至少一个参数被输出,以供AI应用的经过训练的版本使用。描述了装置、方法和计算机程序产品。

著录项

  • 公开/公告号CN112395638A

    专利类型发明专利

  • 公开/公告日2021-02-23

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN202010462841.X

  • 发明设计人 S·布朗丹;C·库玛;K·南达库玛;

    申请日2020-05-27

  • 分类号G06F21/62(20130101);G06K9/62(20060101);G06N20/00(20190101);G06Q40/04(20120101);G16H50/20(20180101);

  • 代理机构11256 北京市金杜律师事务所;

  • 代理人酆迅

  • 地址 美国纽约阿芒克

  • 入库时间 2023-06-19 09:57:26

说明书

技术领域

本发明一般地涉及隐私,并且更具体地涉及经由例如人工智能在协作学习中改善隐私。

背景技术

此章节旨在提供下文所公开的本发明的背景或上下文。本文中的描述可以包括可能被考虑过的概念,但并不一定是先前已经构思、实现或描述过的概念。因此,除非本文中另外明确指出,否则在此章节中所描述的内容不是针对本申请的说明书的现有技术,并且不会因包括在此章节中而被认为是现有技术。下文在详细描述章节的开头定义了在本说明书和/或附图中可以找到的缩略词。

大多数企业在其数字变换路径方面都非常先进,并且越来越多的数据量以使得其可供算法使用的形式而存在。大多数数据记录本质上是交易型的,这是因为这些数据记录涉及多个参与方,通常是动作的执行者和受影响的实体,例如买方/卖方。如果每个原子数据点由多个参与方持有,那么数据集被称为交易型的。

由于每个企业都必须遵守居留、治理和隐私法规,因此隐私法规使复杂的数据驱动的行为越来越多地受到约束。这些法规在交互方之间的交集是一个巨大挑战。在各参与方之间进行协作学习以使用参与方联盟所拥有的总体数据集来构建人工智能(AI)模型的上下文中,挑战甚至会更加巨大。这需要数据的共享,该共享会降低隐私。

发明内容

此章节旨在作为示例性的并且不旨在作为限制。

在示例性实施例中,一种方法包括:评估将在至少两个参与方之间被使用的数据的数据交集,其中数据将在人工智能(AI)应用中被使用。该方法包括:估计针对AI应用所需的指令集,该估计创建了经修改的指令集,在经修改的指令集中操作数与对应隐私级别在符号上相关联。该方法还包括:使用所评估的数据交集和经修改的指令集来计算从数据到具有相关联的隐私度量的操作数的映射。该映射以不同于未重叠的数据的方式来处理来自所评估的数据交集的重叠数据,以相对于不具有映射的情况改善隐私。该方法还包括:使用数据来执行(executing)AI应用,以产生AI应用的至少一个参数。该方法包括:输出至少一个参数以供AI应用的经过训练的版本使用。

在另一示例性实施例中,一种装置包括:一个或多个存储器,该一个或多个存储器在其上具有计算机可读代码;以及一个或多个处理器。一个或多个处理器响应于计算机可读代码的获取和执行而使装置执行(perform)操作,该操作包括:评估将在至少两个参与方之间被使用的数据的数据交集,其中数据将在人工智能(AI)应用中被使用;估计针对AI应用所需的指令集,该估计创建了经修改的指令集,其中操作数与对应隐私级别在符号上相关联;使用所评估的数据交集和经修改的指令集来计算从数据到具有相关联的隐私度量的操作数的映射,该映射以不同于未重叠的数据的方式来处理来自所评估的数据交集的重叠数据,以相对于不具有映射的情况改善隐私;使用数据来执行AI应用,以产生AI应用的至少一个参数;以及输出至少一个参数以供AI应用的经过训练的版本使用。

附加示例性实施例是一种包括计算机可读存储介质的计算机程序产品,该计算机可读存储介质具有在其上实施的程序指令。该程序指令由计算机系统可执行以使计算机系统执行操作,该操作包括以下步骤:评估将在至少两个参与方之间被使用的数据的数据交集,其中数据将在人工智能(AI)应用中被使用;估计针对AI应用所需的指令集,该估计创建了经修改的指令集,其中操作数与对应隐私级别在符号上相关联;使用所评估的数据交集和经修改的指令集来计算从数据到具有相关联的隐私度量的操作数的映射,该映射以不同于未重叠的数据的方式来处理来自所评估的数据交集的重叠数据,以相对于不具有映射的情况改善隐私;使用数据来执行AI应用,以产生AI应用的至少一个参数;以及输出至少一个参数以供AI应用的经过训练的版本使用。

附图说明

图1是根据示例性实施例的用于说明利用重叠样本的概念的表(表1);

图2是关于将重叠样本用作针对两方协作的数据透视表(pivot)来利用重叠样本的说明;

图3是对在梯度下降过程的收敛中利用重叠样本的说明;

图4是用于示例性实施例的核心组件及其输入端和输出端的框图;

图5(其被划分成图5A和图5B)是用于关于具有隐私保障的交易数据的协作AI的方法的流程图;

图6是具有对示例性实施例中的示例性系统和对应计算机系统的说明的框图;

图7图示了当各参与方已经根据参与方的数量对整个空间n=N/m进行了采样时根据来自定义6的数据生成模型的若干重叠样本;以及

图8是经由哈密顿循环(HC)进行的协作SGD的算法(算法1),其中每个参与方首先处理其真正私有的数据,然后处理其与下一个参与方共享的数据,并且在一个循环结束时,最后的参与方持有估计。

具体实施方式

在说明书和/或附图中可以找到的以下缩略词定义如下:

AI 人工智能

CRDP 协作雷尼(Renyi)差分私有

DP 差分隐私

HC 哈密顿循环

RDP 雷尼差分隐私(或私有)

SGD 随机梯度下降

本文中使用词语“示例性”来表示“用作示例、实例或说明”。本文中被描述为“示例性”的任何实施例不一定被解释为优选的或优于其他实施例。在本详细描述中所描述的所有实施例是示例性实施例,这些示例性实施例被提供以使得本领域的技术人员能够制作或使用本发明,而不限制本发明的范围,本发明的范围由权利要求书限定。

为了便于参考,本公开的其余部分被分成多个章节。

1.示例的概述

如上文所描述,一个挑战存在于在各参与方之间进行协作学习以使用两个或更多个参与方的联盟所拥有的总体数据集来构建AI模型的上下文中。这种协作可以导致隐私降低。

本公开提供了利用交易数据的结构来促进参与方之间的交互(特别是关于隐私法规的交互)的技术。更详细地,当协作方恰好共享数据子集时,本文中所考虑的问题涉及差分私有协作学习。在使用随机梯度下降的协作模型学习的上下文中,并且在示例性实施例中,表明了可以使用通过迭代的隐私放大来利用这些重叠的样本,以显著地改进雷尼差分隐私(RDP)/实用性权衡。具体地,表明了实现目标RDP所需的噪声取决于分布式算法的协作结构,并且证明直接的参与方与参与方结构(诸如汉密顿循环)一般比通常用于分布式机器学习中的完全广播更优选。

更一般来说,某些示例性实施例可以被视为是复杂(例如AI)应用的另一维度。比如,一个应用被期望100%满足功能要求,并且实现了该功能要求的不同应用然后根据不同应用的存储器占用量(footprint)/运行时间/美观吸引力等进行估计。在场景之后,编译器正在尝试使存储器/运行时间和其他信息技术(IT)度量最小化。

利用应用摄取数据,隐私占用量在本文中可以被计算并且可以被优化。这首先对于具有非常大的占用量的应用(例如AI应用)有意义,但从概念上讲,这适用于所有应用。

示例性实施例的用户可以接收的内容包括例如私有结果、隐私分数以及更新该分数的方式。典型用户可以是仅仅对现在其使用私有版本的应用感到满意的普通用户。同时,专家用户可以是对其现在可以自定义、轻微调整、增强其应用的隐私性能感到满意的人。

同时,在AI世界中,此处所呈现的技术可以存在于不同级别。例如,这些技术可以扩充执行对象检测/AI分割等的现有云-本机AI应用编程接口(API),或可以作为对进行类似操作的现有库的更新而存在,或可以作为某些预置型应用的新发布的一部分。

2.附加介绍和示例性实施例

应注意,下面在方括号中引用了若干参考文献,例如“[5]”,其中[5]与下面提供的一系列参考文献中的第五个相关。这些参考文献在下面的“参考文献”章节中列出,并且也在提供给专利局的信息公开声明中列出。

在[5]中所介绍的介绍差分隐私(DP)是对随机算法在邻近(neighboring)数据集上的输出分布的变化的测量,其中“邻近”通常是指对来自一个个体的数据的添加/移除。

差分隐私的初始概念[5]是指集中式设定,在该集中式设定中,可信的管理者对来自不可信的参与方的关于来自一组用户的集中式数据的查询进行调解。局部模型[8]对应于其中不可信的参与方直接从每个参与方对数据集进行查询的设定。

在本文中的某些示例性实施例中,考虑了在分布式机器学习中通常使用的协作设定,在该协作设定中,经过认证的实体聚集以在其数据集的并集上训练模型,例如参见联合学习协议[11]。

协作设定的关键特征在于,与集中式或局部差分隐私模型不同,在协作设定中,进行查询的参与方i)自行贡献了明确定义的(机密)数据,ii)具有由其所拥有的数据集表示的一些不可约的知识。

此外,考虑到参与方已经集合起来从事公共任务,针对该公共任务,这些参与方已经收集了相关数据,这些先验私有数据集很可能包括重叠数据样本。这种样本重叠可以纯粹是随机的,或例如由于各参与方之间的边数据共享协议或由于存在与本申请相关的公共样本而导致。

一个这种应用是医学数据分析。针对这种应用,假设多家医院贡献来自患者的数据以训练图像分类器来进行自动疾病诊断。由每家医院贡献的数据可以包括来自访问过一家医院、多家医院的个体的或同意在公共域中发布其数据的个体的数据。由于来自第三类型的个体的数据是公开的,因此这种数据不受任何隐私约束的限制。来自第二类型的数据是上下文公开的,这是由于这种数据可供所访问的医院集合中的每家医院使用,因此该集合内的结果的任何交换都不会影响个体的隐私。

另一应用是交易数据。针对这种应用,围绕参与方之间的交易明确地表述了经济(例如金融、物流、制造)的大部分。当这些参与方的子集有兴趣协作以从总体数据集中学习模型(例如学习金融领域中的欺诈检测模型)时,协作方依赖于涉及两个参与方(发送方和接收方)的交易,并且每个数据点都存在于两个不同参与方所拥有的两个先验私有数据集中。

发明人已经认识到,由一组参与方共享的知识不能遭受这组参与方内的隐私泄漏。因此,利用公共知识将参与方之间的通信优先化的协议应该产生更好的隐私实用性权衡。用以允许在公知知识的保护下进行有意义的学习的一种示例性机制是通过迭代的隐私放大。

3.1利用重叠样本

通过迭代的隐私放大[14]在有噪声的收缩映射的迭代应用的上下文中提供了样本级雷尼-差分隐私(RDP)保障。

我们例示了根据下面非正式地针对随机梯度下降(SGD)进行的通过迭代的隐私放大的关键结果,该随机梯度下降是针对例如用于确定神经网络中的权重的AI应用的常用算法。

假设1(非正式)。令参与方将其数据D划分成公共集合(D

为了说明利用重叠样本的益处,考虑了简单的三方场景。令AB表示A对其数据运行SGD传递并将结果发送到B的过程。令AB表示数据集,该数据集对于A和B为公共的,但对于C为未知的(特别地,利用这些记号

表1的第一行(参见图1,其用于说明根据示例性实施例的利用重叠样本的概念)概述了在A处理其全部数据时的隐私增益,其中由所有参与方共享的子集持续,并广播结果。即,在表1中,参与方A广播其结果(顶行),A分别与每个参与方共享其结果(底行)。将隐私与来自公共集合的最后样本进行比较。

相反,A可以将其结果分别发送给B和C,在这种情况下,其将通过对与(A正在将其结果发送到最终位置的)参与方共享的样本进行排序来以不同的顺序处理数据。在这种情况下(参见表的第二行),因为1/(1+|AB|+|ABC|)≤1/(1+|ABC|),所以私有数据集D

作为利用重叠样本的另一示例,考虑按交易属性示例排序的以下内容。结合图2对此进行了说明。该图是对利用重叠样本(关于将重叠样本用作数据透视表)进行参与方A与参与方B之间的两方协作的说明。

此示例可能是在供应链生态系统中找到涉及参与方A或参与方B的最慢交易。作为概述,每个参与方A和参与方B均确认单个共享数据点,对于参与方A而言,其被表示为d_i,而对于参与方B而言,其被表示为d_j。由参与方A对其具有大于d_i的值的记录以及对其具有小于d_i的值的记录执行局部排序。在参与方A与B之间针对具有大于d_i的值的记录以及对其具有小于d_i的值的记录执行私有合并。复杂度为2*Comp((n-1)/2),而不是朴素的Comp(n),这说明了针对此示例的分而治之的益处。私有信息未被公开,并且共享数据仅在共同拥有共享数据(此处为单个共享交易)的参与方集合中被透露给参与方A和B。

更详细地,由于在参与方A与B之间的所有交易由参与方A和B共享,因此通常存在多个共享数据点。问题陈述是,参与方A和参与方B希望通过给定交易属性(例如“transaction_core”)对其数据集上的并集进行排序。他们希望使用某种分而治之的方法,其中并非直接对其数据集的并集进行排序,而是他们可以预处理其数据,然后对较小子集的并集进行排序。但是,为了划分此过程,通常人们需要就如何划分达成共识,即,哪些数据点应当用作数据透视表。同意数据透视表P表示同意将数据划分为每个参与方两个子集A_1、A_2、B_1、B_2,以使得A_1中的所有交易的交易分数(“transaction_score”)低于数据点P的“transaction_score”,并且A_2中的所有交易的“transaction_score”低于数据点P的“transaction_score”。在此示例中,数据点P在参与方A上为d_i或在参与方B上为d_j。然后,并非调用方法SORT(A,B),而是他们可以调用方法CONCATENATE(SORT(A_1,B_1),P,SORT(A_2,B_2))。即,他们可以将其共同拥有的数据用作数据透视表——实际上是多个数据透视表。因此,他们考虑其共享的交易P_1、...、P_n,然后局部地对其数据进行排序,定义数据子集A_1、..、A_n,以使得对于A_i中的每个交易,transaction_score值都在P_(i-1)与P_i的transaction_score值之间。由于数据透视表对于两个参与方是已知的,因此不会丢失任何隐私,并且局部排序不会导致隐私丢失。然后,他们在对(A_i,B_i)上调用其优选的私有排序函数n次,以获得经过完全排序的数据集。这比在(A,B)上调用私有排序函数一次更加有效。

考虑另一示例,该示例正在训练使用随机梯度下降(SGD)的欺诈检测AI模型。这使用了图3,其是对在梯度下降过程的收敛中利用重叠样本的说明。欺诈检测AI模型是表征具有洗钱特征的银行交易的模型。多家银行打算在其客户的银行交易以及跨行交易中提供资金。在随机梯度下降更新的每个步骤中添加噪声,以保持差分隐私。在图3的示例中,示出了三个步骤(步骤1、步骤2和步骤3),从而产生在底部示出的解(solution)集合。如下文更详细地描述的,较早处理的数据点受到更好的保护(增加了更多的累积噪声)。处理在模型中持续的共享交易会为非共享点产生更好的隐私。

更详细地,在如图3所图示的此过程中,通过结果(解集合)揭露了信息,因此侵犯了隐私。因此,利用一些捷径,重要的是在算法中,在处理数据点的步骤与结果之间添加了多少噪声。因此,较早处理的数据点受到了更好的保护,并且我们建议首先处理非共享数据点,这是由于这些非共享数据点需要受到更好的保护。

在SGD运行内,较早处理的点受到更好的保护。考虑具有不同数量的步骤的两个随机梯度下降运行,并且假定处理顺序在两者中针对至少一些点相同,然后在运行中以更多步骤更好地保护给定数据点(因为重要的是,与算法结束还有多远,这是由于总噪声含量随着步骤数量的增加而增加)。

隐私度量是差分隐私,即,当一个数据点经历参考变化(例如以某一商定的归一化尺度改变了1(一))时,结果改变了多少。因为结果在很大程度上并不取决于输入,所以如果输出的所得变化很小,则算法被视为是差分私有的。输出的变化的单调函数被称为epsilon,并且越低越好。当然,在随机梯度下降步骤中,每个点在不同步骤中进行处理,因此每个点以不同方式影响结果。

在图3中,考虑具有三个数据点(圆圈)的SGD的运行。箭头表示由于处理箭头所源自的数据点而在参数空间中移动的位置。最终,算法收敛到被标记为解集合的区域。这示出了仅仅用于说明的三个步骤。示出了具有对应点330-1、330-2和330-3的三条迹线310、320和330。以迹线310作为参考,现在分析如果稍微改变第二点330-2或第三点330-3会发生什么。

因为技术假设需要收缩过程,所以要考虑的典型物理过程是弹珠掉入碗中(其中相对较平坦的底部对应于此过程收敛到的“解集合”),并且在定义的时间点,人们稍微轻推弹珠(当弹珠沿着碗的内表面滚动时)。此图旨在示出的是,如果人们提前在(SGD的步骤2中处理的第二点330)上轻推(用箭头340所图示)弹珠(在SGD的步骤2中处理的第二个点330),弹珠将最终接近其在不存在扰动的情况下将终止的位置。这由附图标记390图示,其图示了第二点330-2的结束位置相对于第一点330-1的结束位置之间的差。另一方面,如果人们稍后在(在SGD的步骤3中处理的第三点330-3)上轻推(用附图标记350所图示)弹珠——以相同幅度——弹珠最终会远离其在不存在扰动的情况下将收敛到的点。这由附图标记380图示,其图示了第三点330-3的结束位置相对于第一点330-1的结束位置之间的差。

这再次起作用,因为该过程是收缩,这大致是指该过程实际上希望收敛到给定点,并在一定程度上吸收扰动——在足够的时间内。因此,在稍后处理的点上的扰动对结果的影响更大,因此差分私有较小。

3.2示例性改进的概述

此章节描述了用于示例性实施例的若干示例性改进。

关于协作雷尼差分隐私,制定了适用于协作设定的差分隐私的新定义。具体而言,此定义考虑了以下事实:一些数据对于交互方可以是公共的,并且整合了以下事实:协作协议仅将直接查询结果发布给参与方的子集。

关于通信结构的影响的分析,定义了与分布式算法相关联的通信结构,并且估计了针对特定示例性结构所需的噪声级别。在简单的重叠数据生成过程下,基于迭代完全广播和哈密顿循环来分析协议的隐私。

附加地,示例性实施例允许在具有本地输出隐私保障的分布式数据集上训练AI模型,从而确保计算出的信息不会过多地取决于来自与输入数据相关联的任何特定个体的数据。示例性实施例可以将共享数据子集视为上下文公开的,并经由下面两种策略将该信息整合到计算中:(1)当需要公开发布信息时,将重叠数据用作数据透视表;以及(2)仅在需要时使用重叠数据进行微调,直到计算结束。示例性实施例可以根据数据点的使用(例如SGD过程中的更早或更晚)以及数据点的共享结构,为每个数据点提供敏感性指示符。另一可能的改进是,某些示例性实施例可以在考虑到隐私和应用准确性二者的情况下针对给定了一组操作的数据定序进行优化。示例性实施例可以在两个目标之间提供权衡曲线,并且指示当前分配是否位于最佳权衡曲线上。可选的改进是示例性实施例,该示例性实施例以安全方式确定异构方所拥有的数据集中的重叠,例如发现涉及将所有权从供应者A转移到消费者B的交易对于A和B二者是公共的,例如在重叠由于A和B之间的异构数据结构而非显然的情况下。

3.3其他工作

分布式随机梯度下降([19])已成为用于分布式优化的选择方法,特别是用于从大型数据集中学习模型参数(参见[10,20])。在[11]中,表明分布式SGD也可以在多方和联合学习设定中为有用的。

差分隐私的基础是算法对其输入的敏感性,并且大量工作已经将重点放在从[15,18]中对平稳(smooth)敏感性的定义到[13]中的无界损失的更严格的限制上。还提出了用于增强隐私的各种技术,包括通过采样进行的隐私放大[8](参见[2]针对最新结果)、通过混编进行的隐私放大[6],通过迭代的隐私放大[7]。

分布式深度学习设定中的差分隐私可以返回参看[17]的工作。在[1]中针对前馈神经网络且在[12]中针对递归神经网络,已经报告了改进的构成限制和实验结果。在[4,16,3]中同样已经研究了私有经验风险最小化。

然而,如本文中所描述和使用的,所有这种工作中无一者解决了对分布式数据集中的重叠样本的隐私影响的理解。

4.示例性系统和方法

转到图4,这是用于示例性实施例的如由服务器计算机系统610实现的核心组件400及其输入端401和输出端402的框图。核心组件包括以下内容:使用诸如私有集合交集的密码技术的重叠发现415;编译器455,其在框420中执行具有应用功能性的符号解释的计算指令图产生;隐私处理器460,其在框430中执行隐私感知应用处理并且在框425中执行计算编排。输入端401包括被输入到重叠发现组件415的网络范围交易数据结构405。重叠发现组件415可以使用诸如私有集合交集的密码技术。即,重叠发现组件可以从已知参与方标识符生成(例如简单的)重叠结构416,或可以运行安全协议(例如使用密码技术)来私有地估计参与方之间的数据点之间的重叠。在图2中已经图示了这种重叠的示例。

输入端401还包括例如用于银行交易中的欺诈检测的用户AI应用410,其被应用于编译器455。在示例性实施例中,用户AI应用410包括SGD算法411。用户AI应用410包括指令集412。编译器455在框420中执行具有应用功能性的符号解释的计算指令图产生。换句话说,计算指令图产生组件420利用语言编译器455来产生具有(w/)经修订的指令集421和对应隐私级别的图解(diagram)。应用410需要使经修订的指令集被执行。在图解421中的添加是每个操作数与隐私级别在符号上相关联,这是在框420中的符号解释。例如,在排序算法中,数据透视表操作数以符号方式与低隐私级别相关联。众所周知,操作数是计算机指令的一部分,该计算机指令指定要对其进行操作或操纵的数据,并通过扩展指定数据本身。更详细地,所有逻辑算术元素是操作数(变量)或运算符(函数)。在本文中使用术语“操作数”,这是因为示例性实施例在符号级别上工作,即,应用的差分隐私取决于针对应用及其结构的指令集,而不取决于数值。

因此,第一步骤是将代码(例如指令集412)转换为可加工的材料(即,使用编译器455),该材料仅将程序的结构化表示形成为图解421。编译器455不是标准编译器,而是“理解”隐私并且能够用隐私/敏感性信息来扩充指令树,从而为有序指令集421中的每个操作数分配隐私级别的编译器。编译器455可以被视为基本上创建了“空白”隐私级别,该隐私级别然后由计算编排组件425“填充”。即,考虑到来自图解420的“空白”模板,人们现在可以决定如何使用实际数据,例如如果操作数会导致二进制高/低隐私降低,那么针对哪些数据点,数据适合于分配到高隐私降低,并且针对哪些数据点,数据适合于分配到低隐私降低。这通常需要更多地了解每个数据点的隐私要求(例如已使用了多少数据点/剩余多少数据点),并由计算编排组件425执行。下面描述了可能如何执行此操作的示例。

关于AI,此示例中的AI被编程到用户AI应用410中。尽管示例性实施例不限于SGD,但SGD算法411是迄今为止用于训练AI模型的最广泛使用的算法,例如图像上的对象检测、针对应用的策略学习,比如自动驾驶或AlphaGo(击败职业人类围棋选手的第一个计算机程序)。通常,在图像上的物体检测中,通过一次处理一个训练图像并使用SGD更新模型参数来训练AI模型。示例性实施例可以是在例如在编程语言Python中调用SGD函数的任何时间,并非使用随机数据顺序或指定顺序,而是通过本文中所呈现的技术来使用和计算‘私有’顺序。

关于在每个操作数与隐私级别在符号上相关联的图解421中的添加,考虑了以下内容。假定用户AI应用410是用以运行自动驾驶车辆的程序。该程序将摄取数据点。取决于摄取每个数据点的方式,该数据点的隐私将以不同方式受到影响(例如,如先前所描述,在SGD步骤中的定序事项)。因此,考虑到程序结构(例如,如何在SGD步骤中对共享/非共享数据进行排序),应该存在用于关于隐私“最佳地”分配数据点的方式。这可以通过考虑由编译器455产生的指令树,并估计结果对每个输入——每个外部操作数的敏感性来完成。然后,根据应如何以隐私的方式考虑每个数据点,针对每个数据点产生映射数据点对操作数(例如,非共享数据被分配较早顺序,共享数据被分配较晚顺序)。

由隐私处理器460实现的计算编排组件425执行映射。即,在给定指令图(例如图解421中的经修订的指令集)的情况下并且使用诸如重叠结构416的隐私约束的符号编码,计算编排组件425(该组件425)产生对操作数的数据输入的分配,以满足隐私约束。这是所推荐的定序435的输出端402。所推荐的定序435是内部输出端,其可以在内部使用并且不被暴露。然而,这可以被暴露给用户,以使得其可以在需要时更新此定序,这将对输入数据进行重新定序,从而对结果进行重新定序,并且还影响每个输入数据点的隐私分数。同样,可以提出其他定序。首先,重要的是,观察到,通常更好的隐私意味着应用的较低准确性(隐私实用性权衡)。每个定序将对每个点具有不同的隐私保障和不同的准确性。然后,用户自由地选择对其最有意义的定序。

数据点级别隐私分数440的输出端402可以被视为是一种针对用户的凭证,从而以隐私方式向其通知有多少特定数据点受到此特定运行的影响。即,数据点级别隐私分数440指示每个输入点的隐私实际泄漏了多少,或更正式地,指示每个输入端上的输出的敏感性如何。

关于由隐私处理器460实现的隐私感知应用处理组件430,该组件430通过遵循计算指令图421(例如经修订的指令集421)和对操作数的数据点的分配(例如所推荐的定序435)来执行应用420。隐私感知应用处理组件430创建了私有协作结果450的输出端402。这可以被视为是经过训练的AI应用。查看结果450的另一方式是其是应用410的结果,因此,如果人们正在训练AI应用410来完成任务,那么结果是所标识的最佳参数(或参数集,诸如针对神经网络的权重),以使得AI应用410良好地执行任务。

参看图5(其被划分成图5A和图5B),该图是用于关于具有隐私保障的交易数据的协作AI的方法的流程图。图5还图示了根据示例性实施例的一种或多种示例性方法的操作、在计算机可读存储器上实施的计算机程序指令的执行结果、由在硬件中实现的逻辑执行的功能和/或用于执行功能的互连构件。图5中的框被假定为至少部分地由核心组件400执行,例如,如由服务器计算机系统610(参见图6)例如在控制模块640的控制下实现。为了便于参考,计算机系统610被假定为执行流程图中的操作。

一种示例性方法由框505至框525图示,并且其他可能的实现由框530至框570图示。在框505中,计算机系统610评估将在至少两个参与方之间被使用的数据的数据交集,其中该数据将在人工智能(AI)应用中被使用。在框510中,计算机系统610估计AI应用所需的指令集,该估计创建了经修改的指令集,其中操作数与对应隐私级别在符号上相关联。计算机系统610在框515中使用所评估的数据交集和经修改的指令集来计算从数据到具有相关联的隐私度量的操作数的映射。该映射以不同于未重叠的数据的方式来处理来自所评估的数据交集的重叠数据,以便相对于不具有映射的情况改善隐私。

计算机系统610使用数据来执行AI应用,以产生AI应用的至少一个参数。参见框520。计算机系统610在框525中输出至少一个参数以供AI应用的经过训练的版本使用。

另一可能的示例由框530图示,其中计算机系统610允许用户调整从数据到操作数的映射,并且进行执行AI应用和输出至少一个参数,将输出向用户输出以使得用户能够看到备选结果。在框535中,计算机系统610实现其中数据不是交易数据,但在参与方之间展现出一个或多个重叠的方法。

在框540中,计算机系统610实现方法,其中提供将在两个参与方之间被使用的数据的系统为数据中的至少一些数据点指定隐私要求,并且计算映射针对数据中的至少一些数据点使用指定的隐私要求。计算机系统610在框545中执行计算映射,以在执行AI应用时移动针对更晚地在计算中被执行的重叠数据的操作数,并且移动针对更早地在计算中被执行的不重叠的数据的操作数。

在框550中,计算机系统610响应于需要公开发布信息而执行计算映射以将重叠数据中的一个或多个用作对应数据透视表。计算机系统610在框555中实现方法,其中AI应用包括随机梯度下降(SGD)算法,并且计算是SGD算法的一个步骤。针对框560,计算机系统610执行方法,其中相关联的隐私度量包括数据点级别隐私分数,该数据点级别隐私分数指示每个输出数据点相对于每个输入数据点的敏感性,并且输出还包括输出数据点级别隐私分数。

针对框565,计算机系统610执行方法,其中两个参与方是异构参与方,并且其中评估将在两个参与方之间被使用的数据的数据交集还包括:以安全方式确定异构参与方所拥有的数据集中的重叠,将在两个参与方之间被使用的数据包括异构参与方所拥有的数据集。针对框570,计算机系统610执行方法,其中至少两个参与方之间的所有数据被假定为私有的,但是响应于数据中的一些由至少两个参与方的子集共享,共享数据子集被视为在逻辑上等效于参与方的子集内的公共数据。评估数据交集确定共享数据子集,并且映射以不同于未被共享的数据的方式来处理共享数据子集,以便相对于不具有映射的情况改善隐私。

转到图6,该图示出了可以实践示例性实施例的一种可能的非限制性示例性系统600的框图。在图6中,服务器计算机系统610与(多个)有线和/或无线网络697进行有线和/或无线通信,并通过(多个)网络697与(多个)其他计算机系统690进行有线和/或无线通信。服务器计算机系统610可以通过一个或多个有线或无线网络进行访问、可以在云中实现等。此外,不需要客户端-服务器关系。

计算机系统610包括通过一个或多个总线627互连的一个或多个处理器620、一个或多个存储器625、一个或多个收发器630、一个或多个网络(N/W)接口((多个)I/F)645以及用户接口电路装置665。一个或多个收发器630中的每一个包括接收器Rx 632和传输器Tx633。一个或多个总线627可以是地址、数据和/或控制总线,并且可以包括任何互连机制,诸如主板或集成电路上的一系列线路、光纤或其他光学通信设备等。一个或多个收发器630被连接至一个或多个天线628。一个或多个存储器625包括计算机程序代码623。

计算机系统110包括控制模块640,该控制模块包括部分640-1和/或640-2中的一者或两者。控制模块640执行本文中所描述的操作,诸如以实现图4的核心组件400,或图2的共享数据点使用,或本文中所呈现的任何其他操作。可以以若干种方式实现控制模块640。控制模块640可以以硬件的形式被实现为控制模块640-1,诸如被实现为一个或多个处理器620的一部分。控制模块640-1还可以被实现为集成电路或通过其他硬件(诸如可编程门阵列)实现。在另一示例中,控制模块640可以被实现为控制模块640-2,其被实现为计算机程序代码623并且由一个或多个处理器620执行。例如,一个或多个存储器625和计算机程序代码623可以被配置为与一个或多个处理器620一起使计算机系统610执行本文中所描述的操作中的一个或多个。还应注意,计算机系统610中所示的设备不受限制,并且可以使用附加的、不同的或更少的设备。

用户接口电路装置665与一个或多个用户接口元件605通信,该用户接口元件可以与计算机系统610形成一体,或形成在计算机系统610的外部但耦合到计算机系统610。接口元件605包括以下中的一个或多个:一个或多个相机;一个或多个音频设备(诸如(多个)麦克风、(多个)扬声器等);一个或多个传感器(诸如(多个)GPS传感器、(多个)指纹传感器、(多个)定向传感器等);一个或多个显示器;和/或一个或多个键盘。此列表不是详尽的或限制性的,并且可以使用其他、不同或更少的元件。用户601(在此示例中为人类)可以与计算机系统610交互,例如使系统610采取特定动作。这些操作也可以由计算机系统610结合用户601的动作或在不具有用户601的动作的情况下引起。计算机系统610经由一个或多个有线或无线网络697、经由有线链路677和无线链路678中的一者或两者与(多个)其他计算机系统690进行通信。

图6也提供了对图5的框530的说明,其中计算机系统610允许用户调整从数据到操作数的映射,并且进行执行AI应用和输出至少一个参数,将输出向用户输出以使得用户能够看到备选结果。显示器611示出了原始映射612。参考613表明计算机系统610请求用户是否希望调整映射612。用户601可以选择“是”或“否”。假定选择了“是”,计算机系统610将显示调整后的映射614并且还显示(多个)对应的所得参数615。

5.计算定向示例

此章节涉及用于执行如例如由隐私处理器460及其计算编排组件425执行的计算编排的可能的示例。

5.1初步准备

此章节包含用于形成下文所描述的主要结果的初步信息。

5.1.1通过迭代的隐私放大

考虑了将数据空间D映射至分布空间R的算法

定义1(参见[14])。随机算法

D

其中,

雷尼散度针对随机映射g满足数据处理不等式D

定理1(参见[7])。令

此结果的关键方面是样本特定的RDP保障,其中每个样品由其处理顺序标识。在[7]中,作者提到在这种设定下,如果来自一个分布的数据集包含私有数据和公共数据,那么应该最后处理公共数据,这是由于处理得越晚,隐私保障越差。在本文中,这扩展到协作设定,其中数据的上下文公共性质取决于通信协议。

更详细地,本文中的示例性实施例以[7]中的技术结果为基础,并且将该结果应用于所有数据均为私有的协作设定中,但是当数据中的一些由参与方的子集共享时,这些共享数据子集在逻辑上等效于参与方的子集内的公共数据——因此可以用于保护参与方的子集内的非共享数据。如本文中所描述,这意味着参与方在协作设定下交换数据的顺序会影响协议的隐私保障。假设[7]中的想法只有在输入数据点具有不同的隐私要求时才有用,相反,当输入数据点具有不同的隐私要求时,在此处考虑了通用情况。具体而言,在本文中考虑了程序(在[7]中未考虑)的情况下——其中可能无法按顺序处理数据集——并在本文中提出了用每个操作数/数据点的隐私暴露来扩充编译器的建议。因此,本文中的示例性实施例在可以考虑的算法类别上实现通用性。在那种设定下,提出了将数据点与操作数相关联以使隐私最小化,这显然是可能的,这是由于示例性实施例可以估计分配数据点与操作数的隐私分数。

5.1.2协作雷尼差分隐私(CRDP)

差分隐私定义涉及对相邻数据集的考虑,这旨在对应于由单个个体或逻辑实体的动作引起的原子变化。

在集中式/局部差分隐私设定下,外部用户正在查询集中式/局部数据集,并且考虑到数据的向量表示,此概念适用于汉明距离为1的任何一对数据点。要强调的是,尽管控制对与进行查询的用户相关联的数据的查询的依赖性是不必要的,但此定义可能包括来自进行查询的用户的数据。

在各参与方都持有数据并进行查询的协作设定下,这种差别是极为相关的。实际上,协作用户不仅可以拥有唯一由其拥有的数据,而且还可以拥有与来自其他参与方的数据重叠的数据,因此,传统的差分隐私定义将要求控制对其已经拥有的数据的查询的敏感性。

令(D

定义2:分布式算法被定义为配对算法,通信结构(A,C),其中通信结构C被定义为定义了从顶点k到一组顶点c

分布式算法涉及从参与方k的输出分布A

定义3:考虑到m个参与方,分布式算法(A,C)是顺序α的ε-协作雷尼差分私有的(CRDP)或(α,ε)-CRDP,在针对任何映射

D

此定义意味着,考虑到重叠数据集和通信结构,如果由数据发送者执行的算法是关于唯一由其拥有的数据的局部模型中的RDP,那么协作协议为CRDP。

只有在多个参与方之间的重叠样本先验地已知时或在参与方可以在不透露附加信息的情况下发现重叠样本的情况下,以上内容才是感兴趣的。可以使用私有集合交集来发现重叠结构,针对该重叠结构,安全且合理有效的协议是可用的[9]。

现在制定协作和局部模型中的差分隐私之间的关系。

命题1:考虑(α,ε)-CRDP分布式算法(A,C)。由参与方k的处理数据D

证明1:这由CRDP的定义推断,考虑到明确地标识了在步骤(A

假设总体隐私保障取决于可以在每个通信步骤中获得的隐私级别,分析和比较各种通信结构是感兴趣的。

5.1.3用于协作的通信结构

在此章节中,定义了哈密顿循环和完全广播通信结构。将边缘权重G

两个典型的通信结构是哈密顿循环和完全广播。

定义4:考虑到节点集合的置换

定义5:令v∈V,如果将V中的{v}的补集记录为V

5.1.4用于重叠样本的简单模型

出于分析起见,定义了重叠样本的模型。考虑到每个参与方从已经位于公共域中的一些数据构建其知识,而其他数据是通过从各地随机采样并标记为私有数据来获得的。例如,考虑到面部识别系统的多方训练的问题。协作方可以访问标准公共域数据集,例如IARPA Janus基准。IARPA Janus基准A(IJB-A)是美国国家标准与技术研究所面部识别挑战的一部分,这是一项正在进行的估计活动,旨在支持面部识别研究社群。参与方还可以单独地从web收集面部图像并添加在web上没有的面部图像,前者有时被标记为私有的,而后者始终被标记为私有的。

定义6:给定基数N的离散数据空间D,假定数据的基数P的子集

此处,P对应于被标记为公共的数据,而D\P对应于最终被标记为私有的任何数据点。

命题2:给定根据定义6的数据生成过程,k个参与方之间的重叠样本的计数可以被表示为:

且当P/N较小(即,公共数据量较小)时,基数的表示简化为:

在定义6中概述的数据生成过程具有重叠结构的独立于类别标签的重要属性。这意味着可以在不影响数据集的性能的情况下按任意顺序处理数据集。

5.2示例性结果

在此章节中,分析了可以针对特定通信结构获得的重叠隐私保障。

5.2.1单个SGD步骤的CRDP

在此章节中,基于CRDP模型中的SGD来分析协作学习算法的一个步骤。

定理2:在定理1的假设下,给定m个参与方以及分布式算法(A,C),使得步骤i涉及对数据D

如果将针对步骤i的噪声级别σ

那么算法的步骤i为(α,ε)-CRDP。

观察到,安排算法步骤以增加重叠集合的大小可以产生明显改进的ε。接下来考虑特定通信结构。

5.2.1.1完全广播通信结构

在此章节中,考虑了根据定义5的完全广播协议。此协议例如在联合学习中是最常用的[11]。在每个步骤中,每个参与方将其更新广播到所有其他参与方。

推论1:在根据定义6的数据生成过程下,如果高斯噪声满足以下条件,那么具有完全广播通信结构的算法的步骤i为(α,ε)-CRDP:

在根据定义6的数据生成过程的上下文中,图7使对N和m的限制(1)的依赖性以及公共数据集的大小可视化。图7图示了当参与方已经根据参与方的数量对整个空间n=N/m进行了采样时根据来自定义6的数据生成模型的若干重叠样本。

在数据生成过程下,随机重叠的大小以指数方式快速减小。然而,即使在此模型下并且在没有公共数据的情况下,针对涉及少于5个已经对大约1百万个数据点的完全数据空间进行了采样的实体的协作,重叠集合的大小大于10。

在其中应用的性质暗指数据共享(例如用交易数据进行工作)的更加自然的情况(诸如以上章节2中所论述的情况)下,可以预计重叠会更明显。

5.2.1.2哈密顿循环通信结构

在此章节中,考虑了根据定义4的哈密顿循环通信结构C

本文中所考虑的哈密顿循环是任意的,但实际上,具有低诱导加性噪声的哈密顿循环应该是优选的,这需要将具有较大重叠的参与方之间的通信优先化。用于问题的启发式求解器可以用于标识合适的哈密顿循环。

算法1的所有通信步骤涉及从一个参与方到另一参与方的通信。

推论2:在根据定义6的数据生成过程下,如果高斯噪声满足以下条件,那么具有哈密顿循环的算法的步骤i为(α,ε)-CRDP:

在此模型下,参与方需要具有更多的通信步骤以便使结果与m个通信步骤同步,从而允许每个参与方接收更新。对于少数参与方,对m的依赖性针对完全广播结构仍然是优选的。

5.3讨论

已经考虑了宽松的安全性模型,该模型取决于协作设定的特定属性,在该协作设定中,标识了所有参与方,并且所有参与方都愿意进行协作,并且常常在其私有数据中出现重叠。

据信,对私有/公共数据的概念进行了细化的类似研究提供了用于隐私-实用性权衡的改进的有意义保证。此处考虑的公共数据和私有数据的概念可以扩展到闭联集(continuum),以便捕获隐私的更多细粒度概念。

特定的相关扩展包括:对最佳通信结构的分析,以及按依赖于重叠结构的顺序的处理数据对学习性能的影响。

5.4参考文献

以下是上文已经提及的参考文献。

[1]Martin Abadi、Andy Chu、Ian Goodfellow、H Brendan McMahan、IlyaMironov、Kunal Talwar和Li Zhang发表在2016年先进复合材料国际研讨会的ACM SIGSAC计算机和通信安全会议之会议记录第308–318页的“Deep learning with differentialprivacy(具有差分隐私的深度学习)”。

[2]Borja Balle、Gilles Barthe和Marco Gaboardi于2018年发表在神经信息处理系统进展第6280–6290页的“Privacy amplification by subsampling:Tight analysesvia couplings and divergences(通过子采样进行隐私放大:经由耦合和分歧进行严格分析)”。

[3]Raef Bassily、Adam Smith和Abhradeep Thakurta于2014年发表在预印本期刊网站(arXiv)(arXiv:1405.7085)的“Differentially private empirical riskminimization:Efficient algorithms and tight error bounds(差分私有经验风险最小化:高效的算法和严格的误差限制)”。

[4]Kamalika Chaudhuri、Claire Monteleoni和Anand D Sarwate于2011年发表在机器学习研究期刊第12期(三月)第1069–1109页的“Differentially privateempirical risk minimization(差分私有经验风险最小化)”。

[5]Cynthia Dwork、Frank McSherry、Kobbi Nissim和Adam Smith于2006年发表在Springer期刊的理论的密码学会议第265–284页的“Calibrating noise tosensitivity in private data analysis(在私有数据分析中根据敏感性校准噪声)”。

[6]

[7]Vitaly Feldman、Ilya Mironov、Kunal Talwar和Abhradeep Thakurta于2018年发表在2018年电气与电子工程师协会的IEEE第59届计算机科学基础(FOCS)年度研讨会第521–532页的“Privacy amplification by iteration(通过迭代的隐私放大)”。

[8]Shiva Prasad Kasiviswanathan、Homin K Lee、Kobbi Nissim、SofyaRaskhodnikova和Adam Smith于2011年发表在工业与应用数学学会计算杂志第40期(3)第793–826页的“What can we learn privately?(我们可以私下学习什么?)”。

[9]Vladimir Kolesnikov、Naor Matania、Benny Pinkas、Mike Rosulek和NiTrieu于2017年10月在美国达拉斯市发表在2017年先进复合材料国际研讨会的ACM SIGSAC计算机和通信安全会议之会议记录第1257–1272页的“Practical multi-party privateset intersection from symmetric-key techniques(来自对称密钥技术的实用多方私有集合交集)”。

[10]Ryan McDonald、Keith Hall和Gideon Mann于2010年发表在计算语言学协会的人类语言技术:计算语言学协会北美分会2010年年会第456–464页的“Distributedtraining strategies for the structured perceptron(用于结构化感知器的分布式训练策略)”。

[11]Brendan McMahan、Eider Moore、Daniel Ramage、Seth Hampson和BlaiseAguera y Arcas于2017年发表在人工智能与统计学第1273–1282页的“Communication-efficient learning of deep networks from decentralized data(基于去中心化数据的深度网络通信高效学习)”。

[12]H Brendan McMahan、Daniel Ramage、Kunal Talwar和Li Zhang于2018年发表的“Learning differentially private recurrent language models(学习差分私有递归语言模型)”。

[13]Kentaro Minami、HItomi Arai、Issei Sato和Hiroshi Nakagawa于2016年发表在神经信息处理系统进展第956–964页的“Differential privacy withoutsensitivity(不具有敏感性的差分隐私)”。

[14]Ilya Mironov于2017年发表在2017年电气与电子工程师协会的IEEE第30届计算机安全基础研讨会(CSF)第263–275页的“Rényi differential privacy(雷尼差分隐私)”。

[15]Kobbi Nissim、Sofya Raskhodnikova和Adam Smith于2007年发表在先进复合材料国际研讨会的第三十九届ACM计算理论研讨会之会议记录第75–84页的“Smoothsensitivity and sampling in private data analysis(私有数据分析中的平稳敏感性和采样)”。

[16]Manas Pathak、Shantanu Rane和Bhiksha Raj于2010年发表在神经信息处理系统进展第1876–1884页的“Multiparty differential privacy via aggregation oflocally trained classifiers(经由本地训练的分类器的聚合的多方差分隐私)”。

[17]Reza Shokri和Vitaly Shmatikov于2015年发表在先进复合材料国际研讨会的第22届ACM SIGSAC计算机和通信安全会议之会议记录第1310–1321页的“Privacy-preserving deep learning(隐私保护深度学习)”。

[18]Adam Smith于2011年发表在先进复合材料国际研讨会的第四十三届ACM计算理论研讨会的会议记录第813–822页的“Privacy-preserving statistical estimationwith optimal convergence rates(具有最佳收敛率的隐私保护统计估计)”。

[19]John Tsitsiklis、Dimitri Bertsekas和Michael Athans于1986年发表在IEEE自动控制汇刊第31卷(9)第803–812页的“Distributed asynchronous deterministicand stochastic gradient optimization algorithms(分布式异步确定性和随机梯度优化算法)”。

[20]Martin Zinkevich、Markus Weimer、Lihong Li和Alex J Smola于2010年发表在神经信息处理系统进展第2595–2603页的“Parallelized stochastic gradientdescent(并行随机梯度下降)”。

6.其他注解

本发明可以是系统、方法和/或计算机程序产品。该计算机程序产品可以包括计算机可读存储介质(或多种计算机可读存储介质),该计算机可读存储介质在其上具有用于使处理器执行本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编程序指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设定数据或用一种或多种编程语言(包括面向对象的编程语言,诸如Smalltalk、C++等)和常规程序编程语言(诸如“C”编程语言或类似编程语言)的任何组合编写的源代码或目标代码中的任一者。计算机可读程序指令可以完全在用户的计算机上执行、部分地在用户的计算机上执行、作为独立式软件包执行、部分地在用户的计算机上执行且部分地在远程计算机上执行,或完全在远程计算机或服务器上执行。在后一种场景下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或者广域网(WAN))连接至用户的计算机,或可以(例如通过使用互联网服务提供者的互联网)与外部计算机进行连接。在一些实施例中,包括例如可编程逻辑电路装置、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路装置可以通过利用计算机可读程序指令的状态信息来个性化电子电路装置以执行计算机可读程序指令,以便执行本发明的各个方面。

这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号