[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN112789625A - 承诺信息速率变分自编码器 - Google Patents

承诺信息速率变分自编码器 Download PDF

Info

Publication number
CN112789625A
CN112789625A CN201980063840.3A CN201980063840A CN112789625A CN 112789625 A CN112789625 A CN 112789625A CN 201980063840 A CN201980063840 A CN 201980063840A CN 112789625 A CN112789625 A CN 112789625A
Authority
CN
China
Prior art keywords
neural network
distribution
encoder
decoder
latent variables
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.)
Pending
Application number
CN201980063840.3A
Other languages
English (en)
Inventor
本杰明·普尔
阿伦·杰勒德·安东尼厄斯·范登伍尔德
阿里·拉扎维-内马图拉希
奥里奥尔·温亚尔斯
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.)
DeepMind Technologies Ltd
Original Assignee
DeepMind Technologies Ltd
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 DeepMind Technologies Ltd filed Critical DeepMind Technologies Ltd
Publication of CN112789625A publication Critical patent/CN112789625A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

一种变分自编码器(VAE)神经网络系统,包括:编码器神经网络,所述编码器神经网络用于对输入数据项进行编码以定义潜变量集合的后验分布;和解码器神经网络,所述解码器神经网络用于生成表示从后验分布采样的潜变量集合的值的输出数据项。系统被配置用于利用目标函数进行训练,所述目标函数包括取决于后验分布和先验分布之间的差异的项。先验分布和后验分布被布置为使得它们不能彼此匹配。VAE系统可以用于压缩和解压缩数据。

Description

