CN109804383B - 使用神经网络编码和重构输入 - Google Patents

使用神经网络编码和重构输入 Download PDF

Info

Publication number
CN109804383B
CN109804383B CN201780056545.6A CN201780056545A CN109804383B CN 109804383 B CN109804383 B CN 109804383B CN 201780056545 A CN201780056545 A CN 201780056545A CN 109804383 B CN109804383 B CN 109804383B
Authority
CN
China
Prior art keywords
input
neural network
training data
data pair
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780056545.6A
Other languages
English (en)
Other versions
CN109804383A (zh
Inventor
M.阿巴迪
D.G.安德森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN109804383A publication Critical patent/CN109804383A/zh
Application granted granted Critical
Publication of CN109804383B publication Critical patent/CN109804383B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本文描述了用于训练和使用神经网络来对输入进行编码并处理编码输入以例如从编码输入来重构输入的系统、方法、设备和其它技术。神经网络系统可以包括编码器神经网络、可信解码器神经网络和对手解码器神经网络。编码器神经网络处理主神经网络输入和密钥输入,以生成主神经网络输入的编码表示。可信解码器神经网络处理编码表示和密钥输入,以生成主神经网络输入的第一估计重构。对手解码器神经网络在没有密钥输入的情况下处理编码表示,以生成主神经网络输入的第二估计重构。编码器神经网络和可信解码器神经网络可以联合训练,并且这些网络被对抗性地训练成对手解码器神经网络。

Description

使用神经网络编码和重构输入
技术领域
本说明书总体上描述了用于训练和使用神经网络(neural network,NN)来编码输入并处理编码输入以例如从编码输入来重构输入的系统、方法、设备和其它技术。
背景技术
神经网络是机器学习模型,其采用一层或多层非线性单元来预测对于接收的输入的输出。一些神经网络除了输出层之外还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中下一层的输入,例如下一隐藏层或输出层的输入。网络的每一层根据相应参数集的当前值从接收的输入生成输出。
神经网络已经被训练来执行各种数据处理任务,诸如分类、预测和翻译。一些系统包括多个数据处理组件,例如,在连续阶段中的多个数据处理组件,以执行给定任务。
发明内容
本说明书公开了可以在一个或多个位置中的一个或多个计算机上实施为计算机程序的神经网络和神经网络训练系统。例如,描述了神经网络,其应用神经网络输入密钥来模糊(obfuscate)神经网络输入,以便模糊(例如,编码)神经网络输入并防止其被另一个神经网络重构。例如,可以联合训练编码器神经网络和可信解码器神经网络,以使用共享秘密密钥或公共-私有密钥对来分别编码和解码主神经网络输入。编码器神经网络和可信解码器神经网络可以进一步相对于试图解码编码器神经网络的输出的对手(adversary)解码器神经网络进行对抗训练,尽管对手解码器神经网络可能无法使用解码密钥。训练系统不仅可以鼓励第一解码器神经网络生成原始神经网络输入的精确重构,还可以奖励编码器神经网络生成不能被对手解码器神经网络精确解码的神经网络输入的编码表示。
在一些实施方式中,神经网络训练系统训练编码器神经网络和第一解码器神经网络。编码器神经网络被训练成通过处理第一输入和不同于第一输入的第二输入来生成第一输入的编码表示。第一解码器神经网络被训练成通过处理第一输入的编码表示以及第二输入或与第二输入相关的第三输入来生成第一输入的估计重构。在一些示例中,编码器神经网络和第一解码器网络被配置成分别加密和解密第一输入。编码器神经网络使用加密密钥生成第一输入的编码表示(例如,加密第一输入),并且第一解码器神经网络使用相应解密密钥生成第一输入的估计重构(例如,解密第一输入的编码表示)。加密密钥和解密密钥对于对称加密可以是相同的,或者对于非对称加密可以是互补的(例如,公共-私有密钥对)。
训练系统可以训练编码器神经网络和第一解码器神经网络,以保护第一输入的全部或部分的保密性。例如,编码器神经网络和第一解码器神经网络可以与表示对手的第二解码器神经网络相结合地训练。通常,第二解码器神经网络试图损害第一输入的全部或部分的保密性,例如,通过尝试从第一输入的编码表示来重构第一输入。为了破坏第二解码器神经网络实现其目标的能力,训练系统可以例如使用损耗函数(loss function)来调整编码器神经网络和第一解码器神经网络的参数,该损耗函数鼓励第一解码器神经网络对输入的精确重构,但是不鼓励第二解码器神经网络对输入的精确重构。此外,训练系统可以与第二解码器神经网络的训练交替地在成批训练数据上训练编码器神经网络和第一解码器神经网络。在一些示例中,训练的系统可用于模糊输入中表示的敏感信息,使得处理输入的编码表示的其它系统在没有适当密钥的情况下无法可靠地确定敏感信息。
在训练之后,为了生成输入的估计重构,计算机系统接收第一输入的编码表示和第二输入。第二输入可以不同于第一输入的编码表示,例如,第二输入可以是独立于第一输入的编码表示而生成的公共密钥或私有密钥。计算机系统上的解码器神经网络可以处理第一输入的编码表示和第二输入,以生成第一输入的估计重构。解码器神经网络然后提供第一输入的估计重构的指示。第一输入的估计重构可以经受进一步的处理、被显示给用户、被存储、或这些的组合。
在一些实施方式中,第一输入的编码表示由编码器神经网络通过处理第一输入和不同于第一输入的第三输入来生成。第二输入和第三输入可以相同或彼此相关。例如,第三输入可以根据第一预定义变换集从第二输入得到,第二输入可以根据第二预定义变换集从第三输入得到,或者第二输入和第三输入两者都可以根据公共过程得到,以便彼此互补。在第二输入和第三输入相同的情况下,这些输入可以表示共享秘密密钥。在其它情况下,第二输入和第三输入可以共同表示私有-公共密钥对。
在一些实施方式中,由解码器神经网络处理第一输入的编码表示和第二输入以生成第一输入的估计重构包括使用第二输入来解码第一输入的编码表示。
在一些实施方式中,解码器神经网络可以包括一个或多个全连接层、随后是一个或多个卷积层。
在一些实施方式中,第一输入的编码表示可以是文本序列或者一个或多个数字中的至少一个的编码表示。
在一些实施方式中,解码器神经网络可以被配置成处理第一输入的编码表示和第二输入,以在编码器神经网络初始生成第一输入的编码表示之后,生成第一输入的编码表示是否已经被篡改的指示。解码器神经网络还可以提供第一输入的编码表示是否被篡改的指示,例如以用于显示、进一步处理或存储。
在一些实施方式中,第一输入是根据预定义变换集从初始输入得到的。在一些实施方式中,第一输入的估计重构是根据预定义变换集从第一输入得到的一个或多个值的估计。
在一些实施方式中,可以训练包括编码器神经网络和第一解码器神经网络的神经网络系统。编码器神经网络和第一解码器神经网络可以以对抗的布置与第二解码器神经网络一起交替地训练。例如,编码器神经网络可以被训练成对输入进行编码,以便允许第一解码器神经网络通过处理输入的编码表示和私有密钥来精确地重构输入(例如,解码输入的编码表示),同时通过单独处理输入的编码表示或者与公共密钥(但没有私有密钥)一起处理输入的编码表示来破坏第二解码器神经网络重构输入的能力。
特别地,用于训练神经网络系统的一些实施方式包括获得训练数据对,每个训练数据对包括相应第一输入和相应第二输入。例如,相应第一输入可以是要编码的输入,并且相应第二输入可以是私有密钥或公共密钥。神经网络系统可以在训练数据对上训练。对于每个训练数据对,系统可以根据编码器神经网络的参数的当前值使用编码器神经网络来处理(i)训练数据对的相应第一输入和(ii)训练数据对的相应第二输入,以生成训练数据对的相应第一输入的编码表示。系统可以根据第一解码器神经网络的参数的当前值使用第一解码器神经网络来处理(i)训练数据对的相应第一输入的编码表示和(ii)训练数据对的相应第二输入或训练数据对的相应第三输入,以生成训练数据对的相应第一输入的第一估计重构,其中(i)训练数据对的相应第二输入是从训练数据对的相应第三输入得到的,(ii)训练数据对的相应第三输入是从训练数据对的相应第二输入得到的,或者(iii)训练数据对的相应第二输入和训练数据对的相应第三输入两者都是使用公共过程得到的,以便彼此互补。此外,系统可以获得训练数据对的相应第一输入的第二估计重构,第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数,通过处理训练数据对的相应第一输入的编码表示而不处理训练数据对的相应第二输入来生成。编码器神经网络的当前参数和第一解码器神经网络的当前参数可以基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构来调整。
在一些实施方式中,训练神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过根据第一解码器神经网络的当前参数处理(i)训练数据对的相应第一输入的编码表示以及(ii)训练数据对的相应第二输入,来生成训练数据对的相应第一输入的第一估计重构。
在一些实施方式中,训练神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过根据第一解码器神经网络的当前参数处理(i)训练数据对的相应第一输入的编码表示以及(ii)与相应第二输入相对应的训练数据对的相应第三输入,来生成训练数据对的相应第一输入的第一估计重构。
在一些实施方式中,编码器神经网络可以包括一个或多个全连接层、随后是一个或多个卷积层。在一些实施方式中,第一解码器神经网络可以包括一个或多个全连接层、随后是一个或多个卷积层。在一些实施方式中,第二解码器神经网络可以包括一个或多个全连接层、随后是一个或多个卷积层。
在一些实施方式中,训练神经网络系统可以包括基于(i)训练数据对的相应第一输入和由第一解码器神经网络系统生成的相应第一输入的估计重构之间的差或者(ii)训练数据对的相应第一输入和由第二解码器神经网络系统生成的相应第一输入的估计重构之间的差中的至少一项,来调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
在一些实施方式中,训练神经网络系统可以包括使用随机梯度下降来调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。训练还可以包括,对于每个训练数据对,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数,而不调整第二解码器神经网络的当前参数。
在一些实施方式中,系统获得第二训练数据对,每个第二训练数据对包括相应第四输入和相应第四输入的编码表示,其中相应第四输入的编码表示是根据编码器神经网络的当前参数使用编码器神经网络来生成的。第二解码器神经网络可以在第二训练数据对上训练,包括,对于每个第二训练数据对:根据第二解码器神经网络的当前值,使用第二解码器神经网络来处理第二训练数据对的相应第四输入的相应编码表示,以生成第二训练数据对的相应第四输入的估计重构;以及基于相应第四输入和相应第四输入的估计重构之间的差来调整第二解码器神经网络的当前参数,而不调整编码器神经网络的当前参数,也不调整第一解码器神经网络的当前参数。
在一些实施方式中,对于每个第二训练数据对,通过根据编码器神经网络的当前参数使用编码器神经网络处理(i)相应第四输入和(ii)不同于相应第四输入的与第二训练数据对相对应的相应第五输入,来生成第二训练数据对的相应第四输入的编码表示。在第二训练数据对上训练第二解码器神经网络包括,对于每个第二训练数据对,根据第二解码器神经网络的当前值,使用第二解码器神经网络来处理(i)第二训练数据对的相应第四输入的相应编码表示以及(ii)与第二训练数据对相对应的相应第六输入。对于每个第二训练数据对,(i)相应第五输入可以从相应第六输入得到,(ii)相应第六输入可以从相应第五输入得到,或者(iii)相应第五输入和相应第六输入两者都可以使用公共过程得到,以便彼此互补。在一些实施方式中,对于每个第二训练数据对,与第二训练数据对相对应的相应第五输入表示公共-私有密钥对的私有密钥,并且与第二训练数据对相对应的相应第六输入表示公共-私有密钥对的公共密钥。在一些实施方式中,在用第一训练数据对训练编码器神经网络之后,根据编码器神经网络的当前值,使用编码器神经网络生成相应第四输入的编码表示。
在一些实施方式中,所获得的训练数据对当中的第一训练数据对的相应第一输入表示文本序列或者一个或多个数字中的至少一个。
在一些实施方式中,对于每个训练数据对,由第二解码器神经网络根据第二解码器神经网络的当前参数,通过仅处理训练数据对的相应第一输入的编码表示,而不处理训练数据对的相应第二输入,也不处理训练数据对的相应第三输入,来生成训练数据对的相应第一输入的第二估计重构。
在一些实施方式中,对于每个训练数据对,由第二解码器神经网络根据第二解码器神经网络的当前参数通过处理(i)训练数据对的相应第一输入的编码表示和(ii)训练数据对的相应第三输入,而不处理训练数据对的相应第二输入,来生成训练数据对的相应第一输入的第二估计重构。
在一些实施方式中,对于每个训练数据对,训练数据对的相应第二输入表示公共-私有密钥对的私有密钥。在一些实施方式中,训练数据对的相应第三输入表示公共-私有密钥对的公共密钥。
在一些实施方式中,训练包括编码器神经网络和第一解码器神经网络的神经网络系统,可以与第二解码器神经网络交替训练。例如,当编码器神经网络和第一解码器神经网络在一批训练数据对上训练时,第二解码器神经网络的参数可以是固定的。随后,当第二解码器神经网络在一批训练数据对上训练时,编码器神经网络和第一解码器神经网络的参数可以是固定的。
在某些情况下,本文公开的主题的一些实施方式可以实现一个或多个优点。神经网络系统可以被训练来模糊由系统处理的来自系统至少一部分的数据中的敏感信息。例如,关于用户的个人或识别信息可以对系统的一部分隐藏,从而防止它对这些信息采取行动。在一些实施方式中,神经网络系统的不同组件可以以对抗的方式被训练,以便保护由系统的第一部分处理的信息的机密性不受系统的第二部分的影响。在一些实施方式中,由系统处理的数据中的敏感信息可以被编码器神经网络加密或以其它方式模糊,以对抗通常不具备重构神经网络输入所必要的重构密钥的对手。根据包括描写的说明书、权利要求和附图在内的整个公开内容,本领域普通技术人员将理解附加的特征和优点。
附图说明
图1描绘了用于使用对称神经网络输入密钥来变换和重构主神经网络输入的神经网络系统的框图。
图2描绘了从神经网络输入的编码表示来重构神经网络输入的示例过程的流程图。
图3描绘了用于使用对称神经网络输入密钥对神经网络输入进行编码和恢复的示例过程的泳道图。
图4描绘了用于使用非对称神经网络输入密钥来变换和重构主神经网络输入的神经网络系统的框图。
图5描绘了用于使用非对称神经网络输入密钥对神经网络输入进行编码和恢复的示例过程的泳道图。
图6是用于训练神经网络系统的示例过程的流程图,该神经网络系统包括编码器神经网络、可信解码器神经网络和对手解码器神经网络。
图7是用于联合训练编码器神经网络和可信解码器神经网络的示例过程的流程图。
图8是用于训练对手解码器神经网络的示例过程的流程图。
具体实施方式
图1示出了用于使用对称神经网络输入密钥110来变换和重构主神经网络输入108的神经网络系统100的框图。系统100包括编码器神经网络102、可信解码器神经网络104和对手解码器神经网络106。在一些实施方式中,编码器神经网络102被配置成,以允许可信解码器神经网络104使用秘密密钥以至少阈值预期精度重构原始输入数据的方式对输入数据进行编码、加密、模糊或以其它方式的变换,同时防止对手解码器神经网络106在没有秘密密钥的情况下以至少阈值预期精度重构原始输入数据。
编码器神经网络102被配置成处理主神经网络输入108和神经网络输入密钥110,以生成主神经网络输入的编码表示112。主神经网络输入的编码表示112是主神经网络输入108的修改版本,其已经根据编码器神经网络102的参数并基于神经网络输入密钥110进行了变换。在加密上下文中,可以说编码器神经网络102对主神经网络输入108应用加密变换,以使用密钥生成主神经网络输入的编码表示112。例如,主神经网络输入108可以是输入数据的明文表示,神经网络输入密钥110可以是加密密钥(例如,共享秘密密钥),并且主神经网络输入的编码表示112可以是密文,即,主神经网络输入108的加密版本。
可信解码器神经网络104和对手解码器神经网络106各自被配置成处理主神经网络输入的编码表示112,以生成主神经网络输入108的估计重构。然而,与对手解码器神经网络106不同,可信解码器神经网络104可以使用用于生成主神经网络输入的编码表示112的神经网络输入密钥110。例如,可信解码器神经网络104可以是编码器神经网络102的可信对应物(counterpart),而对手解码器神经网络106是不可信的。可信解码器神经网络104处理主神经网络输入108以及神经网络输入密钥110,以生成对主神经网络输入的第一估计重构114。如下面关于图5-图7所讨论的,编码器神经网络102和可信解码器神经网络104可以被联合训练,使得可信解码器神经网络104生成主神经网络输入的高度精确的重构114,同时防止对手解码器神经网络106可靠地生成主神经网络输入108的精确重构。对手解码器神经网络106处理主神经网络输入的编码表示112,而不处理神经网络输入密钥110,以生成主神经网络输入的第二估计重构116。
编码器神经网络102、可信解码器神经网络104和对手解码器神经网络106可以共享或不共享公共架构。在一些实施方式中,网络102、104和106中的每一个都具有“混合和变换”架构,该架构能够在训练期间学习混合功能,诸如XOR。“混合和变换”架构包括第一全连接层、随后是一系列卷积层。来自全连接层的输出的数量可以等于神经网络的输入数据项的数量。因此,对于编码器神经网络102,主神经网络输入108可以包括n个输入数据项,并且神经网络输入密钥110可以包括m个输入数据项。全连接层可以包括m+n个节点,其中每个节点提供激活函数,该激活函数可以产生到第一卷积层的输出,该输出是来自主神经网络输入108和神经网络输入密钥110的所有输入数据项的线性组合。卷积层被训练成将一些函数应用于由先前层混合的输出的组,而没有该函数应该是什么的先验说明。卷积层中的最后一层产生适当大小的神经网络输出(例如,编码器神经网络102输出主神经网络输入的编码表示112)。
第一神经网络输入108可以是初始数据项的表示,该数据项已经被变换成适合编码器神经网络102处理的形式。例如,初始数据项可以是文本(例如,字母数字字符的记号的序列)、图像、二进制数据或其它类型的数据。在一些实施方式中,编码器神经网络102、可信解码器神经网络104和对手解码器神经网络106被配置为在浮点数元组(tuple)上操作。对于这样的实施方式,主神经网络输入108以及神经网络输入密钥110、主神经网络输入的编码表示112、主神经网络输入的第一估计重构114、和主神经网络输入的第二估计重构116各自都是浮点数元组,其中每个元组包括数据项(例如,浮点数)的有序集。编码表示112以及估计重构114和116可以包括给定范围内的任意浮点数,例如范围-1到1内的任意浮点数,即使主神经网络输入108和神经网络输入密钥110仅由二进制值组成,例如0和1。
参考图2,示出了用于从神经网络输入的编码表示重构神经网络输入的示例过程200的流程图。在一些实施方式中,过程200可以由可使用解密密钥的可信解码器神经网络来执行,例如可信解码器神经网络104。
在阶段202,解码器神经网络获得两个输入:(i)主神经网络输入的编码表示,例如编码表示112,和(ii)不同于主神经网络输入的编码表示的神经网络输入密钥,例如神经网络输入密钥110。主神经网络输入的编码表示可能已经由编码器神经网络(例如编码器神经网络102)通过处理主神经网络输入(例如主神经网络输入108)和神经网络输入密钥来生成。
在阶段204,解码器神经网络处理在阶段202获得的两个输入,以生成主神经网络输入的估计重构,例如,第一估计重构114。主神经网络输入的估计重构是通过由解码器神经网络的一个或多个隐藏层指示的一系列变换来处理输入而生成的。在阶段206,解码器神经网络输出主神经网络输入的估计重构。该输出可以被存储或以其它方式提供给进一步处理该输出的应用或系统,例如以用于呈现给用户。
图3描绘了用于使用对称神经网络输入密钥对神经网络输入进行编码和恢复的示例过程的泳道图300。最左边的通道指示编码器神经网络的操作,例如编码器神经网络102的操作;中间通道指示可信解码器神经网络的操作,例如,第一解码器神经网络104的操作;而最右边的通道指示对手解码器神经网络的操作,例如,第二解码器神经网络106的操作。
在阶段302,编码器神经网络接收主神经网络输入(例如主神经网络输入108)和神经网络输入密钥(例如神经网络输入密钥110)。在阶段304,编码器神经网络处理主神经网络输入和神经网络输入密钥,以生成主神经网络输入的编码表示。在阶段306,编码器神经网络输出主神经网络输入的编码表示,然后该编码表示可提供给可信解码器神经网络。
可信解码器神经网络获得主神经网络输入的编码表示(阶段308),并被提供神经网络输入密钥作为主神经网络输入的编码表示的解密密钥(阶段310)。在阶段312,可信解码器神经网络然后使用神经网络输入密钥,以通过根据可信解码器神经网络的参数的训练值处理主神经网络输入的编码表示和神经网络输入密钥,来生成主神经网络输入的估计重构。在一些实施方式中,可信解码器神经网络被训练成生成第一神经网络的估计重构,该估计重构具有满足指定精度目标的至少阈值概率(例如,90-98%)。
在可信解码器神经网络在阶段308-312执行其操作之前、期间或之后,对手解码器神经网络在阶段314-316执行其操作。特别地,在阶段314,对手解码器神经网络获得(例如,截取)主神经网络输入的编码表示,并且在阶段316,对手解码器神经网络处理主神经网络输入的编码表示,以生成主神经网络输入的第二估计重构。由于编码器神经网络和可信解码器神经网络之间的联合训练,以及这些网络和对手解码器神经网络之间的对抗训练,对手解码器神经网络通常不能对估计重构是精确的具有很高的信心,来从主神经网络输入的编码表示中恢复主神经网络输入。即使对手解码器神经网络被训练成在没有秘密密钥的情况下尽可能精确地生成估计重构,但是由于编码器神经网络和可信解码器神经网络之间的联合训练,主神经网络输入的编码表示被变换成使得对手重构输入的尝试不精确。因此,编码器神经网络可以将主神经网络输入传送到可信解码器神经网络,并对其相对于对手解码器神经网络或其它对手的保密性有信心。
图4描绘了用于使用非对称神经网络输入密钥来变换和重构主神经网络输入的神经网络系统的框图。与图1中描绘的系统100相比,图1中描绘的系统100对于应用于主神经网络输入以及主神经网络输入的编码表示的正向和反向变换分别使用了相同的密钥(即,神经网络输入密钥110),图4示出了对于正向和反向变换分别使用不同的神经网络输入密钥414和412的系统400。例如,密钥414和412可以是公共-私有密钥对,其中密钥412是仅可用于可信解码器神经网络404的秘密密钥,并且密钥414是通常可用于系统400中的其它实体的公共密钥。
正如对称变换系统100(图1),图4描绘的系统400包括编码器神经网络402、可信解码器神经网络404和对手解码器神经网络406。可信解码器神经网络404可以是已经与编码器神经网络402联合训练的可信解码器,并且该对网络402、404可以与作为对手解码器网络的对手解码器神经网络406进行对抗训练。编码器神经网络402被配置为处理主神经网络输入410(例如,明文数据项)和公共神经网络输入密钥414,以生成主神经网络输入的编码表示416(例如,密文项)。可信解码器神经网络404被配置为处理主神经网络输入的编码表示416和秘密神经网络输入密钥412,以生成主神经网络输入的第一估计重构418。
与其中神经网络输入密钥是共享秘密的对称变换系统不同,在系统400中,编码密钥,例如公共神经网络输入密钥414,也可用于对手解码器神经网络406。因此,对手解码器神经网络406可以在尝试重构主神经网络输入410时处理主神经网络输入的编码表示416以及公共神经网络输入密钥414。即使编码器神经网络402使用公共神经网络输入密钥414对主神经网络输入410应用正向变换,对手解码器神经网络406也可以被训练成使用公共神经网络输入密钥414对主神经网络输入的编码表示416应用反向变换,只要它有用。在其它实施方式中,对手解码器神经网络406可以被配置成仅处理主神经网络输入的编码表示416,以生成主神经网络输入的第二估计重构420,而不使用公共神经网络输入密钥414。
系统400还可以包括密钥生成神经网络408。密钥生成神经网络408被配置为从秘密神经网络输入密钥412生成公共神经网络输入密钥414。在其它实施方式中,密钥生成神经网络408可以被配置为从公共神经网络输入密钥414生成秘密神经网络输入密钥412,或者密钥412、414可以从公共过程生成,以便彼此互补。密钥生成神经网络408具有其自己的参数,并且在一些实施方式中,与编码器神经网络402和可信解码器神经网络404联合训练。
图5是用于使用非对称神经网络输入密钥来对神经网络输入进行编码和恢复的示例过程500的泳道图。在一些实施方式中,过程500由被配置为执行非对称变换的神经网络系统(例如,神经网络系统400)来执行。神经网络系统可以包括密钥生成神经网络,例如密钥生成神经网络408;编码器神经网络,例如编码器神经网络402;可信解码器神经网络,例如可信解码器神经网络404;和对手解码器神经网络,例如对手解码器神经网络406。
在一些实施方式中,过程500开始于获得神经网络输入密钥。在阶段502,密钥生成神经网络接收第一神经网络输入密钥(例如,秘密密钥)。密钥生成神经网络502处理第一神经网络输入密钥以生成第二神经网络输入密钥(例如,公共密钥)(阶段504)。然后,第二神经网络输入密钥可用于编码器神经网络(阶段506)。
在阶段508,编码器神经网络接收包括主神经网络输入和第二神经网络输入密钥的输入集。编码器神经网络通过处理通过编码器神经网络的每一层的主神经网络输入和第二神经网络输入密钥来生成主神经网络输入的编码表示(阶段510)。在阶段512,系统将主神经网络输入的编码表示提供给可信解码器神经网络。
可信神经网络接收主神经网络输入的编码表示(阶段514)。可信神经网络还被提供有第一神经网络输入密钥(例如,秘密解密密钥)(阶段516),并且可信神经网络通过处理通过其每一层的编码表示和第一神经网络输入密钥来生成主神经网络输入的第一估计重构(阶段518)。主神经网络输入的第一估计重构可以与主神经网络输入紧密匹配,这是由于可信神经网络具有相应解密密钥,即第一神经网络输入密钥,并且已经被训练成对编码表示应用反向变换以便重构神经网络输入。
在一些实施方式中,对手解码器神经网络可以尝试破坏编码器神经网络输入应用于主神经网络输入的加密。在阶段520,对手解码器神经网络获得主神经网络输入的编码表示。例如,恶意实体可能已经在从与编码器神经网络相关联的实体到与可信解码器神经网络相关联的实体的通信中截取了编码表示。在阶段522,对手解码器神经网络获得第二神经网络输入密钥,例如,用于加密主神经网络输入的公共密钥。然后,在阶段524,对手解码器神经网络生成主神经网络输入的第二估计重构。然而,因为编码器神经网络和可信解码器神经网络已经被联合训练成应用对手解码器神经网络无法可靠地反向的变换,所以主神经网络输入的第二估计重构不太可能是主神经网络输入的精确恢复。
图6是用于训练神经网络系统的示例过程600的流程图,该神经网络系统包括编码器神经网络、可信解码器神经网络和对手解码器神经网络。在一些实施方式中,过程600可被应用于训练以上讨论的神经网络系统,例如系统100(图1)或400(图4)。训练可以由在一个或多个位置具有一个或多个计算机的训练系统来执行。
在阶段602,训练系统初始化编码器神经网络、可信解码器神经网络和对手解码器神经网络。在一些实施方式中,随机初始化每个网络,即,为神经网络的内部参数分配随机值。
在阶段604,训练系统选择一批第一训练数据,用于联合训练编码器神经网络和可信解码器神经网络。该批第一训练数据包括训练数据对集,其中每个训练数据对包括相应主神经网络输入和神经网络输入密钥。第一训练数据对中的一些或全部可以具有不同的神经网络输入密钥。
在阶段606,训练系统在来自该批第一训练数据的训练数据对上联合训练编码器神经网络和可信解码器神经网络。用于该训练的损耗函数可以部分基于由对手解码器神经网络生成的主神经网络输入的估计重构。然而,在过程600的这个阶段,在训练编码器神经网络和可信解码器神经网络时,对手解码器神经网络的参数不被调整。相反,训练系统在训练(i)编码器神经网络和可信解码器神经网络与(ii)对手解码器神经网络之间对抗地交替。关于训练编码器神经网络和可信解码器神经网络的进一步细节将参考图7讨论。
在训练系统消耗了所选的一批第一训练数据中的所有训练数据对之后,系统从联合训练编码器神经网络和可信解码器神经网络转向训练对手解码器神经网络。在阶段608,训练系统选择一批第二训练数据以用于训练对手解码器神经网络。该批第二训练数据还可以具有与在阶段604选择的训练数据对不同的分量。在一些实施方式中,该批第二训练数据中的每个训练样本包括相应主神经网络输入和主神经网络输入的编码表示,该主神经网络输入的编码表示是由编码器神经网络根据编码器神经网络的参数的当前值生成的,即在编码器神经网络在阶段606的训练之后。
在阶段610,对手解码器神经网络在该批第二训练数据上训练。在这个阶段期间,编码器神经网络和可信神经网络的参数值保持不变。关于训练对手解码器神经网络的进一步细节将参考图8讨论。
因此,训练在(i)训练编码器神经网络和可信解码器神经网络和(ii)训练对手解码器神经网络之间交替进行。在每个阶段期间,网络学习更好地对抗它们的对手的当前能力。例如,在训练周期的第一阶段,编码器神经网络和可信解码器神经网络被训练来加密和重构神经网络输入,该神经网络输入保护输入的保密性,以对抗随机初始化的对手解码器神经网络。在周期的第二阶段,对手解码器神经网络被训练来重构由编码器神经网络编码的神经网络输入,直到它已经被训练整个第一周期。在下一个训练周期的第一阶段,编码器神经网络和可信解码器神经网络被进一步训练,以加密和重构神经网络输入,该神经网络输入保护输入的保密性,以对抗对手解码器神经网络,直到它已经被训练整个当前周期。训练可以以交替方式进行,直到训练结束条件发生为止。
在阶段612,在所有或一些周期之后,训练系统确定是否执行另一个训练周期。在一些实施方式中,训练系统继续执行额外的周期,直到检测到训练结束条件。训练结束条件可以是,例如,预先指定数量的训练周期的执行、所有可用训练数据的消耗、执行目标的实现、或者两个或多个这些的组合。执行目标可以涉及重构可信解码器神经网络、对手解码器神经网络或两者的神经网络输入时的重构误差。如果在阶段612,训练系统确定继续训练,则过程600返回到阶段604。如果训练系统检测到训练结束条件的发生,则可以认为训练完成并终止(阶段614)。
图7是用于联合训练编码器神经网络和可信解码器神经网络的示例过程700的流程图。训练可以由在一个或多个位置具有一个或多个计算机的训练系统来执行。该流程图示出了在给定训练周期内对于来自一批训练数据的单个训练数据对的训练操作,但是在实践中,可以针对该批训练数据中的每个训练数据对重复过程700。
在阶段702,训练系统从当前一批训练数据中选择训练数据对。训练数据对包括主神经网络输入和神经网络输入密钥。例如,神经网络输入密钥可以是对称变换系统的共享秘密密钥,或者是使用公共密钥进行正向变换(例如编码或加密)和使用私有密钥进行反向变换(例如解码或解密)的非对称变换系统的公共密钥。
在阶段704,训练系统向编码器神经网络提供主神经网络输入和神经网络输入密钥。编码器神经网络根据编码器神经网络的参数的当前值处理该对输入,并生成主神经网络输入的编码表示。
在阶段706,训练系统然后将主神经网络输入的编码表示和神经网络输入密钥提供给可信解码器神经网络。可信解码器神经网络根据可信解码器神经网络的参数的当前值来处理这些输入,以生成主神经网络输入的第一估计重构。提供给编码器神经网络和可信解码器神经网络的神经网络输入密钥可以彼此相同或不同。例如,在对称变换系统中,神经网络输入密钥可以是相同的。在非对称变换系统中,神经网络输入密钥可以是相关但彼此不同的(例如,公共-私有密钥对中的互补密钥)。
在阶段708,训练系统将主神经网络输入的编码表示提供给对手解码器神经网络。对手解码器神经网络处理主神经网络输入的编码表示,以生成主神经网络输入的第二估计重构。在一些实施方式中,对手解码器神经网络仅基于主神经网络输入的编码表示,即,使用神经网络输入密钥,来生成第二估计重构。在其它实施方式中,诸如对于非对称变换系统,训练系统可以向对手解码器神经网络提供公共神经网络输入密钥(例如,用于生成主神经网络输入的编码表示的同一密钥),以便在生成主神经网络输入的第二估计重构时与主神经网络输入的编码表示一起处理。
在阶段710,训练系统然后使用主神经网络输入、主神经网络的第一估计重构和主神经网络输入的第二估计重构来调整编码器神经网络和可信解码器神经网络的当前值。在一些实施方式中,训练系统使用机器学习技术,诸如具有反向传播的随机梯度下降,以调整编码器神经网络和可信解码器神经网络的参数值。例如,训练系统可以通过调整神经网络参数的当前值来反向传播梯度以优化损耗函数。在一些实施方式中,损耗函数可以被公式化(formulated)以最小化可信解码器神经网络的重构误差,即最小化由可信解码器神经网络生成的、主神经网络输入和主神经网络输入的第一估计重构之间的误差。然而,为了使得编码器神经网络和可信解码器神经网络被训练来保护信息的保密性以对抗对手解码器神经网络,可以进一步公式化损耗函数,以便最大化对手解码器神经网络的重构误差,即,最大化由对手解码器神经网络生成的、主神经网络输入和主神经网络输入的第二估计重构之间的误差。
在其它实施方式中,损耗函数可以不试图最大化对手神经网络的重构误差,而是可以被公式化来最小化主神经网络输入的第二估计重构和主神经网络输入之间的相互信息。在对称编码-解码系统的情况下,这种方法等同于使对手神经网络与随机猜测无法区分。
图8是用于训练对手解码器神经网络的示例过程800的流程图。训练可以由在一个或多个位置具有一个或多个计算机的训练系统来执行。该流程图示出了在给定训练周期内对于单个训练数据对的训练操作,但是在实践中,可以在训练周期中对于每个训练数据对重复过程800。
在阶段802,训练系统获得训练数据对。训练数据对可以包括主神经网络输入和主神经网络输入的编码表示。在一些实施方式中,从一批预先生成的训练数据中选择主神经网络输入。然后,根据从最近训练周期开始的编码器神经网络参数的当前值,通过利用编码器神经网络处理主神经网络输入和神经网络输入密钥,生成主神经网络输入的编码表示。神经网络输入密钥可以从一批神经网络输入密钥中选择,并且不同的神经网络输入密钥可以被处理,来为不同训练数据对生成主神经网络输入的编码表示。
在阶段804,对手解码器神经网络处理主神经网络输入的编码表示,并且可选地处理神经网络输入密钥,以生成主神经网络输入的估计重构。如果对手解码器神经网络是对于其中神经网络输入密钥不公开的对称变换系统的对手,则对手解码器神经网络可以在没有神经网络输入密钥的情况下处理主神经网络输入的编码表示,以生成估计重构。如果对手解码器神经网络是对于其中神经网络输入密钥是公开的非对称变换系统的对手,则对手解码器神经网络可以处理主神经网络输入的编码表示以及神经网络输入密钥,以生成估计重构。
在阶段806,训练系统使用主神经网络输入和主神经网络输入的估计重构来调整对手解码器神经网络的参数值。在一些实施方式中,训练系统使用机器学习技术,诸如具有反向传播的随机梯度下降,以调整对手解码器神经网络的参数值。例如,训练系统可以反向传播梯度以优化损耗函数,该损耗函数最小化主神经网络输入和主神经网络输入的估计重构之间的误差。
在一些实施方式中,这里描述的神经网络系统可以被扩展,使得它们不仅被配置为保护来自对手解码器神经网络的神经网络输入的机密性,还被配置为仅保护来自对手解码器神经网络的神经网络输入的特定部分(例如,敏感部分)。例如,主神经网络输入可以由四个值的元组<A,B,C,D>组成。给定前三个值作为输入,系统可以被配置为输出D的两个预测:D的“真实”预测,表示给定<A,B,C>的情况下D的最精确的可能估计值,以及D的“隐私保护”估计值,该估计值将被称为D-公开,并且表示不泄露关于C值的任何信息的D的最佳可能估计值。系统组织可以类似于图1,编码器神经网络和可信解码器神经网络共享神经网络密钥输入,但是这里编码器神经网络接收并处理<A,B,C>以生成除密文之外的D-公开。可信解码器神经网络和对手解码器神经网络两者都可以使用编码器神经网络的输出。可信解码器神经网络使用编码器的输出来生成D的改进估计,而对手解码器神经网络试图从编码器的输出中恢复C。系统被训练和配置,使得编码器神经网络可以生成D-公开作为D的近似值,而不泄露C,并且使得可信解码器神经网络可以处理D-公开以及密文和神经网络输入密钥,以获得D的更好近似值(D的估计重构)。这种技术可能是有用的,例如,在敏感用户属性和非敏感用户属性之间存在相关性的情况下,防止系统考虑敏感用户属性。例如,元组<A,B,C,D>,C可以表示用户的年龄,D可以表示用户的兴趣。虽然D没有直接泄露用户的年龄,但是年龄和兴趣之间可能存在某种相关性。神经网络系统可以用编码器神经网络处理<A,B,C>,以估计用户的兴趣D,而不泄露关于C的信息
本说明书中描述的主题和功能操作的实施例可以在数字电子电路、有形体现的计算机软件或固件、计算机硬件中实施,包括本说明书中公开的结构及其结构等同物,或者在它们中的一个或多个的组合中实施。本说明书中描述的主题的实施例可以被实施为一个或多个计算机程序,即编码在有形非暂时性程序载体上的计算机程序指令的一个或多个模块,用于由数据处理装置运行或控制数据处理装置的操作。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,该信号被生成来编码信息,以传输到合适的接收器装置,用于由数据处理装置运行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行访问存储器设备,或者它们中的一个或多个的组合。然而,计算机存储介质不是传播信号。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,例如包括可编程处理器、计算机、或者多个处理器或计算机。该装置可以包括专用逻辑电路,例如GPU(graphics processing unit,图形处理单元)、FPGA(field programmable gatearray,现场可编程门阵列)或ASIC(applicationspecific integrated circuit,专用集成电路),或者这些电路中的多个或这些电路的组合。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建运行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(也可以称为或描述为程序、软件、软件应用、模块、软件模块、脚本或代码)可以以任何形式的编程语言编写,包括编译语言或解释语言,或者声明性语言或过程性语言,并且可以以任何形式部署,包括被部署为独立程序,或者模块、组件、子例程,或者适合在计算环境中使用的其它单元。计算机程序可以但不必对应于文件系统中的文件。程序可以存储在保存其它程序或数据的文件的一部分(例如在标记语言文档中存储的一个或多个脚本)中,存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件(例如存储一个或多个模块、子程序或代码部分的文件)中。计算机程序可以被部署为在一台计算机上执行,或者在位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上运行。
如本说明书中所使用的,“引擎”或“软件引擎”是指提供不同于输入的输出的软件实施的输入/输出系统。引擎可以是编码的功能块,诸如库、平台、软件开发工具包(“software development kit,SDK”)或对象。每个引擎可以在任何适当类型的计算设备上实施,例如服务器、移动电话、平板电脑、笔记本电脑、音乐播放器、电子书阅读器、膝上型电脑或台式电脑、PDA(Personal Digital Assistant,个人数字助理)、智能手机、或者包括一个或多个处理器和计算机可读介质的其它固定式或便携式设备。另外,两个或多个引擎可以在同一计算设备上实施,或者在不同的计算设备上实施。
本说明书中描述的过程和逻辑流程可以由运行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。这些过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实施为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
适于运行计算机程序的计算机包括,例如可以基于通用或专用微处理器或两者,或任何其它类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或可操作地耦合到一个或多个用于存储数据的大容量存储设备以从其接收数据或将数据传送到其或两者。然而,计算机不需要有这样的设备。此外,计算机可以嵌入到另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GlobalPositioning System,GPS)接收器、或便携式存储设备,例如通用串行总线(universal serial bus,USB)闪存驱动器,仅举几例。
适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,例如包括半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实施,该计算机具有用于向用户显示信息的显示设备,例如CRT(阴极射线管,cathode ray tube)或LCD(液晶显示器,liquid crystal display)监视器,并且具有用户可以通过其向计算机提供输入的键盘和定点设备,例如鼠标或轨迹球。其它类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如通过响应于从网络浏览器接收的请求将网页发送到用户的客户端设备上的网络浏览器。
本说明书中描述的主题的实施例可以在包括后端组件(例如数据服务器)的计算系统中实施,或者可以在包括中间件组件(例如应用服务器)的计算系统中实施,或者可以在包括前端组件(例如具有图形用户界面或Web浏览器的客户端计算机,用户可以通过该图形用户界面或Web浏览器与本说明书中描述的主题的实施方式交互)的计算系统中实施,或者可以在包括一个或多个这样的后端组件、中间件组件或前端组件的任意组合的计算系统中实施。系统的组件可以通过任何形式或介质的数字数据通信互连,例如通信网络。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如互联网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系是借助于在相应计算机上运行并且彼此之间具有客户端-服务器关系的计算机程序而产生的,。
虽然本说明书包含许多具体的实施细节,但这些细节不应被解释为对任何发明的范围或所要求保护的范围的限制,而是专门对特定发明的特定实施例的特征描述。本说明书中所描述的、在单独实施例的上下文中的某些特征也可以在单个实施例中以组合实施。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实施。此外,虽然特征可以在上面描述为以某些组合方式起作用,甚至最初被要求这样保护,但是在一些情况下,来自要求保护的组合的一个或多个特征可以从该组合中删除,并且要求保护的组合可以指向子组合或子组合的变体。
类似地,虽然在附图中以特定次序描绘了操作,但这不应被理解为要求以所示的特定次序或以顺序的次序执行这些操作,或者执行所有所示的操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应该理解,所描述的程序组件和系统通常可以集成在单个软件产品中或者封装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。例如,权利要求中列举的动作可以以不同的次序执行,并且仍然获得期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定次序或顺序的次序来实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。

