用于数据项生成的循环神经网络的利记博彩app

文档序号:10512796阅读:275来源:国知局
用于数据项生成的循环神经网络的利记博彩app
【专利摘要】本发明涉及用于数据项生成的循环神经网络。一种方法,包括:使用前一时间步的解码器的解码器隐藏状态向量,从所述数据项读取一瞥;作为编码器的输入,提供所述一瞥和所述前一时间步的所述解码器隐藏状态向量以用于处理;作为所述编码器的输出,接收该时间步的所生成的编码器隐藏状态向量;从所述所生成的编码器隐藏状态向量生成解码器输入;将所述解码器输入提供给所述解码器以用于处理;作为所述解码器的输出,接收该时间步的所生成的解码器隐藏状态向量;从该时间步的所述解码器隐藏状态向量生成神经网络输出更新;以及将所述神经网络输出更新与当前神经网络输出相结合,以生成更新的神经网络输出。
【专利说明】用于数据项生成的循环神经网络 技术背景
[0001 ]本说明书涉及通过循环神经网络的层处理输入以产生输出。
[0002] 神经网络是机器学习模型,其采用非线性单元的一个或多个层来预测对于所接收 输入的输出。除了输出层之外,一些神经网络包括一个或多个隐藏层。每个隐藏层的输出被 用作网络中的下一层即下一隐藏层或输出层的输入。网络的每一层根据各自的参数集合的 当前值从所接收的输入生成输出。
[0003] -些神经网络是循环神经网络。循环神经网络是一种接收输入序列并从输入序列 生成输出序列的神经网络。尤其是,循环神经网络可将来自前一时间步的网络的一些或全 部内部状态用在计算当前时间步的输出中。循环神经网络的示例是长短期记忆(LSTM)神经 网络,其包括一个或多个LSTM记忆块。每个LSTM记忆块可以包括一个或多个单元,每个单元 包括输入门、遗忘门、和输出门,其允许该单元存储该单元的先前状态,例如用于生成当前 激活或被提供给LSTM神经网络的其它组件。

【发明内容】

[0004] -般来说,本说明书中描述的主题的一个创新方面可在系统中实现,所述系统包 括:编码器神经网络,其中,该编码器神经网络是循环神经网络,其被配置成,对于由该编码 器神经网络处理的每个输入数据项和在多个步中的每个时间步处:接收通过从所述输入数 据项读取而捕获的一瞥(glimpse);接收前一时间步的解码器神经网络的解码器隐藏状态 向量;处理该一瞥、解码器隐藏状态向量、和前一时间步的所述编码器神经网络的编码器隐 藏状态向量,以生成该时间步的编码器隐藏状态向量;解码器神经网络,其中该解码器神经 网络是一种循环神经网络,其被配置成,对于多个时间步中的每个:接收该时间步的解码器 输入,以及处理前一时间步的解码器隐藏状态向量和该解码器输入,以生成该时间步的解 码器隐藏状态向量;子系统,其中,该子系统配置成,对于时间步中的每个时间步来说:使用 前一时间步的解码器隐藏状态向量,从所述输入数据项读取该一瞥;提供该一瞥作为所述 编码器神经网络的输入;在该时间步处从编码器隐藏状态向量生成所述解码器神经网络的 解码器输入;提供该解码器输入作为该时间步的所述解码器神经网络的输入;从该时间步 的解码器隐藏状态向量生成该时间步的神经网络输出更新;以及将所述该时间步的神经网 络输出更新与当前神经网络输出相结合,以生成更新的神经网络输出。
[0005]该方面的其它实施例包括在一个或多个计算机存储设备上记录的计算机程序,所 述计算机程序被配置成使一个或多个计算机实现包括由子系统执行的操作的系统和方法。 一个或多个计算机的系统可以被配置成借助于按照在系统上在操作中可使得系统执行动 作的软件、固件、硬件、或其任何组合来执行特定的操作或动作。一个或多个计算机程序可 以被配置成借助于包括指令而执行特定操作或动作,所述指令在由数据处理装置执行时, 使得该装置执行动作。
[0006]本说明书中描述的主题可在特定实施例中实现,以便实现下列优点中的一个或多 个优点。
[0007] 一种实现用于数据项生成的深度循环注意写入器神经网络架构(de印recurrent attentive writer neural network)的系统将模仿人眼孔隙的空间注意(spatial at tent ion)机构与使得能够迭代构建复杂图像的连续变化自动编码框架(sequential variational autoencoding framework)相结合。该系统可用于生成高质量图像,例如无法 用裸眼与真实数据相区分的高度逼真自然的图像。
[0008] 与通过单程生成整个场景立刻自动生成图像的标准系统(例如以单个潜在分布上 的像素为条件的生成性神经网络(eg.generative neural networks that condition pixels on a single latent distribution))不同,实现深度循环注意写入器神经网络架 构的系统应用了自然形式的图像构建,在其中从其它部分独立地创建场景的部分并连续精 细化近似草图。实现深度循环注意写入器神经网络架构而因此不排除迭代自校正的可能性 的系统,改善了所构建图像的精确性和质量。此外,与不包括深度循环注意写入器神经网络 架构的标准系统不同,通过应用自然形式的图像构建,实现深度循环注意写入器神经网络 架构的系统易于扩展成大图像。
[0009] 经由通过累加包括在架构中的解码器所发出的修改来迭代地构建场景,其中每个 场景由包括在架构中的编码器进行观察,该实现深度循环注意写入器神经网络架构的系统 可选择性地注意场景的特定部分而忽略其它部分,因此改善了所构建图像的视觉结构。此 外,与实现连续注意(sequential attention)模型的其它系统不同,该系统可学习何处看 见何时执行部分一瞥序列,因为深度循环注意写入器神经网络模型是完全可辨的,并且可 用标准反向传播技术训练。例如,在某些情况下,该系统可参数化潜在变量分布,其是对角 高斯分布,其可使得能够使用诸如再参数化技巧(reparameterization trick)的标准技术 容易地获得关于分布参数的潜在变量样本的函数梯度,进而通过潜在分布使得能够进行无 偏差、低方差随机梯度的损失函数的直接反向传播。
[0010] 也被应用于图像生成任务,实现深度循环注意写入器神经网络架构的系统中嵌入 的注意机构可进一步应用于图像分类任务、图像修复绘图、语音生成任务、或图像分割任 务。
[0011] 本说明书的主题的一个或多个实施例的细节在附图和下面描述中阐述。主题的其 它特征、方面、和优点将从描述、附图、和权利要求而变得显而易见。
【附图说明】
[0012]图1示出了示例数据项生成系统。
[0013] 图2是用于生成更新的神经网络输出的示例处理的流程图。
[0014] 图3是用于使用编码器神经网络处理一瞥的示例处理的流程图。
[0015]图4是用于使用解码器神经网络处理解码器输入的示例处理的流程图。
[0016] 各个附图中相同附图标记和名称指示相同元件。
【具体实施方式】
[0017] 图1示出了用于生成神经网络输出的示例数据项生成系统100。该数据项生成系统 100是实现为在一个或多个位置中的一个或多个计算机上的计算机程序的系统的示例,在 其中可实现下面描述的系统、组件、和技术。
[0018] 数据项生成系统100获得输入数据项并处理所述输入数据项,以生成针对每个输 入数据项的相应神经网络输出,例如针对数据项108的神经网络输出110。针对给定输入数 据项的所生成的神经网络输出可以是所述输入数据项的重构版本,或者是可以进而用于重 构所述输入数据项的画布矩阵(canvas matrices)。例如,输入数据项(例如输入数据项 108)可以是来自视频的图像或帧,并且所生成的神经网络输出可以是重构的图像或该视频 的逐帧重构。输入数据项被提供给数据项生成系统100并在时间步序列中的每个时间步处 读取。时间步序列中的时间步的数目可被视为预先指定的自由参数。
[0019] 数据项生成系统100包括读取子系统101、编码器神经网络102、解码器输入子系统 104、解码器神经网络106、以及写入子系统108。编码器神经网络102压缩在训练期间接收的 数据项,并且解码器神经网络106在接收到代码后重组数据项。可使用标准训练技术(例如 利用适当的损失函数的随机梯度下降方法)对数据项生成系统100的组件进行端到端训练。
[0020] 编码器神经网络102和解码器神经网络106是循环神经网络,在每个时间步处,其 接收各自的输入并使用该输入更新神经网络的相应隐藏状态。在一些实施方式中,编码器 神经网络102和解码器神经网络106是包括一个或多个LSTM神经网络层的长短期记忆 (LSTM)神经网络,其中每个LSTM层包括一个或多个LSTM记忆块。每个LSTM记忆块能够包括 一个或多个单元,每个单元包括输入门、遗忘门、和输出门,其允许该单元存储由该单元生 成的先前激活,例如作为在生成当前激活过程中使用或者被提供给LSTM神经网络110的其 它组件的隐藏状态。示例LSTM神经网络在"利用循环神经网络生成序列(Generating sequences with recurrent neual networks)''中更详细地描述,Alex Gravestone,在 http://arxiv.org/abs/1308.0850v5处可用。在该说明书中,编码器神经网络102的隐藏状 态将被称为编码器隐藏状态,并且解码器神经网络106的隐藏状态将被称为解码器隐藏状 ??τ 〇
[0021] 读取子系统101接收数据项输入(例如数据项输入108),以及在时间步序列中的每 个时间步处,使用前一时间步的解码器隐藏状态向量从输入数据输入项读取一瞥。前一时 间步的解码器隐藏状态向量指定读取子系统101应读取数据输入项的哪部分,并且进而限 制由编码器神经网络102观察到的输入数据项的输入区域。读取子系统101提供该一瞥作为 编码器神经网络102的输入。
[0022] 在时间步序列中的每个时间步处,解码器输入子系统104使用该时间步的编码器 隐藏状态向量(例如编码器隐藏状态向量114)生成解码器输入(例如解码器输入116),并在 该时间步处,将所生成的该时间步的解码器输入提供给解码器神经网络106作为解码器神 经网络106的输入。
[0023] 在时间步序列中的每个时间步处,写入子系统108进一步使用该时间步的解码器 隐藏状态向量(例如解码器隐藏状态向量118)生成该时间步的神经网络输出更新,并将该 神经网络输出更新与当前神经网络输出相结合以生成更新的神经网络输出。例如,写入子 系统108可以被配置成经由到用于重构数据项的累加画布矩阵的写入操作,而添加神经网 络输出更新。在最近时间步之后所更新的神经网络输出可被视为针对该输入数据项的神经 网络输出。下面参照图2更详细地描述从输入数据项生成更新的神经网络输出。
[0024] 在一些实施方式中,数据项生成系统100可训练编码器神经网络102和解码器神经 网络104来自动编码输入数据项。例如,数据项生成子系统100可以训练编码器神经网络102 和解码器神经网络106来生成更新的神经网络输出110,更新的神经网络输出110是输入数 据项108的重构。
[0025] 在时间步序列中的每个时间步处,编码器神经网络102接收一瞥例如通过从输入 数据项x(例如输入数据项108)读取而捕获的一瞥(例如一瞥120),以及前一时间步的解码 器神经网络106的解码器隐藏状态作为输入。编码器神经网络102处理一瞥120、前一解码器 隐藏状态向量、和来自前一时间步的编码器神经网络102的编码器隐藏状态向量,以生成更 新的编码器隐藏状态向量(例如编码器隐藏状态向量114)。下面将参照图3更详细描述地使 用编码器神经网络处理一瞥。
[0026] 在时间步序列中的每个时间步处,解码器神经网络106接收所输入的解码器输入 (例如解码器输入116)。解码器神经网络106处理该解码器输入116和前一时间步的解码器 隐藏状态向量,以生成该时间步的解码器隐藏状态向量,例如解码器隐藏状态向量118。下 面参照图4更详细地描述使用解码器神经网络处理解码器输入。
[0027] 一旦所述组件已训练好,则数据项生成系统100可使用解码器神经网络106用于数 据生成任务,而不用编码器神经网络102。例如,图像可通过从先前分布中迭代地选择潜在 变量样本并运行解码器神经网络106以更新画布矩阵来生成。在重复该处理固定数目后,数 据项生成系统100可输出最终的画布矩阵作为新生成的图像。
[0028] 图2是用于在给定时间步处从数据项输入生成更新的神经网络输出的示例处理 200的流程图。为了方便,过程300将被描述成由位于一个或多个位置处的一个或多个计算 机的系统执行。例如,被适当地编程的包括编码器神经网络和解码器神经网络的数据项生 成系统(例如图1的数据项生成系统100 ),可执行处理300。
[0029] 该系统在时间步t处使用前一时间步t-Ι的解码器神经网络的解码器隐藏状态向 量从输入数据项X读取一瞥(步骤202)。前一时间步的解码器神经网络的隐藏状态向量指定 在每个时间步处该系统应读取何处。在一些实施方式中,该系统可进一步使用多步先前时 间步的编码器隐藏状态向量从输入数据项读取一瞥。
[0030] 在一些实施方式中,数据项X是图像并且通过从输入数据项读取而由该系统捕获 的一瞥是图像分块。图像分块可通过对该图像应用高斯滤波器阵列来生成,其中用于应用 高斯滤波器阵列的参数是通过对前一时间步的解码器隐藏状态向量应用线性变换而生成 的。例如,在2D高斯滤波器阵列被应用于该图像的情况下二维形式的注意(attention)可以 被使用,而产生平滑改变位置和缩放的图像分块。在其它实施方式中,输入数据项是视频。 在另外的实施方式中,输入数据项是语音片段或语音片段的特征。
[0031]该系统将(i) 一瞥和(ii)前一时间步的解码器隐藏状态向量作为输入提供给编码 器神经网络以用于处理(步骤204)。提供给编码器神经网络的输入的精确形式取决于上面 步骤202中执行的读取操作。由于编码器与解码器的先前输出有关联,因此编码器能够根据 解码器到目前为止的行为定制其发送的代码。下面参照图3更详细地描述通过编码器神经 网络处理一瞥和解码器隐藏状态向量。
[0032]该系统接收该时间步的所生成的编码器隐藏状态向量作为从编码器神经网络的 输出(步骤206)。编码器神经网络的输出可用于在时间步t处通过潜在变量计算近似后端, 例如编码器的输出可用于参数化潜在变量向量z t上的分布在一些实施方式 中,该潜在分布是对角高斯分布。
[0033] 在一些实施方式中,该系统提供针对特定数据项的来自该时间步的编码器隐藏状 态向量作为该特定数据项的特征,其中在半监督学习过程中,该特定数据项的特征被提供 用于处理该特定数据项。
[0034] 该系统在该时间步处从所生成的编码器隐藏状态向量生成解码器神经网络的解 码器输入(步骤208)。在一些实施方式中,通过使用该时间步的编码器隐藏状态向量来参数 化本征向量的分布以及从该分布中采样解码器输入,该系统可以在该时间步处从编码器隐 藏状态向量生成解码器神经网络的解码器输入。例如,该系统可以从上文参照步骤206所述 的潜在分布吋,中绘制采样该时间步的编码器隐藏状态向量以及因 此的潜在分布取决于输入数据项X和先前潜在样本 21:^的历史。
[0035] 该系统提供解码器输入作为解码器神经网络的输入以用于处理(步骤210)。下面 参照图4更详细地描述使用解码器神经网络处理解码器输入。
[0036] 该系统接收该时间步的所生成的解码器隐藏状态向量作为解码器神经网络的输 出(步骤212)。该时间步的所生成的解码器隐藏状态向量可在后一时间步(例如时间步序列 中的下一时间步t+Ι)处存储和/或提供给编码器神经网络。编码器神经网络因此与解码器 的先前输出有关,允许编码器神经网络根据解码器到目前为止的行为定制其发送的代码。
[0037] 该系统从该时间步的解码器隐藏状态向量生成该时间步的神经网络输出更新(步 骤214),并将该神经网络输出更新与来自前一时间步的神经网络输出相结合,以生成更新 的神经网络输出。因此,解码器输出可被连续添加至可用于生成系统输出数据的分布,而不 是在单个步骤中发出分布。例如,该系统可使用写操作从解码器神经网络的输出生成写入, 并且通过写操作将该写入添加至累加画布矩阵cm,例如通过修改该累加矩阵的部分来生 成当前累加画布矩阵ct。
[0038] 尤其是,对于图像来说,该系统通过从解码器隐藏状态向量中提取注意参数集合, 以及通过将所述注意参数应用于解码器隐藏状态向量以便生成写入图像分块,来生成待写 入的数据。
[0039]在一些实施方式中,该系统可以使得解码器神经网络处理从先前分布中采样的输 入序列,以生成新的神经网络输出,其中所述数据项是图像,并且其中该新的神经网络输出 是由解码器神经网络生成的新的图像。例如,该系统可以在最终时间T处使用经修改的累加 画布矩阵来重构该图像。网络所耗费的时间步的总数T可以是能够在执行处理200之前指定 的自由参数。
[0040] 最终的画布矩阵CT可用于参数化输入数据的模型。例如,如果该输入数据是二进 制的,则该最终画布矩阵可用于参数化柏努利分布(Bernoulli distribution)。该参数化 模型可用于确定该网络的总损失函数(total loss function),所述总损失函数描述因解 码器和先前分布的该数据的期望压缩。
[0041] 图3是用于使用编码器神经网络处理一瞥的示例处理300的流程图。为了方便,处 理300将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,被适当编 程的包括编码器神经网络(例如图1的编码器神经网络102)的数据项生成系统,可执行处理 300 〇
[0042]该系统接收通过从输入数据项读取而捕获的一瞥(步骤302)。在一些实施方式中, 该数据项生成系统可不采用注意模型,并且整个图像可在每个时间步处提供给编码器神经 网络。在其它实施方式中,该系统可以采用选择性注意模型。例如,如上面参照图2所描述 的,该系统对图像应用高斯滤波器阵列,产生平滑地变化位置和缩放的图像分块。在另外的 实施方式中,该系统可以采用利用注意模型的读取,例如通过连结来自接收图像和误差图 像的两个图像分块。在这种情况下,相同滤波器组用于该图像和误差图像二者。
[0043]该系统接收前一时间步的解码器神经网络的解码器隐藏状态向量(步骤304)。通 过接收前一时间步的解码器神经网络的解码器隐藏状态向量,编码器神经网络能够根据解 码器到目前为止的行为定制其发送的代码。
[0044]该系统使用编码器神经网络处理该一瞥、来自前一时间步的解码器隐藏状态向 量、和来自前一时间步的编码器神经网络的编码器隐藏状态向量,以更新编码器隐藏状态 向量,即生成该时间步的编码器隐藏状态向量(步骤306)。该系统可将该时间步的所生成的 编码器隐藏状态向量提供给子系统以用于处理,例如用于在生成解码器神经网络输入中使 用,如上面参照图2所描述的。
[0045]图4是用于使用解码器神经网络处理解码器输入的示例处理400的流程图。为了方 便,该处理400将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如, 被适当编程的解码器神经网络(例如图1的解码器神经网络106)可执行该处理400。
[0046]该系统接收该时间步的解码器输入(步骤402)。
[0047] 该系统使用解码器神经网络处理前一时间步的解码器隐藏状态向量和解码器输 入以更新解码器隐藏状态向量,即生成该时间步的解码器隐藏状态向量(步骤404)。
[0048]本说明书中描述的主题和功能操作的实施例可用数字电子电路、有形实现的计算 机软件或固件、计算机硬件来实现,包括本说明书中公开的结构及其结构等同物,或其一种 或多种的组合。本说明书中描述的主题的实施例可被实现为一个或多个计算机程序,即在 有形非瞬时性程序载体上编码的一个或多个计算机程序指令模块,以用于由数据处理装置 执行或控制数据处理装置的操作。替选地或另外地,程序指令可在人工生成的传播信号上 编码,例如机器生成的电子的、光学的、或电磁信号,其被生成以编码用于传输至适合的接 收器装置由数据处理装置执行的信息。计算机存储介质能够是机器可读存储设备、机器可 读存储衬底、随机或串行存取存储器、或其中一种或多种的组合。然而,计算机存储介质并 非传播信号。
[0049]术语"数据处理装置"包含所有种类的用于处理数据的装置、设备和机器,包括例 如可编程处理器、计算机、或多个处理器或计算机。该装置能够包括专用逻辑电路(例如 FPGA(现场可编程门阵列)或ASIC(专用集成电路))。除了硬件之外,该装置还能够包括为正 讨论的计算机程序创建运行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、 操作系统、或其一种或多种的组合的代码。
[0050]计算机程序(其亦可指代或描述为程序、软件、软件应用程序、模块、软件模块、脚 本、或代码)可用任何形式的编程语言来编写,包括编译或解释语言、或声明性或过程语言, 并且其可用任何形式部署,包括作为独立程序或作为模块、组件、子例程、或适用于计算环 境的其它单元。计算机程序可以但不必须,与文件系统中的文件相对应。程序可存储在文件 的一部分中,其保留其它程序或数据,例如在标记语言文档、专用于正被讨论的程序的单一 文件、或多个协同文件(例如存储一个或多个模块、子程序、或代码部分中的文件)存储的一 个或多个脚本。计算机程序可被部署以在位于一个站点或分布在多个站点、且通过通信网 络互连的一个或多个计算机上执行。
[0051]如本说明书中所使用的,"引擎"或"软件引擎"是指软件实现的输入/输出系统,其 提供不同于输入的输出。引擎可以是功能编码块,诸如库、平台、软件开发工具套件 ("SDK")、或对象。每个引擎可以在任意类型的计算设备上实现,所述计算设备例如包括一 个或多个处理器和计算机可读介质的服务器、移动电话、平板计算机、笔记本计算机、音乐 播放器、电子书阅读器、膝上型或桌面型计算机、PDA、智能电话、或其它固定或便携式设备。 另外地,两个或多个引擎可在同一计算设备或不同计算设备上实现。
[0052]本说明书中描述的处理和逻辑流可由一个或多个可编程计算机执行,所述可编程 计算机执行一个或多个计算机程序以通过对输入数据进行操作且生成输出来执行功能。所 述处理和逻辑流也可由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电 路))来执行,并且装置也可被实现为专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC (专用集成电路))。
[0053]适用于执行计算机程序的计算机包括,例如可基于通用或专用微处理器或二者, 或者任意其它种类的中央处理单元。一般来说,中央处理单元将从只读存储器或随机存取 存储器或二者接收指令。计算机的基本元件是用于执行或运行指令的中央处理单元以及一 种或多种用于存储指令和数据的存储器设备。一般来说,计算机将也包括或可操作地耦合 至一个或多个用于存储数据的大容量存储设备(例如磁盘、磁光盘、或光盘),以从其接收数 据或传输数据至其,或二者均有。然而,计算机不必有这样的设备。而且,计算机可被嵌入另 一设备,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定 位系统(GPS)接收器、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅仅例举 几种。
[0054]适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性 存储器、介质和存储器设备,包括例如半导体存储器设备(例如EPR0M、EEPR0M、和闪存设 备);磁盘,例如内部硬盘或可移动盘;磁光盘;以及⑶ROM和DVD-ROM盘。处理器和存储器可 由专用逻辑电路补充或并入专用逻辑电路。
[0055] 为了提供与用户的交互,本说明书中描述的主题的实施例可在具有用于给用户显 示信息的显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)监视器),和用户可通过其向 计算机提供输入的键盘以及指示设备(例如鼠标或跟踪球)的计算机上实现。其它种类的设 备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任意形式的感觉反馈,例如 视觉反馈、听觉反馈、或触觉反馈;以及来自用户的输入可以任意形式接收,包括声学、语 音、或触觉输入。另外,计算机可通过发送文档至用户使用的设备或自用户使用的设备接收 文档而与用户交互;例如,通过响应于自web浏览器接收的请求而发送网页至用户客户端设 备上的web浏览器。
[0056] 本说明书中描述的主题的实施例可在计算系统中实现,该计算系统包括后端组件 (例如作为数据服务器),或者包括中间件组件(例如应用服务器),或者包括前端组件(例如 具有图形用户接口或Web浏览器的客户端计算机,用户通过前端组件可与本说明书中描述 的主题的实施方式相交互),或者包括一个或多个这样的后端、中间件、或前端组件的任意 组合。该系统的组件可通过任意形式或介质的数字数据通信(例如通信网络)互连。通信网 络的示例包括局域网("LAN")和广域网("WAN"),例如Internet。
[0057] 该计算系统可包括客户端和服务器。客户端和服务器通常彼此远离,并且典型地 通过通信网络交互。客户端和服务器的关系借助于在各自的计算机上运行且彼此之间具有 客户端-服务器关系的计算机程序而产生。
[0058] 虽然本说明书包含许多特定的实施方式细节,但是这些细节不应解释为对任意发 明的保护范围或其请求保护的范围的限制,而应解释为特定发明的特定实施例所特有的特 征的描述。在本说明书中以分立实施例为上下文描述的某些特征,也可在单个实施例中组 合实现。相反地,以单个实施例为上下文描述的各种特征也可在多个实施例中单独实现或 者以任意适当的子组合来实现。此外,虽然特征在上文中被描述为以某种组合发生作用甚 至初始地如此要求,但是来自请求保护的组合中的一个或多个特征在一些情况下可从组合 中脱离,并且所请求保护的组合可以指向子组合或子组合的变化形式。
[0059] 类似地,尽管在附图中按照特定次序描绘了操作,但是这不应理解为要求这种操 作应按示出的特定次序或顺序执行,或者所有图示的操作应被执行来取得期望的结果。在 某种环境下,多任务和并行处理可能是有利的。此外,上述实施例中的各个系统模块和组件 的划分不应被理解为在所有实施例中都要求这种划分,并且应该理解的是,所述程序组件 和系统一般来说可集成到单个软件产品中或封装到多个软件产品中。
[0060] 已描述了该主题的特定实施例。其它实施例在以下权利要求的保护范围内。例如, 权利要求中所记载的动作可按照不同顺序执行并且仍实现了期望的结果。例如,附图中描 绘的处理不必要求示出的特定次序或者顺序次序来实现期望的结果。在某些实施方式中, 多任务及并行处理可能是有利的。
【主权项】
1. 一种由一个或多个计算机实现的神经网络系统,所述神经网络系统包括: 编码器神经网络,其中所述编码器神经网络是循环神经网络,所述编码器神经网络被 配置成,针对由所述编码器神经网络处理的每个输入数据项以及在多个步中的每个时间步 处: 接收通过从所述输入数据项读取而捕获的一瞥; 接收前一时间步的解码器神经网络的解码器隐藏状态向量,以及 处理所述一瞥、所述解码器隐藏状态向量、以及来自所述前一时间步的所述编码器神 经网络的编码器隐藏状态向量,以生成该时间步的编码器隐藏状态向量; 解码器神经网络,其中所述解码器神经网络是循环神经网络,所述解码器神经网络被 配置成,对于多个时间步中的每个时间步: 接收该时间步的解码器输入,以及 处理前一时间步的解码器隐藏状态向量和该解码器输入,以生成该时间步的解码器隐 藏状态向量;以及 子系统,其中,所述子系统被配置成,对于所述时间步中的每个时间步: 使用前一时间步的解码器隐藏状态向量,从所述输入数据项读取所述一瞥; 提供所述一瞥作为所述编码器神经网络的输入; 在该时间步处,从所述编码器隐藏状态向量生成所述解码器神经网络的解码器输入; 提供该解码器输入作为该时间步的所述解码器神经网络的输入; 从该时间步的解码器隐藏状态向量生成该时间步的神经网络输出更新;以及 将该时间步的所述神经网络输出更新与当前神经网络输出相结合,以生成更新的神经 网络输出。2. 根据权利要求1所述的神经网络系统,其中,所述编码器神经网络和所述解码器神经 网络是长短期记忆神经网络。3. 根据权利要求1或2中任一项所述的神经网络系统,其中,所述子系统进一步被配置 成:训练所述编码器神经网络和所述解码器神经网络以自动编码输入数据项。4. 根据权利要求3所述的神经网络系统,其中,训练所述编码器神经网络和所述解码器 神经网络以自动编码输入数据项包括:训练所述神经网络以生成神经网络输出,所述神经 网络输出是所述输入数据项的重构。5. 根据权利要求1至4中任一项所述的神经网络系统,其中,所述子系统进一步被配置 成:针对特定数据项提供来自所述时间步中的每个时间步的编码器隐藏状态向量作为所述 特定数据项的特征。6. 根据权利要求5所述的神经网络系统,其中,在半监督学习过程期间,所述特定数据 项的所述特征被提供用于处理所述特定数据项。7. 根据权利要求1至6中任一项所述的神经网络系统,其中,所述输入数据项是图像。8. 根据权利要求1至6中任一项所述的神经网络系统,其中,所述输入数据项是视频。9. 根据权利要求1至6中任一项所述的神经网络系统,其中,所述输入数据项是图像,并 且其中,通过从所述输入数据项读取而捕获的所述一瞥是图像块,所述图像块是通过对所 述图像应用高斯滤波器阵列而生成的。10. 根据权利要求9所述的神经网络系统,其中,用于应用所述高斯滤波器阵列的参数 是通过对所述前一时间步的解码器隐藏状态向量应用线性变换而生成的。11. 根据权利要求1至10中任一项所述的神经网络系统,其中,在该时间步处从所述编 码器隐藏状态向量生成用于所述解码器神经网络的所述解码器输入包括: 使用该时间步的所述编码器隐藏状态向量来参数化本征向量的分布;以及 从所述分布中采样所述解码器输入。12. 根据权利要求1至11中任一项所述的神经网络系统,其中所述子系统进一步配置 成:使得所述解码器神经网络处理从先前分布中采样的输入序列,以生成新的神经网络输 出。13. 根据权利要求12所述的神经网络系统,其中,所述数据项是图像,以及其中,所述新 的神经网络输出是由所述解码器神经网络生成的新的图像。14. 根据权利要求1至6中任一项所述的神经网络系统,其中,所述数据项是语音片段或 语音片段的特征。15. -种方法,所述方法包括权利要求1至14中任一项所述的子系统被配置成执行的操 作。16. -种用指令编码的计算机存储介质,所述指令当由一个或多个计算机执行时,使得 一个或多个计算机实现权利要求1至14中任一项所述的神经网络系统。17. -种由一个或多个计算机实现的神经网络系统,所述神经网络系统包括: 解码器神经网络,其中,所述解码器神经网络是循环神经网络,所述解码器神经网络被 配置成,对于多个时间步中的每个时间步: 接收该时间步的解码器输入;以及 处理前一时间步的解码器隐藏状态向量和该解码器输入,以生成该时间步的解码器隐 藏状态向量;以及 子系统,其中,所述子系统配置成,对于所述时间步中的每个时间步: 生成所述解码器神经网络的解码器输入; 提供该解码器输入作为用于该时间步的所述解码器神经网络的输入; 从该时间步的解码器隐藏状态向量生成该时间步的神经网络输出更新;以及 将该时间步的所述神经网络输出更新与当前神经网络输出相结合,以生成更新的神经 网络输出。18. 根据权利要求17所述的神经网络系统,其中,生成所述解码器神经网络的解码器输 入包括,从先前分布中选择潜在变量样本。19. 根据权利要求17或18中任一项所述的神经网络系统,其中,所述更新的神经网络输 出是图像,以及其中,所述多个时间步中的最近时间步的更新的神经网络输出是由所述神 经网络系统生成的新的图像。
【文档编号】G06N3/08GK105868829SQ201610139237
【公开日】2016年8月17日
【申请日】2016年2月6日
【发明人】卡罗尔·格雷戈尔, 伊沃·达尼赫尔卡
【申请人】谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1