承诺信息速率变分自编码器
背景技术
本说明书涉及变分自编码器神经网络系统及其组件。
神经网络是机器学习模型,该机器学习模型采用一个或多个层的非线性单元来预测针对接收到的输入的输出。一些神经网络除了输出层外还包括一个或多个隐藏层。每个隐藏层的输出用作网络中下一层——即,下一个隐藏层或输出层——的输入。网络的每一层根据相应的参数集合的当前值从接收到的输入生成输出。
发明内容
在广义上变分自编码器(VAE)确定表示输入数据项x的潜变量集合的分布。因此编码器在潜变量z上确定后验分布q(z|x)的参数。VAE是按鼓励系统使后验分布保持接近于通常是标准高斯的先验p(z)的目标而训练的。能够从此分布取得样本以生成输出数据项。可以使用未标记数据来训练VAE。该目标可以包括测量后验分布与先验分布之间的差异的项,诸如KL(Kullback-Leibler)散度。然而一些VAE实施方式特别是具有强大解码器的实施方式的问题是,解码器可以能够在不依靠潜变量的情况下生成输出数据项。
在一个创新方面中,因此提供了一种变分自编码器神经网络系统。该系统可以作为计算机程序被实现在一个或多个位置中的一个或多个计算机上。
该系统可以包括用于接收诸如例如来自相机或LIDAR系统的图像、数字化声音或文本的输入数据项的输入。该系统还可以包括编码器神经网络,该编码器神经网络被配置成对输入数据项进行编码以确定定义潜变量集合的第一、后验分布的参数集合。该系统还可以包括用于从后验分布采样以确定潜变量集合的值的子系统。该系统还可以包括解码器神经网络,该解码器神经网络被配置成接收潜变量集合的值并生成表示潜变量集合的值的输出数据项。变分自编码器神经网络系统可以被配置用于按目标函数而训练。这可以具有取决于输入数据项与输出数据项之间的差异的第一项,诸如交叉熵项,以及取决于潜变量集合的后验分布和第二、先验分布之间的差异的第二项,诸如KL散度项。先验分布可以与后验分布不同;更特别地先验分布的结构可以与后验分布的结构不同,使得后验分布不能与先验分布匹配。
在实施方式中,可以将从编码器转移到解码器的信息表现为后验分布与先验分布之间的非零散度。散度可以是KL散度、Jensen-Shannon散度或某个其他差异度量。
通过对后验分布和先验分布施加不同的结构,可以保证目标函数的第二项为非零,并且因此可以迫使解码器在生成输出数据项时依靠潜变量。
分布的结构可以由其固有形状确定,该固有形状可以例如由其数学形式确定,和/或它可以由分布的参数确定。因此通过将分布的一个或多个参数固定为彼此不同,可以将后验分布和先验分布定义成具有不同的结构。例如在分布具有相同或类似的数学形式的情况下,可以通过将每个分布的一个或多个参数约束成具有不同的相对或绝对值来将分布约束成在结构上彼此不同。
例如后验分布和先验分布可以每一个均包括多元高斯分布。然后后验分布的方差可以与先验分布的方差相差因数α(其中α≠1)。用于后验分布和先验分布的这种结构具有简单的优点;它还促进以封闭形式例如在训练期间确定KL散度项。在一些实施方式中,能够根据经由潜变量从编码器转移到解码器的期望承诺,即最小,信息速率(以封闭形式)确定参数α。
期望能够使用自回归神经网络作为解码器,因为此类解码器可以是非常强大的,即它们可以能够生成数据项的非常准确的样本。在Aaron van den Oord et al.,“Conditional Image Generation with PixelCNN Decoders”,arXiv:1606.05328(Aaronvan den Oord等人,“Conditional Image Generation with PixelCNN Decoders”,arXiv:1606.05328)中并且在S.Reed et al.,“Few-Shot Autoregressive Density Estimation:Towards Learning To Learn Distributions”,arXiv 1710.10304(S.Reed等人,“Few-Shot Autoregressive Density Estimation:Towards Learning To LearnDistributions”,arXiv 1710.10304)中描述了能够被例如用于生成图像的这样的系统的一个示例。在A.van den Oord et al.“WaveNet:A generative model for raw audio”arXiv 1609:03499(A.van den Oord等人.“WaveNet:A generative model for rawaudio”arXiv 1609:03499)中描述了能够被例如用于生成声音(波形)的这样的系统的示例。在这种上下文中,自回归神经网络可以是被配置成生成输出数据项值xt的序列的神经网络,每个输出数据项值xt以先前生成的输出数据项值x<t和条件变量s为条件:
Figure BDA0002995304070000031
数据项值可以是例如像素值或声音信号值。例如,当生成图像时自回归神经网络可以依次例如在光栅扫描中逐行且逐像素生成像素。
然而当将这样的强大解码器并入在VAE时,可以忽略潜变量。在实施方式中,上述变分自编码器神经网络系统促进将此类自回归神经网络系统用作解码器,同时仍然使用来自潜变量的信息。更特别地解码器的自回归结构可以提供输出数据项的局部结构,同时解码器输出也可以以通过从潜变量分布采样所提供的信息为条件,这可以为输出数据项提供较长范围结构和/或全局结构。
因此在一些实施方式中,编码器被配置成确定参数集合的序列,所述参数集合的序列定义潜变量集合的序列的分布序列,一个潜变量集合针对多个时间步中的每一个时间步。在这里编码器的时间步可以与解码器的样本生成步不同。例如确定连续的潜变量集合之间的间隔可以比解码器时间步长,即可以为每个潜变量集合生成不止一个输出数据项值。
因此在一些实施方式中,生成潜变量集合的序列。潜变量的先验分布然后可以包括自回归分布,使得在每个时间步先验分布取决于在先前时间步的先验分布。然而,可以在每个时间步独立地确定后验分布。这种方法能够帮助捕获从一个时间步到另一时间步的潜空间中的相关性(其中时间步可以例如对应于图像中的空间位置)。定义潜变量的先验分布随时间演进的自回归过程可以是线性自回归过程。例如潜变量集合在时间步t的值zt可以通过α乘以潜变量集合在先前时间步的值zt-1与噪声分量——例如高斯噪声分量——的和来定义,其中|α|<1。参数α定义潜变量中的时间相关性的程度,其中随着α接近零相关性越低。
在解码器神经网络是自回归神经网络的情况下,VAE还可以包括用于在每个时间步将传递给解码器的潜变量集合的值限制为对关于仍然要生成的输出数据值的序列,即关于输出数据值的序列的将来值,的信息进行编码的那些值的系统。因此可以从针对x>t的输入数据项值导出传递给解码器的潜变量集合的值。这是因为自回归神经网络已经能够有效地访问关于过去的信息,即输出数据项的先前生成的值。在实施方式中编码器可以被配置成以这种方式限制传递给解码器的潜变量集合的值。因此编码器可以被配置成具有“反因果”结构。当正在训练VAE系统时,系统将通常能够访问完整数据项,并且因此将能够访问比正由解码器在任何特定解码器时间步生成的那些值晚的数据项的值,所以未违反因果关系。这能够促进计算效率并且还能够允许提高的学习速率。
解码器可以包括被配置成实现因果卷积的卷积自回归神经网络,即其中所生成的数据项值取决于先前生成的数据项值,而不取决于将来的数据项值。实现因果卷积可以使用掩码对来自在序列中跟随在当前时间步的那些数据项值的数据项值的输入进行掩码来实现,或者通过使卷积位置移位(滤波器长度–1)时间步来实现。
尽管可以将系统训练成与后验分布和先验分布匹配,但是存在对信息进行编码的内置失配。VAE系统因此可以包括被配置成学习潜变量集合的序列的分布序列的---即被配置成学习逼近的(聚合)后验分布的---系统,特别是辅助先验神经网络。辅助先验神经网络可以是自回归神经网络,并且可以与编码器神经网络和解码器神经网络同时地训练。
还提供了一种训练可以为无监督的如上所述的变分自编码器神经网络系统的方法。该方法可以包括:接收训练数据,该训练数据包括训练数据项;将每个训练数据项提供给变分自编码器神经网络系统的输入以生成对应的输出数据项;以及根据训练数据项与对应的输出数据项之间的差异并根据潜变量集合的后验分布和先验分布之间的差异来确定目标函数的梯度。可以分批处理训练数据项。该方法还可以包括通过变分自编码器神经网络系统反向传播梯度以调整编码器神经网络和解码器神经网络的参数以优化目标函数。
在广义上训练可以采用随机梯度下降(SGD),其目标包括重建代价和封闭形式KL散度项。可以使用“重新参数化技巧”来通过解码器将梯度反向传播到编码器中(参见例如Kingma and Welling 2013,arXiv1312.6114(Kingma and Welling 2013,arXiv1312.6114)),其中采样节点用具有噪声输入的确定性操作替换以允许梯度流过节点。定义后验分布与先验分布之间的内置差异的目标函数确保经由潜变量从编码器到解码器的信息流的(最小)速率。
在训练期间的VAE系统包括编码器和解码器两者。然而,一旦被训练,这些中的每一个均可以具有独立效用。
例如因为潜变量分布有效地定义输入数据项的压缩版本,所以编码器可以用于压缩具有与用于训练VAE系统相同的类型的数据项。在另一示例中,编码器可以被用作另一机器学习系统的前端,例如分类器。因为编码器已学习了训练数据项的分布,所以在潜变量上训练/操作的分类器可以比在原始数据项上训练的分类器更好地执行。在另一示例中编码器可以被用作增强学习(RL)系统的前端,其中已学习到的潜变量分布用于表示RL系统在其中操作的环境的图像和/或对诸如表示机械代理的状态——诸如机器人臂的配置——的数据的其他传感器数据进行编码。尽管已使用声音和图像数据来描述了示例,但是还可以在视频数据上训练VAE系统,因此经训练后的编码器可以对视频数据进行编码或压缩。
经训练后的系统的解码器还可以具有独立效用。例如可以从先验中取得样本并将其提供给解码器以生成样本输出数据项。在具有辅助神经网络的系统中,可以将样本提供给辅助神经网络以生成潜变量的序列,其然后可以被提供给解码器以生成样本输出数据项。生成的数据项可以是诸如声音的一维数据项,在这种情况下潜变量可以具有1D特征空间并且数据项值可以包括定义声音波形的值。生成的数据项可以是诸如图像的二维数据项,在这种情况下潜变量可以具有2D特征空间并且数据项值可以包括图像的像素值,诸如亮度值和/或颜色值。生成的数据项可以是诸如图像序列(视频)的三维数据项,在这种情况下潜变量可以具有3D特征空间并且数据项值可以包括图像序列(视频)的像素值。在视频的情况下解码器可以是图像解码器。例如,能将VAE系统训练成生成以定义视点的移动/变化的附加数据输入为条件的图像,然后能通过应用一系列此类附加数据输入来生成潜变量集合的序列,每个图像是独立于相应的潜变量集合而生成的。在另一个示例中,数据项可以表示分子或其他生物实体,例如蛋白质分子,的结构,并且解码器可以用于生成具有与训练数据项类似的特性输出数据项,例如候选药物分子。
更一般地编码器和解码器可以被配置成以附加数据输入为条件,这些附加数据输入诸如用于生成图像的标签和/或文本、或用于例如在文本至语音系统中生成音频的标签和/或文本和/或说话者标识符。经训练后的解码器可以用于生成期望类型的输出数据项,例如用于从自然语言文本生成表示语音的波形。
输入和输出数据项通常可以是任何种类的数字数据项。因此在另一示例中,输入数据项和输出数据项可以各自包括用自然语言定义句子的标记(token)。编码器和/或解码器然后可以例如被用在用于机器翻译的系统中或者用于生成表示以潜变量和/或附加数据表达的概念的句子。潜变量可以附加地或替换地用于控制所生成的文本的样式或情感。在仍然另外的示例中,输入和输出数据项通常可以包括语音、视频或时间系列数据。
在仍然其他的应用中,经训练后的VAE系统和/或编码器/解码器可以被用于图像或其他数据项处理任务,诸如数据项的遗漏部分由系统生成或填入的图像或其他数据项完成任务。
在另一示例中,可以使用VAE系统来为用户做出个性化推荐。例如潜变量可以用于表征用户对数据项的爱好。例如在使用包括用户已选择的项/内容的标识符的数据项,例如播放列表,来训练系统的情况下,潜变量的分布可以表示表征用户的爱好的特征。从潜变量的分布采样然后可以用于生成推荐输出数据项。
在再一个示例中,可以使用VAE系统特别是经训练后的解码器来生成用于训练另一机器学习系统的数据项的另外的示例。例如可以在数据项集合上训练VAE系统,然后可以确定并使用潜变量集合来生成与训练数据集合中的数据项类似的新数据项。可以通过从潜变量的(先验)分布采样和/或使用辅助神经网络来确定潜变量集合。在已以附加数据,例如标签,为条件训练了VAE系统的情况下,可能以附加数据,例如提供给解码器的标签,为条件生成新数据项。以这种方式可以生成附加标记数据项,例如以补充未标记训练数据项的不足。
因此一种获得编码器/解码器的方法包括:训练如上所述的变分自编码器神经网络系统;以及然后使用经训练后的编码器/解码器神经网络作为编码器/解码器。
如上所述,还提供了训练后的解码器和训练后的编码器。
如上所述,还提供了一种使用经训练后的编码器和/或解码器来对数据进行编码和/或解码的方法。
例如,在一个实施方式中自回归解码器包括因果卷积神经网络,该因果卷积神经网络被配置成通过在多个迭代中的每个迭代时生成以在先前迭代时先前生成的数据项的值为条件的数据项的值来生成数据项,其中,生成使用取决于数据项的先前生成的值的软注意力查询矢量来查询包括在每个时间步从潜变量集合得出的值的存储器。
例如,在一个实施方式中反因果自回归编码器包括因果卷积神经网络,该因果卷积神经网络被配置成输入数据项,反转数据项的值的次序,并且从次序反转的值生成数据项的表示。
能够在特定实施例中实现本说明书中描述的主题以便实现以下另外的优点中的一个或多个。
系统的一些实施方式能够使用诸如自回归解码器的强大解码器来生成具有改善的保真度,即改善的准确性和更多细节,的输出数据项的示例。特别地,即使当使用自回归技术来实现解码器时,也能够训练VAE系统的实施方式。系统还潜在地能够学习提供训练数据项的改善的表示的潜变量分布。这进而促进诸如减少存储器使用和更好地控制所生成的数据项的优点。在例如系统被用于数据压缩的情况下,这可以促进更大程度的数据压缩。系统的一些实施方式减少训练所需的计算能力,因为它们能够比先前的系统更快且更好地训练。系统的一些实施方式能够有效地对诸如语音和视频的时间系列数据进行建模。如上所述,系统的一些实施方式允许收敛闭合的目标函数的高效计算。系统的一些实施方式允许用一个参数来调谐编码器与解码器之间的最小信息速率;能够根据被处理的数据项的类型,例如数据项中的相关性的程度,来调整这个参数,以调谐系统在计算资源和存储器使用方面的有效性。
本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐明。通过说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1示出示例变分自编码器(VAE)神经网络系统。
图2a-2b图示反因果编码器神经网络和自回归解码器神经网络的操作。
图3示出用于图1的VAE神经网络系统的示例训练过程的流程图。
图4a至图4b示出图示出使用经训练的编码器神经网络来编码数据项并且使用经训练的解码器神经网络来生成数据项的流程图。
图5示出VAE神经网络系统的示例实施方式的细节。
在各种附图中,相同的附图标记和标号指示相同的元件。
具体实施方式
本说明书通常描述一种作为计算机程序实现在一个或多个位置中的一个或多个计算机上的变分自编码器(VAE)神经网络系统。
当被训练时,VAE神经网络系统包括训练后的编码器神经网络和训练后的解码器神经网络。编码器神经网络学习将来自训练数据分布的数据压缩成由潜变量集合表示的更简单分布。解码器神经网络学习将潜变量集合解码成从近似训练分布的分布中得到的示例。因此训练后的VAE神经网络系统作为数据压缩/解压缩系统操作,其中编码器神经网络作为数据压缩器而解码器神经网络作为互补数据解压缩器。
在训练期间VAE学习训练数据中的结构并且因此能够执行高效的数据压缩/解压缩。数据可以是任何类型的数据,包括例如图像数据(包括视频)、声音数据和文本数据。
来自编码器神经网络的潜变量表示还能够例如用于分类和强化学习任务。来自解码器神经网络的数据能够用于从训练数据分布生成示例,例如图像数据、声音数据或文本数据示例,这些示例以作为输入提供的(潜)变量集合为条件,可选地还以定义示例类型——例如图像数据的图像内容或声音数据的自然语言单词——的标签为条件。
VAE神经网络的问题是由于在下面说明的后验失效(posterior collapse)而导致它们可能无法有效地训练。另一问题是虽然它们可能擅长捕获训练数据中的全局结构,但是它们可能无法捕获更复杂的局部结构,例如生成的图像可能看起来模糊。后者问题的解决方案是对于解码器使用更强大的生成模型,即,能够更好地再现诸如图像细节的训练数据分布中的细节的模型,但是这加剧后验失效问题。
一个VAE目标函数目的旨在通过以下来使从解码器神经网络(生成模型)获得训练数据示例x的概率p(x)最大化:使该概率上的下限最大化
Figure BDA0002995304070000101
在这里DKL是Kullback-Leibler散度;p(z)定义z的先验分布,其应该是连续的但是可以以其他方式是任意的并且可以是例如标准高斯
Figure BDA0002995304070000111
并且编码器神经网络由函数q(z|x)表示,即它为z的每个分量定义近似后验分布的参数。因此编码器神经网络为从中取得样本z~q(z|x)并被提供给由p(x|z)表示的解码器神经网络的z定义多元分布的参数。在训练期间第二项能够变为零,也就是说能够在不使用潜变量的情况下使解码器产生与训练数据分布示例匹配的示例的概率最大化,所谓的后验失效。这在解码器强大的情况下是特别成问题的,例如能够生成具有精细细节的输出示例的来自PixelCNN或WaveNet系列(同前所述)的自回归解码器在没有任何条件输入的情况下对完整数据分布进行建模。
图1示出解决此问题的示例变分自编码器(VAE)神经网络系统100。VAE神经网络系统100能够作为计算机程序被实现在一个或多个位置中的一个或多个计算机上。
VAE神经网络系统100被提供有例如来自数据存储102的训练数据项。这些可以包括例如时域和/或频域中的数字化音频的音频数据项、或包括例如视频和/或LIDAR数据项的图像数据项、文本数据项、定义诸如分子的实体的结构的数据项或任何其他类型的数据项。
数据项被提供给编码器神经网络104,该编码器神经网络输出定义潜变量集合的后验分布的参数集合106,例如定义多元高斯分布的均值和方差。系统被配置成从后验分布采样潜变量集合108的值。潜变量集合可以定义诸如潜变量矢量z的潜变量数据结构的值。
潜变量使用生成数据项输出112的解码器神经网络110来处理。在一些实施方式中解码器神经网络110直接生成数据项;在其他实施方式中它生成被采样以获得示例输出数据项的输出数据项分布的参数。例如解码器输出可以指定图像的每个像素(或颜色子像素)的强度或声音的每个单独的音频样本的值的分布的参数。
训练引擎120被配置成通过反向传播目标函数的梯度来训练VAE神经网络系统100,以便更新编码器神经网络104和解码器神经网络110的神经网络参数122。训练引擎使用潜变量集合的先验分布的先验分布参数124连同后验分布参数来确定目标函数的散度损失项。训练引擎120还根据输入数据项和对应的输出数据项确定目的旨在使输出数据项的分布与训练数据项的分布匹配的目标函数的重建损失项,例如log p(x|z)。
在一些实施方式中,提供辅助先验神经网络126以确定辅助先验分布的参数,如稍后所描述的。辅助先验神经网络126(在存在的情况下)还可以由训练引擎120训练。
先前描述的目标函数的log p(x|z)项是重建项并且DKL项鼓励系统使后验分布保持接近于先验分布。DKL项测量从编码器到解码器的信息流,更特别地通过潜变量从编码器发送到解码器平均需要的nat的数目。在实施方式中训练引擎120被配置成使用针对其存在本文称为“承诺速率”的从编码器到解码器的信息流的保证的、非零最小速率,δ,的目标函数。信息流的速率δ被约束成等于或大于承诺或最小速率以抑制后验失效。例如目标函数的后验-先验散度项,例如DKL(q(z|x)||p(z)),≥δ。
在实施方式中这可以通过定义(连续的)先验分布p(z)的结构来实现,该(连续的)先验分布p(z)的结构与后验分布q(z|x)的结构不同,使得后验分布不能与先验分布匹配。分布的结构可以通过分布的固有形状——例如它是否为高斯分布——和/或通过约束定义分布的形状的一个或多个参数——例如通过定义高斯分布的方差——来定义。在实施方式中,信息流的承诺速率δ不是固定的,而对于每个数据项可以是不同的,从而允许系统将更多的比特分配给更复杂的输入数据项。除Kullback-Leibler散度以外的度量可以被用于p(z)与q(z|x)之间的差异,例如Jensen-Shannon散度。稍后描述一些示例分布结构。
这些技术的应用不取决于编码器或解码器神经网络的任何特定形式或架构。特别地当使用诸如自回归解码器——即被配置成生成输出数据项值xt的序列的解码器,每个输出数据项值xt以先前生成的输出数据项值x<t为条件——的强大解码器时,这些技术避免后验失效。
图1系统中的潜变量能够捕获并表示数据项的全局特性。然而数据项可以包括空间、时间或其他顺序变化。例如图像通常具有某种空间连续性,语音通常具有某种时间连续性,而自然语言文本通常具有某种顺序连续性。捕获诸如图像纹理或姿势、语音音调、音量或重音以及语言风格或情感的潜变量中的此类更精细的、常常移位的属性变化也可以是有利的。
因此VAE神经网络系统100可以被配置成使用从先验分布的序列中取得的潜变量的序列来对数据项进行建模。因此可以将每个数据项细分成数据项部分的顺序集合。作为示例对于图像数据项,这些部分可以包括图像的行、列或区域;对于视频数据项这些部分可以包括单独的图像;对于语音数据项这些部分可以包括单词;对于自然语言文本数据项这些部分可以包括标记(例如单词、短语、符号等)。序列中的步可以被称为时间步,例如当数据项部分被顺序地处理时。
相同的后验分布模型,例如(对角线)多元高斯分布,可以被用于序列的每个步。也就是说,相同的编码器神经网络可以处理数据项部分中的每一个。然而先验分布可以以相关方式随每个步而改变。更具体地先验分布的序列可以是自回归序列,例如一阶和/或线性自回归序列。因此在每个时间步,先验分布可以取决于在先前时间步的先验分布。这在先验分布与后验分布之间的相关性结构中产生失配,这在这些分布之间的散度上产生正下限。
例如在时间步t的潜变量矢量zt可以由zt=αzt-1+∈t定义,其中∈t是噪声分量,例如具有零均值和恒定方差σ 2的高斯噪声,并且|α|<1(使得先验分布在其整个时间演变中具有恒定足够的统计)。然后zt具有零均值和方差
Figure BDA0002995304070000141
并且能够做出选择
Figure BDA0002995304070000142
使得
Figure BDA0002995304070000143
从而促进为信息流的承诺最小速率确定解析形式,例如DKL(q(z|x)||p(z))上的下限。因此在训练期间,允许优化过程以高于最小值的速率稳定下来,但是限制优化过程低于此速率。潜变量矢量zt的不同维度可以但不必需具有α的不同值。
在实施方式中,承诺信息速率由以下给出:
Figure BDA0002995304070000144
其中n是序列的长度,d是(多维)潜变量矢量的维度,并且αk是用于每个维度的α的值。这允许为α或αk做出选择,以为δ实现目标值。在广义上α的值确定从一个步到下一步的先验分布之间的相关性程度——在α=0情况下不存在相关性,并且随着α接近一,相关性增加。能够将这个视为可变速率特征分析,其中阿尔法的不同值与不同的变化速度相对应。
在解码器包括自回归神经网络的实施方式中,原则上解码器神经网络能够考虑到它已经生成的输出数据项的先前部分x<t准确地估计输出数据项xt的一部分。潜变量集合因此不需要将此信息传送到解码器神经网络。因此在一些实施方式中,编码器神经网络可以具有反因果结构,即潜变量集合不对关于已经生成的输出数据项的部分的信息进行编码的反因果结构。例如潜变量集合可以对关于序列中的数据项的当前部分和关于仍需要被生成的那些部分的信息进行编码。
这被示意性地图示在图2a中,图2a示出反因果推理模型——即反因果编码器神经网络——的操作:在第一时间步使用来自x1、x2和x3的信息来生成z1;在第二时间步使用来自x2和x3的信息来生成z2;而在第三时间步使用来自仅x3的信息来生成z3。在实践中x1、x2和x3是并行可用的并且编码器神经网络的反因果依赖性可以通过例如经由掩码对数据项的各部分的适当选择和/或通过反转数据项的各部分的顺序次序来定义。图2b示意性地图示对应的生成模型——即自回归解码器神经网络——的自回归性质。
反因果编码器神经网络的使用还可以帮助避免后验失效,并且还可以通过从潜变量集合中去除潜在冗余的信息来提高系统的数据压缩。
一旦被训练,编码器神经网络104就可以被用作数据压缩引擎,因为潜变量集合对关于输入数据项的全局和更精细特征的有意义信息进行编码。然而,精细细节可以由自回归解码器神经网络110产生。这种方法能够实现高数据压缩比。
经训练后的解码器神经网络110可以用于通过从先验分布采样潜变量集合并将该集合提供给解码器神经网络110来生成示例数据项。
在对训练数据项的全体
Figure BDA0002995304070000153
在先验分布p(z)与聚合后验分布
Figure BDA0002995304070000151
之间存在明显失配的情况下,则可能存在解码器神经网络在训练期间看不见的先验分布的区域。因此VAE神经网络系统100可以包括辅助先验神经网络126,该辅助先验神经网络被训练来输出与聚合后验分布匹配的辅助分布paux的参数。辅助先验神经网络126可以同时被训练为编码器神经网络和解码器神经网络,但是不参与编码器神经网络和解码器神经网络的训练。然而在训练之后可以从辅助先验分布而不是从先验分布采样潜变量集合。
自回归模型可以用于估计paux。例如单层LSTM(长期短期记忆)神经网络可以用于估计以先前潜变量样本为条件的第i个潜变量的后验分布q(zi|x)的参数,
Figure BDA0002995304070000152
其中paux(zi|z<i)可以是具有针对步i由LSTM在处理先前的潜变量样本之后输出的均值和方差参数的高斯分布。可以通过使DKL(q(z|x)||paux(z))最小化来训练LSTM神经网络。
在一些实施方式中可以修改图1的VAE神经网络系统100,使得解码器神经网络110从标记类,例如特定数字的示例图像,生成输出数据项。这能够通过在训练期间将条件输入添加到编码器神经网络和解码器神经网络来实现。条件输入可以是例如标识训练数据项所属于的类的独热条件矢量c。然后可以将对应的条件输入提供给解码器神经网络110以生成指定类的示例输出数据项。
图3是用于VAE神经网络系统100的示例训练过程的流程图。例如随机地初始化编码器神经网络和解码器神经网络参数(步骤300),并且例如从数据存储102获得训练数据项(步骤302)。使用编码器神经网络104来处理训练数据项以获得定义后验分布的参数(步骤304),并且从此分布采样潜变量集合(步骤306)。潜变量集合然后由解码器神经网络110处理以直接或例如通过从由解码器神经网络的输出参数化的多元分布采样来获得输出数据项(步骤308)。过程然后反向传播先前描述的类型的目标函数的梯度以更新编码器神经网络和解码器神经网络的参数。可以使用任何合适的反向传播方法,例如Adam。为了反向传播通过潜变量采样,可以使用“重新参数化技巧”,从而将每个潜变量的采样操作重写为z=μ+σ∈,其中∈是标准高斯噪声。编码器神经网络生成定义潜变量的分布的均值(μ)和方差(σ2)的输出,但是随机(采样)元素由噪声提供,使得能够通过“采样”步骤反向传播梯度。可以在小批次之上对梯度求平均;可以重复图3的过程直到神经网络参数收敛为止。
可选地通过辅助先验神经网络反向传播辅助先验神经网络的目标函数的梯度以与主VAE系统并行地训练此神经网络。
目标函数可以具有一般形式log p(x|z)-DKL(q(z|x)||p(z))。能够例如通过确定训练数据项与输出数据项之间的交叉熵损失或MSE(均方误差)损失来根据训练数据项和输出数据项评价重建损失项log p(x|z)。
可以根据先验分布和后验分布的参数来计算目标函数的第二、散度项DKL(q(z|x)||p(z))。如先前描述的,先验分布和后验分布的结构是不同的,使得它们不能匹配。
例如在一个实施方式中,编码器神经网络104可以输出定义潜变量集合的多元高斯后验分布(具有对角协方差)的参数集合106,并且先验分布可以由标准高斯分布(即零均值、单位方差)定义。两个高斯
Figure BDA0002995304070000171
的KL散度由以下给出:
Figure BDA0002995304070000172
为了计算出d维潜变量的KL散度,可以对d维中的每一个的KL散度加和。在简单实施方式中,可以将先验高斯分布和后验高斯分布定义成具有不同但固定的方差,例如相差一个因数α,其中α≠1,以将δ约束为非零。
在一些实施方式中先验分布由标准高斯分布类似地定义并且后验分布包括具有均值μq和方差
Figure BDA0002995304070000177
及对角协方差——即假定潜变量集合中的潜变量彼此无关——的多元高斯分布。后验分布受到信息流的承诺速率δ约束,同时允许速率高于δ。这能够通过根据以下来约束每个潜变量的(即,后验分布的每个分量的)均值μq和方差
Figure BDA0002995304070000178
来实现
Figure BDA0002995304070000173
这能够针对μq和δ在数字上求解以获得可行区间
Figure BDA0002995304070000174
其中
Figure BDA0002995304070000179
定义方差的相应的下限值和上限值。这进而在来自编码器神经网络的对应输出μ(x)和σ(x)方面定义后验分布的均值μq和方差
Figure BDA00029953040700001710
Figure BDA0002995304070000175
Figure BDA0002995304070000176
在取得的潜变量来自先验分布的自回归序列的情况下,散度项由以下给出:
Figure BDA0002995304070000181
其中,如先前描述的,
Figure BDA0002995304070000184
是例如标准高斯,并且对于t>1,zt被定义为使得
Figure BDA0002995304070000182
并且在时间步t的后验分布q(zt|x)包括具有均值μt和方差
Figure BDA0002995304070000185
及对角协方差的多元高斯分布
Figure BDA0002995304070000183
其中f(a)=a-ln(a)-1
图4a示出用于使用经训练后的编码器神经网络来对数据项进行编码例如以生成数据项的压缩表示的过程的流程图。在步骤400处过程例如直接或间接从传感器、从储存器或经由计算机网络或其他通信链路获得数据项。编码器神经网络104然后处理数据项并输出定义后验分布的参数集合(步骤402)。然后从后验分布对潜变量集合进行采样(步骤404),该潜变量集合表示数据项的编码的、压缩的表示。
图4b示出用于使用经训练后的解码器神经网络来生成数据项的过程的流程图。在步骤450处过程从先验分布采样潜变量集合,并且然后使用解码器神经网络110来处理潜变量集合以生成数据项(步骤452)。训练过程允许通过从先验中随机地采样来生成有效的示例数据项,该先验可以是多元高斯分布或者可以是辅助先验。
图5示出使用自回归方法来实现编码器神经网络和解码器神经网络两者的VAE神经网络系统100的示例实施方式。本说明书中描述的技术不限于编码器和解码器的特定形式,而是促进强大的、自回归解码器的使用;当解码器是自回归的时,编码器不必是自回归的。
在图5的示例中解码器神经网络110包括PixelCNN神经网络(arXiv:1606.05328)或其变体,诸如PixelCNN++(arXiv:1701.05517)或PixelSNAIL(arXiv:1712.09763)。因此,例如,神经网络的输出可以定义被采样以获得像素值的logistics分布(示意性地示出)的混合物的参数,并且神经网络可以并入注意力层,例如对编码器神经网络的输出的注意力。编码器神经网络可以具有与解码器神经网络相同的架构。可以使用丢弃(dropout)和层归一化来训练VAE神经网络系统100(arXiv:1502.03167)。
如先前提及的,反因果架构能够可用于减少后验失效并鼓励潜变量有意义。图5显示出如何能够在处理图像时实现反因果上下文的一个示例。在此特定示例中,在将图像提供给编码器之前将输入图像的像素次序反转并且每个空间维度用一填充。编码器的输出被裁切并再次反转,从而给出每个像素反因果上下文,即,根据它自己和将来的值的池化信息(如大括号中所示)。每个编码像素值可以被用作潜变量,但是为了改善的计算效率,池化,例如平均池化,然后可以逐行被应用以将每行编码为多维潜变量。
在实施方式中,能够将VAE神经网络系统训练成通过在训练期间在附加条件输入上对编码器神经网络和解码器神经网络中的每一个加条件来产生特定类型的示例数据项。条件输入可以标识数据项的类型并且可以包括例如标记数据项的类型或数据项的类型的嵌入的独热矢量。因此条件输入可以标识例如文本至语音系统中的单词或单词片段,或在生成图像时的图像标签、描述、视点和/或姿势。
对于要配置以执行特定操作或动作的一个或多个计算机的系统,意味着该系统已在其上安装了软件、固件、硬件或它们的组合,所述软件、固件、硬件或它们的组合在操作中导致系统执行操作或动作。对于将被配置以执行特定操作或动作的一个或多个计算机程序,意味着该一个或多个程序包括指令,该指令在由数据处理装置执行时使该装置执行该操作或动作。
本说明书中描述的主题和功能操作的实施例可用数字电子电路、用有形地具体实现的计算机软件或固件、用计算机硬件包括本说明书中公开的结构及其结构等同物或者用它们中的一个或多个的组合加以实现。本说明书中描述的主题的实施例可作为一个或多个计算机程序——即在有形非暂时性存储介质上编码以供由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或多个模块——被实现。可替选地或此外,可将程序指令编码在人工生成的传播信号上,所述传播信号例如为机器生成的电、光学或电磁信号,该信号被生成来对信息进行编码以便传输到适合的接收器装置以供由数据处理装置执行。计算机储存介质可以是机器可读储存设备、机器可读储存基板、随机或串行存取存储器设备,或它们中的一个或多个的组合。计算机储存介质然而不是传播信号。
术语“数据处理装置”包含用于处理数据的所有种类的装置、设备和机器,作为示例包括可编程处理器、计算机或多个处理器或计算机。装置可包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。装置除了包括硬件之外还可包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(其还可以被称为或者描述为程序、软件、软件应用、模块、软件模块、脚本或代码)可用任何形式的编程语言编写,所述编程语言包括编译或解释语言,或声明性或过程语言,并且它可被以任何形式部署,包括作为独立程序或者作为模块、组件、子例行程序或适合于在计算环境中使用的其它单元。计算机程序可以但不必对应于文件系统中的文件。可在保持其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、在专用于所述程序的单个文件中或者在多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中存储程序。可将计算机程序部署成在一个计算机上或者在位于一个站点处或者跨越多个站点分布和通过通信网络互连的多个计算机上执行。
如本说明书中所使用的,“引擎”或“软件引擎”指代提供与输入不同的输出的软件实现的输入/输出系统。引擎可以是功能性的编码块,诸如库、平台、软件开发套件(“SDK”)或对象。可将每个引擎实现在包括一个或多个处理器和计算机可读介质的任何适当类型的计算设备上,所述计算设备例如为服务器、智能电话、平板计算机、笔记本计算机、音乐播放器、电子书阅读器、膝上型或台式计算机、PDA、智能电话或其它固定或便携式设备。附加地,可以将这些引擎中的两个或更多个实现在相同的计算设备上或者在不同的计算设备上。
本说明书中描述的过程和逻辑流程可通过执行一个或多个计算机程序的一个或多个可编程计算机来执行以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可由专用逻辑电路执行,并且装置还可作为专用逻辑电路被实现,所述专用逻辑电路例如为FPGA(现场可编程门阵列)或ASIC(专用集成电路)。例如,处理和逻辑流程可以由图形处理单元(GPU)执行并且装置也可以被实现为图形处理单元(GPU)。
适合于执行计算机程序的计算机作为示例包括可基于通用微处理器或专用微处理器或两者,或任何其它种类的中央处理单元。一般地,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件是用于执行或者实行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。一般地,计算机还将包括或者在操作上耦合以从用于存储数据的一个或多个大容量储存设备——例如,磁盘、磁光盘或光盘——接收数据,或者将数据转移到所述一个或多个大容量储存设备,或者兼而有之。然而,计算机不必具有此类设备。此外,计算机可被嵌入在另一设备中,所述另一设备例如为移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式储存设备,例如,通用串行总线(USB)闪存驱动器等等。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括半导体存储器设备,例如,EPROM、EEPROM和闪速存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充,或者并入在专用逻辑电路中。
为了提供与用户的交互,可在计算机上实现本说明书中描述的主题的实施例,所述计算机具有用于向用户显示信息的显示设备以及用户可用来向该计算机提供输入的键盘和指点设备,所述显示设备例如CRT(阴极射线管)或LCD(液晶显示器)监视器,所述指点设备例如鼠标或轨迹球。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可通过向由用户使用的设备发送文档并且从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到的请求而向用户的客户端设备上的web浏览器发送web页面。
可在计算系统中实现本说明书中描述的主题的实施例,所述计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有用户可用来与本说明书中描述的主题的实施方式交互的图形用户界面或Web浏览器的客户端计算机),或者包括一个或多个此类后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如互联网。
计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并且通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体实施方式细节,但是这些不应该被解释为对任何发明的或可能要求保护的东西的范围构成限制,而是相反被解释为可以特定于特定发明的特定实施例的特征的描述。还可在单个实施例中相结合地实现在本说明书中在单独的实施例的上下文中描述的某些特征。相反地,还可单独地或者按照任何适合的子组合在多个实施例中实现在单个实施例的上下文中描述的各种特征。此外,尽管特征可以在上面被描述为按照某些组合起作用并且甚至最初如此要求保护,然而来自要求保护的组合的一个或多个特征可在一些情况下被从该组合中除去,并且要求保护的组合可以针对子组合或子组合的变体。
类似地,虽然按照特定次序在附图中描绘操作,但是这不应该被理解为要求按照所示的特定次序或者按照顺序次序执行此类操作,或者执行所有图示的操作以实现所希望的效果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上述的实施例中的各种系统模块和组件的分离不应该被理解为在所有实施例中要求这种分离,并且应该理解的是,所描述的程序组件和系统一般地可被一起集成在单个软件产品中或者包装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。例如,权利要求中叙述的动作可被以不同的次序执行并仍然实现所希望的结果。作为一个示例,附图中描绘的过程不一定要求所示的特定次序或顺序次序以实现所希望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
要求保护的是。