Claims (34)

1.一种用于在一个或多个计算机上训练神经网络系统的计算机实施的方法,包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示公共-私有密钥对的私有密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络来处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入或该训练数据对的相应第三输入,以生成该训练数据对的相应第一输入的第一估计重构,其中该训练数据对的相应第三输入表示所述公共-私有密钥对的公共密钥,其中(i)该训练数据对的相应第二输入是从该训练数据对的相应第三输入得到的,(ii)该训练数据对的相应第三输入是从该训练数据对的相应第二输入得到的,或者
(iii)该训练数据对的相应第二输入和该训练数据对的相应第三输入两者都是使用公共过程得到的,以便彼此互补;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
2.根据权利要求1所述的计算机实施的方法,其中训练所述神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,来根据第一解码器神经网络的当前参数生成该训练数据对的相应第一输入的第一估计重构。
3.根据权利要求1所述的计算机实施的方法,其中训练所述神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过处理(i)该训练数据对的相应第一输入的编码表示和(ii)与相应第二输入相对应的该训练数据对的相应第三输入,来根据第一解码器神经网络的当前参数生成该训练数据对的相应第一输入的第一估计重构。
4.根据权利要求1-3中任一项所述的计算机实施的方法,其中编码器神经网络包括一个或多个全连接层、接着是一个或多个卷积层。
5.根据权利要求1-3中任一项所述的计算机实施的方法,其中第一解码器神经网络包括一个或多个全连接层、接着是一个或多个卷积层。
6.根据权利要求1-3中任一项所述的计算机实施的方法,包括基于(i)来自训练数据对的相应第一输入和由第一解码器神经网络生成的相应第一输入的估计重构之间的差或者(ii)来自训练数据对的相应第一输入和由第二解码器神经网络系统生成的相应第一输入的估计重构之间的差中的至少一个,来调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
7.根据权利要求1-3中任一项所述的计算机实施的方法,包括使用随机梯度下降调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
8.根据权利要求1-3中任一项所述的计算机实施的方法,其中训练所述神经网络系统包括,对于每个训练数据对,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数,而不调整第二解码器神经网络的当前参数。
9.根据权利要求1-3中任一项所述的计算机实施的方法,进一步包括:
获得多个第二训练数据对,每个第二训练数据对包括相应第四输入和相应第四输入的编码表示,其中相应第四输入的编码表示是根据编码器神经网络的当前参数使用编码器神经网络生成的;
在所述多个第二训练数据对上训练第二解码器神经网络,对于每个第二训练数据对,包括:
根据第二解码器神经网络的当前值,使用第二解码器神经网络来处理该第二训练数据对的相应第四输入的编码表示,以生成该第二训练数据对的相应第四输入的估计重构;和
基于相应第四输入和相应第四输入的估计重构之间的差来调整第二解码器神经网络的当前参数,而不调整编码器神经网络的当前参数,也不调整第一解码器神经网络的当前参数。
10.根据权利要求9所述的计算机实施的方法,其中:
对于第二训练数据对中的每一个,通过利用编码器神经网络处理(i)相应第四输入和(ii)不同于相应第四输入的与第二训练数据对相对应的相应第五输入,来生成该第二训练数据对的相应第四输入的编码表示;
在所述多个第二训练数据对上训练第二解码器神经网络包括,对于每个第二训练数据对,利用第二解码器神经网络处理(i)该第二训练数据对的相应第四输入的编码表示,以及(ii)与该第二训练数据对相对应的相应第六输入;和
对于第二训练数据对中的每一个,(i)相应第五输入是从相应第六输入得到的,(ii)相应第六输入是从相应第五输入得到的,或者(iii)相应第五输入和相应第六输入两者都是使用公共过程得到的,以便彼此互补。
11.根据权利要求10所述的计算机实施的方法,其中,对于每个第二训练数据对:
与该第二训练数据对相对应的相应第五输入表示公共-私有密钥对的私有密钥;和
与该第二训练数据对相对应的相应第六输入表示公共-私有密钥对的公共密钥。
12.根据权利要求9所述的计算机实施的方法,包括:在用所述多个训练数据对来训练编码器神经网络之后,根据编码器神经网络的当前值,使用编码器神经网络来生成所述多个第二训练数据对的相应第四输入的编码表示。
13.根据权利要求1-3中任一项所述的计算机实施的方法,其中,所述多个训练数据对当中的第一训练数据对的相应第一输入表示文本序列或者一个或多个数字中的至少一个。
14.根据权利要求1-3中任一项所述的计算机实施的方法,其中,对于每个训练数据对,由第二解码器神经网络根据第二解码器神经网络的当前参数,通过仅处理该训练数据对的相应第一输入的编码表示,而不处理该训练数据对的相应第二输入,也不处理该训练数据对的相应第三输入,来生成该训练数据对的相应第一输入的第二估计重构。
15.根据权利要求1-3中任一项所述的计算机实施的方法,其中,对于每个训练数据对,由第二解码器神经网络根据第二解码器神经网络的当前参数,通过处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第三输入,而不处理该训练数据对的相应第二输入,来生成该训练数据对的相应第一输入的第二估计重构。
16.根据权利要求1-3中任一项所述的计算机实施的方法,包括相互交替地重复训练(i)包括编码器神经网络和第一解码器神经网络的神经网络系统以及(ii)第二解码器神经网络。
17.一种用于在一个或多个计算机上训练神经网络系统的计算机实施的方法,包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示共享秘密密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的第一估计重构;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
18.根据权利要求17所述的计算机实施的方法,其中,编码器神经网络包括一个或多个全连接层、接着是一个或多个卷积层。
19.根据权利要求17所述的计算机实施的方法,其中,第一解码器神经网络包括一个或多个全连接层、接着是一个或多个卷积层。
20.根据权利要求17所述的计算机实施的方法,包括基于(i)来自训练数据对的相应第一输入和由第一解码器神经网络生成的相应第一输入的估计重构之间的差或者(ii)来自训练数据对的相应第一输入和由第二解码器神经网络系统生成的相应第一输入的估计重构之间的差中的至少一个,来调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
21.根据权利要求17所述的计算机实施的方法,包括使用随机梯度下降调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
22.根据权利要求17所述的计算机实施的方法,其中训练所述神经网络系统包括,对于每个训练数据对,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数,而不调整第二解码器神经网络的当前参数。
23.根据权利要求17所述的计算机实施的方法,进一步包括:
获得多个第二训练数据对,每个第二训练数据对包括相应第四输入和相应第四输入的编码表示,其中相应第四输入的编码表示是根据编码器神经网络的当前参数使用编码器神经网络生成的;
在所述多个第二训练数据对上训练第二解码器神经网络,对于每个第二训练数据对,包括:
根据第二解码器神经网络的当前值,使用第二解码器神经网络来处理该第二训练数据对的相应第四输入的编码表示,以生成该第二训练数据对的相应第四输入的估计重构;和
基于相应第四输入和相应第四输入的估计重构之间的差来调整第二解码器神经网络的当前参数,而不调整编码器神经网络的当前参数,也不调整第一解码器神经网络的当前参数。
24.根据权利要求23所述的计算机实施的方法,其中:
对于第二训练数据对中的每一个,通过利用编码器神经网络处理(i)相应第四输入和(ii)不同于相应第四输入的与第二训练数据对相对应的相应第五输入,来生成该第二训练数据对的相应第四输入的编码表示;
在所述多个第二训练数据对上训练第二解码器神经网络包括,对于每个第二训练数据对,利用第二解码器神经网络处理(i)该第二训练数据对的相应第四输入的编码表示,以及(ii)与该第二训练数据对相对应的相应第六输入;和
对于第二训练数据对中的每一个,(i)相应第五输入是从相应第六输入得到的,(ii)相应第六输入是从相应第五输入得到的,或者(iii)相应第五输入和相应第六输入两者都是使用公共过程得到的,以便彼此互补。
25.根据权利要求24所述的计算机实施的方法,其中,对于每个第二训练数据对:
与该第二训练数据对相对应的相应第五输入表示公共-私有密钥对的私有密钥;和
与该第二训练数据对相对应的相应第六输入表示公共-私有密钥对的公共密钥。
26.根据权利要求23所述的计算机实施的方法,包括:在用所述多个训练数据对来训练编码器神经网络之后,根据编码器神经网络的当前值,使用编码器神经网络来生成所述多个第二训练数据对的相应第四输入的编码表示。
27.根据权利要求17所述的计算机实施的方法,其中,所述多个训练数据对当中的第一训练数据对的相应第一输入表示文本序列或者一个或多个数字中的至少一个。
28.根据权利要求17所述的计算机实施的方法,其中,包括相互交替地重复训练(i)包括编码器神经网络和第一解码器神经网络的神经网络系统以及(ii)第二解码器神经网络。
29.一种系统,包括:
一个或多个处理器;和
其上存储有指令的一个或多个计算机可读介质,所述指令在由所述一个或多个处理器执行时使得执行操作,所述操作包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示共享秘密密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的第一估计重构;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
30.根据权利要求29所述的系统,其中训练所述神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,来根据第一解码器神经网络的当前参数生成该训练数据对的相应第一输入的第一估计重构。
31.一种其上存储有指令的一个或多个非暂时性计算机可读介质,所述指令在由一个或多个处理器执行时使得执行操作,所述操作包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示共享秘密密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的第一估计重构;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
32.一种用于在一个或多个计算机上训练神经网络系统的系统,包括:
一个或多个处理器;和
其上存储有指令的一个或多个计算机可读介质,所述指令在由所述一个或多个处理器执行时使得所述一个或多个计算机执行操作,所述操作包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示公共-私有密钥对的私有密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络来处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入或该训练数据对的相应第三输入,以生成该训练数据对的相应第一输入的第一估计重构,其中该训练数据对的相应第三输入表示所述公共-私有密钥对的公共密钥,其中(i)该训练数据对的相应第二输入是从该训练数据对的相应第三输入得到的,(ii)该训练数据对的相应第三输入是从该训练数据对的相应第二输入得到的,或者
(iii)该训练数据对的相应第二输入和该训练数据对的相应第三输入两者都是使用公共过程得到的,以便彼此互补;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
33.根据权利要求32所述的系统,其中训练所述神经网络系统包括,对于每个训练数据对,由第一解码器神经网络通过处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入,来根据第一解码器神经网络的当前参数生成该训练数据对的相应第一输入的第一估计重构。
34.一种其上存储有指令的一个或多个非暂时性计算机可读介质,所述指令在由一个或多个处理器执行时使得执行操作,所述操作包括:
获得神经网络系统的多个训练数据对,每个训练数据对包括相应第一输入和相应第二输入,其中,所述相应第一输入是包括文本数据、图像数据、二进制数据和浮点数中的至少一个的输入数据的明文表示,并且训练数据对的所述相应第二输入表示公共-私有密钥对的私有密钥;和
在所述多个训练数据对上训练神经网络系统包括,对于每个训练数据对:
根据编码器神经网络的参数的当前值,使用编码器神经网络来处理(i)该训练数据对的相应第一输入和(ii)该训练数据对的相应第二输入,以生成该训练数据对的相应第一输入的编码表示;
根据第一解码器神经网络的参数的当前值,使用第一解码器神经网络来处理(i)该训练数据对的相应第一输入的编码表示和(ii)该训练数据对的相应第二输入或该训练数据对的相应第三输入,以生成该训练数据对的相应第一输入的第一估计重构,其中该训练数据对的相应第三输入表示所述公共-私有密钥对的公共密钥,其中(i)该训练数据对的相应第二输入是从该训练数据对的相应第三输入得到的,(ii)该训练数据对的相应第三输入是从该训练数据对的相应第二输入得到的,或者
(iii)该训练数据对的相应第二输入和该训练数据对的相应第三输入两者都是使用公共过程得到的,以便彼此互补;
获得该训练数据对的相应第一输入的第二估计重构,该第二估计重构由第二解码器神经网络根据第二解码器神经网络的当前参数、通过处理该训练数据对的相应第一输入的编码表示而不处理该训练数据对的相应第二输入来生成;和
基于相应第一输入、相应第一输入的第一估计重构和相应第一输入的第二估计重构,调整编码器神经网络的当前参数和第一解码器神经网络的当前参数。
CN201780056545.6A 2016-08-04 2017-08-03 使用神经网络编码和重构输入 Active CN109804383B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662370954P 2016-08-04 2016-08-04
US62/370,954 2016-08-04
PCT/US2017/045329 WO2018027050A1 (en) 2016-08-04 2017-08-03 Encoding and reconstructing inputs using neural networks

