用于创建和执行安全神经网络的系统和方法与流程

专利2025-11-16  4



背景技术:

1、人工智能(ai)是指模拟人类思维的认知过程的计算机模型。最近ai已经发现了很多应用。例如,chatgpt是与用户交互的ai模型来以对话的方式提供信息和创造性作品。此外,自主和半自主车辆可以使用ai来识别对象(诸如行人、交通标志和其他车辆),并且乘车共享(ride-sharing)应用可以使用ai来确定等待时间和实时乘车定价。ai的一种方法是机器学习(ml),它用于使用分析实验来找到某种结果的概率。ml利用馈入统计模型中的历史“训练”数据的大集合来“学习”诸如面部识别之类的一个或多个特定任务。使用的训练数据越多,ml概率估计就将越准确。推论(corollary)是,如果例如由攻击者将被破坏的和/或异常的数据输入到ml模型中,则ml模型可以被呈现得不准确和/或不可操作。当然,这呈现了ml应用中的安全问题。

2、各种ml算法是公知的(例如,adap和rmsprop)。ml模型可以通过“神经网络”来实现,“神经网络”也称为“人工神经网络”(ann)。神经网络模仿人脑中生物神经元相互发信号的方式。神经网络由多层节点组成,所述多层节点包括输入层、一个或多个内部/隐藏层以及输出层。每个节点或人工“神经元”连接到另一个并具有相关联的权重和阈值。如果任何个体节点的输出高于指定的阈值,则该节点被激活,向网络的下一层发送数据。

3、神经网络模型表示数学函数。这样,它们类似于传统的计算机软件,但它们以不同的语言表达(不是人类可读的)并且经常是通过计算发现的,而不是创作的(authored)(机器学习,而不是工程)。通常,这些模型对敏感数据执行操作,诸如进行癌症诊断或计算贷款违约风险。此外,由神经网络实现的模型表示了值得保护的知识产权中的可观投资。

4、如上面指出的,神经网络通常被架构设计为层的集合,其中每个层包括执行计算操作的神经元。一个层中的神经元使用加权突触连接到前进层(proceeding layer)中的神经元,并且这样,数据通过神经网络向前流动。其中数据进入神经网络中的第一层被称为“输入层”。保持在输入神经元中的数值被向前传播到隐藏层中的神经元。被称为“输出层”的最终层报告神经网络处理的最终数值结果。

5、神经网络的输入层可以接受数值数据,数值数据例如对应于各种现实世界特征。对于图像处理神经网络,这些特征可能是对应于图像中的x和y坐标的像素强度(诸如0和255之间的数字)。对于癌症诊断模型,输入可以是例如组织或者甚至是血液测试结果的描述。每个特征通常对应于一个输入神经元。在输出处也是如此。换句话说,常规的神经网络通常在数据和含义之间具有一对一映射。例如,癌症筛选神经网络一般将通过神经元输出肿瘤的存在或不存在(其中0.0表示不存在并且1.0表示存在)。

6、在常规神经网络架构中,不存在用于保护数据的机制。数据和含义之间的一对一映射表示了重大的安全脆弱性。例如,如果bob知道正在使用什么神经网络来处理关于alice的数据,则bob可以通过查看分配给输入神经元什么数字来容易地确定关于alice的细节(即使bob不具有对模型的访问权)。如果bob能够看到输出(即使不知道输入是什么),他甚至也可能能够了解关于alice的一些非常隐私的事情(诸如癌症诊断或信用评分)。熟练的攻击者甚至可以通过进入(pass in)很多数据并检查输出来使用ml算法“推断”模型的行为,来对神经网络实现的模型进行逆向工程。

7、数据“遮蔽(masking)”是以使得敏感数据对未授权的入侵者而言没有或几乎没有价值而仍由软件或授权人员可使用这样的方式修改敏感数据的过程。数据模糊可以在编程的计算算法中使用以保护被分类为个人可标识信息或任务关键数据或者以其他方式需要维持为安全的信息。然而,数据必须保持可用于进行有效的测试循环(test cycle)的目的。由于上面指出的数据和含义之间的一对一映射,常规的神经网络架构不容易可适于使用模糊数据。适配现有的数据模糊方法(诸如有限环编码或者甚至简单的基于xor的方法)是困难的,因为a)我们在我们可以将什么数学运算应用于数据的方面受到限制,以及b)我们被限制于将数字作为连续的标量表示(与比特的有限序列相反)来工作。由于该原因,现有的遮蔽方法对于在神经网络中使用不实际。