Claims (16)

1.一种变分自编码器神经网络系统,包括:
用于接收输入数据项的输入;
编码器神经网络,所述编码器神经网络被配置成对所述输入数据项进行编码,以确定定义潜变量集合的第一、后验分布的参数集合;
子系统,所述子系统从所述后验分布中采样以确定所述潜变量集合的值;
解码器神经网络,所述解码器神经网络被配置成接收所述潜变量集合的所述值并生成表示所述潜变量集合的所述值的输出数据项;
其中,所述变分自编码器神经网络系统被配置用于使用目标函数来训练,所述目标函数具有取决于所述输入数据项和所述输出数据项之间的差异的第一项和取决于所述后验分布和所述潜变量集合的第二、先验分布之间的差异的第二项,其中,所述先验分布的结构与所述后验分布的结构不同,使得所述后验分布不能与所述先验分布匹配。
2.根据权利要求1所述的变分自编码器神经网络系统,其中,所述后验分布和所述先验分布每一个均包括多元高斯分布,并且其中,所述后验分布的方差与所述先验分布的方差相差因数α,其中α≠1。
3.根据权利要求1或2所述的变分自编码器神经网络系统,其中,所述编码器被配置成确定参数集合的序列,所述参数集合的序列定义潜变量集合的序列的分布序列,一个所述潜变量集合针对多个时间步中的每一个时间步。
4.根据权利要求3所述的变分自编码器神经网络系统,其中,所述先验分布包括自回归分布,使得在每个时间步处所述先验分布取决于在先前时间步处的所述先验分布。
5.根据权利要求4所述的变分自编码器神经网络系统,其中,在时间步长t处的所述潜变量集合的值由α乘以在先前时间步处的所述潜变量集合的值与噪声分量的和来定义,其中|α|<1。
6.根据权利要求3、4或5所述的变分自编码器神经网络系统,其中,所述解码器神经网络是被配置成生成输出数据项值的序列的自回归神经网络,每个所述输出数据项值以先前生成的输出数据项值为条件;并且进一步包括系统,所述系统用于将在每个时间步处传递给所述解码器的所述潜变量集合的值限制为如下值:这些值编码有与所述输出数据值的序列中待被生成的值有关的信息。
7.根据权利要求3至6中的任一项所述的变分自编码器神经网络系统,进一步包括辅助神经网络,所述辅助神经网络被配置成学习所述潜变量集合的序列的所述分布序列。
8.根据权利要求1-7中的任一项所述的经训练的解码器神经网络。
9.根据权利要求1-7中的任一项所述的经训练的编码器神经网络。
10.一种训练根据权利要求1-7中的任一项所述的变分自编码器神经网络系统的方法,包括:
接收训练数据,所述训练数据包括训练数据项;
将每个训练数据项提供给所述变分自编码器神经网络系统的所述输入,以生成对应的输出数据项;
根据所述训练数据项和所述对应的输出数据项之间的差异以及根据所述潜变量集合的后验分布和先验分布之间的差异来确定所述目标函数的梯度;以及
通过所述变分自编码器神经网络系统反向传播所述梯度,以调整所述编码器神经网络的和所述解码器神经网络的参数,以优化所述目标函数。
11.根据权利要求10从属于权利要求7时所述的方法,其中,将每个训练数据项提供给所述变分自编码器神经网络系统的所述输入以生成对应的输出数据项包括从所述后验分布中采样以确定所述潜变量集合的采样值;所述方法进一步包括使用所述潜变量集合的所述采样值与所述编码器神经网络和解码器神经网络同时训练所述辅助神经网络。
12.一种获得解码器的方法,所述方法包括训练如权利要求10或11所述的变分自编码器神经网络系统,并且然后使用所训练的变分自编码器神经网络系统的所述解码器神经网络来获得所述解码器。
13.一种获得编码器的方法,所述方法包括训练如权利要求10或11所述的变分自编码器神经网络系统,并且然后使用所训练的变分自编码器神经网络系统的所述编码器神经网络来获得所述编码器。
14.一种包括一个或多个计算机和一个或多个储存设备的系统,所述储存设备存储指令,所述指令在由所述一个或多个计算机执行时,使所述一个或多个计算机执行根据权利要求10-13中的任一项所述的相应方法的操作。
15.根据任一项前述权利要求所述的系统或方法,其中,所述数据项包括下述中的一个或多个:静止或移动图像、音频信号以及文本字符串的表示。
16.一个或多个存储指令的计算机储存介质,所述指令在由一个或多个计算机执行时,使所述一个或多个计算机实现根据权利要求1-9中的任一项所述的系统或执行根据权利要求10-13中的任一项所述的方法的操作。
CN201980063840.3A 2018-09-27 2019-09-27 承诺信息速率变分自编码器 Pending CN112789625A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862737845P 2018-09-27 2018-09-27
US62/737,845 2018-09-27
PCT/EP2019/076148 WO2020064990A1 (en) 2018-09-27 2019-09-27 Committed information rate variational autoencoders

Publications (1)

Publication Number Publication Date
CN112789625A true CN112789625A (zh) 2021-05-11

Family

ID=68136365

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980063840.3A Pending CN112789625A (zh) 2018-09-27 2019-09-27 承诺信息速率变分自编码器

Country Status (4)

Country Link
US (2) US10671889B2 (zh)
EP (1) EP3834137A1 (zh)
CN (1) CN112789625A (zh)
WO (1) WO2020064990A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114386067A (zh) * 2022-01-06 2022-04-22 承德石油高等专科学校 一种基于人工智能的设备生产数据安全传输方法及系统
WO2022252957A1 (zh) * 2021-05-29 2022-12-08 华为技术有限公司 音频数据编解码方法和相关装置及计算机可读存储介质

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11735028B2 (en) 2018-06-12 2023-08-22 Intergraph Corporation Artificial intelligence applications for computer-aided dispatch systems
CN112789625A (zh) * 2018-09-27 2021-05-11 渊慧科技有限公司 承诺信息速率变分自编码器
US11126915B2 (en) * 2018-10-15 2021-09-21 Sony Corporation Information processing apparatus and information processing method for volume data visualization
US20240028872A1 (en) * 2019-01-28 2024-01-25 Nippon Telegraph And Telephone Corporation Estimation apparatus, learning apparatus, methods and programs for the same
US11138966B2 (en) * 2019-02-07 2021-10-05 Tencent America LLC Unsupervised automatic speech recognition
US10886943B2 (en) * 2019-03-18 2021-01-05 Samsung Electronics Co., Ltd Method and apparatus for variable rate compression with a conditional autoencoder
US11914955B2 (en) * 2019-05-21 2024-02-27 Royal Bank Of Canada System and method for machine learning architecture with variational autoencoder pooling
EP3783541A1 (en) * 2019-08-19 2021-02-24 Secondmind Limited Computational inference system
US11481626B2 (en) * 2019-10-15 2022-10-25 International Business Machines Corporation Generating attribute-based samples
CN113438481B (zh) * 2020-03-23 2024-04-12 富士通株式会社 训练方法、图像编码方法、图像解码方法及装置
WO2021220008A1 (en) 2020-04-29 2021-11-04 Deep Render Ltd Image compression and decoding, video compression and decoding: methods and systems
CN111504680B (zh) * 2020-04-30 2021-03-26 东华大学 一种基于wsvm和dcae的涤纶长丝生产的故障诊断方法和系统
US20210397945A1 (en) * 2020-06-18 2021-12-23 Nvidia Corporation Deep hierarchical variational autoencoder
US12136035B2 (en) 2020-06-26 2024-11-05 Tata Consultancy Services Limited Neural networks for handling variable-dimensional time series data
US11748567B2 (en) * 2020-07-10 2023-09-05 Baidu Usa Llc Total correlation variational autoencoder strengthened with attentions for segmenting syntax and semantics
US12014293B2 (en) * 2020-07-29 2024-06-18 International Business Machines Corporation Electronic health record data synthesization
US20220138554A1 (en) * 2020-10-30 2022-05-05 Capital One Services, Llc Systems and methods utilizing machine learning techniques for training neural networks to generate distributions
KR20230116877A (ko) * 2020-12-11 2023-08-04 구글 엘엘씨 분리된 스피치 콘텐츠 및 스타일 표현의 비지도 학습
CN112599246B (zh) * 2021-03-03 2021-06-29 四川华迪信息技术有限公司 生命体征数据处理方法、系统、装置及计算机可读介质
US20220305649A1 (en) * 2021-03-25 2022-09-29 Naver Corporation Reachable manifold and inverse mapping training for robots
US11947908B2 (en) * 2021-04-07 2024-04-02 Baidu Usa Llc Word embedding with disentangling prior
US12014446B2 (en) * 2021-08-23 2024-06-18 Google Llc Systems and methods for generating predicted visual observations of an environment using machine learned models
US20230102494A1 (en) * 2021-09-24 2023-03-30 Hexagon Technology Center Gmbh Ai training to produce task schedules
CN116095183A (zh) * 2022-03-14 2023-05-09 华为技术有限公司 一种数据压缩方法以及相关设备
KR102480423B1 (ko) 2022-06-16 2022-12-22 주식회사 액션파워 인코더-디코더 구조를 가진 인공 신경망 모델을 활용한 데이터 생성 방법
WO2023249068A1 (en) * 2022-06-24 2023-12-28 Mitsubishi Electric Corporation Automated variational inference using stochastic models with irregular beliefs
CN115187266B (zh) * 2022-06-29 2023-08-25 山东大学 基于记忆力变分自编码模型的信用卡欺诈检测方法及系统
EP4376399A1 (en) * 2022-11-24 2024-05-29 Huawei Technologies Co., Ltd. Latent representation of color space and its transformation
CN117081068B (zh) * 2023-10-16 2024-03-01 国网浙江省电力有限公司 基于变分自编码器网络的空调负荷计算方法、模型及介质
CN117354652B (zh) * 2023-12-04 2024-02-20 四川省光为通信有限公司 基于变分自编码器的高速多模光模块性能优化方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868829A (zh) * 2015-02-06 2016-08-17 谷歌公司 用于数据项生成的循环神经网络
CN108140146A (zh) * 2015-08-19 2018-06-08 D-波系统公司 用于使用绝热量子计算机进行机器学习的离散变分自动编码器系统和方法
CN108268941A (zh) * 2017-01-04 2018-07-10 意法半导体股份有限公司 深度卷积网络异构架构

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181098B2 (en) * 2014-06-06 2019-01-15 Google Llc Generating representations of input sequences using neural networks
WO2016065327A1 (en) * 2014-10-24 2016-04-28 Google Inc. Neural machine translation systems with rare word processing
WO2016077797A1 (en) * 2014-11-14 2016-05-19 Google Inc. Generating natural language descriptions of images
US10409908B2 (en) * 2014-12-19 2019-09-10 Google Llc Generating parse trees of text segments using neural networks
US10504023B1 (en) * 2015-06-05 2019-12-10 Google Llc Training recurrent neural networks to generate sequences
WO2017083695A1 (en) * 2015-11-12 2017-05-18 Google Inc. Generating target sequences from input sequences using partial conditioning
US10268671B2 (en) * 2015-12-31 2019-04-23 Google Llc Generating parse trees of text segments using neural networks
US10229111B1 (en) * 2016-02-03 2019-03-12 Google Llc Sentence compression using recurrent neural networks
US9799327B1 (en) * 2016-02-26 2017-10-24 Google Inc. Speech recognition with attention-based recurrent neural networks
US10402719B1 (en) * 2016-03-21 2019-09-03 Google Llc Generating output sequences from input sequences using neural networks
CN112289342B (zh) * 2016-09-06 2024-03-19 渊慧科技有限公司 使用神经网络生成音频
US10971170B2 (en) * 2018-08-08 2021-04-06 Google Llc Synthesizing speech from text using neural networks
CN112789625A (zh) * 2018-09-27 2021-05-11 渊慧科技有限公司 承诺信息速率变分自编码器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868829A (zh) * 2015-02-06 2016-08-17 谷歌公司 用于数据项生成的循环神经网络
CN108140146A (zh) * 2015-08-19 2018-06-08 D-波系统公司 用于使用绝热量子计算机进行机器学习的离散变分自动编码器系统和方法
CN108268941A (zh) * 2017-01-04 2018-07-10 意法半导体股份有限公司 深度卷积网络异构架构

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AURKO ROY ET AL.: "Theory and Experience on Vector Quantized Autoencoders", ARXIV.ORG *
BURGESS ET AL.: "Understanding disentangling in β-VAE", ARXIV.ORG *
孙凌;韩立新;勾智楠;: "基于变分自动编码器的动态主题模型", 河北工业科技, no. 06 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022252957A1 (zh) * 2021-05-29 2022-12-08 华为技术有限公司 音频数据编解码方法和相关装置及计算机可读存储介质
CN114386067A (zh) * 2022-01-06 2022-04-22 承德石油高等专科学校 一种基于人工智能的设备生产数据安全传输方法及系统

Also Published As

Publication number Publication date
EP3834137A1 (en) 2021-06-16
US11636283B2 (en) 2023-04-25
US20200364505A1 (en) 2020-11-19
WO2020064990A1 (en) 2020-04-02
US10671889B2 (en) 2020-06-02
US20200104640A1 (en) 2020-04-02

Similar Documents

Publication Publication Date Title
CN112789625A (zh) 承诺信息速率变分自编码器
US20230419076A1 (en) Recurrent neural networks for data item generation
US10713818B1 (en) Image compression with recurrent neural networks
DeVries et al. Dataset augmentation in feature space
US20220014807A1 (en) Method, apparatus, device and medium for generating captioning information of multimedia data
CN109891897B (zh) 用于分析媒体内容的方法
EP3298576B1 (en) Training a neural network
US20210004677A1 (en) Data compression using jointly trained encoder, decoder, and prior neural networks
CN109891434A (zh) 使用神经网络生成音频
CN111699497B (zh) 使用离散潜变量的序列模型的快速解码
CN116392812A (zh) 动作生成方法及虚拟人物动画生成方法
EP3298579B1 (en) Visual data processing using energy networks
Zhang et al. G3pt: Unleash the power of autoregressive modeling in 3d generation via cross-scale querying transformer
EP4360004A1 (en) Contrastive learning and masked modeling for end-to-end self-supervised pre-training
CN115526223A (zh) 潜在空间中的基于得分的生成建模
Fakhari et al. A new restricted boltzmann machine training algorithm for image restoration
CN117787380A (zh) 模型获取方法、装置、介质及设备
CN117635784A (zh) 三维数字人脸部动画自动生成系统
Yeğin et al. Generative diffusion models: A survey of current theoretical developments
CN116601682A (zh) 经由以时间残差连接为特征的机器学习模型对顺序数据的改进处理
US20240281660A1 (en) Deep learning systems, devices and methods for predicting user content engagement
Segré A summary of the major contributions in score-based generative modeling
Yang et al. Unsupervised image blind super resolution via real degradation feature learning
CN118805219A (zh) 使用结构化潜在空间压缩音频波形
CN113811893A (zh) 用于引导架构演进的连接权重学习

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