Publications (2)

Publication Number Publication Date
CN109804383A CN109804383A (zh) 2019-05-24
CN109804383B true CN109804383B (zh) 2024-03-26

Family

ID=59626703

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780056545.6A Active CN109804383B (zh) 2016-08-04 2017-08-03 使用神经网络编码和重构输入

Country Status (4)

Country Link
US (2) US11308385B2 (zh)
EP (1) EP3494520A1 (zh)
CN (1) CN109804383B (zh)
WO (1) WO2018027050A1 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10642896B2 (en) 2016-02-05 2020-05-05 Sas Institute Inc. Handling of data sets during execution of task routines of multiple languages
US10650045B2 (en) * 2016-02-05 2020-05-12 Sas Institute Inc. Staged training of neural networks for improved time series prediction performance
US10795935B2 (en) 2016-02-05 2020-10-06 Sas Institute Inc. Automated generation of job flow definitions
US10650046B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Many task computing with distributed file system
US11308385B2 (en) * 2016-08-04 2022-04-19 Google Llc Encoding and reconstructing inputs using neural networks
US11615285B2 (en) 2017-01-06 2023-03-28 Ecole Polytechnique Federale De Lausanne (Epfl) Generating and identifying functional subnetworks within structural networks
USD898059S1 (en) 2017-02-06 2020-10-06 Sas Institute Inc. Display screen or portion thereof with graphical user interface
USD898060S1 (en) 2017-06-05 2020-10-06 Sas Institute Inc. Display screen or portion thereof with graphical user interface
US11893471B2 (en) 2018-06-11 2024-02-06 Inait Sa Encoding and decoding information and artificial neural networks
US11663478B2 (en) 2018-06-11 2023-05-30 Inait Sa Characterizing activity in a recurrent artificial neural network
US11552731B2 (en) * 2018-07-20 2023-01-10 Nokia Technologies Oy Learning in communication systems by updating of parameters in a receiving algorithm
EP3618287B1 (en) * 2018-08-29 2023-09-27 Université de Genève Signal sampling with joint training of learnable priors for sampling operator and decoder
US11663441B2 (en) 2018-09-27 2023-05-30 Deepmind Technologies Limited Action selection neural network training using imitation learning in latent space
US10834114B2 (en) 2018-12-13 2020-11-10 At&T Intellectual Property I, L.P. Multi-tiered server architecture to mitigate malicious traffic
US11715016B2 (en) * 2019-03-15 2023-08-01 International Business Machines Corporation Adversarial input generation using variational autoencoder
US11569978B2 (en) 2019-03-18 2023-01-31 Inait Sa Encrypting and decrypting information
US11652603B2 (en) * 2019-03-18 2023-05-16 Inait Sa Homomorphic encryption
US11120526B1 (en) * 2019-04-05 2021-09-14 Snap Inc. Deep feature generative adversarial neural networks
US11636380B2 (en) * 2019-04-09 2023-04-25 Nxp B.V. Method for protecting a machine learning model against extraction using an ensemble of a plurality of machine learning models
CN112446375A (zh) * 2019-09-03 2021-03-05 上海高德威智能交通系统有限公司 车牌识别方法、装置、设备及存储介质
US11264009B2 (en) * 2019-09-13 2022-03-01 Mitsubishi Electric Research Laboratories, Inc. System and method for a dialogue response generation system
US11651210B2 (en) 2019-12-11 2023-05-16 Inait Sa Interpreting and improving the processing results of recurrent neural networks
US11580401B2 (en) 2019-12-11 2023-02-14 Inait Sa Distance metrics and clustering in recurrent neural networks
US11797827B2 (en) 2019-12-11 2023-10-24 Inait Sa Input into a neural network
US11816553B2 (en) 2019-12-11 2023-11-14 Inait Sa Output from a recurrent neural network
US11430088B2 (en) * 2019-12-23 2022-08-30 Samsung Electronics Co., Ltd. Method and apparatus for data anonymization
KR20210089347A (ko) * 2020-01-08 2021-07-16 엘지전자 주식회사 음성 인식 장치 및 음성데이터를 학습하는 방법
CA3109502A1 (en) * 2020-02-18 2021-08-18 Royal Bank Of Canada System and method for distributed non-linear masking of sensitive data for machine learning training
US11468328B2 (en) * 2020-02-24 2022-10-11 Qualcomm Incorporated Managing information transmission for wireless communication
WO2021172956A1 (ko) * 2020-02-28 2021-09-02 엘지전자 주식회사 영상 특징 정보 시그널링을 위한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2021206727A1 (en) * 2020-04-10 2021-10-14 Hewlett-Packard Development Company, L.P. Neural networks
US11501212B2 (en) * 2020-04-21 2022-11-15 Nxp B.V. Method for protecting a machine learning model against extraction
GB202016824D0 (en) * 2020-10-23 2020-12-09 Deep Render Ltd DR big book 3
US11488021B2 (en) * 2020-06-18 2022-11-01 Shanghai United Imaging Intelligence Co., Ltd. Systems and methods for image segmentation
US11017320B1 (en) * 2020-06-24 2021-05-25 Deeping Source Inc. Method for training obfuscation network which conceals original data to be used for machine learning and training surrogate network which uses obfuscated data generated by obfuscation network and learning device using the same and method for testing trained obfuscation network and testing device using the same
US11895034B1 (en) 2021-01-29 2024-02-06 Joinesty, Inc. Training and implementing a machine learning model to selectively restrict access to traffic
US11720991B2 (en) 2021-05-20 2023-08-08 International Business Machines Corporation Signing and authentication of digital images and other data arrays
US11886955B2 (en) 2022-02-16 2024-01-30 Protopia AI, Inc. Self-supervised data obfuscation in foundation models

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105070293A (zh) * 2015-08-31 2015-11-18 武汉大学 基于深度神经网络的音频带宽扩展编码解码方法及装置
CN105447498A (zh) * 2014-09-22 2016-03-30 三星电子株式会社 配置有神经网络的客户端设备、系统和服务器系统
CN105825269A (zh) * 2016-03-15 2016-08-03 中国科学院计算技术研究所 一种基于并行自动编码机的特征学习方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170063530A1 (en) 2013-08-13 2017-03-02 Michael Stephen Fiske NADO Cryptography with Key Generators
US9346167B2 (en) * 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
US11308385B2 (en) * 2016-08-04 2022-04-19 Google Llc Encoding and reconstructing inputs using neural networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105447498A (zh) * 2014-09-22 2016-03-30 三星电子株式会社 配置有神经网络的客户端设备、系统和服务器系统
CN105070293A (zh) * 2015-08-31 2015-11-18 武汉大学 基于深度神经网络的音频带宽扩展编码解码方法及装置
CN105825269A (zh) * 2016-03-15 2016-08-03 中国科学院计算技术研究所 一种基于并行自动编码机的特征学习方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Cryptography Using Neural Network;T.Godhavari et al;《2005 Annual IEEE India Conference-Indicon》;20060213;第258-261页 *