8、总之,常规神经网络架构没有用于接受受保护数据的实用机制。传入的数据几乎总是“清楚”的,并且这表示了安全/隐私问题。可能想要使用神经网络的服务提供商必须应对其最终用户的隐私要求(这通常是法律规定的,诸如eu中的gdpr)以及通过公共接口(例如api)将其模型暴露给外部世界的风险。在像amazon web services(aws)这样的托管环境中尤其如此,在所述托管环境中,神经网络在云中场外(off-site)执行计算。

9、虽然存在用于保护数据流的许多已知的解决方案(诸如ssl和模糊),但这些保护在数据呈现给执行神经网络模型(例如keras、torch、tensorflow等...)的运行时环境的时候结束,因为模型本身被设计成接受“原始”或清楚的数据。


技术实现思路

1、公开的实现扩展了神经网络的保护边界并且因此更符合数据安全和隐私的身份(principals)。公开的实现包括一种将(不是用机器学习创建的)编码机制的实现嵌入到现有神经网络中以向神经网络提供更安全的数据接口的方法。

2、一种公开的实现包括用于保护由神经网络执行的模型的方法,该方法包括:接收指定原始神经网络的原始输入层的输入的输入规范数据结构,其中原始神经网络被构造为执行模型;对输入进行碎片化(fractionalizing);指定加权(weighting),该加权定义每个碎片化的输入对原始输入层中的神经元有多少贡献;将加权存储在加权表中;基于碎片化的输入和加权表创建受保护输入层;将受保护输入层整合到原始的第一隐藏层;并且然后按原样添加原始神经网络的剩余部分(或按照需要进行进一步处理,诸如支持其他数据保护策略的其他机制)。



技术特征:

1.一种用于保护被实现为神经网络的模型的方法,所述方法包括:

2.根据权利要求1所述的方法,其中,碎片化包括选择e1至en的n个值来表示输入值。

3.根据权利要求2所述的方法,其中,加权表包括n+1个字段,分别存储加权w1至wn和偏差值b。

4.根据权利要求3所述的方法,其中,受保护输入层基于以下公式执行解码操作以对编码输入en解码:

5.根据前述权利要求中任一项所述的方法,进一步包括随机化输入的次序。

6.根据前述权利要求中任一项所述的方法,其中,加权表用作用于对输入到安全模型中的数据进行编码的共享秘密。

7.根据前述权利要求中任一项所述的方法,其中,加权作为安全模型的新输入层嵌入神经网络内。

8.一种被实现为神经网络的安全模型,所述安全模型包括:

9.根据权利要求8所述的安全模型,其中,碎片化包括选择e1至en的n个值来表示输入值。

10.根据权利要求9所述的安全模型,其中,加权表包括n+1个字段,分别存储加权w1至wn和偏差值b。

11.根据权利要求10所述的安全模型,其中,受保护输入层基于以下公式执行解码操作以对编码输入en解码:

12.根据权利要求8至11中任一项所述的安全模型,其中,输入的次序在安全输入层中被随机化。

13.根据权利要求8至12中任一项所述的安全模型,其中,加权表用作用于对输入到安全层中的数据进行编码的共享秘密。

14.根据权利要求8至13中任一项所述的安全模型,其中,加权嵌入在安全输入层内。

15.一种被布置成实行权利要求1至7中任一项所述的方法的系统。


技术总结
公开的实现包括一种用于创建安全神经网络模型的方法。可以将编程生成的“转码”层添加到现有神经网络模型的输入和输出。转码可以使用确定性算法来产生,并且可以通过模糊和变换模型的输入和输出数据来利用已知的数据变换保护输入数据。

技术研发人员:P·艾森,林婷婷,T·希基
受保护的技术使用者:爱迪德技术有限公司
技术研发日:
技术公布日:2024/12/17
转载请注明原文地址:https://xbbs.6miu.com/read-27917.html