
背景技术:
1、人工智能(ai)是指模拟人类思维的认知过程的计算机模型。最近,ai已经找到许多应用。例如,chatgpt是一种与用户交互来以对话的方式提供信息和创意作品的ai模型。此外,自主和半自主车辆可以使用ai来识别物体(诸如行人、交通标志和其他车辆),并且乘车共享app可以使用ai来确定等待时间和实时乘车定价。ai的一种方法是机器学习(ml),机器学习用于使用分析实验来找到某个结果的概率。ml利用被馈送到统计模型中的历史“训练”数据的大集合来“学习”一个或多个特定任务,诸如面部识别。使用的训练数据越多,ml概率估计就将越准确。
2、各种ml算法是众所周知的(例如adap和rmsprop)。ml模型可以通过“神经网络”来实现,神经网络也称为“人工神经网络”(ann)。神经网络模仿人类大脑中生物神经元向彼此发信号的方式。神经网络由多层节点组成,包括输入层、一个或多个内部/隐藏层、以及输出层。每个节点、或人工“神经元”连接到另一个节点或人工“神经元”,并且具有相关联的权重和阈值。如果任何个体节点的输出高于指定的阈值,则该节点被激活,从而将数据发送给网络的下一层。
3、神经网络模型表示数学函数。以这种方式,它们类似于传统的计算机软件,但是它们是用不同的语言表达的(不是人类可读的),并且通常是通过计算发现的,而不是通过编写的(author)(机器学习,而不是工程化)。这些模型通常对敏感数据执行操作,诸如进行癌症诊断或计算拖欠贷款的风险。此外,由神经网络实现的模型表示值得保护的知识产权中的大量投资。
4、如上所述,神经网络通常被构造为层的集合,其中每一层包括执行计算操作的神经元。一个层中的神经元使用加权突触连接到前面层中的神经元,并且以这种方式,数据通过神经网络向前流动。其中数据进入神经网络中的第一层被称为“输入层”保持在输入神经元中的数值向前传播到隐藏层中的神经元。被称为“输出层”的最后一层报告神经网络处理的最终数值结果。
5、神经网络的输入层可以接受例如对应于各种真实世界特征的数值数据。针对图像处理神经网络,这些特征可能是对应于图像中的x和y坐标的像素强度(诸如0与255之间的数字)。针对癌症诊断模型,输入可以是例如组织或甚至血液测试结果的描述。每个特征通常对应于一个输入神经元。这在输出处也是如此。换句话说,常规的神经网络通常具有在数据与含义之间的一对一映射。例如,癌症筛查神经网络通常将通过神经元来输出肿瘤的存在或不存在(其中0.0表示不存在,并且1.0表示存在)。
6、在常规的神经网络架构中,不存在用于保护数据的机制。数据与含义之间的一对一映射表示重大安全性漏洞。例如,如果bob知道正在使用什么神经网络来处理关于alice的数据,则bob可以通过查看神经网络的输出来容易地确定关于alice的细节。例如,bob可能能够基于神经网络的输出来了解关于alice的一些非常私密的事情(诸如癌症诊断或信用得分)。
7、数据“屏蔽”是以这种方式修改敏感数据的过程,使得其对未经授权的入侵者没有价值或几乎没有价值,同时仍可由软件或授权人员使用。数据混淆可以在编程计算算法中使用,以保护被分类为个人可标识信息或任务关键数据的信息,或者以其他方式需要被维持为安全的信息。然而,出于进行有效的测试循环的目的,数据必须保持可用。由于数据与含义之间的上述一对一映射,常规的神经网络架构并不容易适应使用经混淆的数据。适配现有的数据混淆方法(诸如有限环编码或甚至简单的基于xor的方法)是困难的,因为a)我们在我们可以应用于数据的数学操作方面被限制,以及b)我们被限制为利用数字作为连续标量表示(而不是有限的位序列)进行工作。由于该原因,现有的屏蔽方法对于在神经网络中的使用是不实用的。总之,常规的神经网络架构不具有用于产生受保护输出的实用机制。进来和出去的数据几乎始终是“清晰”的,并且这表示安全性/隐私问题。可能会想要使用神经网络的服务提供商必须应对其最终用户的隐私要求(这通常是立法规定的,诸如利用欧盟的gdpr)、以及通过公共接口(例如api)将其模型暴露于外部世界的风险。这在如amazonweb services(aws)的托管环境中尤其如此,在该托管环境中,神经网络在云中执行非现场(off-site)计算。
8、虽然有许多已知的用于保护数据流的解决方案(诸如ssl和混淆),但是当数据被呈现给执行神经网络模型的运行时环境(例如,keras、torch、tensorflow等)的时候,这些保护就结束,这是因为模型本身被设计为接受和输出“原始”或清晰数据。
技术实现思路
1、所公开的实现方式扩展神经网络的保护边界,并且因此更加遵守数据安全性和隐私的原则。所公开的实现方式包括一种将共享秘密混淆机制的实现方式(其不是利用机器学习创建的)嵌入到现有神经网络中以向神经网络提供更安全的数据接口的方法。所公开的实现方式利用可以在常规神经网络内实现的新颖形式的转码(transcode)。该转码将沿着连续数字线的跨度(span)映射到定义了多维投影的段上。转码性质的定义(跨度到段的映射)被供应给一种形式的编译器,该编译器产生转码神经网络(架构+权重和偏差),该转码神经网络然后可以被附加或嵌入在原始神经网络内,以创建输出经转码的数据的受保护神经网络。
2、转码神经网络保护由原始神经网络产生的可能会被认为是敏感的或以其他方式将被维持私密的数据,诸如医学数据、技术数据或财务数据。作为一个示例,转码神经网络可以与神经网络的输出层中的神经元对接。然而,所公开的实现方式可以用于保护原始神经网络的任何一个或多个层内的神经元,从而混淆整个神经网络,并且由此在神经网络的所有执行阶段处保护数据。
3、一个所公开的实现方式是一种用于保护神经网络模型的方法,该方法包括:接收指定原始神经网络的输出层的输出的输出规范数据结构,其中原始神经网络被配置为执行模型;通过以下步骤针对原始神经网络的输出层的至少一个输出来创建n维矩阵:沿着数字线定义该输出的标量值x的多个段;针对该多个段中的每一个确定对应投影算法,其中对应投影算法中的至少一个与其他对应投影算法不同;以及针对该多个段中的每一个,根据对应投影算法将该输出的标量值x投影到预定表面上,从而生成n维向量x'作为x的混淆函数;创建实现x的混淆函数的转码神经网络;以及将转码神经网络与原始神经网络对接,从而创建执行该模型的受保护神经网络。为了将x'解码回到x,将需要段以及与每个段相关联的投影参数的知识。例如,针对每个段s,可以使用段投影参数(sp)将x'逆转回到x,并且然后将x传递回到投影sp中以产生新的x'——只要所得到的x'仍然位于段s上,我们就可以假设x实际上是经解码的值。
技术特征:1.一种用于保护由神经网络执行的模型的方法,所述方法包括:
2.根据权利要求1所述的方法,其中所述对接包括将转码神经网络附加到原始神经网络的至少一个输出。
3.根据权利要求2所述的方法,其中转码神经网络包括缩放层、属性层、决策层、否定层、归一化层和转化层。
4.根据前述权利要求中任一项所述的方法,其中沿着数字线定义所述输出的标量值x的多个段的步骤包括将所述段定义为具有不同的大小。
5.根据权利要求4所述的方法,其中在x的对应值更有可能是临界值或者是临界值的情况下,所述段的大小是较小的。
6.根据前述权利要求中任一项所述的方法,其中所述对应投影算法不是全部相同的。
7.根据前述权利要求中任一项所述的方法,进一步包括打乱原始神经网络的输出。
8.一种由神经网络实现的安全模型,所述安全模型包括:
9.根据权利要求8所述的安全模型,其中所述对接包括将转码神经网络附加到原始神经网络的至少一个输出。
10.根据权利要求9所述的安全模型,其中转码神经网络包括缩放层、属性层、决策层、否定层、归一化层和转化层。
11.根据权利要求8至10中任一项所述的安全模型,其中沿着数字线定义所述输出的标量值x的多个段包括将所述段定义为具有不同的大小。
12.根据权利要求11所述的安全模型,其中在x的对应值更有可能是临界值或者是临界值的情况下,所述段的大小是较小的。
13.根据权利要求8至12中任一项所述的安全模型,其中所述对应投影算法不是全部相同的。
14.根据权利要求8至13中任一项所述的安全模型,其中原始神经网络的输出被打乱。
15.一种被布置为执行根据权利要求1至7中任一项所述的方法的系统。
技术总结公开了一种将共享秘密混淆机制的实现方式嵌入到现有神经网络中以向神经网络提供更安全的数据接口的方法。所公开的实现方式利用可以在常规神经网络内实现的新颖形式的转码。该转码将沿着连续数字线的跨度映射到定义多维投影的段上。转码性质的定义(跨度到段的映射)被供应给一种形式的编译器,该编译器产生转码神经网络(架构+权重和偏差),该转码神经网络可以嵌入在现有神经内,以使神经网络输出经转码的数据。
技术研发人员:T·希基,P·艾森
受保护的技术使用者:爱迪德技术有限公司
技术研发日:技术公布日:2024/12/17