Also Published As

Publication number Publication date
US20230019228A1 (en) 2023-01-19
EP3494520A1 (en) 2019-06-12
US11853860B2 (en) 2023-12-26
US20190171929A1 (en) 2019-06-06
WO2018027050A1 (en) 2018-02-08
CN109804383A (zh) 2019-05-24
US11308385B2 (en) 2022-04-19

Similar Documents

Publication Publication Date Title
CN109804383B (zh) 使用神经网络编码和重构输入
Dhawan et al. Analysis of various data security techniques of steganography: A survey
US11886989B2 (en) System for measuring information leakage of deep learning models
Dridi et al. Cryptography of medical images based on a combination between chaotic and neural network
Wu et al. Image encryption using the two-dimensional logistic chaotic map
CN108476136B (zh) 密文转换装置、计算机能读取的记录介质和密文转换方法
Askar et al. Cryptographic algorithm based on pixel shuffling and dynamical chaotic economic map
Zhang et al. Chaos-based image encryption: Review, application, and challenges
Almazrooie et al. Improving the diffusion of the stream cipher salsa20 by employing a chaotic logistic map
Karawia Image encryption based on Fisher‐Yates shuffling and three dimensional chaotic economic map
Bao et al. Image scrambling adversarial autoencoder based on the asymmetric encryption
US20240104681A1 (en) Image steganography utilizing adversarial perturbations
Bao et al. Research on the avalanche effect of image encryption based on the Cycle-GAN
Bhuyan et al. Development of secrete images in image transferring system
Wang et al. Quantum cryptosystem and circuit design for color image based on novel 3D Julia-fractal chaos system
Yampolskiy et al. Password protected visual cryptography via cellular automaton rule 30
Ahmed et al. Medical Image encryption: A comprehensive review
WO2018008547A1 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム
Zheng et al. Encryptgan: Image steganography with domain transform
Zhang et al. Image encryption with discrete fractional cosine transform and chaos
Abdul-Kareem et al. Hybrid image encryption algorithm based on compressive sensing, gray wolf optimization, and chaos
Alsaedi et al. Retrieving Encrypted Images Using Convolution Neural Network and Fully Homomorphic Encryption
Koppu et al. 2D Chaotic Map Based on 2D Adaptive Grey Wolf Algorithm for Ultra Sound Medical Image Security.
Gao et al. New image encryption algorithm based on hyperchaotic 3D-IHAL and a hybrid cryptosystem
Kumaresan et al. Reversible data hiding in encrypted images using public cloud and cellular Automata

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant